|
@@ -3,8 +3,8 @@
|
|
|
<!-- <div class="search-header">
|
|
|
<floor-cascader @change="changeFloor"></floor-cascader>
|
|
|
</div> -->
|
|
|
- <el-row class="right">
|
|
|
- <span style="float:left;">当前筛选条件下共{{page.total || '--'}}租户</span>
|
|
|
+ <el-row class="left">
|
|
|
+ <span style="float:right;">当前筛选条件下共{{page.total || '--'}}租户</span>
|
|
|
<el-select v-model="onlyRead" @change="getTableHeader" style="width:100px;margin-right:10px;vertical-align:bottom;">
|
|
|
<el-option
|
|
|
v-for="item in options"
|
|
@@ -13,10 +13,18 @@
|
|
|
:value="item.value">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
- <div v-show="onlyRead" style="width:200px;display:inline-block;text-align:left;color:gray;font-size:12px;">
|
|
|
+ <el-select v-model="showType" @change="initTable" style="width:100px;margin-right:10px;vertical-align:bottom;">
|
|
|
+ <el-option
|
|
|
+ v-for="item in showTypes"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ <!-- <div v-show="onlyRead" style="width:200px;display:inline-block;text-align:left;color:gray;font-size:12px;">
|
|
|
<span>只看要采集的信息</span>
|
|
|
<el-checkbox v-model="allMess" @change="getTableHeader"></el-checkbox>
|
|
|
- </div>
|
|
|
+ </div> -->
|
|
|
<el-button @click="handleCreateTableData">添加租户</el-button>
|
|
|
<el-button @click="getTableHeader">刷新</el-button>
|
|
|
<el-button v-show="!onlyRead" @click="undo">撤销</el-button>
|
|
@@ -71,7 +79,7 @@ import text from "@/utils/handsontable/mainText"
|
|
|
|
|
|
import floorCascader from "@/components/ledger/lib/floorCascader"
|
|
|
import handsonTable from "@/components/common/handsontable"
|
|
|
-import { getDataDictionary, getRentTableHeader, getRentTableData, updataRentTableData, deleteRentTableData, saveRentRelateSpace } from "@/api/scan/request"
|
|
|
+import { getDataDictionary, getRentTableHeader, getRentTableData, updataRentTableData, deleteRentTableData, saveRentRelateSpace, BeatchQueryParam } from "@/api/scan/request"
|
|
|
import { mapGetters, mapActions } from "vuex";
|
|
|
export default {
|
|
|
components: {
|
|
@@ -93,7 +101,8 @@ export default {
|
|
|
label: '编辑模式'
|
|
|
}],
|
|
|
onlyRead: true,
|
|
|
- allMess: true,
|
|
|
+ showType: "",
|
|
|
+ // allMess: true,
|
|
|
tableHeader: [],
|
|
|
page: {
|
|
|
pageSize: 50,
|
|
@@ -110,7 +119,12 @@ export default {
|
|
|
"projectId",
|
|
|
"secret",
|
|
|
"userId"
|
|
|
- ])
|
|
|
+ ]),
|
|
|
+ showTypes () {
|
|
|
+ return this.onlyRead?
|
|
|
+ [{value: "all", label: '全部'}, {value: "Visible", label: '只看要采集的信息'}]:
|
|
|
+ [{value: "all", label: '全部'}, {value: "Visible", label: '只看要采集的信息'}, {value: "partInfo", label: '隐藏自动填充的信息点'}]
|
|
|
+ }
|
|
|
},
|
|
|
created() {
|
|
|
this.getTableHeader()
|
|
@@ -118,17 +132,28 @@ export default {
|
|
|
watch: {
|
|
|
projectId() {
|
|
|
this.getTableHeader()
|
|
|
+ },
|
|
|
+ showTypes: {
|
|
|
+ handler(newName, oldName) {
|
|
|
+ if (newName && newName[0] && newName[0].value) {
|
|
|
+ this.showType = newName[0].value
|
|
|
+ } else {
|
|
|
+ this.showType = ""
|
|
|
+ }
|
|
|
+ },
|
|
|
+ immediate: true,
|
|
|
+ deep: true
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
// 获取表头数据(初始化表格)
|
|
|
async getTableHeader() {
|
|
|
let param = {
|
|
|
- // ProjId: this.projectId,
|
|
|
- // secret: this.secret,
|
|
|
- PageNumber: 1,
|
|
|
- PageSize: 500,
|
|
|
- Filters: `type='Tenant'`
|
|
|
+ data: {
|
|
|
+ PageNumber: 1,
|
|
|
+ PageSize: 500
|
|
|
+ },
|
|
|
+ type: 'Tenant'
|
|
|
}
|
|
|
await getDataDictionary(param, res => {
|
|
|
this.tableHeader = res.Content;
|
|
@@ -136,22 +161,20 @@ export default {
|
|
|
})
|
|
|
},
|
|
|
async getTableData() {//获取表格数据
|
|
|
- let data = {
|
|
|
- Filters: `ProjectId='${this.projectId}'`,
|
|
|
+ let params = {
|
|
|
+ Orders: "createTime desc, TenantID asc",
|
|
|
PageNumber: this.page.pageNumber,
|
|
|
PageSize: this.page.pageSize
|
|
|
}
|
|
|
- const params = {
|
|
|
- ProjId: this.projectId,
|
|
|
- secret: this.secret,
|
|
|
- data: data
|
|
|
- }
|
|
|
await getRentTableData(params, (res) => {
|
|
|
this.tableData = res.Content
|
|
|
this.copyTableData = tools.deepCopy(res.Content)
|
|
|
this.page.pageNumber = res.PageNumber
|
|
|
this.page.total = res.Total
|
|
|
if(this.tableData && this.tableData.length){
|
|
|
+ if (this.onlyRead) {
|
|
|
+ this.getBatch(res.Content)
|
|
|
+ }
|
|
|
this.initTable()
|
|
|
}
|
|
|
})
|
|
@@ -159,17 +182,13 @@ export default {
|
|
|
// 修改表格内容
|
|
|
async updateTableData(data, change) {
|
|
|
let param = {
|
|
|
- ProjId: this.projectId,
|
|
|
- secret: this.secret,
|
|
|
- data: {
|
|
|
- Content: [],
|
|
|
- Projection: []
|
|
|
- }
|
|
|
- };
|
|
|
+ Content: [],
|
|
|
+ Projection: []
|
|
|
+ }
|
|
|
//生成要修改字段列表
|
|
|
change.map((item) => {
|
|
|
- if(item[1] && param.data.Projection.indexOf(item[1]) == -1) {
|
|
|
- param.data.Projection.push(item[1])
|
|
|
+ if(item[1] && param.Projection.indexOf(item[1]) == -1) {
|
|
|
+ param.Projection.push(item[1])
|
|
|
}
|
|
|
})
|
|
|
//生成对应修改数据
|
|
@@ -180,7 +199,7 @@ export default {
|
|
|
// } else {
|
|
|
// item[keyarr[0]] = item[keyarr[0]] != ""? item[keyarr[0]]: null
|
|
|
// }
|
|
|
- param.data.Content.push(item);
|
|
|
+ param.Content.push(item);
|
|
|
});
|
|
|
|
|
|
await updataRentTableData(param, (res) => {
|
|
@@ -189,15 +208,10 @@ export default {
|
|
|
},
|
|
|
//保存元空间关联
|
|
|
async saveSpaceList() {
|
|
|
- let data = {
|
|
|
- TenantID: this.tenantID,
|
|
|
+ let params = {
|
|
|
+ Tenant: this.tenantID,
|
|
|
RoomID: this.roomId
|
|
|
}
|
|
|
- const params = {
|
|
|
- ProjId: this.projectId,
|
|
|
- secret: this.secret,
|
|
|
- data: data
|
|
|
- }
|
|
|
await saveRentRelateSpace(params, (res) => {
|
|
|
this.$message.success("关联成功!")
|
|
|
this.getTableHeader()
|
|
@@ -220,13 +234,9 @@ export default {
|
|
|
if (params.length < 1) {
|
|
|
return
|
|
|
}
|
|
|
- let param = {
|
|
|
- ProjId: this.projectId,
|
|
|
- secret: this.secret,
|
|
|
- data: []
|
|
|
- }
|
|
|
+ let param = []
|
|
|
params.map(item => {
|
|
|
- param.data.push(item.TenantID)
|
|
|
+ param.push({TenantID: item.TenantID})
|
|
|
})
|
|
|
this.$confirm("此操作将删除租户,是否继续?", "提示", {
|
|
|
confirmButtonText: '确定',
|
|
@@ -293,21 +303,13 @@ export default {
|
|
|
},
|
|
|
formatHeaderData(list) {//格式化表头显示的数据
|
|
|
let arr = tools.copyArr(list)
|
|
|
- arr.map((item) => {
|
|
|
- item.Visible = true
|
|
|
- })
|
|
|
- let readArr = ["A1", "A2", "B1", "C5", "D1", "D2", "E1", "F1", "F2", "L", "L1", "L2", "M"]
|
|
|
- let data = showTools.changeHeader(arr, readArr, this.onlyRead, false, this.allMess)
|
|
|
+ let data = showTools.headerTextFilter(arr, "tenant", this.onlyRead, this.showType)
|
|
|
data.unshift("操作","所属楼层","租赁空间");
|
|
|
return data;
|
|
|
},
|
|
|
formatHeaderType(list) {//格式化表头头映射的数据
|
|
|
let arr = tools.copyArr(list);
|
|
|
- arr.map((item) => { //缺少信息点
|
|
|
- item.Visible = true
|
|
|
- })
|
|
|
- let readArr = ["A1", "A2", "B1", "C5", "D1", "D2", "E1", "F1", "F2", "L", "L1", "L2", "M"]
|
|
|
- let data = showTools.showHeaderTypes(arr, readArr, this.onlyRead, false, this.allMess)
|
|
|
+ let data = showTools.headerTypeFilter(arr, "tenant", this.onlyRead, this.showType)
|
|
|
data.unshift({
|
|
|
data: "caozuo",
|
|
|
renderer: tools.lookDetails,
|
|
@@ -430,6 +432,63 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
return a;
|
|
|
+ },
|
|
|
+ //获取动态参数
|
|
|
+ getBatch(data) {
|
|
|
+ let param = {
|
|
|
+ secret: this.secret,
|
|
|
+ ProjId: this.projectId,
|
|
|
+ data: {
|
|
|
+ criterias: []
|
|
|
+ }
|
|
|
+ };
|
|
|
+ this.tableHeader.map(head => {
|
|
|
+ if (
|
|
|
+ head.InputMode == "L" ||
|
|
|
+ head.InputMode == "L1" ||
|
|
|
+ head.InputMode == "L2" ||
|
|
|
+ head.InputMode == "M"
|
|
|
+ ) {
|
|
|
+ data.map(item => {
|
|
|
+ let cur = tools.dataForKey(item, head.Path);
|
|
|
+ if (cur) {
|
|
|
+ param.data.criterias.push({
|
|
|
+ id: item.TenantID,
|
|
|
+ code: head.InfoPointCode
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ if (param.data.criterias.length) {
|
|
|
+ BeatchQueryParam(param, res => {
|
|
|
+ this.tableData = data.map(item => {
|
|
|
+ res.Content.map(child => {
|
|
|
+ if (item.TenantID == child.id) {
|
|
|
+ if (child.data || child.data == 0) {
|
|
|
+ this.tableHeader.map(head => {
|
|
|
+ if (head.InfoPointCode == child.code) {
|
|
|
+ tools.setDataForKey(item, head.Path, child.data);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ this.tableHeader.map(head => {
|
|
|
+ if (head.InfoPointCode == child.code) {
|
|
|
+ tools.setDataForKey(
|
|
|
+ item,
|
|
|
+ head.Path,
|
|
|
+ child.error ? "表号功能号格式错误" : "表号功能号不存在"
|
|
|
+ );
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ return item;
|
|
|
+ });
|
|
|
+ this.tableExample.loadData(this.tableData);
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
};
|