From 2dc12f173c3d09cccde9568d533b50d6c04f7212 Mon Sep 17 00:00:00 2001 From: 李林 <z1292839451@163.com> Date: 星期二, 27 二月 2024 15:01:29 +0800 Subject: [PATCH] 功能调整 --- src/components/view/5capacity-scope.vue | 258 ++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 182 insertions(+), 76 deletions(-) diff --git a/src/components/view/5capacity-scope.vue b/src/components/view/5capacity-scope.vue index cf0ee79..c448299 100644 --- a/src/components/view/5capacity-scope.vue +++ b/src/components/view/5capacity-scope.vue @@ -4,6 +4,10 @@ line-height: 60px; } + .bodys { + height: 100%; + } + .search { background-color: #fff; height: 80px; @@ -40,55 +44,65 @@ <div class="role_manage"> <div> <el-row class="title"> - <el-col :span="12" style="padding-left: 20px;"> - <el-radio-group v-model="radio" @change="selectorSwitch"> - <el-radio-button label="0">妫�楠岄」鐩弬鏁�</el-radio-button> - <el-radio-button label="1">妫�楠屽璞�</el-radio-button> - </el-radio-group> - </el-col> + <el-col :span="12"> + <el-radio-group v-model="radio" @input="selectorSwitch" size="medium" fill="#3A7BFA" v-if="select==3"> + <el-radio-button label="0">妫�楠岄」鐩弬鏁�</el-radio-button> + <el-radio-button label="1">妫�楠屽璞�</el-radio-button> + </el-radio-group> + <el-button size="medium" type="primary" v-else-if="select==1">妫�楠岄」鐩弬鏁�</el-button> + <el-button size="medium" type="primary" v-else-if="select==2">妫�楠屽璞�</el-button> + </el-col> <el-col :span="12" style="text-align: right;"> <el-button size="medium" type="primary" @click="openAdd" v-if="addPower">鏂板</el-button> - <el-button size="medium" icon="el-icon-delete" >鍒犻櫎</el-button> + <el-button size="medium" icon="el-icon-delete">鍒犻櫎</el-button> </el-col> </el-row> </div> - <div class="search" v-if="showItemParameter"> - <div class="search_thing"> - <div class="search_label">妫�楠岄」锛�</div> - <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable - v-model="itemParameterData.entity.inspectionItem" @keyup.enter.native="refreshTable()"></el-input></div> + <div v-if="radio==0" class="bodys"> + <div class="search"> + <div class="search_thing"> + <div class="search_label">妫�楠岄」锛�</div> + <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable + v-model="itemParameterData.entity.inspectionItem" @keyup.enter.native="refreshTable()"></el-input></div> + </div> + <div class="search_thing"> + <div class="search_label">瀹為獙瀹わ細</div> + <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable + v-model="itemParameterData.entity.laboratory" @keyup.enter.native="refreshTable()"></el-input></div> + </div> + <div class="search_thing"> + <div class="search_label">璁惧缁勶細</div> + <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable + v-model="itemParameterData.entity.deviceGroup" @keyup.enter.native="refreshTable()"></el-input></div> + </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> + </div> </div> - <div class="search_thing"> - <div class="search_label">瀹為獙瀹わ細</div> - <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable - v-model="itemParameterData.entity.laboratory" @keyup.enter.native="refreshTable()"></el-input></div> - </div> - <div class="search_thing"> - <div class="search_label">璁惧缁勶細</div> - <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable - v-model="itemParameterData.entity.deviceGroup" @keyup.enter.native="refreshTable()"></el-input></div> - </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> + <div class="table"> + <ValueTable ref="itemParameterTable" :url="$api.capacityScope.selectItemParameterList" + :upUrl="$api.capacityScope.upItemParameter" :delUrl="$api.capacityScope.delItemParameter" + :componentData="itemParameterData" :key="upIndex" /> </div> </div> - <div class="table" v-if="showItemParameter"> - <ValueTable ref="itemParameterTable" :url="$api.capacityScope.selectItemParameterList" :upUrl="$api.capacityScope.upItemParameter" :delUrl="$api.capacityScope.delItemParameter" :componentData="itemParameterData" :key="upIndex"/> - </div> - <div class="search testObject" v-if="showTestObject"> - <div class="search_thing"> - <div class="search_label">鏍峰搧鍚嶇О锛�</div> - <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable - v-model="testObjectData.entity.specimenName" @keyup.enter.native="refreshTable()"></el-input></div> + <div class="bodys"> + <div class="search" v-if="radio==1"> + <div class="search_thing"> + <div class="search_label">鏍峰搧鍚嶇О锛�</div> + <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable + v-model="testObjectData.entity.specimenName" @keyup.enter.native="refreshTable()"></el-input></div> + </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> + </div> </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> + <div class="table" v-if="radio==1"> + <ValueTable ref="testObjectTable" :url="$api.capacityScope.selectTestObjectList" + :upUrl="$api.capacityScope.upTestObject" :delUrl="$api.capacityScope.delTestObject" + :componentData="testObjectData" :key="upIndex" /> </div> - </div> - <div class="table" v-if="showTestObject"> - <ValueTable ref="testObjectTable" :url="$api.capacityScope.selectTestObjectList" :upUrl="$api.capacityScope.upTestObject" :delUrl="$api.capacityScope.delTestObject" :componentData="testObjectData" :key="upIndex"/> </div> </div> </template> @@ -101,9 +115,9 @@ }, data() { return { - radio: '0', - showItemParameter: true, - showTestObject: false, + radio: '-1', + showItemParameter: true, + showTestObject: false, itemParameterData: { entity: { inspectionItem: null, @@ -122,19 +136,33 @@ font: '缂栬緫', type: 'text', method: 'doDiy', - field:[] - },{ + field: [] + }, { id: 'delete', font: '鍒犻櫎', type: 'text', method: 'doDiy' }], - tagField: {}, - selectField: {}, - requiredAdd:['inspectionItem', 'manHour', 'inspectionItemType', 'manHourGroup'], - requiredUp:['inspectionItem', 'manHour', 'inspectionItemType', 'manHourGroup'] + tagField: { + inspectionItemType: { + select: [] + }, + valueType: { + select: [] + } + }, + selectField: { + inspectionItemType: { + select: [] + }, + valueType: { + select: [] + } + }, + requiredAdd: ['inspectionItem', 'manHour', 'inspectionItemType', 'manHourGroup'], + requiredUp: ['inspectionItem', 'manHour', 'inspectionItemType', 'manHourGroup'] }, - testObjectData: { + testObjectData: { entity: { specimenName: null, orderBy: { @@ -150,8 +178,8 @@ font: '缂栬緫', type: 'text', method: 'doDiy', - field:['createUserName', 'updateUserName'] - },{ + field: ['createUserName', 'updateUserName'] + }, { id: 'delete', font: '鍒犻櫎', type: 'text', @@ -159,52 +187,130 @@ }], tagField: {}, selectField: {}, - requiredAdd:['specimenName'], - requiredUp:['specimenName'] + requiredAdd: ['specimenName'], + requiredUp: ['specimenName'] }, itemParameterEntityCopy: {}, testObjectDataEntityCopy: {}, upIndex: 0, addDia: false, - addPower: true + addPower: true, + select: 0 } }, mounted() { this.itemParameterEntityCopy = this.HaveJson(this.itemParameterData.entity) this.testObjectDataEntityCopy = this.HaveJson(this.testObjectData.entity) + this.selectEnumByCategory() + this.selectEnumByCategoryForValue() + this.getPower('0') }, methods: { - selectorSwitch() { - if(this.radio === '0') { - this.showItemParameter = true; - this.showTestObject = false; - this.$nextTick(() => { + selectorSwitch(radio) { + if (this.radio === '0') { + this.showItemParameter = true; + this.showTestObject = false; + /* this.$nextTick(() => { this.$refs.itemParameterTable.selectList() - }) - } else { - this.showTestObject = true; - this.showItemParameter = false; - } + }) */ + } else { + this.showTestObject = true; + this.showItemParameter = false; + } + this.getPower(radio) }, refreshTable() { - if(this.radio === '0') { - this.$refs['itemParameterTable'].selectList() - } else { - this.$refs['testObjectTable'].selectList() - } + if (this.radio === '0') { + this.$refs['itemParameterTable'].selectList() + } else { + this.$refs['testObjectTable'].selectList() + } }, refresh() { this.itemParameterData.entity = this.HaveJson(this.itemParameterEntityCopy) this.testObjectData.entity = this.HaveJson(this.testObjectDataEntityCopy) this.upIndex++ }, - openAdd(){ - if(this.radio === '0') { - this.$refs.itemParameterTable.openAddDia(this.$api.capacityScope.addItemParameter); - } else { - this.$refs.testObjectTable.openAddDia(this.$api.capacityScope.addTestObject); - } - + openAdd() { + if (this.radio === '0') { + this.$refs.itemParameterTable.openAddDia(this.$api.capacityScope.addItemParameter); + } else { + this.$refs.testObjectTable.openAddDia(this.$api.capacityScope.addTestObject); + } + }, + selectEnumByCategory() { + this.$axios.post(this.$api.enums.selectEnumByCategory, { + category: "妫�楠岄」绫诲瀷" + }).then(res => { + this.itemParameterData.selectField.inspectionItemType.select = res.data + res.data[1].type = 'info' + this.itemParameterData.tagField.inspectionItemType.select = res.data + }) + }, + selectEnumByCategoryForValue() { + this.$axios.post(this.$api.enums.selectEnumByCategory, { + category: "鍙栧�肩被鍨�" + }).then(res => { + this.itemParameterData.selectField.valueType.select = res.data + this.itemParameterData.tagField.valueType.select = res.data + }) + }, + // 鏉冮檺鍒嗛厤 + getPower(radio) { + let power = JSON.parse(sessionStorage.getItem('power')) + let up = false + let add = false + let del = false + let select = 0 + for (var i = 0; i < power.length; i++) { + if (power[i].menuMethod == 'selectItemParameterList') { + select += 1 + } + if (power[i].menuMethod == 'selectTestObjectList') { + select += 2 + } + if (this.radio === '0') { + if (power[i].menuMethod == 'upItemParameter') { + up = true + } + if (power[i].menuMethod == 'delItemParameter') { + del = true + } + if (power[i].menuMethod == 'addItemParameter') { + add = true + } + } else { + if (power[i].menuMethod == 'upTestObject') { + up = true + } + if (power[i].menuMethod == 'delTestObject') { + del = true + } + if (power[i].menuMethod == 'addTestObject') { + add = true + } + } + } + if (this.radio === '0') { + if (!del) { + this.itemParameterData.do.splice(1, 1) + } + if (!up) { + this.itemParameterData.do.splice(0, 1) + } + } else { + if (!del) { + this.testObjectData.do.splice(1, 1) + } + if (!up) { + this.testObjectData.do.splice(0, 1) + } + } + this.addPower = add + this.select = select + if (select == 1 || select == 3) this.radio = radio + else if (select == 2) this.radio = '1' + else this.radio = '-1' } } } -- Gitblit v1.9.3