From 70b128785737df0d6065b09a75cf79b49efe22fa Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期三, 24 四月 2024 15:41:25 +0800
Subject: [PATCH] 优化滚动分页,封装组件,
---
src/components/view/a6-device-management.vue | 235 +++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 148 insertions(+), 87 deletions(-)
diff --git a/src/components/view/a6-device-management.vue b/src/components/view/a6-device-management.vue
index 9c54d17..bec5b90 100644
--- a/src/components/view/a6-device-management.vue
+++ b/src/components/view/a6-device-management.vue
@@ -77,7 +77,7 @@
v-model="componentData.entity.specificationModel" @keyup.enter.native="refreshTable()"></el-input></div>
</div>
<div class="search_thing">
- <div class="search_label">璁惧澶х被锛�</div>
+ <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>
@@ -117,13 +117,6 @@
</el-image>
<!-- 琛ㄥ崟 -->
<el-form :label-position="labelPosition" :model="formData" label-width="90px">
- <el-form-item label="璁惧鍒嗙被:">
- <el-select :disabled="isUp" v-model="formData.largeCategory" placeholder="璇烽�夋嫨" size="small"
- style="width:100%">
- <el-option v-for="item in equipmentList" :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
<el-form-item label="鍑哄巶鏃ユ湡:">
<el-date-picker style="width:100%" :disabled="isUp" v-model="formData.dateProduction" type="datetime"
size="small" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鏃ユ湡">
@@ -143,6 +136,18 @@
<el-option v-for="item in authorizerList" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
+ </el-form-item>
+ <el-form-item label="妫�楠岄」鐩�:">
+ <el-cascader
+ v-model="formData.insProductIds"
+ :options="options"
+ :show-all-levels="false"
+ :props="props"
+ placeholder="璇烽�夋嫨" size="small"
+ style="width:100%"
+ collapse-tags
+ separator=","
+ clearable></el-cascader>
</el-form-item>
</el-form>
</el-col>
@@ -172,7 +177,7 @@
<el-form-item label="楠屾敹璁板綍:">
<el-input :disabled="isUp" v-model="formData.acceptanceRecords" size="small"></el-input>
</el-form-item>
- <el-form-item label="鍑哄巶缂栧彿:">
+ <el-form-item label="璁惧缂栫爜:">
<el-input :disabled="isUp" v-model="formData.factoryNo" size="small"></el-input>
</el-form-item>
<el-form-item label="璐疆鏃ユ湡:">
@@ -194,7 +199,7 @@
<el-form-item label="瑙勬牸鍨嬪彿:">
<el-input :disabled="isUp" v-model="formData.specificationModel" size="small"></el-input>
</el-form-item>
- <el-form-item label="璁惧鐘舵��:">
+ <el-form-item label="褰撳墠鐘舵��:">
<el-select :disabled="isUp" v-model="formData.deviceStatus" placeholder="璇烽�夋嫨" size="small"
style="width:100%">
<el-option v-for="item in deviceStatusList" :key="item.value" :label="item.label" :value="item.value">
@@ -272,19 +277,20 @@
</div>
</el-image>
<!-- 琛ㄥ崟 -->
- <el-form :label-position="labelPosition" :model="formData2" label-width="90px">
- <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" :value="item.value">
- </el-option>
- </el-select>
+ <el-form :label-position="labelPosition" :model="formData2" label-width="100px">
+ <el-form-item label="浠櫒鍚嶇О:">
+ <el-input v-model="formData2.deviceName" size="small"></el-input>
</el-form-item>
- <el-form-item label="鍑哄巶鏃ユ湡:">
- <el-date-picker style="width:100%" v-model="formData2.dateProduction" type="datetime" size="small"
- format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鏃ユ湡">
- </el-date-picker>
+ <el-form-item label="浠櫒鍚嶇ОEN:">
+ <el-input v-model="formData2.deviceName" size="small"></el-input>
</el-form-item>
- <el-form-item label="璁惧璐熻矗浜�:">
+ <el-form-item label="瑙勬牸鍨嬪彿:">
+ <el-input v-model="formData2.deviceName" size="small"></el-input>
+ </el-form-item>
+ <el-form-item label="鐢熶骇鍘傚:">
+ <el-input v-model="formData2.deviceName" size="small"></el-input>
+ </el-form-item>
+ <!-- <el-form-item label="璁惧璐熻矗浜�:">
<el-select v-model="formData2.equipmentManager" placeholder="璇烽�夋嫨" size="small" style="width:100%">
<el-option v-for="item in responsiblePersonList" :key="item.value" :label="item.label"
:value="item.value">
@@ -298,87 +304,114 @@
</el-option>
</el-select>
</el-form-item>
+ <el-form-item label="妫�楠岄」鐩�:">
+ <el-cascader
+ v-model="formData.insProductIds"
+ :options="options"
+ :show-all-levels="false"
+ :props="props"
+ placeholder="璇烽�夋嫨" size="small"
+ style="width:100%"
+ collapse-tags
+ separator=","
+ clearable></el-cascader>
+ </el-form-item>
+ -->
</el-form>
</el-col>
</el-col>
<!-- 涓棿甯冨眬 -->
<el-col :span="7">
- <el-form :label-position="labelPosition" :model="formData2" label-width="116px">
- <el-form-item label="璁惧鍚嶇О:">
- <el-input v-model="formData2.deviceName" size="small"></el-input>
- </el-form-item>
- <el-form-item label="鍐呴儴缂栫爜:">
- <el-input v-model="formData2.internalCode" size="small"></el-input>
- </el-form-item>
- <el-form-item label="璧勪骇缂栫爜:">
- <el-input v-model="formData2.assetCode" size="small"></el-input>
- </el-form-item>
- <el-form-item label="鏍″噯鏃ユ湡锛堟湀锛�:">
- <el-date-picker v-model="formData2.calibrationDate" type="month" size="small" format="yyyy-MM"
- value-format="yyyy-MM" style="width:100%" placeholder="閫夋嫨鏈�">
+ <el-form :label-position="labelPosition" :model="formData2" label-width="110px">
+ <el-form-item label="鐢熶骇鍘傚EN:">
+ <el-input v-model="formData2.deviceName" size="small"></el-input>
+ </el-form-item>
+ <el-form-item label="鍑哄巶缂栧彿:">
+ <el-input v-model="formData2.deviceName" size="small"></el-input>
+ </el-form-item>
+ <el-form-item label="绠$悊缂栧彿:">
+ <el-input v-model="formData2.deviceName" size="small"></el-input>
+ </el-form-item>
+ <el-form-item label="鎶�鏈寚鏍�:">
+ <el-input v-model="formData2.deviceName" :rows="7" type="textarea" size="small"></el-input>
+ </el-form-item>
+ <el-form-item label="璐疆鏃ユ湡:">
+ <el-date-picker style="width:100%" v-model="formData2.scrapTime" type="date"
+ format="yyyy-MM-dd" value-format="yyyy-MM-dd" size="small" placeholder="閫夋嫨鏃ユ湡">
</el-date-picker>
</el-form-item>
- <el-form-item label="鎶ュ簾鏃堕棿:">
- <el-date-picker style="width:100%" v-model="formData2.scrapTime" type="datetime"
- format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" size="small" placeholder="閫夋嫨鏃堕棿">
+ <el-form-item label="鍚敤鏃ユ湡:">
+ <el-date-picker style="width:100%" v-model="formData2.scrapTime" type="date"
+ format="yyyy-MM-dd" value-format="yyyy-MM-dd" size="small" placeholder="閫夋嫨鏃ユ湡">
</el-date-picker>
</el-form-item>
- <el-form-item label="楠屾敹璁板綍:">
- <el-input v-model="formData2.acceptanceRecords" size="small"></el-input>
- </el-form-item>
- <el-form-item label="鍑哄巶缂栧彿:">
- <el-input v-model="formData2.factoryNo" size="small"></el-input>
- </el-form-item>
- <el-form-item label="璐疆鏃ユ湡:">
- <el-date-picker style="width:100%" v-model="formData2.acquisitionDate" type="datetime" size="small"
- format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鏃ユ湡">
- </el-date-picker>
- </el-form-item>
- <el-form-item label="鍑嗙‘搴﹂噺鍊�:">
- <el-input v-model="formData2.accurateMeasurement" size="small"></el-input>
- </el-form-item>
- <el-form-item label="澶囨敞:">
- <el-input v-model="formData2.notes" size="small"></el-input>
- </el-form-item>
+ <el-form-item label="绠$悊浜�:">
+ <el-select v-model="formData2.equipmentManager" placeholder="璇烽�夋嫨" size="small" style="width:100%">
+ <el-option v-for="item in responsiblePersonList" :key="item.value" :label="item.label"
+ :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鍦板潃:">
+ <el-input v-model="formData2.deviceName" size="small"></el-input>
+ </el-form-item>
</el-form>
</el-col>
<!-- 鍙宠竟甯冨眬 -->
<el-col :span="7">
- <el-form :label-position="labelPosition" :model="formData2" label-width="110px" ref="ruleForm">
- <el-form-item label="瑙勬牸鍨嬪彿:">
- <el-input v-model="formData2.specificationModel" size="small"></el-input>
+ <el-form :label-position="labelPosition" :model="formData2" label-width="120px" ref="ruleForm">
+ <!-- 瀹為獙瀹ゅ垪琛� -->
+ <el-form-item label="鎵�灞為儴闂�:">
+ <el-select v-model="formData2.equipmentManager" placeholder="璇烽�夋嫨" size="small" style="width:100%">
+ <el-option v-for="item in responsiblePersonList" :key="item.value" :label="item.label"
+ :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="妫�娴嬮」鐩�:">
+ <el-cascader
+ v-model="formData.insProductIds"
+ :options="options"
+ :show-all-levels="false"
+ :props="props"
+ placeholder="璇烽�夋嫨" size="small"
+ style="width:100%"
+ collapse-tags
+ separator=","
+ clearable></el-cascader>
+ </el-form-item>
+ <el-form-item label="鏍″噯鏈嶅姟鏈烘瀯:">
+ <el-input v-model="formData2.deviceName" size="small"></el-input>
+ </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-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.equipmentManager" placeholder="璇烽�夋嫨" size="small" style="width:100%">
+ <el-option v-for="item in equipmentList" :key="item.value" :label="item.label"
+ :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鍗曚环(涓囧厓):">
+ <el-input v-model="formData2.deviceName" size="small"></el-input>
+ </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>
</el-select>
</el-form-item>
- <el-form-item label="瀛樻斁鐐�:">
- <el-input v-model="formData2.storagePoint" size="small"></el-input>
- </el-form-item>
- <el-form-item label="鏈�杩戣拷婧棩鏈�:">
- <el-date-picker style="width:100%" v-model="formData2.latestTraceability" format="yyyy-MM-dd HH:mm:ss"
- value-format="yyyy-MM-dd HH:mm:ss" type="datetime" size="small" placeholder="閫夋嫨鏃ユ湡">
- </el-date-picker>
- </el-form-item>
- <el-form-item label="鍋滅敤鏃堕棿:">
- <el-date-picker style="width:100%" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
- v-model="formData2.downTime" type="datetime" size="small" placeholder="閫夋嫨鏃堕棿">
- </el-date-picker>
- </el-form-item>
- <el-form-item label="缁翠慨璁板綍:">
- <el-input v-model="formData2.maintenanceRecords" size="small"></el-input>
- </el-form-item>
- <el-form-item label="鐢熶骇鍘傚:">
- <el-input v-model="formData2.manufacturer" size="small"></el-input>
- </el-form-item>
- <el-form-item label="閲囪喘璐圭敤:">
- <el-input v-model="formData2.procurementCosts" size="small"></el-input>
- </el-form-item>
- <el-form-item label="鏍″噯璇佷功:">
- <el-input v-model="formData2.calibrationCerticate" size="small"></el-input>
- </el-form-item>
+ <el-form-item label="鏍″噯鍛ㄦ湡锛堟湀锛�:">
+ <el-input v-model="formData2.deviceName" size="small"></el-input>
+ </el-form-item>
<el-form-item label="鍥剧墖:">
<div
style="border: 1px solid #DCDFE6;border-radius:4px;height:32px;lineHeight:32px;display:flex;justify-content: space-around;font-size: 13px;">
@@ -419,10 +452,11 @@
imageName: ''
},
value: '',
+ props: { multiple: true,emitPath:false,value:'id',label:'name' },
options: [],
labelPosition: 'right',
dialogVisible: false,
- dialogVisible2: false,
+ dialogVisible2: true,
addPower: false,
componentData: {
entity: {
@@ -470,7 +504,10 @@
},
authorizedPerson: {
select: []
- }
+ },
+ insProductIds:{
+ select:[]
+ }
},
linkEvent: {
deviceName: {
@@ -484,7 +521,11 @@
},
equipmentManager: {
select: []
- }
+ },
+ insProductIds:{
+ select:[],
+ choose: true
+ }
},
requiredAdd: [],
requiredUp: []
@@ -499,7 +540,7 @@
responsiblePersonList: [],
// 鎺堟潈浜哄垪琛�
authorizerList: [],
- // 璁惧鐘舵�佸垪琛�
+ // 褰撳墠鐘舵�佸垪琛�
deviceStatusList: [],
upLoad: false,
upLoad2: false,
@@ -521,6 +562,7 @@
// this.getAuthorizedPerson()
this.selectEnumByCategory()
this.selectDevicePrincipal()
+ this.getInsProductIds()
},
methods: {
refreshTable() {
@@ -584,6 +626,23 @@
this.componentData.tagField.authorizedPerson = data
})
},
+ getInsProductIds(){
+ this.$axios.post(this.$api.capacityScope.getInsProduction).then(res => {
+ this.componentData.tagField.insProductIds.select = []
+ this.componentData.selectField.insProductIds.select = []
+ this.options = res.data.map((m,i)=>{
+ m.id = i;
+ let children = m.children.map(n=>{
+ n.label = n.name;
+ n.value = n.id;
+ return n
+ })
+ this.componentData.tagField.insProductIds.select = [...this.componentData.tagField.insProductIds.select,...children]
+ this.componentData.selectField.insProductIds.select = [...this.componentData.selectField.insProductIds.select,...children]
+ return m
+ })
+ })
+ },
handleClose() {
this.dialogVisible = false;
this.upLoad = false;
@@ -647,6 +706,7 @@
delete this.formData.createUser
delete this.formData.updateUser
this.formData.authorizedPerson = authorizedPerson
+ this.formData.insProductIds = JSON.stringify(this.formData.insProductIds)
this.$axios.post(this.$api.deviceScope.upDeviceParameter, this.formData, {
headers: {
'Content-Type': 'application/json'
@@ -671,6 +731,7 @@
let authorizedPerson = this.formData2.authorizedPerson.length > 0 ? this.formData2.authorizedPerson.join(',') :
''
this.formData2.authorizedPerson = authorizedPerson
+ this.formData.insProductIds = JSON.stringify(this.formData.insProductIds)
this.$axios.post(this.$api.deviceScope.addDeviceParameter, this.formData2, {
headers: {
'Content-Type': 'application/json'
--
Gitblit v1.9.3