数据平台接口迁移

This commit is contained in:
purple 2020-05-29 18:46:12 +08:00
parent 7e7dfc556a
commit a2e2ae9baa
40 changed files with 4153 additions and 357 deletions

View File

@ -1,109 +1,111 @@
{
"name": "ruoyi",
"version": "2.2.0",
"description": "若依管理系统",
"author": "若依",
"license": "MIT",
"scripts": {
"dev": "vue-cli-service serve",
"build:prod": "vue-cli-service build",
"build:stage": "vue-cli-service build --mode staging",
"preview": "node build/index.js --preview",
"lint": "eslint --ext .js,.vue src",
"test:unit": "jest --clearCache && vue-cli-service test:unit",
"test:ci": "npm run lint && npm run test:unit",
"svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml",
"new": "plop"
},
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"src/**/*.{js,vue}": [
"eslint --fix",
"git add"
]
},
"keywords": [
"vue",
"admin",
"dashboard",
"element-ui",
"boilerplate",
"admin-template",
"management-system"
],
"repository": {
"type": "git",
"url": "https://gitee.com/y_project/RuoYi-Vue.git"
},
"dependencies": {
"@riophae/vue-treeselect": "0.4.0",
"axios": "0.18.1",
"clipboard": "2.0.4",
"echarts": "4.2.1",
"element-ui": "2.13.0",
"file-saver": "2.0.1",
"js-beautify": "^1.10.2",
"fuse.js": "3.4.4",
"js-cookie": "2.2.0",
"jsencrypt": "3.0.0-rc.1",
"normalize.css": "7.0.0",
"nprogress": "0.2.0",
"path-to-regexp": "2.4.0",
"screenfull": "4.2.0",
"sortablejs": "1.8.4",
"vue": "2.6.10",
"vue-count-to": "1.0.13",
"vue-quill-editor": "3.0.6",
"vue-cropper": "0.4.9",
"vue-router": "3.0.2",
"vue-splitpane": "1.0.4",
"vuedraggable": "2.20.0",
"vuex": "3.1.0"
},
"devDependencies": {
"@babel/core": "7.0.0",
"@babel/register": "7.0.0",
"@babel/parser": "^7.7.4",
"@vue/cli-plugin-babel": "3.5.3",
"@vue/cli-plugin-eslint": "^3.9.1",
"@vue/cli-plugin-unit-jest": "3.5.3",
"@vue/cli-service": "3.5.3",
"@vue/test-utils": "1.0.0-beta.29",
"autoprefixer": "^9.5.1",
"babel-core": "7.0.0-bridge.0",
"babel-eslint": "10.0.1",
"babel-jest": "23.6.0",
"chalk": "2.4.2",
"chokidar": "2.1.5",
"connect": "3.6.6",
"eslint": "5.15.3",
"eslint-plugin-vue": "5.2.2",
"html-webpack-plugin": "3.2.0",
"http-proxy-middleware": "^0.19.1",
"husky": "1.3.1",
"lint-staged": "8.1.5",
"mockjs": "1.0.1-beta3",
"node-sass": "^4.9.0",
"plop": "2.3.0",
"runjs": "^4.3.2",
"sass-loader": "^7.1.0",
"script-ext-html-webpack-plugin": "2.1.3",
"script-loader": "0.7.2",
"serve-static": "^1.13.2",
"svg-sprite-loader": "4.1.3",
"svgo": "1.2.0",
"vue-template-compiler": "2.6.10"
},
"engines": {
"node": ">=8.9",
"npm": ">= 3.0.0"
},
"browserslist": [
"> 1%",
"last 2 versions"
]
}
{
"name": "ruoyi",
"version": "2.2.0",
"description": "若依管理系统",
"author": "若依",
"license": "MIT",
"scripts": {
"dev": "vue-cli-service serve",
"build:prod": "vue-cli-service build",
"build:stage": "vue-cli-service build --mode staging",
"preview": "node build/index.js --preview",
"lint": "eslint --ext .js,.vue src",
"test:unit": "jest --clearCache && vue-cli-service test:unit",
"test:ci": "npm run lint && npm run test:unit",
"svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml",
"new": "plop"
},
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"src/**/*.{js,vue}": [
"eslint --fix",
"git add"
]
},
"keywords": [
"vue",
"admin",
"dashboard",
"element-ui",
"boilerplate",
"admin-template",
"management-system"
],
"repository": {
"type": "git",
"url": "https://gitee.com/y_project/RuoYi-Vue.git"
},
"dependencies": {
"@handsontable/vue": "^4.1.1",
"@riophae/vue-treeselect": "0.4.0",
"axios": "0.18.1",
"clipboard": "2.0.4",
"echarts": "4.2.1",
"element-ui": "2.13.0",
"file-saver": "2.0.1",
"fuse.js": "3.4.4",
"handsontable": "^7.4.2",
"js-beautify": "^1.10.2",
"js-cookie": "2.2.0",
"jsencrypt": "3.0.0-rc.1",
"normalize.css": "7.0.0",
"nprogress": "0.2.0",
"path-to-regexp": "2.4.0",
"screenfull": "4.2.0",
"sortablejs": "1.8.4",
"vue": "2.6.10",
"vue-count-to": "1.0.13",
"vue-cropper": "0.4.9",
"vue-quill-editor": "3.0.6",
"vue-router": "3.0.2",
"vue-splitpane": "1.0.4",
"vuedraggable": "2.20.0",
"vuex": "3.1.0"
},
"devDependencies": {
"@babel/core": "7.0.0",
"@babel/register": "7.0.0",
"@babel/parser": "^7.7.4",
"@vue/cli-plugin-babel": "3.5.3",
"@vue/cli-plugin-eslint": "^3.9.1",
"@vue/cli-plugin-unit-jest": "3.5.3",
"@vue/cli-service": "3.5.3",
"@vue/test-utils": "1.0.0-beta.29",
"autoprefixer": "^9.5.1",
"babel-core": "7.0.0-bridge.0",
"babel-eslint": "10.0.1",
"babel-jest": "23.6.0",
"chalk": "2.4.2",
"chokidar": "2.1.5",
"connect": "3.6.6",
"eslint": "5.15.3",
"eslint-plugin-vue": "5.2.2",
"html-webpack-plugin": "3.2.0",
"http-proxy-middleware": "^0.19.1",
"husky": "1.3.1",
"lint-staged": "8.1.5",
"mockjs": "1.0.1-beta3",
"node-sass": "^4.9.0",
"plop": "2.3.0",
"runjs": "^4.3.2",
"sass-loader": "^7.1.0",
"script-ext-html-webpack-plugin": "2.1.3",
"script-loader": "0.7.2",
"serve-static": "^1.13.2",
"svg-sprite-loader": "4.1.3",
"svgo": "1.2.0",
"vue-template-compiler": "2.6.10"
},
"engines": {
"node": ">=8.9",
"npm": ">= 3.0.0"
},
"browserslist": [
"> 1%",
"last 2 versions"
]
}

View File

@ -0,0 +1,10 @@
import request from '@/utils/request'
// 查询人工住宅租赁基价列表
export function list(query) {
return request({
url: '/data/rentprice/residence/artificial/list',
method: 'get',
params: query
})
}

View File

@ -0,0 +1,36 @@
import request from '@/utils/request'
// 查询【请填写功能名称】列表
export function list(query) {
return request({
url: '/data/rentprice/residence/compute/list',
method: 'get',
params: query
})
}
// 查询【请填写功能名称】详细
export function get(id) {
return request({
url: '/data/rentprice/residence/compute/' + id,
method: 'get'
})
}
// 修改【请填写功能名称】
export function update(data) {
return request({
url: '/data/rentprice/residence/compute',
method: 'put',
data: data
})
}
// 导出【请填写功能名称】
export function export2File(query) {
return request({
url: '/data/rentprice/residence/compute/export',
method: 'get',
params: query
})
}

View File

@ -0,0 +1,183 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="100px">
<el-form-item label="年月" prop="yearMonth" clearable>
<el-date-picker
v-model="queryParams.yearMonth"
format="yyyyMM"
value-format="yyyyMM"
type="month"
placeholder="选择年月"
@keyup.enter.native="handleQuery"
></el-date-picker>
</el-form-item>
<el-form-item label="联城小区ID" prop="communityId" clearable>
<el-input
v-model="queryParams.communityId"
placeholder="请输入案例小区名称"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="dataList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="年月" align="center" prop="yearMonth" />
<el-table-column label="小区ID" align="center" prop="communityId" />
<el-table-column label="租金主力面积系数" align="center" prop="mainRentCoefficient" />
<el-table-column label="平均租金" align="center" prop="rentPrice" />
<el-table-column label="主力面积租金" align="center" prop="mainRentPrice" />
<el-table-column label="平均租金(上周期)" align="center" prop="rentPrice_1" />
<el-table-column label="价格涨跌幅类型-调整后" align="center" prop="voppat" />
<el-table-column label="价格涨跌幅-调整后" align="center" prop="voppa" />
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageIndex"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</div>
</template>
<script>
import { getToken } from "@/utils/auth";
import {
list
} from "@/api/data/artificialResidenceRentPrice";
export default {
name: "artificialResidenceRentBasePrice",
data() {
//
var checkYearMonth = (rule, value, callback) => {
console.log(value);
if (value === "" || !isNaN(parseInt(value))) {
callback(new Error("请输入年月"));
} else {
callback();
}
};
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
total: 0,
//
dataList: [],
//
title: "",
//
open: false,
//
queryParams: {
yearMonth: undefined,
communityId: undefined,
communityName: undefined,
pageIndex: 1,
pageSize: 10
},
statusOptions: [
{ value: 1, text: "正常" },
{ value: 1, text: "失效" }
],
upload: {
//
open: false,
//
title: "",
//
isUploading: false,
//
headers: { Authorization: "Bearer " + getToken() },
//
url:
process.env.VUE_APP_BASE_API +
"/data/rentprice/residence/artificial/importData"
},
//
form: {},
//
rules: {
yearMonth: [{ validator: checkYearMonth, trigger: "blur" }]
}
};
},
created() {
this.loading = false;
// this.getList();
},
methods: {
yesOrNotFormatter: function(row, column, cellValue, index) {
if (cellValue) return "是";
return "否";
},
statusFormatter: function(row, column, cellValue, index) {
if (cellValue) return "正常";
return "失效";
},
dateFormatter: function(row, column, cellValue, index) {
if (cellValue) {
return cellValue.substring(0, 10);
}
return "";
},
/** 查询办公基价列表 */
getList() {
this.loading = true;
this.$refs["queryForm"].validate(valid => {
if (valid) {
list(this.queryParams).then(response => {
this.dataList = response.rows;
this.total = response.total;
this.loading = false;
});
}
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageIndex = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id);
this.single = selection.length != 1;
this.multiple = !selection.length;
}
}
};
</script>

View File

@ -0,0 +1,405 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="100px">
<el-form-item label="年月" prop="yearMonth" clearable>
<el-date-picker
v-model="queryParams.yearMonth"
format="yyyyMM"
type="month"
placeholder="选择年月"
@keyup.enter.native="handleQuery"
></el-date-picker>
</el-form-item>
<el-form-item label="联城小区ID" prop="communityId" clearable>
<el-input
v-model="queryParams.communityId"
placeholder="请输入案例小区名称"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="联城楼栋ID" prop="buildingId" clearable>
<el-input
v-model="queryParams.buildingId"
placeholder="请输入联城楼栋ID"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="状态">
<el-select v-model="queryParams.status" clearable>
<el-option label="正常" value="1"></el-option>
<el-option label="失效" value="0"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="success"
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['system:ultimate:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['system:user:export']"
>导出</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="info"
icon="el-icon-upload2"
size="mini"
@click="handleImport"
v-hasPermi="['system:user:import']"
>导入</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="ultimateList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="年月" align="center" prop="yearMonth" />
<el-table-column label="小区ID" align="center" prop="communityId" />
<el-table-column label="楼栋ID" align="center" prop="buildingId" />
<el-table-column label="主力基价" align="center" prop="mainPrice" />
<el-table-column label="主力租金" align="center" prop="mainPriceRent" />
<el-table-column label="主力基价涨跌幅" align="center" prop="mainPricePst" />
<el-table-column label="主力租金涨跌幅" align="center" prop="mainPriceRentPst" />
<el-table-column label="主力基价类型" align="center" prop="mainPriceType" />
<el-table-column label="主力租金类型" align="center" prop="mainPriceRentType" />
<el-table-column label="状态" align="center" prop="status" :formatter="statusFormatter" />
<el-table-column
label="标准楼栋"
align="center"
prop="standardBuilding"
:formatter="yesOrNotFormatter"
/>
<el-table-column label="价格更改说明" align="center" prop="adjustPriceComment" />
<el-table-column label="更新日期" align="center" prop="updateDate" :formatter="dateFormatter" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['system:user:edit']"
>修改</el-button>
<!-- <el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['system:user:remove']"
>删除</el-button>-->
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改办公基价对话框 -->
<el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="160px">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="小区ID">
<el-input v-model="form.communityId" disabled="true" readonly />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="楼栋ID">
<el-input v-model="form.buildingId" disabled="true" readonly />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="主力基价(元/㎡)">
<el-input v-model="form.mainPrice" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="主力租金(元/月·㎡)">
<el-input v-model="form.mainPriceRent" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="主力基价涨跌幅">
<el-input v-model="form.mainPricePst" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="主力租金涨跌幅">
<el-input v-model="form.mainPriceRentPst" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="主力基价类型">
<el-input v-model="form.mainPriceType" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="主力租金类型">
<el-input v-model="form.mainPriceRentType" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<el-dialog :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
<el-upload
ref="upload"
:limit="1"
accept=".xlsx, .xls"
:headers="upload.headers"
:action="upload.url + '?updateSupport=' + upload.updateSupport"
:disabled="upload.isUploading"
:on-progress="handleFileUploadProgress"
:on-success="handleFileSuccess"
:auto-upload="false"
drag
>
<i class="el-icon-upload"></i>
<div class="el-upload__text">
将文件拖到此处
<em>点击上传</em>
</div>
<div class="el-upload__tip" style="color:red" slot="tip">提示仅允许导入xlsxlsx格式文件</div>
</el-upload>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitFileForm"> </el-button>
<el-button @click="upload.open = false"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { getToken } from "@/utils/auth";
import {
listUltimate,
getUltimate,
updateUltimate,
exportUltimate
} from "@/api/data/ultimateOfficeBasePrice";
export default {
name: "Ultimate",
data() {
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
total: 0,
//
ultimateList: [],
//
title: "",
//
open: false,
//
queryParams: {
yearMonth: undefined,
communityId: undefined,
buildingId: undefined,
pageNum: 1,
pageSize: 10
},
statusOptions: [
{ value: 1, text: "正常" },
{ value: 1, text: "失效" }
],
upload: {
//
open: false,
//
title: "",
//
isUploading: false,
//
headers: { Authorization: "Bearer " + getToken() },
//
url:
process.env.VUE_APP_BASE_API + "/data/compute/price/office/importData"
},
//
form: {},
//
rules: {}
};
},
created() {
this.getList();
},
methods: {
yesOrNotFormatter: function(row, column, cellValue, index) {
if (cellValue) return "是";
return "否";
},
statusFormatter: function(row, column, cellValue, index) {
if (cellValue) return "正常";
return "失效";
},
dateFormatter: function(row, column, cellValue, index) {
if (cellValue) {
return cellValue.substring(0, 10);
}
return "";
},
/** 查询办公基价列表 */
getList() {
this.loading = true;
listUltimate(this.queryParams).then(response => {
this.ultimateList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id);
this.single = selection.length != 1;
this.multiple = !selection.length;
},
/** 新增按钮操作 */
// handleAdd() {
// this.reset();
// this.open = true;
// this.title = "";
// },
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids;
getUltimate(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改办公基价";
});
},
/** 提交按钮 */
submitForm: function() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != undefined) {
updateUltimate(this.form).then(response => {
if (response.code === 200) {
this.msgSuccess("修改成功");
this.open = false;
this.getList();
} else {
this.msgError(response.msg);
}
});
} else {
addUltimate(this.form).then(response => {
if (response.code === 200) {
this.msgSuccess("新增成功");
this.open = false;
this.getList();
} else {
this.msgError(response.msg);
}
});
}
}
});
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
this.$confirm("是否确认导出所有办公基价数据项?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(function() {
return exportUltimate(queryParams);
})
.then(response => {
this.download(response.msg);
})
.catch(function() {});
},
handleImport() {
this.upload.title = "办公基价导入";
this.upload.open = true;
},
//
handleFileUploadProgress(event, file, fileList) {
this.upload.isUploading = true;
},
//
handleFileSuccess(response, file, fileList) {
this.upload.open = false;
this.upload.isUploading = false;
this.$refs.upload.clearFiles();
this.$alert(response.msg, "导入结果", { dangerouslyUseHTMLString: true });
this.getList();
},
//
submitFileForm() {
this.$refs.upload.submit();
}
}
};
</script>

