朱佳吉
2024-05-09 1e9c7a02ec2b8caf7dda6000d7f0f79849df6b45
src/components/view/a6-device-management.vue
@@ -55,13 +55,14 @@
         <el-row class="title">
            <el-col :span="12" style="padding-left: 20px;">设备工具明细</el-col>
            <el-col :span="12" style="text-align: right;">
               <el-button size="medium" type="primary" @click="dialogVisible2 = true">新增</el-button>
            </el-col>
         </el-row>
      </div>
      <div class="search">
         <div class="search_thing">
            <div class="search_label">状态:</div>
            <el-select v-model="componentData.entity.deviceStatus" placeholder="全部">
            <el-select v-model="componentData.entity.deviceStatus" placeholder="全部" size="small">
               <el-option v-for="item in deviceStatusList" :key="item.value" :label="item.label" :value="item.value">
               </el-option>
            </el-select>
@@ -76,19 +77,9 @@
            <div class="search_input"><el-input size="small" placeholder="请输入" clearable
                  v-model="componentData.entity.specificationModel" @keyup.enter.native="refreshTable()"></el-input></div>
         </div>
         <div class="search_thing">
            <div class="search_label">设备分类:</div>
            <el-select v-model="componentData.entity.largeCategory" placeholder="请选择">
               <el-option v-for="item in equipmentList" :key="item.value" :label="item.label" :value="item.value">
               </el-option>
            </el-select>
         </div>
         <div class="search_thing" style="padding-left: 30px;">
            <el-button size="small" @click="refresh()">重 置</el-button>
            <el-button size="small" type="primary" @click="refreshTable()">查 询</el-button>
            <el-col :span="12" style="text-align: right;">
               <el-button size="medium" type="primary" @click="dialogVisible2 = true">新增</el-button>
            </el-col>
         </div>
      </div>
      <div class="table">
@@ -194,12 +185,12 @@
           filterable
              clearable></el-cascader>
            </el-form-item>
            <el-form-item label="最近校准日期:">
            <el-form-item label="最近校准日期:" v-if="isUp">
                     <el-date-picker :disabled="isUp" style="width:100%" v-model="formData.latestTraceability" format="yyyy-MM-dd"
                        value-format="yyyy-MM-dd" type="date" size="small" placeholder="选择日期">
                     </el-date-picker>
                  </el-form-item>
            <el-form-item label="下次校准日期:">
            <el-form-item label="下次校准日期:" v-if="isUp">
                     <el-date-picker :disabled="isUp" style="width:100%" v-model="formData.latestTraceability" format="yyyy-MM-dd"
                        value-format="yyyy-MM-dd" type="date" size="small" placeholder="选择日期">
                     </el-date-picker>
@@ -336,7 +327,7 @@
            </el-form-item>
            <el-form-item label="检测项目:">
              <el-cascader
              v-model="formData.insProductIds"
              v-model="formData2.insProductIds"
              :options="options"
              :show-all-levels="false"
              :props="props"
@@ -344,18 +335,9 @@
              style="width:100%"
              collapse-tags
              separator=","
           filterable
              clearable></el-cascader>
            </el-form-item>
            <!-- <el-form-item label="最近校准日期:">
                     <el-date-picker style="width:100%" v-model="formData2.latestTraceability" format="yyyy-MM-dd"
                        value-format="yyyy-MM-dd" type="date" size="small" placeholder="选择日期">
                     </el-date-picker>
                  </el-form-item>
            <el-form-item label="下次校准日期:">
                     <el-date-picker style="width:100%" v-model="formData2.latestTraceability" format="yyyy-MM-dd"
                        value-format="yyyy-MM-dd" type="date" size="small" placeholder="选择日期">
                     </el-date-picker>
                  </el-form-item> -->
            <el-form-item label="设备类型:">
              <el-select v-model="formData2.largeCategory" placeholder="请选择" size="small" style="width:100%">
                <el-option v-for="item in equipmentList" :key="item.value" :label="item.label"
@@ -368,7 +350,7 @@
            </el-form-item>
            <el-form-item label="当前状态:">
                     <el-select v-model="formData2.deviceStatus" placeholder="请选择" size="small" style="width:100%">
                        <el-option v-for="item in deviceStatusList" :key="item.value" :label="item.label" :value="item.value">
                        <el-option v-for="item in deviceStatusList" :key="item.id" :label="item.label" :value="item.value">
                        </el-option>
                     </el-select>
                  </el-form-item>
