Browse Source

接口调试

zhangyu 5 years ago
parent
commit
71cd0eb15f

+ 7 - 0
config/index.js

@@ -17,6 +17,13 @@ module.exports = {
                     "^/admin": "/"
                 }
             },
+            // '/api/datacenter/': {
+            //     target: 'http://192.168.20.179:8081',
+            //     changeOrigin: true,
+            //     pathRewrite: {
+            //         "^/api/datacenter": "/"
+            //     }
+            // },
             '/api': {
                 target: 'http://192.168.20.235:8080',
                 changeOrigin: true,

+ 20 - 0
src/api/data_admin/buildTaskApi.js

@@ -33,6 +33,16 @@ export function updateModelTask(param, success) {
   let url = `${baseUrl}/datacenter/model-scan-task/update`;
   http.postJson(url, param, success)
 }
+//查询设备分类
+export function queryModelCategory(param, success) {
+  let url = `${baseUrl}/datacenter/model-scan-task/model-category-query`;
+  http.postJson(url, param, success)
+}
+//查询模型文件夹和文件
+export function queryModelFile(param, success) {
+  let url = `${baseUrl}/datacenter/model-scan-task/model-file-query`;
+  http.postJson(url, param, success)
+}
 
 /*************************设备台账任务接口****************************/
 //创建设备台账任务
@@ -55,6 +65,11 @@ export function updateDeviceTask(param, success) {
   let url = `${baseUrl}/datacenter/equip-scan-task/update`;
   http.postJson(url, param, success)
 }
+//查询设备分类
+export function queryDeviceCategory(param, success) {
+  let url = `${baseUrl}/datacenter/equip-scan-task/equip-category-query`;
+  http.postJson(url, param, success)
+}
 
 /*************************资产台账任务接口****************************/
 //统计数量
@@ -81,4 +96,9 @@ export function queryAssetsTask(param, success) {
 export function updateAssetsTask(param, success) {
   let url = `${baseUrl}/datacenter/property-scan-task/update`;
   http.postJson(url, param, success)
+}
+//查询设备族
+export function queryAssetsFamily(param, success) {
+  let url = `${baseUrl}/datacenter/property-scan-task/property-category-query`;
+  http.postJson(url, param, success)
 }

+ 1 - 1
src/components/data_admin/buildTask/detail/assetsDetail.vue

@@ -139,7 +139,7 @@ export default {
   methods: {
   },
   watch: {
-    id: {
+    detail: {
       handler(newName, oldName) {
         // this.page.pageNumber = 1
         // this.getTableData()

+ 2 - 2
src/components/data_admin/buildTask/detail/deviceDetail.vue

@@ -13,7 +13,7 @@
           <el-form-item label="设备本地编码:">{{ detail.EquipLocalID || '--' }}</el-form-item>
           <el-form-item label="设计图纸中编码:">{{ detail.CadId || '--' }}</el-form-item>
           <el-form-item label="安装位置:">{{ detail.InstallLocation || '--' }}</el-form-item>
-          <el-form-item label="生产厂家:">{{ detail.Equipment.DpSupplierID || '--' }}</el-form-item>
+          <el-form-item label="生产厂家:">{{ detail.Equipment?detail.Equipment.DpSupplierID?detail.Equipment.DpSupplierID:'':'' || '--' }}</el-form-item>
           <el-form-item label="型号:">{{ detail.Equipment.DpManufacturerID || '--' }}</el-form-item>
           <el-form-item label="包含部件:">
             <div v-if="detail.Equipment.Component && detail.Equipment.Component.length">
@@ -134,7 +134,7 @@ export default {
   methods: {
   },
   watch: {
-    id: {
+    detail: {
       handler(newName, oldName) {
         // this.page.pageNumber = 1
         // this.getTableData()

+ 70 - 0
src/components/data_admin/buildTask/lib/assetsCascader.vue

@@ -0,0 +1,70 @@
+<template>
+  <div id="cascaderMap">
+    <span class="buildFloor" style="margin-right: 12px;">设备族</span>
+    <el-select v-model="value" placeholder="请选择" clearable filterable :style="isWidth ? '' : 'width:160px;'" size="small" @change="changeVal">
+      <el-option  v-for="item in options" :key="item.Code" :label="item.Name" :value="item.Code"></el-option>
+    </el-select>
+  </div>
+</template>
+<script>
+import { mapGetters } from 'vuex';
+import { queryAssetsFamily } from "@/api/data_admin/buildTaskApi"
+export default {
+  props: {
+    isWidth: {
+      type: Boolean,
+      default: true
+    }
+  },
+  computed: {
+    ...mapGetters("layout", ["projectId"])
+  },
+  data() {
+    return {
+      value: "",
+      options: []
+    };
+  },
+  created() {
+    this.getData();
+  },
+  watch: {
+    projectId() {
+      this.value = '';
+      this.getData();
+    }
+  },
+  methods: {
+    setValue(val) {
+      this.value = val
+    },
+    //修改val
+    changeVal(val) {
+      let value = {}
+      this.options.map(item => {
+        if (item.Code == val) {
+          value = item
+        }
+      })
+      this.value = val
+      this.$emit("change", value)
+    },
+    //获取当前项目下的资产任务-设备族
+    getData() {
+      queryAssetsFamily('', res => {
+        this.options = res.Content
+      })
+    }
+  }
+};
+</script>
+<style lang="less" scoped>
+#cascaderMap {
+  float: left;
+  margin-left: 10px;
+  .buildFloor {
+    color: #999999;
+    font-size: 14px;
+  }
+}
+</style>

+ 70 - 0
src/components/data_admin/buildTask/lib/deviceCascader.vue

@@ -0,0 +1,70 @@
+<template>
+  <div id="cascaderMap">
+    <span class="buildFloor" style="margin-right: 12px;">设备类别</span>
+    <el-select v-model="value" placeholder="请选择" clearable filterable :style="isWidth ? '' : 'width:160px;'" size="small" @change="changeVal">
+      <el-option  v-for="item in options" :key="item.Code" :label="item.Name" :value="item.Code"></el-option>
+    </el-select>
+  </div>
+</template>
+<script>
+import { mapGetters } from 'vuex';
+import { queryDeviceCategory } from "@/api/data_admin/buildTaskApi"
+export default {
+  props: {
+    isWidth: {
+      type: Boolean,
+      default: true
+    }
+  },
+  computed: {
+    ...mapGetters("layout", ["projectId"])
+  },
+  data() {
+    return {
+      value: "",
+      options: []
+    };
+  },
+  created() {
+    this.getData();
+  },
+  watch: {
+    projectId() {
+      this.value = '';
+      this.getData();
+    }
+  },
+  methods: {
+    setValue(val) {
+      this.value = val
+    },
+    //修改val
+    changeVal(val) {
+      let value = {}
+      this.options.map(item => {
+        if (item.Code == val) {
+          value = item
+        }
+      })
+      this.value = val
+      this.$emit("change", value)
+    },
+    //获取当前项目下的设备任务-设备类型
+    getData() {
+      queryDeviceCategory('', res => {
+        this.options = res.Content
+      })
+    }
+  }
+};
+</script>
+<style lang="less" scoped>
+#cascaderMap {
+  float: left;
+  margin-left: 10px;
+  .buildFloor {
+    color: #999999;
+    font-size: 14px;
+  }
+}
+</style>

+ 70 - 0
src/components/data_admin/buildTask/lib/modelCascader.vue

@@ -0,0 +1,70 @@
+<template>
+  <div id="cascaderMap">
+    <span class="buildFloor" style="margin-right: 12px;">设备类别</span>
+    <el-select v-model="value" placeholder="请选择" clearable filterable :style="isWidth ? '' : 'width:160px;'" size="small" @change="changeVal">
+      <el-option  v-for="item in options" :key="item.Code" :label="item.Name" :value="item.Code"></el-option>
+    </el-select>
+  </div>
+</template>
+<script>
+import { mapGetters } from 'vuex';
+import { queryModelCategory } from "@/api/data_admin/buildTaskApi"
+export default {
+  props: {
+    isWidth: {
+      type: Boolean,
+      default: true
+    }
+  },
+  computed: {
+    ...mapGetters("layout", ["projectId"])
+  },
+  data() {
+    return {
+      value: "",
+      options: []
+    };
+  },
+  created() {
+    this.getData();
+  },
+  watch: {
+    projectId() {
+      this.value = '';
+      this.getData();
+    }
+  },
+  methods: {
+    setValue(val) {
+      this.value = val
+    },
+    //修改val
+    changeVal(val) {
+      let value = {}
+      this.options.map(item => {
+        if (item.Code == val) {
+          value = item
+        }
+      })
+      this.value = val
+      this.$emit("change", value)
+    },
+    //获取当前项目下的模型任务-设备类型
+    getData() {
+      queryModelCategory('', res => {
+        this.options = res.Content
+      })
+    }
+  }
+};
+</script>
+<style lang="less" scoped>
+#cascaderMap {
+  float: left;
+  margin-left: 10px;
+  .buildFloor {
+    color: #999999;
+    font-size: 14px;
+  }
+}
+</style>

+ 81 - 0
src/components/data_admin/buildTask/lib/modelFile.vue

@@ -0,0 +1,81 @@
+<template>
+    <div id="modelFile">
+        <span class="modelFile" style="margin-right: 12px;">模型文件</span>
+        <el-cascader :options="options" :props="props" :show-all-levels="false" @change="handleChange" style="width:160px;"
+        clearable placeholder="请选择模型文件" v-model="casVal"></el-cascader>
+    </div>
+</template>
+<script>
+import tools from "@/utils/scan/tools"
+import { queryModelFile } from "@/api/data_admin/buildTaskApi"
+import { mapGetters, mapActions } from "vuex"
+
+export default {
+  computed: {
+    ...mapGetters("layout", [ "projectId", "secret", "userId" ])
+  },
+  data() {
+    return {
+      casVal: [],
+      options: [],
+      modelIdToFloorId: {},
+      props: {
+        value: "FileId",
+        label: "FileName",
+        children: "FileList"
+      },
+    };
+  },
+  created() {
+    this.init()
+  },
+  watch: {
+    projectId() {
+      this.casVal =[]
+      this.options = []
+      this.init()
+    }
+  },
+  methods: {
+    //设置默认选项
+    setValue(val) {
+        if (val && val.length) {
+          this.casVal = val
+        }
+    },
+    //获取数据
+    init() {
+      this.getDirectory()
+    },
+    // 获取文件夹
+    getDirectory() {
+      queryModelFile("", res => {
+        this.options = res.Content.map(item => {
+          item.FileId = item.FolderId
+          item.FileName = item.FolderName
+          return item
+        })
+      });
+    },
+    //改变item
+    handleChange(value) {
+      this.$emit("change", value)
+    }
+  }
+};
+</script>
+<style lang="less">
+    .el-cascader .el-input .el-input__inner {
+        vertical-align: bottom;
+    }
+</style>
+<style lang="less" scoped>
+    #modelFile {
+        margin-left: 10px;
+        float: left;
+        .modelFile {
+            color: #999999;
+            font-size: 14px;
+        }
+    }
+</style>

+ 53 - 0
src/components/data_admin/buildTask/lib/taskState.vue

@@ -0,0 +1,53 @@
+<template>
+  <div id="cascaderMap">
+    <span class="task-state" style="margin-right: 12px;">任务执行情况</span>
+    <el-select v-model="taskState" placeholder="请选择" filterable style="width:120px;" size="small" @change="changeState">
+      <el-option  v-for="item in taskStateList" :key="item.code" :label="item.label" :value="item.value"></el-option>
+    </el-select>
+  </div>
+</template>
+<script>
+import { mapGetters } from 'vuex';
+export default {
+  computed: {
+    ...mapGetters("layout", ["projectId"])
+  },
+  data() {
+    return {
+      taskStateList: [{
+				value: '',
+				label: '全部'
+			}, {
+				value: 1,
+				label: '待验证'
+			}, {
+				value: 0,
+				label: '已完成'
+			}, {
+				value: -1,
+				label: '未找到'
+			}],
+			taskState: '',//任务执行情况
+    };
+  },
+  methods: {
+    setValue(val) {
+      this.taskState = val
+    },
+    //修改val
+    changeState(val) {
+      this.$emit("change", val)
+    }
+  }
+};
+</script>
+<style lang="less" scoped>
+#cascaderMap {
+  float: left;
+  margin-left: 10px;
+  .task-state {
+    color: #999999;
+    font-size: 14px;
+  }
+}
+</style>

+ 7 - 7
src/components/data_admin/buildTask/table/assetsTable.vue

@@ -10,9 +10,9 @@
             </div>
           </template>
         </el-table-column>
-        <el-table-column prop="LocalName" :label="`${inSpaceType}本地名称`" show-overflow-tooltip min-width="100"></el-table-column>
-        <el-table-column prop="LocalId" :label="`${inSpaceType}本地编码`" show-overflow-tooltip min-width="100"></el-table-column>
-        <el-table-column prop="Family" label="设备族" show-overflow-tooltip min-width="100"></el-table-column>
+        <el-table-column prop="EquipLocalID" :label="`${inSpaceType}本地名称`" show-overflow-tooltip min-width="100"></el-table-column>
+        <el-table-column prop="EquipLocalName" :label="`${inSpaceType}本地编码`" show-overflow-tooltip min-width="100"></el-table-column>
+        <el-table-column prop="EquipFamily.FamilyName" label="设备族" show-overflow-tooltip min-width="100"></el-table-column>
         <el-table-column prop="InstallLocation" label="安装位置" show-overflow-tooltip min-width="100"></el-table-column>
         <el-table-column prop="TaskState" label="任务执行情况" show-overflow-tooltip min-width="100"></el-table-column>
         <el-table-column prop="action" label="操作" min-width="100">
@@ -59,7 +59,7 @@ export default {
       inSpaceType: '资产',
       loading: false, // loading
       drawer: false, // 详情侧弹窗
-      detailAssets: null,
+      detailAssets: {},
       tableData: [], //列表数据
       page: {
         pageSize: 50,
@@ -89,7 +89,7 @@ export default {
         Filters: `ProjectId='${this.projectId}'`,
         Cascade: [
           {
-            Name: 'familyName'
+            Name: 'equipFamily'
           }, {
             Name: 'building',
           }, {
@@ -114,7 +114,7 @@ export default {
         params.Filters += `;TaskState=${this.paramsData.taskState}`
       }
       if(this.paramsData.family){
-        params.Filters += `;Family='${this.paramsData.family}'`
+        params.Filters += `;Category='${this.paramsData.family}'`
       }
       queryAssetsTask(params, res => {
         this.page.total = res.Total;
@@ -141,7 +141,7 @@ export default {
       })
     },
     //查看任务详情
-    handleDetail() {
+    handleDetail(row) {
       this.drawer = true
       this.detailAssets = row
     },

+ 8 - 17
src/components/data_admin/buildTask/table/deviceTable.vue

@@ -13,24 +13,15 @@
         <el-table-column :label="`${inSpaceType}本地名称`" show-overflow-tooltip min-width="100">
           <template slot-scope="scope">
             <div>
-              {{scope.row.LocalName}}
+              {{scope.row.EquipLocalName}}
               <el-badge v-if="scope.row.Equipment?scope.row.Equipment.Component?scope.row.Equipment.Component.length:false:false" 
                 :value="scope.row.Equipment?scope.row.Equipment.Component?scope.row.Equipment.Component.length:0:0" class="item" type="warning">
               </el-badge>
             </div>
           </template>
         </el-table-column>
-        <el-table-column prop="LocalId" :label="`${inSpaceType}本地编码`" show-overflow-tooltip min-width="100"></el-table-column>
-        <el-table-column prop="Equipment.EquipCategory.EquipName" :label="`${inSpaceType}类型`" show-overflow-tooltip min-width="100">
-          <template slot-scope="scope">
-            <div>
-              {{scope.row.Equipment?
-              scope.row.Equipment.EquipCategory?
-              scope.row.Equipment.EquipCategory.EquipName?
-              scope.row.Equipment.EquipCategory.EquipName:'':'':''}}
-            </div>
-          </template>
-        </el-table-column>
+        <el-table-column prop="EquipLocalID" :label="`${inSpaceType}本地编码`" show-overflow-tooltip min-width="100"></el-table-column>
+        <el-table-column prop="EquipCategory.EquipName" :label="`${inSpaceType}类型`" show-overflow-tooltip min-width="100"></el-table-column>
         <el-table-column prop="InstallLocation" label="安装位置" show-overflow-tooltip min-width="100"></el-table-column>
         <el-table-column prop="TaskState" label="任务执行情况" show-overflow-tooltip min-width="100"></el-table-column>
         <el-table-column prop="action" label="操作" min-width="100">
@@ -53,7 +44,7 @@
      :page-sizes="page.pageSizes" :page-size="page.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="page.total">
     </el-pagination>
     <el-drawer title="任务详情" :visible.sync="drawer" direction="rtl" size="600px">
-      <device-detail :id="detailId"></device-detail>
+      <device-detail :detail="detailDevice"></device-detail>
     </el-drawer>
   </div>
 </template>
@@ -77,7 +68,7 @@ export default {
       inSpaceType: '设备',
       loading: false, // loading
       drawer: false, // 详情侧弹窗
-      detailId: '',
+      detailDevice: {},
       tableData: [], //列表数据
       page: {
         pageSize: 50,
@@ -133,8 +124,8 @@ export default {
       if(this.paramsData.taskState !== ''){
         params.Filters += `;TaskState=${this.paramsData.taskState}`
       }
-      if(this.paramsData.category){
-        params.Filters += `;Category='${this.paramsData.category}'`
+      if(this.paramsData.deviceCategory){
+        params.Filters += `;Category='${this.paramsData.deviceCategory}'`
       }
       queryDeviceTask(params, res => {
         this.page.total = res.Total;
@@ -163,7 +154,7 @@ export default {
     //查看任务详情
     handleDetail(index, row) {
       this.drawer = true
-      this.detailId = row.TaskId
+      this.detailDevice = row
     },
     // 改变pagesize
     handleSizeChange(pageSize) {

+ 7 - 13
src/components/data_admin/buildTask/table/modelTable.vue

@@ -7,19 +7,15 @@
         <el-table-column :label="`${inSpaceType}本地名称`" show-overflow-tooltip min-width="100">
           <template slot-scope="scope">
             <div>
-              {{scope.row.LocalName}}
+              {{scope.row.EquipLocalName}}
               <el-badge v-if="scope.row.Equipment?scope.row.Equipment.Component?scope.row.Equipment.Component.length:false:false" 
                 :value="scope.row.Equipment?scope.row.Equipment.Component?scope.row.Equipment.Component.length:0:0" class="item" type="warning">
               </el-badge>
             </div>
           </template>
         </el-table-column>
-        <el-table-column prop="LocalId" :label="`${inSpaceType}本地编码`" show-overflow-tooltip min-width="100"></el-table-column>
-        <el-table-column :label="`${inSpaceType}类型`" show-overflow-tooltip min-width="80">
-          <template slot-scope="scope">
-            <div>{{scope.row.EquipCategory?scope.row.EquipCategory.EquipName?scope.row.EquipCategory.EquipName:'':''}}</div>
-          </template>
-        </el-table-column>
+        <el-table-column prop="EquipLocalID" :label="`${inSpaceType}本地编码`" show-overflow-tooltip min-width="100"></el-table-column>
+        <el-table-column prop="EquipCategory.EquipName" :label="`${inSpaceType}类型`" show-overflow-tooltip min-width="80"></el-table-column>
         <el-table-column prop="BIMID" label="BIM ID" show-overflow-tooltip min-width="190"></el-table-column>
         <el-table-column prop="TaskState" label="任务执行情况" show-overflow-tooltip min-width="60"></el-table-column>
         <el-table-column prop="action" label="操作" min-width="100">
@@ -66,7 +62,7 @@ export default {
       inSpaceType: '设备',
       loading: false, // loading
       drawer: false, // 详情侧弹窗
-      detailModel: '',
+      detailModel: {},
       tableData: [], //列表数据
       taskStateMap: {
         '-1': '未找到',
@@ -96,9 +92,7 @@ export default {
         Filters: `ProjectId='${this.projectId}'`,
         Cascade: [
           {
-            Name: 'equipment',
-            Cascade: [{ Name: 'component' }]
-            // Name: 'component'
+            Name: 'component'
           }, {
             Name: 'equipCategory'
           }
@@ -113,8 +107,8 @@ export default {
       if(this.paramsData.modelFile){
         params.Filters += `;FileId='${this.paramsData.modelFile}'`
       }
-      if(this.paramsData.category){
-        params.Filters += `;Category='${this.paramsData.category}'`
+      if(this.paramsData.modelCategory){
+        params.Filters += `;Category='${this.paramsData.modelCategory}'`
       }
       queryModelTask(params, res => {
         this.page.total = res.Total;

+ 26 - 23
src/components/data_admin/buildTask/table/replaceTable.vue

@@ -10,9 +10,9 @@
             </div>
           </template>
         </el-table-column>
-        <el-table-column prop="LocalName" :label="`${inSpaceType}本地名称`" show-overflow-tooltip min-width="100"></el-table-column>
-        <el-table-column prop="LocalId" :label="`${inSpaceType}本地编码`" show-overflow-tooltip min-width="100"></el-table-column>
-        <el-table-column prop="Family" label="设备族" show-overflow-tooltip min-width="100"></el-table-column>
+        <el-table-column prop="EquipLocalID" :label="`${inSpaceType}本地名称`" show-overflow-tooltip min-width="100"></el-table-column>
+        <el-table-column prop="EquipLocalName" :label="`${inSpaceType}本地编码`" show-overflow-tooltip min-width="100"></el-table-column>
+        <el-table-column prop="EquipFamily.FamilyName" label="设备族" show-overflow-tooltip min-width="100"></el-table-column>
         <el-table-column prop="InstallLocation" label="安装位置" show-overflow-tooltip min-width="100"></el-table-column>
         <el-table-column prop="TaskType" label="任务执行情况" show-overflow-tooltip min-width="100"></el-table-column>
         <!-- <el-table-column prop="action" label="操作" min-width="100">
@@ -68,7 +68,10 @@ export default {
         total: 0
       },
       taskTypeMap: {//待撕码,待换码
-
+        '-5': '已撕码',
+        '3': '待撕码',
+        '2': '待换码',
+        '0': '正常贴码'
       },
       taskStateMap: {
         '-1': '未找到',
@@ -83,16 +86,16 @@ export default {
     };
   },
   created() {
-    // this.getTableData()
+    this.getTableData()
   },
   methods: {
     // 获取列表数据
     getTableData() {
       let params = {
-        Filters: `ProjectId='${this.projectId}'`,
+        Filters: `ProjectId='${this.projectId}';TaskType in ['2']`,
         Cascade: [
           {
-            Name: 'familyName'
+            Name: 'equipFamily'
           }, {
             Name: 'building',
           }, {
@@ -103,22 +106,22 @@ export default {
         PageNumber: this.page.pageNumber,
         PageSize: this.page.pageSize
       }
-      if (this.paramsData.buildfloor[0] == "noKnow") {
-        params.Filters += `;BuildingId isNull`
-      } else if (this.paramsData.buildfloor[0] && this.paramsData.buildfloor[0] != "all") {
-        params.Filters += `;BuildingId='${this.paramsData.buildfloor[0]}'`
-        if (this.paramsData.buildfloor[1] == "noKnow") {
-          params.Filters += `;FloorId isNull`
-        } else if (this.paramsData.buildfloor[1] && this.paramsData.buildfloor[1] != "all") {
-          params.Filters += `;FloorId='${this.paramsData.buildfloor[1]}'`
-        }
-      }
-      if(this.paramsData.taskState !== ''){
-        params.Filters += `;TaskState=${this.paramsData.taskState}`
-      }
-      if(this.paramsData.family){
-        params.Filters += `;Family='${this.paramsData.family}'`
-      }
+      // if (this.paramsData.buildfloor[0] == "noKnow") {
+      //   params.Filters += `;BuildingId isNull`
+      // } else if (this.paramsData.buildfloor[0] && this.paramsData.buildfloor[0] != "all") {
+      //   params.Filters += `;BuildingId='${this.paramsData.buildfloor[0]}'`
+      //   if (this.paramsData.buildfloor[1] == "noKnow") {
+      //     params.Filters += `;FloorId isNull`
+      //   } else if (this.paramsData.buildfloor[1] && this.paramsData.buildfloor[1] != "all") {
+      //     params.Filters += `;FloorId='${this.paramsData.buildfloor[1]}'`
+      //   }
+      // }
+      // if(this.paramsData.taskState !== ''){
+      //   params.Filters += `;TaskState=${this.paramsData.taskState}`
+      // }
+      // if(this.paramsData.family){
+      //   params.Filters += `;Family='${this.paramsData.family}'`
+      // }
       queryAssetsTask(params, res => {
         this.page.total = res.Total;
         this.tableData = res.Content.map(item => {

+ 26 - 23
src/components/data_admin/buildTask/table/tearTable.vue

@@ -10,9 +10,9 @@
             </div>
           </template>
         </el-table-column>
-        <el-table-column prop="LocalName" :label="`${inSpaceType}本地名称`" show-overflow-tooltip min-width="100"></el-table-column>
-        <el-table-column prop="LocalId" :label="`${inSpaceType}本地编码`" show-overflow-tooltip min-width="100"></el-table-column>
-        <el-table-column prop="Family" label="设备族" show-overflow-tooltip min-width="100"></el-table-column>
+        <el-table-column prop="EquipLocalID" :label="`${inSpaceType}本地名称`" show-overflow-tooltip min-width="100"></el-table-column>
+        <el-table-column prop="EquipLocalName" :label="`${inSpaceType}本地编码`" show-overflow-tooltip min-width="100"></el-table-column>
+        <el-table-column prop="EquipFamily.FamilyName" label="设备族" show-overflow-tooltip min-width="100"></el-table-column>
         <el-table-column prop="InstallLocation" label="安装位置" show-overflow-tooltip min-width="100"></el-table-column>
         <el-table-column prop="TaskType" label="任务执行情况" show-overflow-tooltip min-width="100"></el-table-column>
         <!-- <el-table-column prop="action" label="操作" min-width="100">
@@ -68,7 +68,10 @@ export default {
         total: 0
       },
       taskTypeMap: {//待撕码,待换码
-
+        '-5': '已撕码',
+        '3': '待撕码',
+        '2': '待换码',
+        '0': '正常贴码'
       },
       taskStateMap: {
         '-1': '未找到',
@@ -83,16 +86,16 @@ export default {
     };
   },
   created() {
-    // this.getTableData()
+    this.getTableData()
   },
   methods: {
     // 获取列表数据
     getTableData() {
       let params = {
-        Filters: `ProjectId='${this.projectId}'`,
+        Filters: `ProjectId='${this.projectId}';TaskType in ['3','-5']`,
         Cascade: [
           {
-            Name: 'familyName'
+            Name: 'equipFamily'
           }, {
             Name: 'building',
           }, {
@@ -103,22 +106,22 @@ export default {
         PageNumber: this.page.pageNumber,
         PageSize: this.page.pageSize
       }
-      if (this.paramsData.buildfloor[0] == "noKnow") {
-        params.Filters += `;BuildingId isNull`
-      } else if (this.paramsData.buildfloor[0] && this.paramsData.buildfloor[0] != "all") {
-        params.Filters += `;BuildingId='${this.paramsData.buildfloor[0]}'`
-        if (this.paramsData.buildfloor[1] == "noKnow") {
-          params.Filters += `;FloorId isNull`
-        } else if (this.paramsData.buildfloor[1] && this.paramsData.buildfloor[1] != "all") {
-          params.Filters += `;FloorId='${this.paramsData.buildfloor[1]}'`
-        }
-      }
-      if(this.paramsData.taskState !== ''){
-        params.Filters += `;TaskState=${this.paramsData.taskState}`
-      }
-      if(this.paramsData.family){
-        params.Filters += `;Family='${this.paramsData.family}'`
-      }
+      // if (this.paramsData.buildfloor[0] == "noKnow") {
+      //   params.Filters += `;BuildingId isNull`
+      // } else if (this.paramsData.buildfloor[0] && this.paramsData.buildfloor[0] != "all") {
+      //   params.Filters += `;BuildingId='${this.paramsData.buildfloor[0]}'`
+      //   if (this.paramsData.buildfloor[1] == "noKnow") {
+      //     params.Filters += `;FloorId isNull`
+      //   } else if (this.paramsData.buildfloor[1] && this.paramsData.buildfloor[1] != "all") {
+      //     params.Filters += `;FloorId='${this.paramsData.buildfloor[1]}'`
+      //   }
+      // }
+      // if(this.paramsData.taskState !== ''){
+      //   params.Filters += `;TaskState=${this.paramsData.taskState}`
+      // }
+      // if(this.paramsData.family){
+      //   params.Filters += `;Family='${this.paramsData.family}'`
+      // }
       queryAssetsTask(params, res => {
         this.page.total = res.Total;
         this.tableData = res.Content.map(item => {

+ 22 - 10
src/views/data_admin/buildTask/addTask/addDeviceTask.vue

@@ -66,7 +66,7 @@ import { mapGetters } from "vuex"
 import floorCascader from "@/components/ledger/lib/floorCascader"
 import myCascader from "@/components/ledger/lib/cascader"
 //api
-import { queryPartsDie, createPropertys } from "@/api/scan/request";
+import { queryPartsDie, createPropertys, queryEquip } from "@/api/scan/request";
 export default {
   data() {
     return {
@@ -147,10 +147,14 @@ export default {
     this.params = this.$route.query
   },
   mounted() {
-    
+    this.getTableData()
   },
   watch: {
-    projectId() {}
+    projectId() {
+      this.page.pageNumber = 1
+      this.multipleSelection = []
+      this.getTableData()
+    }
   },
   methods: {
     //返回
@@ -184,7 +188,8 @@ export default {
     getTableData() {
       this.loading = true
       let param = this.formatFilter()
-      queryPartsDie(param, res => {
+      queryEquip(param, res => {
+        debugger
         this.tableData = res.Content
         this.page.total = res.Total
         this.loading = false
@@ -199,6 +204,9 @@ export default {
             Projection: ["EquipCode", "EquipName"]
           },
           {
+            Name: "property"
+          },
+          {
             Name: "building",
             Projection: [ "BuildLocalName", "BuildName", "BuildID" ]
           },
@@ -207,22 +215,26 @@ export default {
             Projection: [ "FloorLocalName", "FloorName", "FloorID" ]
           }
         ],
-        Filters: `category='${this.params.category}';PropertyId isNull`,
-        Orders: "createTime desc, EquipID asc",
+        Filters: `ProjectId='${this.projectId}'`,
+        Orders: "CreateTime desc, EquipID asc",
         PageNumber: this.page.pageNumber,
         PageSize: this.page.pageSize
       }
 
+      if(this.params.category){
+        param.Filters += `;Category='${this.params.category}'`
+      }
+
       if (this.params.buildId == "noKnow") {
-        param.Filters += `;buildingId isNull`
+        param.Filters += `;BuildingId isNull`
       } else if (this.params.buildId && this.params.buildId != "all") {
-        param.Filters += `;buildingId='${this.params.buildId}'`
+        param.Filters += `;BuildingId='${this.params.buildId}'`
       }
 
       if (this.params.floorId == "noKnow") {
-        param.Filters += `;floorId isNull`
+        param.Filters += `;FloorId isNull`
       } else if (this.params.floorId && this.params.floorId != "all") {
-        param.Filters += `;floorId='${this.params.floorId}'`
+        param.Filters += `;FloorId='${this.params.floorId}'`
       }
 
       return param

+ 25 - 27
src/views/data_admin/buildTask/index.vue

@@ -6,21 +6,17 @@
 			<el-divider direction="vertical"></el-divider>
 			<div class="condition-list">
 				<floor-cascader  v-show="taskType == 'device' || taskType == 'assets'" :isWidth="false" @change="changeFloor"></floor-cascader>
-				<div class="task-state" v-show="taskType == 'model' || taskType == 'device' || taskType == 'assets'">
-					<span class="task-stete-title" style="margin-right: 12px;">任务执行情况</span>
-					<el-select v-model="taskState" placeholder="请选择" filterable style="width:120px;" size="small" @change="changeState">
-						<el-option  v-for="item in taskStateList" :key="item.code" :label="item.label" :value="item.value"></el-option>
-					</el-select>
-				</div>
+				<task-state v-show="taskType == 'model' || taskType == 'device' || taskType == 'assets'" ref="taskState" @change="changeState"></task-state>
 				<model-file  v-show="taskType == 'model'" ref="modelFile" @change="handleChangeModel"></model-file>
-				<my-cascader  v-show="taskType == 'model' || taskType == 'device'" :isWidth="false" ref="cascader" @change="changeDevice"></my-cascader>
-				<assets-cascader  v-show="taskType == 'assets'" :isWidth="false" ref="assets" @change="changeAssets"></assets-cascader>
+				<model-cascader  v-show="taskType == 'model'" :isWidth="false" ref="modelCascader" @change="changeModelCascader"></model-cascader>
+				<device-cascader  v-show="taskType == 'device'" :isWidth="false" ref="deviceCascader" @change="changeDeviceCascader"></device-cascader>
+				<assets-cascader  v-show="taskType == 'assets'" :isWidth="false" ref="assets" @change="changeAssetsCascader"></assets-cascader>
 			</div>
 			<el-button class="add-task" @click="addTaskDialog = true">添加验证任务</el-button>
 		</div>
 		<div class="tabel-box">
-			<model-table :paramsData="{taskState, modelFile, category}" v-if="taskType == 'model'"></model-table>
-			<device-table :paramsData="{buildfloor, taskState, category}" v-else-if="taskType == 'device'"></device-table>
+			<model-table :paramsData="{taskState, modelFile, modelCategory}" v-if="taskType == 'model'"></model-table>
+			<device-table :paramsData="{buildfloor, taskState, deviceCategory}" v-else-if="taskType == 'device'"></device-table>
 			<assets-table :paramsData="{buildfloor, taskState, family}" v-else-if="taskType == 'assets'"></assets-table>
 			<tear-table v-else-if="taskType == 'tear'"></tear-table>
 			<replace-table v-else-if="taskType == 'replace'"></replace-table>
@@ -33,9 +29,13 @@
 import { mapGetters } from "vuex"
 import taskStatistics from '@/components/data_admin/buildTask/taskStatistics'
 import floorCascader from "@/components/ledger/lib/floorCascader"
-import assetsCascader from "@/components/ledger/lib/assets"
-import myCascader from "@/components/ledger/lib/cascader"
-import modelFile from "@/components/ready/buildfloor/modelFile"
+
+import taskState from "@/components/data_admin/buildTask/lib/taskState"
+import modelFile from "@/components/data_admin/buildTask/lib/modelFile"
+import modelCascader from "@/components/data_admin/buildTask/lib/modelCascader"
+import deviceCascader from "@/components/data_admin/buildTask/lib/deviceCascader"
+import assetsCascader from "@/components/data_admin/buildTask/lib/assetsCascader"
+
 import modelTable from "@/components/data_admin/buildTask/table/modelTable"
 import deviceTable from "@/components/data_admin/buildTask/table/deviceTable"
 import assetsTable from "@/components/data_admin/buildTask/table/assetsTable"
@@ -44,10 +44,12 @@ import replaceTable from "@/components/data_admin/buildTask/table/replaceTable"
 import addTask from "@/components/data_admin/buildTask/dialog/addTaskDialog"
 export default {
   components: {
+		taskState,
+		modelCascader,
 		taskStatistics,
 		floorCascader,
 		modelFile,
-		myCascader,
+		deviceCascader,
 		assetsCascader,
 		modelTable,
 		deviceTable,
@@ -88,7 +90,8 @@ export default {
 			}],
 			taskState: '',//任务执行情况
 			modelFile: '',//模型文件
-			category: '',//设备类型
+			modelCategory: '',//模型-设备类型
+			deviceCategory: '',//设备-设备类型
 			family: '',//设备族
 			buildfloor: ['all'],//建筑楼层
 			taskTypes: ['verification','model'],
@@ -113,11 +116,14 @@ export default {
 		changeFloor(val){//修改建筑楼层
 			this.buildfloor = val
 		},
-		changeDevice(val){//修改设备类型
-			this.category = val.code
+		changeModelCascader(val){//修改模型-设备类型
+			this.modelCategory = val.Code
+		},
+		changeDeviceCascader(val){//修改设备-设备类型
+			this.deviceCategory = val.Code
 		},
-		changeAssets(val){//修改设备族
-			this.family = val.code
+		changeAssetsCascader(val){//修改设备族
+			this.family = val.Code
 		}
   }
 }
@@ -135,14 +141,6 @@ export default {
 			display: inline-block;
 			vertical-align: middle;
 			line-height: 32px;
-			.task-state{
-				float: left;
-  			margin-left: 10px;
-				.task-stete-title{
-					color: #999999;
-    			font-size: 14px;
-				}
-			}
 		}
 		.add-task{
 			position: absolute;