View File

@ -0,0 +1,471 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="100px">
<el-form-item label="年月" prop="yearMonth" clearable>
<el-date-picker
v-model="queryParams.yearMonth"
format="yyyyMM"
value-format="yyyyMM"
type="month"
placeholder="选择年月"
@keyup.enter.native="handleQuery"
></el-date-picker>
</el-form-item>
<el-form-item label="联城小区ID" prop="communityId" clearable>
<el-input
v-model="queryParams.communityId"
placeholder="请输入案例小区名称"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="联城小区名称" prop="communityName" clearable>
<el-input
v-model="queryParams.communityName"
placeholder="请输入小区名称"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="success"
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['system:user:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['system:user:export']"
>导出</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="info"
icon="el-icon-upload2"
size="mini"
@click="handleImport"
v-hasPermi="['system:user:import']"
>导入</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="dataList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="年月" align="center" prop="yearMonth" />
<el-table-column label="小区ID" align="center" prop="communityId" />
<el-table-column label="小区名称" align="center" prop="communityName" />
<el-table-column label="小区地址" align="center" prop="communityAddress" />
<el-table-column label="区域" align="center" prop="county" />
<el-table-column label="板块" align="center" prop="block" />
<el-table-column label="环线" align="center" prop="loop" />
<el-table-column
label="是否生成索引"
align="center"
prop="isIndxGen"
:formatter="yesOrNotFormatter"
/>
<el-table-column
label="参与涨幅计算"
align="center"
prop="isPstCalc"
:formatter="yesOrNotFormatter"
/>
<el-table-column label="运行状态" align="center" prop="statusRun" />
<el-table-column label="物业类型" align="center" prop="propertyType" />
<el-table-column label="小区类型" align="center" prop="projectType" />
<el-table-column label="小区类型细分" align="center" prop="projectTypeDtl" />
<el-table-column label="物业档次" align="center" prop="projectLevel" />
<el-table-column label="物业开发期数" align="center" prop="propertyDevPeriod" />
<el-table-column label="绑定聚类ID" align="center" prop="bindClassID" />
<el-table-column label="租金主力面积系数" align="center" prop="mainCoefficientRent" />
<el-table-column label="AI租金(草稿)" align="center" prop="rentPriceDft" />
<el-table-column label="主力面积租金(草稿)" align="center" prop="mainRentPriceDft" />
<el-table-column label="上月AI租金" align="center" prop="rentPrice_1" />
<el-table-column label="成交均价(上周期)" align="center" prop="priceDealMean_1" />
<el-table-column label="成交最大价(上周期)" align="center" prop="priceDealMax_1" />
<el-table-column label="成交数量(上周期)" align="center" prop="sumDeal_1" />
<el-table-column label="成交均价相对AI租金涨跌幅(上周期)" align="center" prop="priceDeal_1_ToAI_Pst" />
<el-table-column label="成交均价" align="center" prop="priceDealMean" />
<el-table-column label="成交最大价" align="center" prop="priceDealMax" />
<el-table-column label="成交数量" align="center" prop="sumDeal" />
<el-table-column label="成交均价相对AI租金涨跌幅" align="center" prop="priceDeal_ToAI_Pst" />
<el-table-column label="当月比上月成交案例价调整比例" align="center" prop="priceDeal_ToLst_Pst" />
<el-table-column label="挂牌下架案例均价" align="center" prop="priceCaseOff" />
<el-table-column label="当月比上月挂牌下架案例价调整比例" align="center" prop="priceCaseOff_ToLst_Pst" />
<el-table-column label="挂牌最低价" align="center" prop="priceListedMin" />
<el-table-column label="挂牌最低价相对AI租金涨跌幅" align="center" prop="priceLstMn_ToAI_Pst" />
<el-table-column label="与上月AI租金比链家1案例价格价调整比例" align="center" prop="priceCase1_ToAI_Pst" />
<el-table-column label="与上月AI租金比链家2案例价格价调整比例" align="center" prop="priceCase2_ToAI_Pst" />
<el-table-column label="当月比上月链家1案例价调整比例" align="center" prop="priceCase1_ToLst_Pst" />
<el-table-column label="当月比上月链家2案例价调整比例" align="center" prop="priceCase2_ToLst_Pst" />
<el-table-column label="链家1案例价" align="center" prop="priceCase1" />
<el-table-column label="链家1调价幅度" align="center" prop="priceCase1AdjPst" />
<el-table-column label="链家1案例总量" align="center" prop="sumCase1" />
<el-table-column label="链家2案例价" align="center" prop="priceCase2" />
<el-table-column label="链家2调价幅度" align="center" prop="priceCase2AdjPst" />
<el-table-column label="链家2案例总量" align="center" prop="sumCase2" />
<el-table-column label="价格涨跌幅类型-调整前" align="center" prop="voppbt" />
<el-table-column label="价格涨跌幅-调整前" align="center" prop="voppb" />
<el-table-column label="绑定小区编号" align="center" prop="bindProjID" />
<el-table-column label="绑定小区涨跌幅" align="center" prop="bind_Proj_Pst" />
<el-table-column label="绑定板块+聚类ID" align="center" prop="bind_Block_Class" />
<el-table-column label="绑定板块+聚类ID的涨跌幅" align="center" prop="bind_Block_Class_Pst" />
<el-table-column label="绑定板块+物业档次" align="center" prop="bind_Block_Plevel" />
<el-table-column label="绑定板块+物业档次的涨跌幅" align="center" prop="bind_Block_Plevel_Pst" />
<el-table-column label="绑定板块+小区类型" align="center" prop="bind_Block_PType" />
<el-table-column label="绑定板块+小区类型的涨跌幅" align="center" prop="bind_Block_Ptype_Pst" />
<el-table-column label="绑定区县+小区类型" align="center" prop="bind_County_PType" />
<el-table-column label="绑定区县+小区类型的涨跌幅" align="center" prop="bind_County_Ptype_Pst" />
<el-table-column label="绑定混合小区ID" align="center" prop="bind_MixProject_PType" />
<el-table-column label="绑定混合小区涨跌幅" align="center" prop="bind_MixProject_Pst" />
<el-table-column label="价格涨跌幅类型-调整后" align="center" prop="voppat" />
<el-table-column label="价格涨跌幅-调整后" align="center" prop="voppa" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['system:user:edit']"
>修改</el-button>
<!-- <el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['system:user:remove']"
>删除</el-button>-->
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageIndex"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改办公基价对话框 -->
<!-- <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="160px">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="小区ID">
<el-input v-model="form.communityId" disabled="true" readonly />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="楼栋ID">
<el-input v-model="form.buildingId" disabled="true" readonly />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="主力基价(元/㎡)">
<el-input v-model="form.mainPrice" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="主力租金(元/月·㎡)">
<el-input v-model="form.mainPriceRent" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="主力基价涨跌幅">
<el-input v-model="form.mainPricePst" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="主力租金涨跌幅">
<el-input v-model="form.mainPriceRentPst" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="主力基价类型">
<el-input v-model="form.mainPriceType" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="主力租金类型">
<el-input v-model="form.mainPriceRentType" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<el-dialog :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
<el-upload
ref="upload"
:limit="1"
accept=".xlsx, .xls"
:headers="upload.headers"
:action="upload.url + '?updateSupport=' + upload.updateSupport"
:disabled="upload.isUploading"
:on-progress="handleFileUploadProgress"
:on-success="handleFileSuccess"
:auto-upload="false"
drag
>
<i class="el-icon-upload"></i>
<div class="el-upload__text">
将文件拖到此处
<em>点击上传</em>
</div>
<div class="el-upload__tip" style="color:red" slot="tip">提示仅允许导入xlsxlsx格式文件</div>
</el-upload>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitFileForm"> </el-button>
<el-button @click="upload.open = false"> </el-button>
</div>
</el-dialog>-->
</div>
</template>
<script>
import { getToken } from "@/utils/auth";
import {
list,
get,
update,
export2File
} from "@/api/data/computeResidenceRentPrice";
export default {
name: "computeResidenceRentBasePrice",
data() {
//
var checkYearMonth = (rule, value, callback) => {
console.log(value);
if (value === "" || !isNaN(parseInt(value))) {
callback(new Error("请输入年月"));
} else {
callback();
}
};
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
total: 0,
//
dataList: [],
//
title: "",
//
open: false,
//
queryParams: {
yearMonth: undefined,
communityId: undefined,
communityName: undefined,
pageIndex: 1,
pageSize: 10
},
statusOptions: [
{ value: 1, text: "正常" },
{ value: 1, text: "失效" }
],
upload: {
//
open: false,
//
title: "",
//
isUploading: false,
//
headers: { Authorization: "Bearer " + getToken() },
//
url:
process.env.VUE_APP_BASE_API +
"/data/compute/rentprice/residence/importData"
},
//
form: {},
//
rules: {
yearMonth: [{ validator: checkYearMonth, trigger: "blur" }]
}
};
},
created() {
this.loading = false;
// this.getList();
},
methods: {
yesOrNotFormatter: function(row, column, cellValue, index) {
if (cellValue) return "是";
return "否";
},
statusFormatter: function(row, column, cellValue, index) {
if (cellValue) return "正常";
return "失效";
},
dateFormatter: function(row, column, cellValue, index) {
if (cellValue) {
return cellValue.substring(0, 10);
}
return "";
},
/** 查询办公基价列表 */
getList() {
this.loading = true;
this.$refs["queryForm"].validate(valid => {
if (valid) {
list(this.queryParams).then(response => {
this.dataList = response.rows;
this.total = response.total;
this.loading = false;
});
}
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageIndex = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id);
this.single = selection.length != 1;
this.multiple = !selection.length;
},
/** 新增按钮操作 */
// handleAdd() {
// this.reset();
// this.open = true;
// this.title = "";
// },
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids;
get(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改办公基价";
});
},
/** 提交按钮 */
submitForm: function() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != undefined) {
update(this.form).then(response => {
if (response.code === 200) {
this.msgSuccess("修改成功");
this.open = false;
this.getList();
} else {
this.msgError(response.msg);
}
});
} else {
// addUltimate(this.form).then(response => {
// if (response.code === 200) {
// this.msgSuccess("");
// this.open = false;
// this.getList();
// } else {
// this.msgError(response.msg);
// }
// });
}
}
});
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
this.$confirm("是否确认导出所有住宅租赁基价数据项?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(function() {
return export2File(queryParams);
})
.then(response => {
this.download(response.msg);
})
.catch(function() {});
},
handleImport() {
this.upload.title = "办公基价导入";
this.upload.open = true;
},
//
handleFileUploadProgress(event, file, fileList) {
this.upload.isUploading = true;
},
//
handleFileSuccess(response, file, fileList) {
this.upload.open = false;
this.upload.isUploading = false;
this.$refs.upload.clearFiles();
this.$alert(response.msg, "导入结果", { dangerouslyUseHTMLString: true });
this.getList();
},
//
submitFileForm() {
this.$refs.upload.submit();
}
}
};
</script>

View File

@ -1,41 +0,0 @@
package com.ruoyi.project.data.price.compute.service;
import com.ruoyi.project.data.price.compute.domain.OfficeBasePriceUltimate;
import com.ruoyi.project.system.domain.SysUser;
import java.util.List;
/**
* 请填写功能名称Service接口
*
* @author ruoyi
* @date 2020-05-20
*/
public interface IOfficeBasePriceUltimateService {
/**
* 查询请填写功能名称列表
*
* @param officeBasePriceUltimate 请填写功能名称
* @return 请填写功能名称集合
*/
List<OfficeBasePriceUltimate> selectOfficeBasePriceUltimateList(OfficeBasePriceUltimate officeBasePriceUltimate);
int selectOfficeBasePriceUltimateListCount(OfficeBasePriceUltimate officeBasePriceUltimate);
OfficeBasePriceUltimate selectOfficeBasePriceUltimateById(String id);
int updateOfficeBasePriceUltimate(OfficeBasePriceUltimate officeBasePriceUltimate);
/**
*
* @param officeBasePriceUltimates
* @param operName
* @return
*/
String batchImport(List<OfficeBasePriceUltimate> officeBasePriceUltimates,String operName);
}

View File

@ -0,0 +1,107 @@
//package com.ruoyi.project.data.price.controller;
//
//import com.ruoyi.common.utils.ServletUtils;
//import com.ruoyi.common.utils.poi.ExcelUtil;
//import com.ruoyi.framework.aspectj.lang.annotation.Log;
//import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
//import com.ruoyi.framework.security.LoginUser;
//import com.ruoyi.framework.security.service.TokenService;
//import com.ruoyi.framework.web.controller.BaseController;
//import com.ruoyi.framework.web.domain.AjaxResult;
//import com.ruoyi.framework.web.page.TableDataInfo;
//import com.ruoyi.framework.web.page.TableSupport;
//import com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice;
//import com.ruoyi.project.data.price.service.IOfficeBasePriceUltimateService;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.security.access.prepost.PreAuthorize;
//import org.springframework.web.bind.annotation.*;
//import org.springframework.web.multipart.MultipartFile;
//
//import java.util.List;
//
///**
// * 请填写功能名称Controller
// *
// * @author ruoyi
// * @date 2020-05-20
// */
//@RestController
//@RequestMapping("/data/compute/price/office")
//public class ArtificialOfficeBasePriceController extends BaseController {
// @Autowired
// private IOfficeBasePriceUltimateService officeBasePriceUltimateService;
// @Autowired
// private TokenService tokenService;
//
// /**
// * 查询请填写功能名称列表
// */
// @PreAuthorize("@ss.hasPermi('system:user:list')")
// @GetMapping("/list")
// public TableDataInfo list(OfficeBasePriceUltimate officeBasePriceUltimate) {
// int pageIndex = ServletUtils.getParameterToInt(TableSupport.PAGE_NUM);
// int pageSize = ServletUtils.getParameterToInt(TableSupport.PAGE_SIZE);
// officeBasePriceUltimate.setPageIndex(pageIndex <= 1 ? 0 : (pageIndex - 1) * pageSize);
// officeBasePriceUltimate.setPageSize(pageSize);
// List<OfficeBasePriceUltimate> list =
// officeBasePriceUltimateService.selectOfficeBasePriceUltimateList(officeBasePriceUltimate);
// int total = officeBasePriceUltimateService.selectOfficeBasePriceUltimateListCount(officeBasePriceUltimate);
// return getDataTable(list, total);
// }
//
//
// /**
// * 获取请填写功能名称详细信息
// */
// @PreAuthorize("@ss.hasPermi('system:user:query')")
// @GetMapping(value = "/{id}")
// public AjaxResult getInfo(@PathVariable("id") String id) {
// return AjaxResult.success(officeBasePriceUltimateService.selectOfficeBasePriceUltimateById(id));
// }
//
// /**
// * 修改请填写功能名称
// */
// @PreAuthorize("@ss.hasPermi('system:user:edit')")
// @Log(title = "办公基价", businessType = BusinessType.UPDATE)
// @PutMapping
// public AjaxResult edit(@RequestBody OfficeBasePriceUltimate officeBasePriceUltimate) {
// return toAjax(officeBasePriceUltimateService.updateOfficeBasePriceUltimate(officeBasePriceUltimate));
// }
//
// /**
// * 导出请填写功能名称列表
// */
// @PreAuthorize("@ss.hasPermi('system:user:export')")
// @Log(title = "办公基价", businessType = BusinessType.EXPORT)
// @GetMapping("/export")
// public AjaxResult export(OfficeBasePriceUltimate officeBasePriceUltimate) {
// int total = officeBasePriceUltimateService.selectOfficeBasePriceUltimateListCount(officeBasePriceUltimate);
// officeBasePriceUltimate.setPageIndex(0);
// officeBasePriceUltimate.setPageSize(total);
// List<OfficeBasePriceUltimate> list =
// officeBasePriceUltimateService.selectOfficeBasePriceUltimateList(officeBasePriceUltimate);
// ExcelUtil<OfficeBasePriceUltimate> util = new ExcelUtil<OfficeBasePriceUltimate>(OfficeBasePriceUltimate.class);
// return util.exportExcel(list, "办公基价");
// }
//
// /**
// * 办公基价导入
// * @param file
// * @return
// * @throws Exception
// */
// @Log(title = "办公基价", businessType = BusinessType.IMPORT)
// @PreAuthorize("@ss.hasPermi('system:user:import')")
// @PostMapping("/importData")
// public AjaxResult importData(MultipartFile file) throws Exception {
// ExcelUtil<OfficeBasePriceUltimate> util = new ExcelUtil<>(OfficeBasePriceUltimate.class);
// List<OfficeBasePriceUltimate> officeBasePriceUltimates = util.importExcel(file.getInputStream());
// LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
// String operName = loginUser.getUsername();
// String message = officeBasePriceUltimateService.batchImport(officeBasePriceUltimates, operName);
// return AjaxResult.success(message);
// }
//
//}
//