@@ -409,13 +391,14 @@
         return {
            //是否是档案修订  true不是 false是
            isUp: true,
            formData: {},
            formData: {
            },
            formData2: {
               imageUpload: '',
               imageName: ''
            },
            value: '',
        props: { multiple: true,emitPath:false,value:'id',label:'name' },
              props: { multiple: true,emitPath:false,value:'id',label:'name' },
            options: [],
            labelPosition: 'right',
            dialogVisible: false,
@@ -448,23 +431,7 @@
               }],
               tagField: {
                  deviceStatus: {
                     select: [{
                        value: 0,
                        type: 'success',
                        label: '良好'
                     }, {
                        value: 1,
                        type: 'info',
                        label: '报废'
                     }, {
                        value: 2,
                        type: 'danger',
                        label: '停用'
                     }, {
                        value: 3,
                        type: 'danger',
                        label: '存疑'
                     }]
                     select: []
                  },
                  equipmentManager: {
                     select: []
@@ -532,7 +499,7 @@
         this.selectEnumByCategory()
         this.selectDevicePrincipal()
         this.obtainItemParameterList()
      this.getInsProductIds()
            this.getInsProductIds()
      },
      methods: {
         obtainItemParameterList() {
@@ -585,6 +552,12 @@
               category: "设备状态"
            }).then(res => {
               this.deviceStatusList = res.data
          this.deviceStatusList.forEach(a=>{
            if(!isNaN(a.value)){
              a.value = parseInt(a.value)
            }
          })
               this.componentData.tagField.deviceStatus.select = res.data
            })
            this.$axios.post(this.$api.enums.selectEnumByCategory, {
               category: "设备分类"
@@ -613,7 +586,7 @@
          this.componentData.tagField.insProductIds.select = []
          this.componentData.selectField.insProductIds.select = []
          this.options = res.data.map((m,i)=>{
            m.id = i;
            m.id = m.name;
            let children = m.children.map(n=>{
              n.label = n.name;
              n.value = n.id;
@@ -626,10 +599,20 @@
            })
      },
         handleClose() {
            this.formData = {}
            this.formData2 = {
               imageUpload: '',
               imageName: ''
            }
            this.dialogVisible = false;
            this.upLoad = false;
         },
         handleClose2() {
            this.formData = {}
            this.formData2 = {
               imageUpload: '',
               imageName: ''
            }
            this.dialogVisible2 = false;
            this.upLoad = false;
         },
@@ -650,6 +633,9 @@
            //row = 点击对应行值一行值
            //复制给formData
            this.formData = this.HaveJson(row);
        if(typeof(row.insProductIds)==='number'){
          row.insProductIds = row.insProductIds+''
        }
            this.formData.insProductIds = row.insProductIds ? row.insProductIds.split(',') : [];
         },
         beforeUpload(file) {
@@ -681,14 +667,12 @@
            }
         },
         submitForm() {
            this.upLoad = true;
            // let authorizedPerson = this.formData.authorizedPerson.length > 0 ? this.formData.authorizedPerson.join(',') : ''
            // delete this.formData.createTime
            // delete this.formData.updateTime
            // delete this.formData.createUser
            // delete this.formData.updateUser
            // this.formData.authorizedPerson = authorizedPerson
            delete this.formData.createTime
            delete this.formData.updateTime
            delete this.formData.createUser
            delete this.formData.updateUser
        this.formData.insProductIds = this.formData.insProductIds.join()
        this.upLoad = true;
            this.$axios.post(this.$api.deviceScope.upDeviceParameter, this.formData, {
               headers: {
                  'Content-Type': 'application/json'
@@ -710,10 +694,7 @@
         },
         submitForm2() {
            this.upLoad2 = true;
      //       let authorizedPerson = this.formData2.authorizedPerson.length > 0 ? this.formData2.authorizedPerson.join(',') :
      //          ''
      //       this.formData2.authorizedPerson = authorizedPerson
        this.formData.insProductIds = this.formData.insProductIds.join()
        this.formData2.insProductIds = this.formData2.insProductIds.join()
            this.$axios.post(this.$api.deviceScope.addDeviceParameter, this.formData2, {
               headers: {
                  'Content-Type': 'application/json'