View File

@ -0,0 +1,4 @@
package com.ruoyi.project.data.price.controller;
public class ArtificialResidenceSaleBasePriceController {
}

View File

@ -1,4 +1,4 @@
package com.ruoyi.project.data.price.compute.controller;
package com.ruoyi.project.data.price.controller;
import java.util.List;
@ -6,15 +6,13 @@ import com.ruoyi.common.utils.ServletUtils;
import com.ruoyi.framework.security.LoginUser;
import com.ruoyi.framework.security.service.TokenService;
import com.ruoyi.framework.web.page.TableSupport;
import com.ruoyi.project.data.price.compute.domain.OfficeBasePriceUltimate;
import com.ruoyi.project.data.price.compute.service.IOfficeBasePriceUltimateService;
import com.ruoyi.project.system.domain.SysUser;
import com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice;
import com.ruoyi.project.data.price.service.IUltimateOfficeBasePriceService;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@ -35,9 +33,9 @@ import org.springframework.web.multipart.MultipartFile;
*/
@RestController
@RequestMapping("/data/compute/price/office")
public class OfficeBasePriceUltimateController extends BaseController {
public class ComputeOfficeBasePriceController extends BaseController {
@Autowired
private IOfficeBasePriceUltimateService officeBasePriceUltimateService;
private IUltimateOfficeBasePriceService officeBasePriceUltimateService;
@Autowired
private TokenService tokenService;
@ -46,12 +44,12 @@ public class OfficeBasePriceUltimateController extends BaseController {
*/
@PreAuthorize("@ss.hasPermi('system:user:list')")
@GetMapping("/list")
public TableDataInfo list(OfficeBasePriceUltimate officeBasePriceUltimate) {
public TableDataInfo list(UltimateOfficeBasePrice officeBasePriceUltimate) {
int pageIndex = ServletUtils.getParameterToInt(TableSupport.PAGE_NUM);
int pageSize = ServletUtils.getParameterToInt(TableSupport.PAGE_SIZE);
officeBasePriceUltimate.setPageIndex(pageIndex <= 1 ? 0 : (pageIndex - 1) * pageSize);
officeBasePriceUltimate.setPageSize(pageSize);
List<OfficeBasePriceUltimate> list =
List<UltimateOfficeBasePrice> list =
officeBasePriceUltimateService.selectOfficeBasePriceUltimateList(officeBasePriceUltimate);
int total = officeBasePriceUltimateService.selectOfficeBasePriceUltimateListCount(officeBasePriceUltimate);
return getDataTable(list, total);
@ -73,7 +71,7 @@ public class OfficeBasePriceUltimateController extends BaseController {
@PreAuthorize("@ss.hasPermi('system:user:edit')")
@Log(title = "办公基价", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody OfficeBasePriceUltimate officeBasePriceUltimate) {
public AjaxResult edit(@RequestBody UltimateOfficeBasePrice officeBasePriceUltimate) {
return toAjax(officeBasePriceUltimateService.updateOfficeBasePriceUltimate(officeBasePriceUltimate));
}
@ -83,18 +81,19 @@ public class OfficeBasePriceUltimateController extends BaseController {
@PreAuthorize("@ss.hasPermi('system:user:export')")
@Log(title = "办公基价", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public AjaxResult export(OfficeBasePriceUltimate officeBasePriceUltimate) {
public AjaxResult export(UltimateOfficeBasePrice officeBasePriceUltimate) {
int total = officeBasePriceUltimateService.selectOfficeBasePriceUltimateListCount(officeBasePriceUltimate);
officeBasePriceUltimate.setPageIndex(0);
officeBasePriceUltimate.setPageSize(total);
List<OfficeBasePriceUltimate> list =
List<UltimateOfficeBasePrice> list =
officeBasePriceUltimateService.selectOfficeBasePriceUltimateList(officeBasePriceUltimate);
ExcelUtil<OfficeBasePriceUltimate> util = new ExcelUtil<OfficeBasePriceUltimate>(OfficeBasePriceUltimate.class);
ExcelUtil<UltimateOfficeBasePrice> util = new ExcelUtil<>(UltimateOfficeBasePrice.class);
return util.exportExcel(list, "办公基价");
}
/**
* 办公基价导入
*
* @param file
* @return
* @throws Exception
@ -103,13 +102,12 @@ public class OfficeBasePriceUltimateController extends BaseController {
@PreAuthorize("@ss.hasPermi('system:user:import')")
@PostMapping("/importData")
public AjaxResult importData(MultipartFile file) throws Exception {
ExcelUtil<OfficeBasePriceUltimate> util = new ExcelUtil<>(OfficeBasePriceUltimate.class);
List<OfficeBasePriceUltimate> officeBasePriceUltimates = util.importExcel(file.getInputStream());
ExcelUtil<UltimateOfficeBasePrice> util = new ExcelUtil<>(UltimateOfficeBasePrice.class);
List<UltimateOfficeBasePrice> officeBasePriceUltimates = util.importExcel(file.getInputStream());
LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
String operName = loginUser.getUsername();
String message = officeBasePriceUltimateService.batchImport(officeBasePriceUltimates, operName);
return AjaxResult.success(message);
}
}

View File

@ -0,0 +1,4 @@
package com.ruoyi.project.data.price.controller;
public class ComputeResidenceSaleBasePriceController {
}

View File

@ -0,0 +1,189 @@
package com.ruoyi.project.data.price.controller;
import com.ruoyi.common.utils.ServletUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.framework.aspectj.lang.annotation.Log;
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
import com.ruoyi.framework.security.LoginUser;
import com.ruoyi.framework.security.service.TokenService;
import com.ruoyi.framework.web.controller.BaseController;
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.framework.web.page.TableDataInfo;
import com.ruoyi.framework.web.page.TableSupport;
import com.ruoyi.project.data.price.domain.ArtificialResidenceRentBasePrice;
import com.ruoyi.project.data.price.domain.ComputeResidenceRentBasePrice;
import com.ruoyi.project.data.price.domain.UltimateResidenceRentBasePrice;
import com.ruoyi.project.data.price.service.IArtificialResidenceRentPriceService;
import com.ruoyi.project.data.price.service.IComputeResidenceRentPriceService;
import com.ruoyi.project.data.price.service.IUltimateResidenceRentBasePriceService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
@RestController
@RequestMapping("/data/rentprice/residence")
public class ResidenceRentBasePriceController extends BaseController {
@Autowired
private IComputeResidenceRentPriceService computeResidenceRentPriceService;
@Autowired
private IArtificialResidenceRentPriceService artificialResidenceRentPriceService;
@Autowired
private IUltimateResidenceRentBasePriceService ultimateResidenceRentBasePriceService;
@Autowired
private TokenService tokenService;
/**
* 查询 住宅租赁基价列表
*/
@PreAuthorize("@ss.hasPermi('system:user:list')")
@GetMapping("/compute/list")
public TableDataInfo list(ComputeResidenceRentBasePrice computeResidenceRentBasePrice) {
int pageIndex = ServletUtils.getParameterToInt("pageIndex");
int pageSize = ServletUtils.getParameterToInt(TableSupport.PAGE_SIZE);
computeResidenceRentBasePrice.setPageIndex(pageIndex <= 1 ? 0 : (pageIndex - 1) * pageSize);
computeResidenceRentBasePrice.setPageSize(pageSize);
int total = computeResidenceRentPriceService.selectCount(computeResidenceRentBasePrice);
List<ComputeResidenceRentBasePrice> list =
computeResidenceRentPriceService.selectList(computeResidenceRentBasePrice);
list.forEach(x -> x.setYearMonth(computeResidenceRentBasePrice.getYearMonth()));
return getDataTable(list, total);
}
/**
* 获取 住宅租赁基价详细信息
*/
@PreAuthorize("@ss.hasPermi('system:user:query')")
@GetMapping(value = "/compute/{id}")
public AjaxResult getInfo(@PathVariable("id") String id) {
return AjaxResult.success(computeResidenceRentPriceService.selectById(id));
}
/**
* 修改 住宅租赁基价
*/
@PreAuthorize("@ss.hasPermi('system:user:edit')")
@Log(title = "住宅租赁基价", businessType = BusinessType.UPDATE)
@PutMapping(value = "/compute")
public AjaxResult edit(@RequestBody ComputeResidenceRentBasePrice computeResidenceRentBasePrice) {
return toAjax(computeResidenceRentPriceService.update(computeResidenceRentBasePrice));
}
/**
* 导出 住宅租赁基价列表
*/
@PreAuthorize("@ss.hasPermi('system:user:export')")
@Log(title = "办公基价", businessType = BusinessType.EXPORT)
@GetMapping("/compute/export")
public AjaxResult export(ComputeResidenceRentBasePrice computeResidenceRentBasePrice) {
int total = computeResidenceRentPriceService.selectCount(computeResidenceRentBasePrice);
computeResidenceRentBasePrice.setPageIndex(0);
computeResidenceRentBasePrice.setPageSize(total);
List<ComputeResidenceRentBasePrice> list =
computeResidenceRentPriceService.selectList(computeResidenceRentBasePrice);
ExcelUtil<ComputeResidenceRentBasePrice> util = new ExcelUtil<>(ComputeResidenceRentBasePrice.class);
return util.exportExcel(list, "住宅租赁基价");
}
/**
* 办公基价导入
*
* @param file
* @return
* @throws Exception
*/
@Log(title = "办公基价", businessType = BusinessType.IMPORT)
@PreAuthorize("@ss.hasPermi('system:user:import')")
@PostMapping("/compute/importData")
public AjaxResult importData(MultipartFile file) throws Exception {
ExcelUtil<ComputeResidenceRentBasePrice> util = new ExcelUtil<>(ComputeResidenceRentBasePrice.class);
List<ComputeResidenceRentBasePrice> computeResidenceRentBasePrices = util.importExcel(file.getInputStream());
LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
String operName = loginUser.getUsername();
String message = computeResidenceRentPriceService.batchImport(computeResidenceRentBasePrices, operName);
return AjaxResult.success(message);
}
/**
* 人工修正住宅租赁
*
* @param artificialResidenceRentBasePrice
* @return
*/
@PreAuthorize("@ss.hasPermi('system:user:list')")
@GetMapping("/artificial/list")
public TableDataInfo artificialByList(ArtificialResidenceRentBasePrice artificialResidenceRentBasePrice) {
int pageIndex = ServletUtils.getParameterToInt("pageIndex");
int pageSize = ServletUtils.getParameterToInt(TableSupport.PAGE_SIZE);
artificialResidenceRentBasePrice.setPageIndex(pageIndex <= 1 ? 0 : (pageIndex - 1) * pageSize);
artificialResidenceRentBasePrice.setPageSize(pageSize);
int total = artificialResidenceRentPriceService.selectCount(artificialResidenceRentBasePrice);
List<ArtificialResidenceRentBasePrice> list =
artificialResidenceRentPriceService.selectList(artificialResidenceRentBasePrice);
list.forEach(x -> x.setYearMonth(artificialResidenceRentBasePrice.getYearMonth()));
return getDataTable(list, total);
}
/**
* 查询 住宅租赁基价列表
*/
@PreAuthorize("@ss.hasPermi('system:user:list')")
@GetMapping("/ultimate/list")
public TableDataInfo ultimateResidenceRentBasePriceList(UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice) {
int pageIndex = ServletUtils.getParameterToInt("pageIndex");
int pageSize = ServletUtils.getParameterToInt(TableSupport.PAGE_SIZE);
ultimateResidenceRentBasePrice.setPageIndex(pageIndex <= 1 ? 0 : (pageIndex - 1) * pageSize);
ultimateResidenceRentBasePrice.setPageSize(pageSize);
int total = ultimateResidenceRentBasePriceService.selectCount(ultimateResidenceRentBasePrice);
List<UltimateResidenceRentBasePrice> list =
ultimateResidenceRentBasePriceService.selectList(ultimateResidenceRentBasePrice);
list.forEach(x -> x.setYearMonth(ultimateResidenceRentBasePrice.getYearMonth()));
return getDataTable(list, total);
}
/**
* 获取 住宅租赁基价详细信息
*/
@PreAuthorize("@ss.hasPermi('system:user:query')")
@GetMapping(value = "/ultimate/{id}")
public AjaxResult ultimateResidenceRentBasePriceGet(@PathVariable("id") Integer id) {
return AjaxResult.success(ultimateResidenceRentBasePriceService.selectById(id));
}
/**
* 修改 住宅租赁基价
*/
@PreAuthorize("@ss.hasPermi('system:user:edit')")
@Log(title = "住宅租赁基价", businessType = BusinessType.UPDATE)
@PutMapping(value = "/ultimate")
public AjaxResult ultimateResidenceRentBasePriceEdit(@RequestBody UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice) {
return toAjax(ultimateResidenceRentBasePriceService.update(ultimateResidenceRentBasePrice));
}
/**
* 导出 住宅租赁基价列表
*/
@PreAuthorize("@ss.hasPermi('system:user:export')")
@Log(title = "审核住宅租赁基价", businessType = BusinessType.EXPORT)
@GetMapping("/ultimate/export")
public AjaxResult ultimateResidenceRentBasePriceExport(UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice) {
int total = ultimateResidenceRentBasePriceService.selectCount(ultimateResidenceRentBasePrice);
ultimateResidenceRentBasePrice.setPageIndex(0);
ultimateResidenceRentBasePrice.setPageSize(total);
List<UltimateResidenceRentBasePrice> list =
ultimateResidenceRentBasePriceService.selectList(ultimateResidenceRentBasePrice);
ExcelUtil<UltimateResidenceRentBasePrice> util = new ExcelUtil<>(UltimateResidenceRentBasePrice.class);
return util.exportExcel(list, "核准住宅租赁基价");
}
}

View File

@ -0,0 +1,4 @@
package com.ruoyi.project.data.price.controller;
public class UltimateResidenceSaleBasePriceController {
}

View File

@ -0,0 +1,127 @@
package com.ruoyi.project.data.price.domain;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;
import java.math.BigDecimal;
/**
* 人工修正住宅租赁对象
*
* @author ruoyi
* @date 2020-05-20
*/
public class ArtificialResidenceRentBasePrice extends BaseEntity {
/**
* 年月
*/
private Integer yearMonth;
private Integer pageIndex;
private Integer pageSize;
@Excel(name = "id")
private String id;
@Excel(name = "小区ID")
private String communityId;
@Excel(name = "平均租金")
private BigDecimal rentPrice;
@Excel(name = "租金主力面积系数")
private BigDecimal mainRentCoefficient;
@Excel(name = "主力面积租金")
private BigDecimal mainRentPrice;
@Excel(name = "上月AI租金")
private BigDecimal rentPrice_1;
@Excel(name = "价格涨跌幅类型-调整后")
private String voppat;
@Excel(name = "价格涨跌幅-调整后")
private BigDecimal voppa;
public Integer getYearMonth() {
return yearMonth;
}
public void setYearMonth(Integer yearMonth) {
this.yearMonth = yearMonth;
}
public Integer getPageIndex() {
return pageIndex;
}
public void setPageIndex(Integer pageIndex) {
this.pageIndex = pageIndex;
}
public Integer getPageSize() {
return pageSize;
}
public void setPageSize(Integer pageSize) {
this.pageSize = pageSize;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getCommunityId() {
return communityId;
}
public void setCommunityId(String communityId) {
this.communityId = communityId;
}
public BigDecimal getMainRentCoefficient() {
return mainRentCoefficient;
}
public void setMainRentCoefficient(BigDecimal mainRentCoefficient) {
this.mainRentCoefficient = mainRentCoefficient;
}
public BigDecimal getRentPrice() {
return rentPrice;
}
public void setRentPrice(BigDecimal rentPrice) {
this.rentPrice = rentPrice;
}
public BigDecimal getMainRentPrice() {
return mainRentPrice;
}
public void setMainRentPrice(BigDecimal mainRentPrice) {
this.mainRentPrice = mainRentPrice;
}
public BigDecimal getRentPrice_1() {
return rentPrice_1;
}
public void setRentPrice_1(BigDecimal rentPrice_1) {
this.rentPrice_1 = rentPrice_1;
}
public String getVoppat() {
return voppat;
}
public void setVoppat(String voppat) {
this.voppat = voppat;
}
public BigDecimal getVoppa() {
return voppa;
}
public void setVoppa(BigDecimal voppa) {
this.voppa = voppa;
}
}

View File

@ -1,8 +1,6 @@
package com.ruoyi.project.data.price.compute.domain;
package com.ruoyi.project.data.price.domain;
import com.alibaba.fastjson.annotation.JSONField;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;
@ -14,7 +12,7 @@ import java.util.Date;
* @author ruoyi
* @date 2020-05-20
*/
public class OfficeBasePriceUltimate extends BaseEntity {
public class ArtificialResidenceSaleBasePrice extends BaseEntity {
private Integer pageIndex;
private Integer pageSize;

View File

@ -0,0 +1,646 @@
package com.ruoyi.project.data.price.domain;
import com.alibaba.fastjson.annotation.JSONField;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;
import java.math.BigDecimal;
import java.util.Date;
/**
* 请填写功能名称对象 office_base_price_ultimate
*
* @author ruoyi
* @date 2020-05-20
*/
public class ComputeResidenceRentBasePrice extends BaseEntity {
/**
* 年月
*/
private Integer yearMonth;
private Integer pageIndex;
private Integer pageSize;
@Excel(name = "id")
private String id;
@Excel(name = "小区ID")
private String communityId;
@Excel(name = "小区名称")
private String communityName;
@Excel(name = "小区地址")
private String communityAddress;
@Excel(name = "区域")
private String county;
@Excel(name = "板块")
private String block;
@Excel(name = "环线")
private String loop;
@Excel(name = "是否生成索引")
private Integer isIndxGen;
@Excel(name = "参与涨幅计算")
private Integer isPstCalc;
@Excel(name = "运行状态")
private Integer statusRun;
@Excel(name = "物业类型")
private String propertyType;
@Excel(name = "小区类型")
private String projectType;
@Excel(name = "小区类型细分")
private String projectTypeDtl;
@Excel(name = "物业档次")
private String projectLevel;
@Excel(name = "物业开发期数")
private Integer propertyDevPeriod;
@Excel(name = "绑定聚类ID")
private String bindClassID;
@Excel(name = "租金主力面积系数")
private BigDecimal mainCoefficientRent;
@Excel(name = "AI租金(草稿)")
private BigDecimal rentPriceDft;
@Excel(name = "主力面积租金(草稿)")
private BigDecimal mainRentPriceDft;
@Excel(name = "上月AI租金")
private BigDecimal rentPrice_1;
@Excel(name = "成交均价(上周期)")
private BigDecimal priceDealMean_1;
@Excel(name = "成交最大价(上周期)")
private BigDecimal priceDealMax_1;
@Excel(name = "成交数量(上周期)")
private Integer sumDeal_1;
@Excel(name = "成交均价相对AI租金涨跌幅(上周期)")
private BigDecimal priceDeal_1_ToAI_Pst;
@Excel(name = "成交均价")
private BigDecimal priceDealMean;
@Excel(name = "成交最大价")
private BigDecimal priceDealMax;
@Excel(name = "成交数量")
private Integer sumDeal;
@Excel(name = "成交均价相对AI租金涨跌幅")
private BigDecimal priceDeal_ToAI_Pst;
@Excel(name = "当月比上月成交案例价调整比例")
private BigDecimal priceDeal_ToLst_Pst;
@Excel(name = "挂牌下架案例均价")
private BigDecimal priceCaseOff;
@Excel(name = "当月比上月挂牌下架案例价调整比例")
private BigDecimal priceCaseOff_ToLst_Pst;
@Excel(name = "挂牌最低价")
private BigDecimal priceListedMin;
@Excel(name = "挂牌最低价相对AI租金涨跌幅")
private BigDecimal priceLstMn_ToAI_Pst;
@Excel(name = "与上月AI租金比链家1案例价格价调整比例")
private BigDecimal priceCase1_ToAI_Pst;
@Excel(name = "与上月AI租金比链家2案例价格价调整比例")
private BigDecimal priceCase2_ToAI_Pst;
@Excel(name = "当月比上月链家1案例价调整比例")
private BigDecimal priceCase1_ToLst_Pst;
@Excel(name = "当月比上月链家2案例价调整比例")
private BigDecimal priceCase2_ToLst_Pst;
@Excel(name = "链家1案例价")
private BigDecimal priceCase1;
@Excel(name = "链家1调价幅度")
private BigDecimal priceCase1AdjPst;
@Excel(name = "链家1案例总量")
private Integer sumCase1;
@Excel(name = "链家2案例价")
private BigDecimal priceCase2;
@Excel(name = "链家2调价幅度")
private BigDecimal priceCase2AdjPst;
@Excel(name = "链家2案例总量")
private Integer sumCase2;
@Excel(name = "价格涨跌幅类型-调整前")
private BigDecimal voppbt;
@Excel(name = "价格涨跌幅-调整前")
private String voppb;
@Excel(name = "绑定小区编号")
private String bindProjID;
@Excel(name = "绑定小区涨跌幅")
private BigDecimal bind_Proj_Pst;
@Excel(name = "绑定板块+聚类ID")
private String bind_Block_Class;
@Excel(name = "绑定板块+聚类ID的涨跌幅")
private BigDecimal bind_Block_Class_Pst;
@Excel(name = "绑定板块+物业档次")
private String bind_Block_Plevel;
@Excel(name = "绑定板块+物业档次的涨跌幅")
private BigDecimal bind_Block_Plevel_Pst;
@Excel(name = "绑定板块+小区类型")
private String bind_Block_PType;
@Excel(name = "绑定板块+小区类型的涨跌幅")
private BigDecimal bind_Block_Ptype_Pst;
@Excel(name = "绑定区县+小区类型")
private String bind_County_PType;
@Excel(name = "绑定区县+小区类型的涨跌幅")
private BigDecimal bind_County_Ptype_Pst;
@Excel(name = "绑定混合小区ID")
private String bind_MixProject_PType;
@Excel(name = "绑定混合小区涨跌幅")
private BigDecimal bind_MixProject_Pst;
@Excel(name = "价格涨跌幅类型-调整后")
private String voppat;
@Excel(name = "价格涨跌幅-调整后")
private BigDecimal voppa;
public Integer getYearMonth() {
return yearMonth;
}
public void setYearMonth(Integer yearMonth) {
this.yearMonth = yearMonth;
}
public Integer getPageIndex() {
return pageIndex;
}
public void setPageIndex(Integer pageIndex) {
this.pageIndex = pageIndex;
}
public Integer getPageSize() {
return pageSize;
}
public void setPageSize(Integer pageSize) {
this.pageSize = pageSize;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getCommunityId() {
return communityId;
}
public void setCommunityId(String communityId) {
this.communityId = communityId;
}
public String getCommunityName() {
return communityName;
}
public void setCommunityName(String communityName) {
this.communityName = communityName;
}
public String getCommunityAddress() {
return communityAddress;
}
public void setCommunityAddress(String communityAddress) {
this.communityAddress = communityAddress;
}
public String getCounty() {
return county;
}
public void setCounty(String county) {
this.county = county;
}
public String getBlock() {
return block;
}
public void setBlock(String block) {
this.block = block;
}
public String getLoop() {
return loop;
}
public void setLoop(String loop) {
this.loop = loop;
}
public Integer getIsIndxGen() {
return isIndxGen;
}
public void setIsIndxGen(Integer isIndxGen) {
this.isIndxGen = isIndxGen;
}
public Integer getIsPstCalc() {
return isPstCalc;
}
public void setIsPstCalc(Integer isPstCalc) {
this.isPstCalc = isPstCalc;
}
public Integer getStatusRun() {
return statusRun;
}
public void setStatusRun(Integer statusRun) {
this.statusRun = statusRun;
}
public String getPropertyType() {
return propertyType;
}
public void setPropertyType(String propertyType) {
this.propertyType = propertyType;
}
public String getProjectType() {
return projectType;
}
public void setProjectType(String projectType) {
this.projectType = projectType;
}
public String getProjectTypeDtl() {
return projectTypeDtl;
}
public void setProjectTypeDtl(String projectTypeDtl) {
this.projectTypeDtl = projectTypeDtl;
}
public String getProjectLevel() {
return projectLevel;
}
public void setProjectLevel(String projectLevel) {
this.projectLevel = projectLevel;
}
public Integer getPropertyDevPeriod() {
return propertyDevPeriod;
}
public void setPropertyDevPeriod(Integer propertyDevPeriod) {
this.propertyDevPeriod = propertyDevPeriod;
}
public String getBindClassID() {
return bindClassID;
}
public void setBindClassID(String bindClassID) {
this.bindClassID = bindClassID;
}
public BigDecimal getMainCoefficientRent() {
return mainCoefficientRent;
}
public void setMainCoefficientRent(BigDecimal mainCoefficientRent) {
this.mainCoefficientRent = mainCoefficientRent;
}
public BigDecimal getRentPriceDft() {
return rentPriceDft;
}
public void setRentPriceDft(BigDecimal rentPriceDft) {
this.rentPriceDft = rentPriceDft;
}
public BigDecimal getMainRentPriceDft() {
return mainRentPriceDft;
}
public void setMainRentPriceDft(BigDecimal mainRentPriceDft) {
this.mainRentPriceDft = mainRentPriceDft;
}
public BigDecimal getRentPrice_1() {
return rentPrice_1;
}
public void setRentPrice_1(BigDecimal rentPrice_1) {
this.rentPrice_1 = rentPrice_1;
}
public BigDecimal getPriceDealMean_1() {
return priceDealMean_1;
}
public void setPriceDealMean_1(BigDecimal priceDealMean_1) {
this.priceDealMean_1 = priceDealMean_1;
}
public BigDecimal getPriceDealMax_1() {
return priceDealMax_1;
}
public void setPriceDealMax_1(BigDecimal priceDealMax_1) {
this.priceDealMax_1 = priceDealMax_1;
}
public Integer getSumDeal_1() {
return sumDeal_1;
}
public void setSumDeal_1(Integer sumDeal_1) {
this.sumDeal_1 = sumDeal_1;
}
public BigDecimal getPriceDeal_1_ToAI_Pst() {
return priceDeal_1_ToAI_Pst;
}
public void setPriceDeal_1_ToAI_Pst(BigDecimal priceDeal_1_ToAI_Pst) {
this.priceDeal_1_ToAI_Pst = priceDeal_1_ToAI_Pst;
}
public BigDecimal getPriceDealMean() {
return priceDealMean;
}
public void setPriceDealMean(BigDecimal priceDealMean) {
this.priceDealMean = priceDealMean;
}
public BigDecimal getPriceDealMax() {
return priceDealMax;
}
public void setPriceDealMax(BigDecimal priceDealMax) {
this.priceDealMax = priceDealMax;
}
public Integer getSumDeal() {
return sumDeal;
}
public void setSumDeal(Integer sumDeal) {
this.sumDeal = sumDeal;
}
public BigDecimal getPriceDeal_ToAI_Pst() {
return priceDeal_ToAI_Pst;
}
public void setPriceDeal_ToAI_Pst(BigDecimal priceDeal_ToAI_Pst) {
this.priceDeal_ToAI_Pst = priceDeal_ToAI_Pst;
}
public BigDecimal getPriceDeal_ToLst_Pst() {
return priceDeal_ToLst_Pst;
}
public void setPriceDeal_ToLst_Pst(BigDecimal priceDeal_ToLst_Pst) {
this.priceDeal_ToLst_Pst = priceDeal_ToLst_Pst;
}
public BigDecimal getPriceCaseOff() {
return priceCaseOff;
}
public void setPriceCaseOff(BigDecimal priceCaseOff) {
this.priceCaseOff = priceCaseOff;
}
public BigDecimal getPriceCaseOff_ToLst_Pst() {
return priceCaseOff_ToLst_Pst;
}
public void setPriceCaseOff_ToLst_Pst(BigDecimal priceCaseOff_ToLst_Pst) {
this.priceCaseOff_ToLst_Pst = priceCaseOff_ToLst_Pst;
}
public BigDecimal getPriceListedMin() {
return priceListedMin;
}
public void setPriceListedMin(BigDecimal priceListedMin) {
this.priceListedMin = priceListedMin;
}
public BigDecimal getPriceLstMn_ToAI_Pst() {
return priceLstMn_ToAI_Pst;
}
public void setPriceLstMn_ToAI_Pst(BigDecimal priceLstMn_ToAI_Pst) {
this.priceLstMn_ToAI_Pst = priceLstMn_ToAI_Pst;
}
public BigDecimal getPriceCase1_ToAI_Pst() {
return priceCase1_ToAI_Pst;
}
public void setPriceCase1_ToAI_Pst(BigDecimal priceCase1_ToAI_Pst) {
this.priceCase1_ToAI_Pst = priceCase1_ToAI_Pst;
}
public BigDecimal getPriceCase2_ToAI_Pst() {
return priceCase2_ToAI_Pst;
}
public void setPriceCase2_ToAI_Pst(BigDecimal priceCase2_ToAI_Pst) {
this.priceCase2_ToAI_Pst = priceCase2_ToAI_Pst;
}
public BigDecimal getPriceCase1_ToLst_Pst() {
return priceCase1_ToLst_Pst;
}
public void setPriceCase1_ToLst_Pst(BigDecimal priceCase1_ToLst_Pst) {
this.priceCase1_ToLst_Pst = priceCase1_ToLst_Pst;
}
public BigDecimal getPriceCase2_ToLst_Pst() {
return priceCase2_ToLst_Pst;
}
public void setPriceCase2_ToLst_Pst(BigDecimal priceCase2_ToLst_Pst) {
this.priceCase2_ToLst_Pst = priceCase2_ToLst_Pst;
}
public BigDecimal getPriceCase1() {
return priceCase1;
}
public void setPriceCase1(BigDecimal priceCase1) {
this.priceCase1 = priceCase1;
}
public BigDecimal getPriceCase1AdjPst() {
return priceCase1AdjPst;
}
public void setPriceCase1AdjPst(BigDecimal priceCase1AdjPst) {
this.priceCase1AdjPst = priceCase1AdjPst;
}
public Integer getSumCase1() {
return sumCase1;
}
public void setSumCase1(Integer sumCase1) {
this.sumCase1 = sumCase1;
}
public BigDecimal getPriceCase2() {
return priceCase2;
}
public void setPriceCase2(BigDecimal priceCase2) {
this.priceCase2 = priceCase2;
}
public BigDecimal getPriceCase2AdjPst() {
return priceCase2AdjPst;
}
public void setPriceCase2AdjPst(BigDecimal priceCase2AdjPst) {
this.priceCase2AdjPst = priceCase2AdjPst;
}
public Integer getSumCase2() {
return sumCase2;
}
public void setSumCase2(Integer sumCase2) {
this.sumCase2 = sumCase2;
}
public BigDecimal getVoppbt() {
return voppbt;
}
public void setVoppbt(BigDecimal voppbt) {
this.voppbt = voppbt;
}
public String getVoppb() {
return voppb;
}
public void setVoppb(String voppb) {
this.voppb = voppb;
}
public String getBindProjID() {
return bindProjID;
}
public void setBindProjID(String bindProjID) {
this.bindProjID = bindProjID;
}
public BigDecimal getBind_Proj_Pst() {
return bind_Proj_Pst;
}
public void setBind_Proj_Pst(BigDecimal bind_Proj_Pst) {
this.bind_Proj_Pst = bind_Proj_Pst;
}
public String getBind_Block_Class() {
return bind_Block_Class;
}
public void setBind_Block_Class(String bind_Block_Class) {
this.bind_Block_Class = bind_Block_Class;
}
public BigDecimal getBind_Block_Class_Pst() {
return bind_Block_Class_Pst;
}
public void setBind_Block_Class_Pst(BigDecimal bind_Block_Class_Pst) {
this.bind_Block_Class_Pst = bind_Block_Class_Pst;
}
public String getBind_Block_Plevel() {
return bind_Block_Plevel;
}
public void setBind_Block_Plevel(String bind_Block_Plevel) {
this.bind_Block_Plevel = bind_Block_Plevel;
}
public BigDecimal getBind_Block_Plevel_Pst() {
return bind_Block_Plevel_Pst;
}
public void setBind_Block_Plevel_Pst(BigDecimal bind_Block_Plevel_Pst) {
this.bind_Block_Plevel_Pst = bind_Block_Plevel_Pst;
}
public String getBind_Block_PType() {
return bind_Block_PType;
}
public void setBind_Block_PType(String bind_Block_PType) {
this.bind_Block_PType = bind_Block_PType;
}
public BigDecimal getBind_Block_Ptype_Pst() {
return bind_Block_Ptype_Pst;
}
public void setBind_Block_Ptype_Pst(BigDecimal bind_Block_Ptype_Pst) {
this.bind_Block_Ptype_Pst = bind_Block_Ptype_Pst;
}
public String getBind_County_PType() {
return bind_County_PType;
}
public void setBind_County_PType(String bind_County_PType) {
this.bind_County_PType = bind_County_PType;
}
public BigDecimal getBind_County_Ptype_Pst() {
return bind_County_Ptype_Pst;
}
public void setBind_County_Ptype_Pst(BigDecimal bind_County_Ptype_Pst) {
this.bind_County_Ptype_Pst = bind_County_Ptype_Pst;
}
public String getBind_MixProject_PType() {
return bind_MixProject_PType;
}
public void setBind_MixProject_PType(String bind_MixProject_PType) {
this.bind_MixProject_PType = bind_MixProject_PType;
}
public BigDecimal getBind_MixProject_Pst() {
return bind_MixProject_Pst;
}
public void setBind_MixProject_Pst(BigDecimal bind_MixProject_Pst) {
this.bind_MixProject_Pst = bind_MixProject_Pst;
}
public String getVoppat() {
return voppat;
}
public void setVoppat(String voppat) {
this.voppat = voppat;
}
public BigDecimal getVoppa() {
return voppa;
}
public void setVoppa(BigDecimal voppa) {
this.voppa = voppa;
}
}

View File

@ -0,0 +1,176 @@
package com.ruoyi.project.data.price.domain;
import com.alibaba.fastjson.annotation.JSONField;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;
import java.util.Date;
/**
* 请填写功能名称对象 office_base_price_ultimate
*
* @author ruoyi
* @date 2020-05-20
*/
public class ComputeResidenceSaleBasePrice extends BaseEntity {
private Integer pageIndex;
private Integer pageSize;
@JSONField(serialize = false)
private Integer yearMonth;
@Excel(name = "ID")
private String id;
@Excel(name = "楼栋ID")
private String buildingId;
@Excel(name = "小区ID")
private String communityId;
@Excel(name = "主力基价")
private String mainPrice;
@Excel(name = "主力租金")
private String mainPriceRent;
@Excel(name = "主力基价涨跌幅")
private String mainPricePst;
@Excel(name = "主力租金涨跌幅")
private String mainPriceRentPst;
@Excel(name = "主力基价类型")
private String mainPriceType;
@Excel(name = "主力租金类型")
private String mainPriceRentType;
@Excel(name = "更新日期")
private Date updateDate;
@Excel(name = "状态")
private Boolean status;
@Excel(name = "是否标准楼栋")
private Boolean isStandardBuilding;
@Excel(name = "更改价格说明")
private String adjustPriceComment;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Integer getYearMonth() {
return yearMonth;
}
public void setYearMonth(Integer yearMonth) {
this.yearMonth = yearMonth;
}
public String getBuildingId() {
return buildingId;
}
public void setBuildingId(String buildingId) {
this.buildingId = buildingId;
}
public String getCommunityId() {
return communityId;
}
public void setCommunityId(String communityId) {
this.communityId = communityId;
}
public String getMainPrice() {
return mainPrice;
}
public void setMainPrice(String mainPrice) {
this.mainPrice = mainPrice;
}
public String getMainPriceRent() {
return mainPriceRent;
}
public void setMainPriceRent(String mainPriceRent) {
this.mainPriceRent = mainPriceRent;
}
public String getMainPricePst() {
return mainPricePst;
}
public void setMainPricePst(String mainPricePst) {
this.mainPricePst = mainPricePst;
}
public String getMainPriceRentPst() {
return mainPriceRentPst;
}
public void setMainPriceRentPst(String mainPriceRentPst) {
this.mainPriceRentPst = mainPriceRentPst;
}
public String getMainPriceType() {
return mainPriceType;
}
public void setMainPriceType(String mainPriceType) {
this.mainPriceType = mainPriceType;
}
public String getMainPriceRentType() {
return mainPriceRentType;
}
public void setMainPriceRentType(String mainPriceRentType) {
this.mainPriceRentType = mainPriceRentType;
}
public Date getUpdateDate() {
return updateDate;
}
public void setUpdateDate(Date updateDate) {
this.updateDate = updateDate;
}
public Boolean getStatus() {
return status;
}
public void setStatus(Boolean status) {
this.status = status;
}
public Boolean getStandardBuilding() {
return isStandardBuilding;
}
public void setStandardBuilding(Boolean standardBuilding) {
isStandardBuilding = standardBuilding;
}
public String getAdjustPriceComment() {
return adjustPriceComment;
}
public void setAdjustPriceComment(String adjustPriceComment) {
this.adjustPriceComment = adjustPriceComment;
}
public Integer getPageIndex() {
return pageIndex;
}
public void setPageIndex(Integer pageIndex) {
this.pageIndex = pageIndex;
}
public Integer getPageSize() {
return pageSize;
}
public void setPageSize(Integer pageSize) {
this.pageSize = pageSize;
}
}

View File

@ -0,0 +1,357 @@
package com.ruoyi.project.data.price.domain;
import com.alibaba.fastjson.annotation.JSONField;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;
import java.math.BigDecimal;
import java.util.Date;
/**
* 请填写功能名称对象 office_base_price_ultimate
*
* @author ruoyi
* @date 2020-05-20
*/
public class UltimateOfficeBasePrice extends BaseEntity {
private Integer pageIndex;
private Integer pageSize;
@Excel(name = "ID")
private String id;
@JSONField(serialize = false)
private Integer yearMonth;
@Excel(name = "楼栋ID")
private String buildingId;
@Excel(name = "小区ID")
private String communityId;
@Excel(name = "项目名称")
private String communityName;
@Excel(name = "办公项目地址")
private String communityAddress;
@Excel(name = "楼栋地址")
private String buildingAddress;
@Excel(name = "楼栋地址")
private String countyName;
@Excel(name = "板块地址")
private String blockName;
@Excel(name = "街道地址")
private String streetName;
@Excel(name = "环线地址")
private String loopName;
@Excel(name = "建成年代")
private Integer year;
@Excel(name = "平均面积")
private BigDecimal avgArea;
@Excel(name = "总层数")
private String totalFloorSum;
@Excel(name = "地上层数")
private String upperFloorSum;
@Excel(name = "办公分类")
private String officeClass;
@Excel(name = "办公等级")
private String officeLevel;
@Excel(name = "主力基价(上期)")
private BigDecimal mainPrice_1;
@Excel(name = "主力租金(上期)")
private BigDecimal mainPriceRent_1;
@Excel(name = "主力基价")
private BigDecimal mainPrice;
@Excel(name = "主力租金")
private BigDecimal mainPriceRent;
@Excel(name = "主力基价涨跌幅")
private BigDecimal mainPricePst;
@Excel(name = "主力租金涨跌幅")
private BigDecimal mainPriceRentPst;
@Excel(name = "主力基价类型")
private String mainPriceType;
@Excel(name = "主力租金类型")
private String mainPriceRentType;
@Excel(name = "面积修正系数")
private BigDecimal areaCoefficient;
@Excel(name = "年份修正系数")
private BigDecimal yearCoefficient;
@Excel(name = "基价楼栋系数")
private BigDecimal buildingCoefficient;
@Excel(name = "更新日期")
private Date updateDate;
@Excel(name = "状态")
private Boolean status;
@Excel(name = "是否标准楼栋")
private Boolean isStandardBuilding;
@Excel(name = "更改价格说明")
private String adjustPriceComment;
public Integer getPageIndex() {
return pageIndex;
}
public void setPageIndex(Integer pageIndex) {
this.pageIndex = pageIndex;
}
public Integer getPageSize() {
return pageSize;
}
public void setPageSize(Integer pageSize) {
this.pageSize = pageSize;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Integer getYearMonth() {
return yearMonth;
}
public void setYearMonth(Integer yearMonth) {
this.yearMonth = yearMonth;
}
public String getBuildingId() {
return buildingId;
}
public void setBuildingId(String buildingId) {
this.buildingId = buildingId;
}
public String getCommunityId() {
return communityId;
}
public void setCommunityId(String communityId) {
this.communityId = communityId;
}
public String getCommunityName() {
return communityName;
}
public void setCommunityName(String communityName) {
this.communityName = communityName;
}
public String getCommunityAddress() {
return communityAddress;
}
public void setCommunityAddress(String communityAddress) {
this.communityAddress = communityAddress;
}
public String getBuildingAddress() {
return buildingAddress;
}
public void setBuildingAddress(String buildingAddress) {
this.buildingAddress = buildingAddress;
}
public String getCountyName() {
return countyName;
}
public void setCountyName(String countyName) {
this.countyName = countyName;
}
public String getBlockName() {
return blockName;
}
public void setBlockName(String blockName) {
this.blockName = blockName;
}
public String getStreetName() {
return streetName;
}
public void setStreetName(String streetName) {
this.streetName = streetName;
}
public String getLoopName() {
return loopName;
}
public void setLoopName(String loopName) {
this.loopName = loopName;
}
public Integer getYear() {
return year;
}
public void setYear(Integer year) {
this.year = year;
}
public BigDecimal getAvgArea() {
return avgArea;
}
public void setAvgArea(BigDecimal avgArea) {
this.avgArea = avgArea;
}
public String getTotalFloorSum() {
return totalFloorSum;
}
public void setTotalFloorSum(String totalFloorSum) {
this.totalFloorSum = totalFloorSum;
}
public String getUpperFloorSum() {
return upperFloorSum;
}
public void setUpperFloorSum(String upperFloorSum) {
this.upperFloorSum = upperFloorSum;
}
public String getOfficeClass() {
return officeClass;
}
public void setOfficeClass(String officeClass) {
this.officeClass = officeClass;
}
public String getOfficeLevel() {
return officeLevel;
}
public void setOfficeLevel(String officeLevel) {
this.officeLevel = officeLevel;
}
public BigDecimal getMainPrice_1() {
return mainPrice_1;
}
public void setMainPrice_1(BigDecimal mainPrice_1) {
this.mainPrice_1 = mainPrice_1;
}
public BigDecimal getMainPriceRent_1() {
return mainPriceRent_1;
}
public void setMainPriceRent_1(BigDecimal mainPriceRent_1) {
this.mainPriceRent_1 = mainPriceRent_1;
}
public BigDecimal getMainPrice() {
return mainPrice;
}
public void setMainPrice(BigDecimal mainPrice) {
this.mainPrice = mainPrice;
}
public BigDecimal getMainPriceRent() {
return mainPriceRent;
}
public void setMainPriceRent(BigDecimal mainPriceRent) {
this.mainPriceRent = mainPriceRent;
}
public BigDecimal getMainPricePst() {
return mainPricePst;
}
public void setMainPricePst(BigDecimal mainPricePst) {
this.mainPricePst = mainPricePst;
}
public BigDecimal getMainPriceRentPst() {
return mainPriceRentPst;
}
public void setMainPriceRentPst(BigDecimal mainPriceRentPst) {
this.mainPriceRentPst = mainPriceRentPst;
}
public String getMainPriceType() {
return mainPriceType;
}
public void setMainPriceType(String mainPriceType) {
this.mainPriceType = mainPriceType;
}
public String getMainPriceRentType() {
return mainPriceRentType;
}
public void setMainPriceRentType(String mainPriceRentType) {
this.mainPriceRentType = mainPriceRentType;
}
public BigDecimal getAreaCoefficient() {
return areaCoefficient;
}
public void setAreaCoefficient(BigDecimal areaCoefficient) {
this.areaCoefficient = areaCoefficient;
}
public BigDecimal getYearCoefficient() {
return yearCoefficient;
}
public void setYearCoefficient(BigDecimal yearCoefficient) {
this.yearCoefficient = yearCoefficient;
}
public BigDecimal getBuildingCoefficient() {
return buildingCoefficient;
}
public void setBuildingCoefficient(BigDecimal buildingCoefficient) {
this.buildingCoefficient = buildingCoefficient;
}
public Date getUpdateDate() {
return updateDate;
}
public void setUpdateDate(Date updateDate) {
this.updateDate = updateDate;
}
public Boolean getStatus() {
return status;
}
public void setStatus(Boolean status) {
this.status = status;
}
public Boolean getStandardBuilding() {
return isStandardBuilding;
}
public void setStandardBuilding(Boolean standardBuilding) {
isStandardBuilding = standardBuilding;
}
public String getAdjustPriceComment() {
return adjustPriceComment;
}
public void setAdjustPriceComment(String adjustPriceComment) {
this.adjustPriceComment = adjustPriceComment;
}
}

View File

@ -0,0 +1,277 @@
package com.ruoyi.project.data.price.domain;
import com.alibaba.fastjson.annotation.JSONField;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;
import java.math.BigDecimal;
import java.util.Date;
/**
* 核准的住宅租赁基价
*
* @author ruoyi
* @date 2020-05-20
*/
public class UltimateResidenceRentBasePrice extends BaseEntity {
@JSONField(serialize = false)
private Integer pageIndex;
@JSONField(serialize = false)
private Integer pageSize;
private Integer yearMonth;
@Excel(name = "ID")
private Integer id;
@Excel(name = "小区ID")
private String communityId;
@Excel(name = "价格类型")
private String priceType;
@Excel(name = "标准基价")
private BigDecimal basePrice_1;
@Excel(name = "平均租金")
private BigDecimal rentPrice;
@Excel(name = "散租挂牌案例")
private Integer sumCase1;
@Excel(name = "租金涨跌幅")
private BigDecimal voppa;
@Excel(name = "租金涨跌幅-类型")
private String voppat;
@Excel(name = "租金-工房1室")
private BigDecimal gf_1Room;
@Excel(name = "租金-工房2室")
private BigDecimal gf_2Room;
@Excel(name = "租金-公寓2室")
private BigDecimal gy_2Room;
@Excel(name = "租金-公寓3室")
private BigDecimal gy_3Room;
@Excel(name = "租金-1房")
private BigDecimal one_Room;
@Excel(name = "租金-2房")
private BigDecimal two_Room;
@Excel(name = "租金-3房")
private BigDecimal three_Room;
@Excel(name = "整租比")
private BigDecimal entireRentRatio;
@Excel(name = "整租案例数")
private Integer entireRentNum;
@Excel(name = "分租比")
private BigDecimal shareRentRatio;
@Excel(name = "分租案例数")
private Integer shareRentNum;
@Excel(name = "租售比")
private BigDecimal saleRentRatio;
@Excel(name = "状态")
private Boolean status;
@Excel(name = "价格变更说明")
private String adjEvd;
@Excel(name = "修改日期")
private Date modifyDate;
public Integer getPageIndex() {
return pageIndex;
}
public void setPageIndex(Integer pageIndex) {
this.pageIndex = pageIndex;
}
public Integer getPageSize() {
return pageSize;
}
public void setPageSize(Integer pageSize) {
this.pageSize = pageSize;
}
public Integer getYearMonth() {
return yearMonth;
}
public void setYearMonth(Integer yearMonth) {
this.yearMonth = yearMonth;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getCommunityId() {
return communityId;
}
public void setCommunityId(String communityId) {
this.communityId = communityId;
}
public String getPriceType() {
return priceType;
}
public void setPriceType(String priceType) {
this.priceType = priceType;
}
public BigDecimal getBasePrice_1() {
return basePrice_1;
}
public void setBasePrice_1(BigDecimal basePrice_1) {
this.basePrice_1 = basePrice_1;
}
public BigDecimal getRentPrice() {
return rentPrice;
}
public void setRentPrice(BigDecimal rentPrice) {
this.rentPrice = rentPrice;
}
public Integer getSumCase1() {
return sumCase1;
}
public void setSumCase1(Integer sumCase1) {
this.sumCase1 = sumCase1;
}
public String getVoppat() {
return voppat;
}
public void setVoppat(String voppat) {
this.voppat = voppat;
}
public BigDecimal getVoppa() {
return voppa;
}
public void setVoppa(BigDecimal voppa) {
this.voppa = voppa;
}
public BigDecimal getGf_1Room() {
return gf_1Room;
}
public void setGf_1Room(BigDecimal gf_1Room) {
this.gf_1Room = gf_1Room;
}
public BigDecimal getGf_2Room() {
return gf_2Room;
}
public void setGf_2Room(BigDecimal gf_2Room) {
this.gf_2Room = gf_2Room;
}
public BigDecimal getGy_2Room() {
return gy_2Room;
}
public void setGy_2Room(BigDecimal gy_2Room) {
this.gy_2Room = gy_2Room;
}
public BigDecimal getGy_3Room() {
return gy_3Room;
}
public void setGy_3Room(BigDecimal gy_3Room) {
this.gy_3Room = gy_3Room;
}
public BigDecimal getOne_Room() {
return one_Room;
}
public void setOne_Room(BigDecimal one_Room) {
this.one_Room = one_Room;
}
public BigDecimal getTwo_Room() {
return two_Room;
}
public void setTwo_Room(BigDecimal two_Room) {
this.two_Room = two_Room;
}
public BigDecimal getThree_Room() {
return three_Room;
}
public void setThree_Room(BigDecimal three_Room) {
this.three_Room = three_Room;
}
public BigDecimal getEntireRentRatio() {
return entireRentRatio;
}
public void setEntireRentRatio(BigDecimal entireRentRatio) {
this.entireRentRatio = entireRentRatio;
}
public Integer getEntireRentNum() {
return entireRentNum;
}
public void setEntireRentNum(Integer entireRentNum) {
this.entireRentNum = entireRentNum;
}
public BigDecimal getShareRentRatio() {
return shareRentRatio;
}
public void setShareRentRatio(BigDecimal shareRentRatio) {
this.shareRentRatio = shareRentRatio;
}
public Integer getShareRentNum() {
return shareRentNum;
}
public void setShareRentNum(Integer shareRentNum) {
this.shareRentNum = shareRentNum;
}
public BigDecimal getSaleRentRatio() {
return saleRentRatio;
}
public void setSaleRentRatio(BigDecimal saleRentRatio) {
this.saleRentRatio = saleRentRatio;
}
public Date getModifyDate() {
return modifyDate;
}
public void setModifyDate(Date modifyDate) {
this.modifyDate = modifyDate;
}
public Boolean getStatus() {
return status;
}
public void setStatus(Boolean status) {
this.status = status;
}
public String getAdjEvd() {
return adjEvd;
}
public void setAdjEvd(String adjEvd) {
this.adjEvd = adjEvd;
}
}

View File

@ -0,0 +1,176 @@
package com.ruoyi.project.data.price.domain;
import com.alibaba.fastjson.annotation.JSONField;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;
import java.util.Date;
/**
* 请填写功能名称对象 office_base_price_ultimate
*
* @author ruoyi
* @date 2020-05-20
*/
public class UltimateResidenceSaleBasePrice extends BaseEntity {
private Integer pageIndex;
private Integer pageSize;
@Excel(name = "ID")
private String id;
@JSONField(serialize = false)
private Integer yearMonth;
@Excel(name = "楼栋ID")
private String buildingId;
@Excel(name = "小区ID")
private String communityId;
@Excel(name = "主力基价")
private String mainPrice;
@Excel(name = "主力租金")
private String mainPriceRent;
@Excel(name = "主力基价涨跌幅")
private String mainPricePst;
@Excel(name = "主力租金涨跌幅")
private String mainPriceRentPst;
@Excel(name = "主力基价类型")
private String mainPriceType;
@Excel(name = "主力租金类型")
private String mainPriceRentType;
@Excel(name = "更新日期")
private Date updateDate;
@Excel(name = "状态")
private Boolean status;
@Excel(name = "是否标准楼栋")
private Boolean isStandardBuilding;
@Excel(name = "更改价格说明")
private String adjustPriceComment;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Integer getYearMonth() {
return yearMonth;
}
public void setYearMonth(Integer yearMonth) {
this.yearMonth = yearMonth;
}
public String getBuildingId() {
return buildingId;
}
public void setBuildingId(String buildingId) {
this.buildingId = buildingId;
}
public String getCommunityId() {
return communityId;
}
public void setCommunityId(String communityId) {
this.communityId = communityId;
}
public String getMainPrice() {
return mainPrice;
}
public void setMainPrice(String mainPrice) {
this.mainPrice = mainPrice;
}
public String getMainPriceRent() {
return mainPriceRent;
}
public void setMainPriceRent(String mainPriceRent) {
this.mainPriceRent = mainPriceRent;
}
public String getMainPricePst() {
return mainPricePst;
}
public void setMainPricePst(String mainPricePst) {
this.mainPricePst = mainPricePst;
}
public String getMainPriceRentPst() {
return mainPriceRentPst;
}
public void setMainPriceRentPst(String mainPriceRentPst) {
this.mainPriceRentPst = mainPriceRentPst;
}
public String getMainPriceType() {
return mainPriceType;
}
public void setMainPriceType(String mainPriceType) {
this.mainPriceType = mainPriceType;
}
public String getMainPriceRentType() {
return mainPriceRentType;
}
public void setMainPriceRentType(String mainPriceRentType) {
this.mainPriceRentType = mainPriceRentType;
}
public Date getUpdateDate() {
return updateDate;
}
public void setUpdateDate(Date updateDate) {
this.updateDate = updateDate;
}
public Boolean getStatus() {
return status;
}
public void setStatus(Boolean status) {
this.status = status;
}
public Boolean getStandardBuilding() {
return isStandardBuilding;
}
public void setStandardBuilding(Boolean standardBuilding) {
isStandardBuilding = standardBuilding;
}
public String getAdjustPriceComment() {
return adjustPriceComment;
}
public void setAdjustPriceComment(String adjustPriceComment) {
this.adjustPriceComment = adjustPriceComment;
}
public Integer getPageIndex() {
return pageIndex;
}
public void setPageIndex(Integer pageIndex) {
this.pageIndex = pageIndex;
}
public Integer getPageSize() {
return pageSize;
}
public void setPageSize(Integer pageSize) {
this.pageSize = pageSize;
}
}

View File

@ -0,0 +1,20 @@
package com.ruoyi.project.data.price.mapper;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.ruoyi.project.data.price.domain.ArtificialResidenceRentBasePrice;
import java.util.List;
/**
* 请填写功能名称Mapper接口
*
* @author ruoyi
* @date 2020-05-20
*/
@DS("compute")
public interface ArtificialResidenceRentPriceMapper {
List<ArtificialResidenceRentBasePrice> selectArtificialResidenceRentBasePriceList(ArtificialResidenceRentBasePrice artificialResidenceRentBasePrice);
Integer selectArtificialResidenceRentBasePriceListCount(ArtificialResidenceRentBasePrice artificialResidenceRentBasePrice);
}

View File

@ -0,0 +1,43 @@
package com.ruoyi.project.data.price.mapper;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.ruoyi.project.data.price.domain.ComputeResidenceRentBasePrice;
import java.util.List;
/**
* 请填写功能名称Mapper接口
*
* @author ruoyi
* @date 2020-05-20
*/
@DS("compute")
public interface ComputeResidenceRentPriceMapper {
/**
* @param id
* @return
*/
ComputeResidenceRentBasePrice selectComputeResidenceRentBasePriceById(String id);
/**
* 查询列表
*/
List<ComputeResidenceRentBasePrice> selectComputeResidenceRentBasePriceList(ComputeResidenceRentBasePrice ComputeResidenceRentBasePrice);
/**
* 求和
*
* @param ComputeResidenceRentBasePrice
* @return
*/
Integer selectComputeResidenceRentBasePriceListCount(ComputeResidenceRentBasePrice ComputeResidenceRentBasePrice);
/**
* 更新
*
* @param ComputeResidenceRentBasePrice
* @return
*/
int updateComputeResidenceRentBasePrice(ComputeResidenceRentBasePrice ComputeResidenceRentBasePrice);
}

View File

@ -1,9 +1,9 @@
package com.ruoyi.project.data.price.compute.mapper;
package com.ruoyi.project.data.price.mapper;
import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.ruoyi.project.data.price.compute.domain.OfficeBasePriceUltimate;
import com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice;
/**
* 请填写功能名称Mapper接口
@ -12,7 +12,7 @@ import com.ruoyi.project.data.price.compute.domain.OfficeBasePriceUltimate;
* @date 2020-05-20
*/
@DS("teemlink")
public interface OfficeBasePriceUltimateMapper
public interface UltimateOfficeBasePriceMapper
{
/**
@ -20,7 +20,7 @@ public interface OfficeBasePriceUltimateMapper
* @param id
* @return
*/
OfficeBasePriceUltimate selectOfficeBasePriceUltimateById(String id);
UltimateOfficeBasePrice selectOfficeBasePriceUltimateById(String id);
/**
* 查询请填写功能名称列表
@ -28,19 +28,19 @@ public interface OfficeBasePriceUltimateMapper
* @param officeBasePriceUltimate 请填写功能名称
* @return 请填写功能名称集合
*/
List<OfficeBasePriceUltimate> selectOfficeBasePriceUltimateList(OfficeBasePriceUltimate officeBasePriceUltimate);
List<UltimateOfficeBasePrice> selectOfficeBasePriceUltimateList(UltimateOfficeBasePrice officeBasePriceUltimate);
/**
* 求和
* @param officeBasePriceUltimate
* @return
*/
Integer selectOfficeBasePriceUltimateListCount(OfficeBasePriceUltimate officeBasePriceUltimate);
Integer selectOfficeBasePriceUltimateListCount(UltimateOfficeBasePrice officeBasePriceUltimate);
/**
* 更新
* @param officeBasePriceUltimate
* @return
*/
int updateOfficeBasePriceUltimate(OfficeBasePriceUltimate officeBasePriceUltimate);
int updateOfficeBasePriceUltimate(UltimateOfficeBasePrice officeBasePriceUltimate);
}

View File

@ -0,0 +1,35 @@
package com.ruoyi.project.data.price.mapper;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.ruoyi.project.data.price.domain.ArtificialResidenceRentBasePrice;
import com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice;
import com.ruoyi.project.data.price.domain.UltimateResidenceRentBasePrice;
import java.util.List;
/**
* 请填写功能名称Mapper接口
*
* @author ruoyi
* @date 2020-05-20
*/
@DS("compute")
public interface UltimateResidenceRentPriceMapper {
List<UltimateResidenceRentBasePrice> selectListByRoute(UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice);
Integer selectCountByRoute(UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice);
/**
* @param id
* @return
*/
UltimateResidenceRentBasePrice selectByRoute(Integer id);
/**
* @param ultimateResidenceRentBasePrice
* @return
*/
int updateByRoute(UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice);
}

View File

@ -1,4 +0,0 @@
package com.ruoyi.project.data.price.release.controller;
public class HomeController {
}

View File

@ -0,0 +1,32 @@
package com.ruoyi.project.data.price.service;
import com.ruoyi.project.data.price.domain.ArtificialResidenceRentBasePrice;
import java.util.List;
/**
* 人工修正住宅租赁Service接口
*
* @author ruoyi
* @date 2020-05-20
*/
public interface IArtificialResidenceRentPriceService {
/**
* 查询人工修正住宅租赁列表
*
* @param officeBasePriceUltimate 人工修正住宅租赁
* @return 人工修正住宅租赁集合
*/
List<ArtificialResidenceRentBasePrice> selectList(ArtificialResidenceRentBasePrice officeBasePriceUltimate);
/**
* @param officeBasePriceUltimate
* @return
*/
int selectCount(ArtificialResidenceRentBasePrice officeBasePriceUltimate);
}

View File

@ -0,0 +1,52 @@
package com.ruoyi.project.data.price.service;
import com.ruoyi.project.data.price.domain.ComputeResidenceRentBasePrice;
import com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 请填写功能名称Service接口
*
* @author ruoyi
* @date 2020-05-20
*/
public interface IComputeResidenceRentPriceService {
/**
* 查询请填写功能名称列表
*
* @param officeBasePriceUltimate 请填写功能名称
* @return 请填写功能名称集合
*/
List<ComputeResidenceRentBasePrice> selectList(ComputeResidenceRentBasePrice officeBasePriceUltimate);
/**
* @param officeBasePriceUltimate
* @return
*/
int selectCount(ComputeResidenceRentBasePrice officeBasePriceUltimate);
/**
* @param id
* @return
*/
ComputeResidenceRentBasePrice selectById(String id);
/**
* @param officeBasePriceUltimate
* @return
*/
int update(ComputeResidenceRentBasePrice officeBasePriceUltimate);
/**
* @param officeBasePriceUltimates
* @param operName
* @return
*/
String batchImport(List<ComputeResidenceRentBasePrice> officeBasePriceUltimates, String operName);
}

View File

@ -0,0 +1,40 @@
package com.ruoyi.project.data.price.service;
import com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice;
import java.util.List;
/**
* 请填写功能名称Service接口
*
* @author ruoyi
* @date 2020-05-20
*/
public interface IUltimateOfficeBasePriceService {
/**
* 查询请填写功能名称列表
*
* @param officeBasePriceUltimate 请填写功能名称
* @return 请填写功能名称集合
*/
List<UltimateOfficeBasePrice> selectOfficeBasePriceUltimateList(UltimateOfficeBasePrice officeBasePriceUltimate);
int selectOfficeBasePriceUltimateListCount(UltimateOfficeBasePrice officeBasePriceUltimate);
UltimateOfficeBasePrice selectOfficeBasePriceUltimateById(String id);
int updateOfficeBasePriceUltimate(UltimateOfficeBasePrice officeBasePriceUltimate);
/**
*
* @param officeBasePriceUltimates
* @param operName
* @return
*/
String batchImport(List<UltimateOfficeBasePrice> officeBasePriceUltimates,String operName);
}

View File

@ -0,0 +1,25 @@
package com.ruoyi.project.data.price.service;
import com.ruoyi.project.data.price.domain.UltimateResidenceRentBasePrice;
import java.util.List;
/**
* @author ruoyi
* @date 2020-05-20
*/
public interface IUltimateResidenceRentBasePriceService {
List<UltimateResidenceRentBasePrice> selectList(UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice);
int selectCount(UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice);
UltimateResidenceRentBasePrice selectById(Integer id);
int update(UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice);
String batchImport(List<UltimateResidenceRentBasePrice> ultimateResidenceRentBasePrices, String operName);
}

View File

@ -0,0 +1,39 @@
package com.ruoyi.project.data.price.service.impl;
import com.ruoyi.project.data.price.domain.ArtificialResidenceRentBasePrice;
import com.ruoyi.project.data.price.mapper.ArtificialResidenceRentPriceMapper;
import com.ruoyi.project.data.price.service.IArtificialResidenceRentPriceService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 请填写功能名称Service业务层处理
*
* @author ruoyi
* @date 2020-05-20
*/
@Service
public class ArtificialResidenceRentPriceServiceImpl implements IArtificialResidenceRentPriceService {
private static final Logger log = LoggerFactory.getLogger(ArtificialResidenceRentPriceServiceImpl.class);
@Autowired
private ArtificialResidenceRentPriceMapper artificialResidenceRentPriceMapper;
@Override
public List<ArtificialResidenceRentBasePrice> selectList(ArtificialResidenceRentBasePrice
ArtificialResidenceRentPrice) {
return artificialResidenceRentPriceMapper.selectArtificialResidenceRentBasePriceList
(ArtificialResidenceRentPrice);
}
@Override
public int selectCount(ArtificialResidenceRentBasePrice ArtificialResidenceRentPrice) {
return artificialResidenceRentPriceMapper.selectArtificialResidenceRentBasePriceListCount
(ArtificialResidenceRentPrice);
}
}

View File

@ -0,0 +1,51 @@
package com.ruoyi.project.data.price.service.impl;
import com.ruoyi.project.data.price.domain.ComputeResidenceRentBasePrice;
import com.ruoyi.project.data.price.mapper.ComputeResidenceRentPriceMapper;
import com.ruoyi.project.data.price.service.IComputeResidenceRentPriceService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 请填写功能名称Service业务层处理
*
* @author ruoyi
* @date 2020-05-20
*/
@Service
public class ComputeResidenceRentPriceServiceImpl implements IComputeResidenceRentPriceService {
private static final Logger log = LoggerFactory.getLogger(ComputeResidenceRentPriceServiceImpl.class);
@Autowired
private ComputeResidenceRentPriceMapper computeResidenceRentPriceMapper;
@Override
public List<ComputeResidenceRentBasePrice> selectList(ComputeResidenceRentBasePrice computeResidenceRentBasePrice) {
return computeResidenceRentPriceMapper.selectComputeResidenceRentBasePriceList(computeResidenceRentBasePrice);
}
@Override
public int selectCount(ComputeResidenceRentBasePrice computeResidenceRentBasePrice) {
return computeResidenceRentPriceMapper.selectComputeResidenceRentBasePriceListCount(computeResidenceRentBasePrice);
}
@Override
public ComputeResidenceRentBasePrice selectById(String id) {
return computeResidenceRentPriceMapper.selectComputeResidenceRentBasePriceById(id);
}
@Override
public int update(ComputeResidenceRentBasePrice officeBasePriceUltimate) {
return 0;
}
@Override
public String batchImport(List<ComputeResidenceRentBasePrice> officeBasePriceUltimates, String operName) {
return null;
}
}

View File

@ -1,12 +1,12 @@
package com.ruoyi.project.data.price.compute.service.impl;
package com.ruoyi.project.data.price.service.impl;
import java.util.List;
import com.ruoyi.common.exception.CustomException;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.project.data.price.compute.domain.OfficeBasePriceUltimate;
import com.ruoyi.project.data.price.compute.mapper.OfficeBasePriceUltimateMapper;
import com.ruoyi.project.data.price.compute.service.IOfficeBasePriceUltimateService;
import com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice;
import com.ruoyi.project.data.price.mapper.UltimateOfficeBasePriceMapper;
import com.ruoyi.project.data.price.service.IUltimateOfficeBasePriceService;
import com.ruoyi.project.system.service.impl.SysUserServiceImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -20,13 +20,12 @@ import org.springframework.stereotype.Service;
* @date 2020-05-20
*/
@Service
public class OfficeBasePriceUltimateServiceImpl implements IOfficeBasePriceUltimateService {
public class UltimateOfficeBasePriceServiceImpl implements IUltimateOfficeBasePriceService {
private static final Logger log = LoggerFactory.getLogger(SysUserServiceImpl.class);
@Autowired
private OfficeBasePriceUltimateMapper officeBasePriceUltimateMapper;
private UltimateOfficeBasePriceMapper officeBasePriceUltimateMapper;
/**
* 查询请填写功能名称列表
@ -35,68 +34,58 @@ public class OfficeBasePriceUltimateServiceImpl implements IOfficeBasePriceUltim
* @return 请填写功能名称
*/
@Override
public List<OfficeBasePriceUltimate> selectOfficeBasePriceUltimateList(OfficeBasePriceUltimate officeBasePriceUltimate) {
public List<UltimateOfficeBasePrice> selectOfficeBasePriceUltimateList(UltimateOfficeBasePrice officeBasePriceUltimate) {
return officeBasePriceUltimateMapper.selectOfficeBasePriceUltimateList(officeBasePriceUltimate);
}
@Override
public int selectOfficeBasePriceUltimateListCount(OfficeBasePriceUltimate officeBasePriceUltimate) {
public int selectOfficeBasePriceUltimateListCount(UltimateOfficeBasePrice officeBasePriceUltimate) {
return officeBasePriceUltimateMapper.selectOfficeBasePriceUltimateListCount(officeBasePriceUltimate);
}
@Override
public OfficeBasePriceUltimate selectOfficeBasePriceUltimateById(String id) {
public UltimateOfficeBasePrice selectOfficeBasePriceUltimateById(String id) {
return officeBasePriceUltimateMapper.selectOfficeBasePriceUltimateById(id);
}
@Override
public int updateOfficeBasePriceUltimate(OfficeBasePriceUltimate officeBasePriceUltimate) {
public int updateOfficeBasePriceUltimate(UltimateOfficeBasePrice officeBasePriceUltimate) {
return officeBasePriceUltimateMapper.updateOfficeBasePriceUltimate(officeBasePriceUltimate);
}
@Override
public String batchImport(List<OfficeBasePriceUltimate> officeBasePriceUltimates, String operName) {
if (StringUtils.isNull(officeBasePriceUltimates) || officeBasePriceUltimates.size() == 0)
{
public String batchImport(List<UltimateOfficeBasePrice> officeBasePriceUltimates, String operName) {
if (StringUtils.isNull(officeBasePriceUltimates) || officeBasePriceUltimates.size() == 0) {
throw new CustomException("导入办公数据不能为空!");
}
int successNum = 0;
int failureNum = 0;
StringBuilder successMsg = new StringBuilder();
StringBuilder failureMsg = new StringBuilder();
for (OfficeBasePriceUltimate officeBasePriceUltimate : officeBasePriceUltimates)
{
try
{
for (UltimateOfficeBasePrice officeBasePriceUltimate : officeBasePriceUltimates) {
try {
// 验证是否存在这个用户
OfficeBasePriceUltimate officeBasePriceUltimateInDb = officeBasePriceUltimateMapper.selectOfficeBasePriceUltimateById(officeBasePriceUltimate.getId());
if (StringUtils.isNotNull(officeBasePriceUltimateInDb))
{
UltimateOfficeBasePrice officeBasePriceUltimateInDb =
officeBasePriceUltimateMapper.selectOfficeBasePriceUltimateById(officeBasePriceUltimate.getId());
if (StringUtils.isNotNull(officeBasePriceUltimateInDb)) {
this.updateOfficeBasePriceUltimate(officeBasePriceUltimate);
successNum++;
successMsg.append("<br/>" + successNum + "、ID= " + officeBasePriceUltimate.getId() + " 更新成功");
}
else
{
} else {
failureNum++;
failureMsg.append("<br/>" + failureNum + "、ID= " + officeBasePriceUltimate.getId() + " 已存在");
}
}
catch (Exception e)
{
} catch (Exception e) {
failureNum++;
String msg = "<br/>" + failureNum + "、ID= " + officeBasePriceUltimate.getId() + " 导入失败:";
failureMsg.append(msg + e.getMessage());
log.error(msg, e);
}
}
if (failureNum > 0)
{
if (failureNum > 0) {
failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:");
throw new CustomException(failureMsg.toString());
}
else
{
} else {
successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:");
}
return successMsg.toString();

View File

@ -0,0 +1,52 @@
package com.ruoyi.project.data.price.service.impl;
import com.ruoyi.project.data.price.domain.UltimateResidenceRentBasePrice;
import com.ruoyi.project.data.price.mapper.UltimateResidenceRentPriceMapper;
import com.ruoyi.project.data.price.service.IUltimateResidenceRentBasePriceService;
import com.ruoyi.project.system.service.impl.SysUserServiceImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 核准住宅租赁基价 Service业务层处理
*
* @author ruoyi
* @date 2020-05-20
*/
@Service
public class UltimateResidenceRentBasePriceServiceImpl implements IUltimateResidenceRentBasePriceService {
private static final Logger log = LoggerFactory.getLogger(UltimateResidenceRentBasePriceServiceImpl.class);
@Autowired
private UltimateResidenceRentPriceMapper ultimateResidenceRentPriceMapper;
@Override
public List<UltimateResidenceRentBasePrice> selectList(UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice) {
return ultimateResidenceRentPriceMapper.selectListByRoute(ultimateResidenceRentBasePrice);
}
@Override
public int selectCount(UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice) {
return ultimateResidenceRentPriceMapper.selectCountByRoute(ultimateResidenceRentBasePrice);
}
@Override
public UltimateResidenceRentBasePrice selectById(Integer id) {
return ultimateResidenceRentPriceMapper.selectByRoute(id);
}
@Override
public int update(UltimateResidenceRentBasePrice ultimateResidenceRentBasePrice) {
return ultimateResidenceRentPriceMapper.updateByRoute(ultimateResidenceRentBasePrice);
}
@Override
public String batchImport(List<UltimateResidenceRentBasePrice> ultimateResidenceRentBasePrices, String operName) {
return null;
}
}

View File

@ -48,7 +48,7 @@ spring:
# 主库数据源
master:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:6060/ruoyi?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
url: jdbc:mysql://172.16.30.243:6060/ruoyi?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: LOLm2dI2UQF#RxOf
# 从库数据源
@ -62,4 +62,9 @@ spring:
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
url: jdbc:sqlserver://172.16.30.233:1433;DatabaseName=obpm_LianCheng_Data
username: sa
password: Lcdatacenter_888
compute:
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
url: jdbc:sqlserver://172.16.30.233:1433;DatabaseName=uv_compute
username: sa
password: Lcdatacenter_888

View File

@ -1,128 +1,128 @@
# 项目相关配置
ruoyi:
# 名称
name: RuoYi
# 版本
version: 2.2.0
# 版权年份
copyrightYear: 2019
# 实例演示开关
demoEnabled: true
# 文件路径 示例( Windows配置D:/ruoyi/uploadPathLinux配置 /home/ruoyi/uploadPath
profile: D:/ruoyi/uploadPath
# 获取ip地址开关
addressEnabled: false
# 开发环境配置
server:
# 服务器的HTTP端口默认为8080
port: 8080
servlet:
# 应用的访问路径
context-path: /
tomcat:
# tomcat的URI编码
uri-encoding: UTF-8
# tomcat最大线程数默认为200
max-threads: 800
# Tomcat启动初始化的线程数默认值25
min-spare-threads: 30
# 日志配置
logging:
level:
com.ruoyi: debug
org.springframework: warn
# Spring配置
spring:
# 资源信息
messages:
# 国际化资源文件路径
basename: i18n/messages
profiles:
active: druid
# 文件上传
servlet:
multipart:
# 单个文件大小
max-file-size: 10MB
# 设置总上传的文件大小
max-request-size: 20MB
# 服务模块
devtools:
restart:
# 热部署开关
enabled: true
# redis 配置
redis:
# 地址
host: localhost
# 端口默认为6379
port: 6379
# 密码
password:
# 连接超时时间
timeout: 10s
lettuce:
pool:
# 连接池中的最小空闲连接
min-idle: 0
# 连接池中的最大空闲连接
max-idle: 8
# 连接池的最大数据库连接数
max-active: 8
# #连接池最大阻塞等待时间(使用负值表示没有限制)
max-wait: -1ms
# token配置
token:
# 令牌自定义标识
header: Authorization
# 令牌秘钥
secret: abcdefghijklmnopqrstuvwxyz
# 令牌有效期默认30分钟
expireTime: 30
# MyBatis配置
mybatis:
# 搜索指定包别名
typeAliasesPackage: com.ruoyi.project.**.domain
# 配置mapper的扫描找到所有的mapper.xml映射文件
mapperLocations: classpath*:mybatis/**/*Mapper.xml
# 加载全局的配置文件
configLocation: classpath:mybatis/mybatis-config.xml
# PageHelper分页插件
pagehelper:
helperDialect: mysql
reasonable: true
supportMethodsArguments: true
params: count=countSql
# Swagger配置
swagger:
# 是否开启swagger
enabled: true
# 请求前缀
pathMapping: /dev-api
# 防止XSS攻击
xss:
# 过滤开关
enabled: true
# 排除链接(多个用逗号分隔)
excludes: /system/notice/*
# 匹配链接
urlPatterns: /system/*,/monitor/*,/tool/*
# 代码生成
gen:
# 作者
author: ruoyi
# 默认生成包路径 system 需改成自己的模块名称 如 system monitor tool
packageName: com.ruoyi.project.system
# 自动去除表前缀默认是true
autoRemovePre: false
# 表前缀(生成类名不会包含表前缀,多个用逗号分隔)
# 项目相关配置
ruoyi:
# 名称
name: RuoYi
# 版本
version: 2.2.0
# 版权年份
copyrightYear: 2019
# 实例演示开关
demoEnabled: true
# 文件路径 示例( Windows配置D:/ruoyi/uploadPathLinux配置 /home/ruoyi/uploadPath
profile: D:/ruoyi/uploadPath
# 获取ip地址开关
addressEnabled: false
# 开发环境配置
server:
# 服务器的HTTP端口默认为8080
port: 8080
servlet:
# 应用的访问路径
context-path: /
tomcat:
# tomcat的URI编码
uri-encoding: UTF-8
# tomcat最大线程数默认为200
max-threads: 800
# Tomcat启动初始化的线程数默认值25
min-spare-threads: 30
# 日志配置
logging:
level:
com.ruoyi: debug
org.springframework: warn
# Spring配置
spring:
# 资源信息
messages:
# 国际化资源文件路径
basename: i18n/messages
profiles:
active: druid
# 文件上传
servlet:
multipart:
# 单个文件大小
max-file-size: 10MB
# 设置总上传的文件大小
max-request-size: 20MB
# 服务模块
devtools:
restart:
# 热部署开关
enabled: true
# redis 配置
redis:
# 地址
host: 172.16.30.243
# 端口默认为6379
port: 6030
# 密码
password:
# 连接超时时间
timeout: 10s
lettuce:
pool:
# 连接池中的最小空闲连接
min-idle: 0
# 连接池中的最大空闲连接
max-idle: 8
# 连接池的最大数据库连接数
max-active: 8
# #连接池最大阻塞等待时间(使用负值表示没有限制)
max-wait: -1ms
# token配置
token:
# 令牌自定义标识
header: Authorization
# 令牌秘钥
secret: abcdefghijklmnopqrstuvwxyz
# 令牌有效期默认30分钟
expireTime: 30
# MyBatis配置
mybatis:
# 搜索指定包别名
typeAliasesPackage: com.ruoyi.project.**.domain
# 配置mapper的扫描找到所有的mapper.xml映射文件
mapperLocations: classpath*:mybatis/**/*Mapper.xml
# 加载全局的配置文件
configLocation: classpath:mybatis/mybatis-config.xml
# PageHelper分页插件
pagehelper:
helperDialect: mysql
reasonable: true
supportMethodsArguments: true
params: count=countSql
# Swagger配置
swagger:
# 是否开启swagger
enabled: true
# 请求前缀
pathMapping: /dev-api
# 防止XSS攻击
xss:
# 过滤开关
enabled: true
# 排除链接(多个用逗号分隔)
excludes: /system/notice/*
# 匹配链接
urlPatterns: /system/*,/monitor/*,/tool/*
# 代码生成
gen:
# 作者
author: ruoyi
# 默认生成包路径 system 需改成自己的模块名称 如 system monitor tool
packageName: com.ruoyi.project.system
# 自动去除表前缀默认是true
autoRemovePre: false
# 表前缀(生成类名不会包含表前缀,多个用逗号分隔)
tablePrefix: sys_

View File

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.project.data.price.mapper.ArtificialResidenceRentPriceMapper">
<resultMap type="com.ruoyi.project.data.price.domain.ArtificialResidenceRentBasePrice"
id="MainMappingResult">
<result property="id" column="id"/>
<result property="communityId" column="ProjectID"/>
<result property="mainRentCoefficient" column="MainCoff_Rent"/>
<result property="mainRentPrice" column="MainRentPrice"/>
<result property="rentPrice" column="RentPrice"/>
<result property="rentPrice_1" column="rentPrice_1"/>
<result property="voppat" column="voppat"/>
<result property="voppa" column="voppa"/>
</resultMap>
<select id="selectArtificialResidenceRentBasePriceListCount"
parameterType="com.ruoyi.project.data.price.domain.ArtificialResidenceRentBasePrice" resultType="int">
select count(1) from DWA_PROJECTBASEPRICE_RENT_IMDT_${yearMonth}
<where>
<if test="communityId != null">
AND ProjectID = #{communityId}
</if>
</where>
</select>
<!-- 分页 -->
<select id="selectArtificialResidenceRentBasePriceList"
parameterType="com.ruoyi.project.data.price.domain.ArtificialResidenceRentBasePrice"
resultMap="MainMappingResult">
<![CDATA[ SELECT ID,ProjectID,MainCoff_Rent,RentPrice,MainRentPrice,RentPrice_1,VOPPAT,VOPPA ]]>
FROM dbo.DWA_PROJECTBASEPRICE_RENT_MANU_${yearMonth}
order by ProjectID ASC OFFSET #{pageIndex} rows fetch next #{pageSize} rows only
</select>
</mapper>

View File

@ -0,0 +1,165 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.project.data.price.mapper.ComputeResidenceRentPriceMapper">
<resultMap type="com.ruoyi.project.data.price.domain.ComputeResidenceRentBasePrice"
id="MainMappingResult">
<result property="id" column="id"/>
<result property="communityId" column="ProjectID"/>
<result property="communityName" column="ProjectName"/>
<result property="communityAddress" column="ProjectAddr"/>
<result property="county" column="county"/>
<result property="block" column="block"/>
<result property="loop" column="loopLine"/>
<result property="isIndxGen" column="isIndxGen"/>
<result property="isPstCalc" column="isPstCalc"/>
<result property="statusRun" column="statusRun"/>
<result property="propertyType" column="propertyType"/>
<result property="projectType" column="projectType"/>
<result property="projectTypeDtl" column="projectTypeDtl"/>
<result property="projectLevel" column="projectLevel"/>
<result property="propertyDevPeriod" column="propertyDevPeriod"/>
<result property="bindClassID" column="bindClassID"/>
<result property="mainCoefficientRent" column="mainCoffRent"/>
<result property="rentPriceDft" column="rentPriceDft"/>
<result property="mainRentPriceDft" column="mainRentPriceDft"/>
<result property="rentPrice_1" column="rentPrice_1"/>
<result property="priceDealMean_1" column="priceDealMean_1"/>
<result property="priceDealMax_1" column="priceDealMax_1"/>
<result property="sumDeal_1" column="sumDeal_1"/>
<result property="priceDeal_1_ToAI_Pst" column="priceDeal_1_ToAI_Pst"/>
<result property="priceDealMean" column="priceDealMean"/>
<result property="priceDealMax" column="priceDealMax"/>
<result property="sumDeal" column="sumDeal"/>
<result property="priceDeal_ToAI_Pst" column="priceDeal_ToAI_Pst"/>
<result property="priceDeal_ToLst_Pst" column="priceDeal_ToLst_Pst"/>
<result property="priceCaseOff" column="priceCaseOff"/>
<result property="priceCaseOff_ToLst_Pst" column="priceCaseOff_ToLst_Pst"/>
<result property="priceListedMin" column="priceListedMin"/>
<result property="priceLstMn_ToAI_Pst" column="priceLstMn_ToAI_Pst"/>
<result property="priceCase1_ToAI_Pst" column="priceCase1_ToAI_Pst"/>
<result property="priceCase2_ToAI_Pst" column="priceCase2_ToAI_Pst"/>
<result property="priceCase1_ToLst_Pst" column="priceCase1_ToLst_Pst"/>
<result property="priceCase2_ToLst_Pst" column="priceCase2_ToLst_Pst"/>
<result property="priceCase1" column="priceCase1"/>
<result property="priceCase1AdjPst" column="priceCase1AdjPst"/>
<result property="sumCase1" column="sumCase1"/>
<result property="priceCase2" column="priceCase2"/>
<result property="priceCase2AdjPst" column="priceCase2AdjPst"/>
<result property="sumCase2" column="sumCase2"/>
<result property="voppbt" column="voppbt"/>
<result property="voppb" column="voppb"/>
<result property="bindProjID" column="bindProjID"/>
<result property="bind_Proj_Pst" column="bind_Proj_Pst"/>
<result property="bind_Block_Class" column="bind_Block_Class"/>
<result property="bind_Block_Class_Pst" column="bind_Block_Class_Pst"/>
<result property="bind_Block_Plevel" column="bind_Block_Plevel"/>
<result property="bind_Block_Plevel_Pst" column="bind_Block_Plevel_Pst"/>
<result property="bind_Block_PType" column="bind_Block_PType"/>
<result property="bind_Block_Ptype_Pst" column="bind_Block_Ptype_Pst"/>
<result property="bind_County_PType" column="bind_County_PType"/>
<result property="bind_County_Ptype_Pst" column="bind_County_Ptype_Pst"/>
<result property="bind_MixProject_PType" column="bind_MixProject_PType"/>
<result property="bind_MixProject_Pst" column="bind_MixProject_Pst"/>
<result property="voppat" column="voppat"/>
<result property="voppa" column="voppa"/>
</resultMap>
<sql id="selectOfficeBasePriceUltimateVo">
SELECT ID
,ProjectID
,ProjectName
,ProjectAddr
,County
,Block
,Loop
,IsIndxGen
,IsPstCalc
,StatusRun
,PropertyType
,ProjectType
,ProjectTypeDtl
,ProjectLevel
,PropertyDevPeriod
,BindClassID
,MainCoff_Rent
,RentPriceDft
,MainRentPriceDft
,RentPrice_1
,PriceDealMean_1
,PriceDealMax_1
,SumDeal_1
,PriceDeal_1_ToAI_Pst
,PriceDealMean
,PriceDealMax
,SumDeal
,PriceDeal_ToAI_Pst
,PriceDeal_ToLst_Pst
,PriceCaseOff
,PriceCaseOff_ToLst_Pst
,PriceListedMin
,PriceLstMn_ToAI_Pst
,PriceCase1_ToAI_Pst
,PriceCase2_ToAI_Pst
,PriceCase1_ToLst_Pst
,PriceCase2_ToLst_Pst
,PriceCase1
,PriceCase1AdjPst
,SumCase1
,PriceCase2
,PriceCase2AdjPst
,SumCase2
,VOPPBT
,VOPPB
,BindProjID
,Bind_Proj_Pst
,Bind_Block_Class
,Bind_Block_Class_Pst
,Bind_Block_Plevel
,Bind_Block_Plevel_Pst
,Bind_Block_PType
,Bind_Block_Ptype_Pst
,Bind_County_PType
,Bind_County_Ptype_Pst
,Bind_MixProject_PType
,Bind_MixProject_Pst
,VOPPAT
,VOPPA
FROM dbo.DWA_PROJECTBASEPRICE_RENT_IMDT_${yearMonth}
</sql>
<select id="selectComputeResidenceRentBasePriceListCount"
parameterType="com.ruoyi.project.data.price.domain.ComputeResidenceRentBasePrice" resultType="int">
select count(1) from DWA_PROJECTBASEPRICE_RENT_IMDT_${yearMonth}
<where>
<if test="communityId != null">
AND ProjectID = #{communityId}
</if>
</where>
</select>
<!-- 分页 -->
<select id="selectComputeResidenceRentBasePriceList"
parameterType="com.ruoyi.project.data.price.domain.ComputeResidenceRentBasePrice"
resultMap="MainMappingResult">
<![CDATA[ SELECT ID,ProjectID,ProjectName,ProjectAddr,County,Block,[Loop] as loopLine,IsIndxGen,IsPstCalc,StatusRun,PropertyType,ProjectType,ProjectTypeDtl,ProjectLevel,PropertyDevPeriod,BindClassID,MainCoff_Rent,RentPriceDft,MainRentPriceDft,RentPrice_1,PriceDealMean_1,PriceDealMax_1,SumDeal_1,PriceDeal_1_ToAI_Pst,PriceDealMean,PriceDealMax,SumDeal,PriceDeal_ToAI_Pst,PriceDeal_ToLst_Pst,PriceCaseOff,PriceCaseOff_ToLst_Pst,PriceListedMin,PriceLstMn_ToAI_Pst,PriceCase1_ToAI_Pst,PriceCase2_ToAI_Pst,PriceCase1_ToLst_Pst,PriceCase2_ToLst_Pst,PriceCase1,PriceCase1AdjPst,SumCase1,PriceCase2,PriceCase2AdjPst,SumCase2,VOPPBT,VOPPB,BindProjID,Bind_Proj_Pst,Bind_Block_Class,Bind_Block_Class_Pst,Bind_Block_Plevel,Bind_Block_Plevel_Pst,Bind_Block_PType,Bind_Block_Ptype_Pst,Bind_County_PType,Bind_County_Ptype_Pst,Bind_MixProject_PType,Bind_MixProject_Pst,VOPPAT,VOPPA ]]>
FROM dbo.DWA_PROJECTBASEPRICE_RENT_IMDT_${yearMonth}
order by ProjectID ASC OFFSET #{pageIndex} rows fetch next #{pageSize} rows only
</select>
<!-- -->
<select id="selectComputeResidenceRentBasePriceById" parameterType="String" resultMap="MainMappingResult">
<include refid="selectOfficeBasePriceUltimateVo"/>
where id = #{id}
</select>
<!-- <update id="updateComputeResidenceRentBasePrice" parameterType="com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice">-->
<!-- update TLK_计价办公核准基价 set ITEM_YEARMONTH=ITEM_YEARMONTH-->
<!-- <trim prefix="SET" suffixOverrides=",">-->
<!-- </trim>-->
<!-- where id = #{id}-->
<!-- </update>-->
</mapper>

View File

@ -2,9 +2,9 @@
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.project.data.price.compute.mapper.OfficeBasePriceUltimateMapper">
<mapper namespace="com.ruoyi.project.data.price.mapper.UltimateOfficeBasePriceMapper">
<resultMap type="com.ruoyi.project.data.price.compute.domain.OfficeBasePriceUltimate"
<resultMap type="com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice"
id="OfficeBasePriceUltimateResult">
<result property="id" column="id"/>
<result property="yearMonth" column="ITEM_YEARMONTH"/>
@ -26,7 +26,7 @@
select ITEM_YEARMONTH,ITEM_BUILDINGID,ITEM_UNIFIEDID,ITEM_PROJECTID,ITEM_BUILDINGID_P,ITEM_PROJECTID_P,ITEM_MAINPRICE,ITEM_MAINPRICERENT,ITEM_MAINPRICEPST,ITEM_MAINPRICERENTPST,ITEM_MAINPRICETYPE,ITEM_MAINPRICERENTTYPE,ITEM_MODIFYDATE,ITEM_STATUS,ITEM_BUILDINGSTD,ITEM_ADJEVD,ID from TLK_计价办公核准基价
</sql>
<select id="selectOfficeBasePriceUltimateListCount" parameterType="OfficeBasePriceUltimate" resultType="int">
<select id="selectOfficeBasePriceUltimateListCount" parameterType="com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice" resultType="int">
select count(1) from TLK_计价办公核准基价
<where>
<if test="yearMonth != null">
@ -44,7 +44,7 @@
</where>
</select>
<select id="selectOfficeBasePriceUltimateList" parameterType="OfficeBasePriceUltimate"
<select id="selectOfficeBasePriceUltimateList" parameterType="com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice"
resultMap="OfficeBasePriceUltimateResult">
<include refid="selectOfficeBasePriceUltimateVo"/>
<where>
@ -75,22 +75,11 @@
<!-- </trim>-->
<!-- </insert>-->
<update id="updateOfficeBasePriceUltimate" parameterType="OfficeBasePriceUltimate">
<update id="updateOfficeBasePriceUltimate" parameterType="com.ruoyi.project.data.price.domain.UltimateOfficeBasePrice">
update TLK_计价办公核准基价 set ITEM_YEARMONTH=ITEM_YEARMONTH
<trim prefix="SET" suffixOverrides=",">
</trim>
where id = #{id}
</update>
<!-- <delete id="deleteOfficeBasePriceUltimateById" parameterType="Integer">-->
<!-- delete from office_base_price_ultimate where id = #{id}-->
<!-- </delete>-->
<!-- <delete id="deleteOfficeBasePriceUltimateByIds" parameterType="String">-->
<!-- delete from office_base_price_ultimate where id in-->
<!-- <foreach item="id" collection="array" open="(" separator="," close=")">-->
<!-- #{id}-->
<!-- </foreach>-->
<!-- </delete>-->
</mapper>

View File

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.project.data.price.mapper.UltimateResidenceRentPriceMapper">
<resultMap type="com.ruoyi.project.data.price.domain.UltimateResidenceRentBasePrice"
id="MappingResult">
<result property="id" column="id"/>
<result property="communityId" column="projectID"/>
<result property="priceType" column="priceType"/>
<result property="basePrice_1" column="basePrice_1"/>
<result property="rentPrice" column="rentPrice"/>
<result property="sumCase1" column="sumCase1"/>
<result property="voppa" column="voppa"/>
<result property="voppat" column="voppat"/>
<result property="gf_1Room" column="gf_1Room"/>
<result property="gf_2Room" column="gf_2Room"/>
<result property="gy_2Room" column="gy_2Room"/>
<result property="gy_3Room" column="gy_3Room"/>
<result property="one_Room" column="one_Room"/>
<result property="two_Room" column="two_Room"/>
<result property="three_Room" column="three_Room"/>
<result property="entireRentRatio" column="entireRentRatio"/>
<result property="entireRentNum" column="entireRentNum"/>
<result property="shareRentRatio" column="shareRentRatio"/>
<result property="shareRentNum" column="shareRentNum"/>
<result property="saleRentRatio" column="saleRentRatio"/>
<result property="status" column="status"/>
<result property="adjEvd" column="adjEvd"/>
<result property="modifyDate" column="modifyDate"/>
</resultMap>
<sql id="selectAllColumn">
select
ID,ProjectID,PriceType,BasePrice_1,RentPrice,SumCase1,VOPPAT,VOPPA,GF_1Room,GF_2Room,GY_2Room,GY_3Room,One_Room,Two_Room,Three_Room,EntireRentRatio,EntireRentNum,ShareRentRatio,ShareRentNum,SaleRentRatio,ModifyDate,Status,AdjEvd
from ODS_PROJECT_RENT_PRICE_INFO_${yearMonth}
</sql>
<select id="selectCountByRoute" parameterType="com.ruoyi.project.data.price.domain.UltimateResidenceRentBasePrice" resultType="int">
select count(1) from ODS_PROJECT_RENT_PRICE_INFO_${yearMonth}
<where>
<if test="communityId != null">
AND ProjectID = #{communityId}
</if>
<if test="status != null">
AND Status = #{status}
</if>
</where>
</select>
<select id="selectListByRoute" parameterType="com.ruoyi.project.data.price.domain.UltimateResidenceRentBasePrice"
resultMap="MappingResult">
<include refid="selectAllColumn"/>
<where>
<if test="communityId != null">
AND ProjectID = #{communityId}
</if>
<if test="status != null">
AND Status = #{status}
</if>
</where>
order by ProjectID ASC, status DESC OFFSET #{pageIndex} rows fetch next #{pageSize} rows only;
</select>
</mapper>

View File

@ -0,0 +1,32 @@
package com.uvaluation.compute;
import com.ruoyi.project.data.price.domain.ComputeResidenceRentBasePrice;
import com.ruoyi.project.data.price.domain.UltimateResidenceRentBasePrice;
import org.junit.Test;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class MapperXmlGeneratorTests {
@Test
public void generateBatchInsertSqL() {
Class targetClass = UltimateResidenceRentBasePrice .class;
List<Field> fieldList = new ArrayList<>();
fieldList.addAll(new ArrayList<>(Arrays.asList(targetClass.getDeclaredFields())));
// while (targetClass != null) {
// fieldList.addAll(new ArrayList<>(Arrays.asList(targetClass.getDeclaredFields())));
// targetClass = targetClass.getSuperclass();
// }
Field[] fields = new Field[fieldList.size()];
fieldList.toArray(fields);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < fields.length; i++) {
String name = fields[i].getName();
sb.append("<result property=\""+name+"\" column=\""+name+"\"/>\r\n");
}
System.out.println(sb.toString());
}
}