From 2c38eea08bc6060c3371885e9f7fe79473968223 Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期五, 08 九月 2023 17:28:57 +0800 Subject: [PATCH] modified: .env.development modified: src/api/experiment/planAssignments.js deleted: src/styles/fonts/element-icons.ttf deleted: src/styles/fonts/element-icons.woff deleted: src/styles/icon.css modified: src/views/experiment/checkTheReport/index.vue modified: src/views/experiment/inspectionApplication/index.vue modified: src/views/experiment/reportAuditing/index.vue modified: src/views/inspectionManagement/commissionInspection/addCommision.vue modified: src/views/laboratory/ledger/index.vue --- src/views/experiment/inspectionApplication/index.vue | 160 ++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 110 insertions(+), 50 deletions(-) diff --git a/src/views/experiment/inspectionApplication/index.vue b/src/views/experiment/inspectionApplication/index.vue index 31f2a90..b1ad99c 100644 --- a/src/views/experiment/inspectionApplication/index.vue +++ b/src/views/experiment/inspectionApplication/index.vue @@ -29,7 +29,7 @@ </el-form> <el-form class="rightBtn"> <el-form-item class="createBtn"> - <el-button size="small" type="primary" icon="el-icon-plus" @click="checkTypeVisible = true" + <el-button size="small" type="primary" icon="el-icon-plus" @click="showAddDialog" style="background-color: rgb(1, 102, 226);">鏂板妫�楠屽崟</el-button> </el-form-item> <el-form-item class="getDataBtn"> @@ -63,10 +63,10 @@ <el-table-column prop="createTime" label="鐧昏鏃ユ湡" min-width="90px" /> <el-table-column prop="inspection_status" label="妫�楠岀粨鏋�" min-width="95px"> <template slot-scope="scope"> - <el-tag class="tag" effect="dark" type="danger" disable-transitions - v-if="scope.row.inspection_status == 0">涓嶅悎鏍�</el-tag> <el-tag class="tag" effect="dark" type="success" disable-transitions - v-else-if="scope.row.inspection_status == 1">鍚堟牸</el-tag> + v-if="scope.row.inspection_status == 1">鍚堟牸</el-tag> + <el-tag class="tag" effect="dark" type="danger" disable-transitions + v-else>涓嶅悎鏍�</el-tag> </template> </el-table-column> <el-table-column prop="userName" label="鐧昏浜�" min-width="80px" /> @@ -93,10 +93,10 @@ <el-radio-group v-model="type" @click.native="handleRadioChange"> <el-radio :style="`background-color: ${type==0?'rgb(170, 236, 214)':'#fff'};border-radius: 10px;`" :label="0" border>鍘熸潗鏂欐楠�</el-radio> - <el-radio :style="`background-color: ${type==1?'rgb(170, 236, 214)':'#fff'};border-radius: 10px;`" - :label="1" border>濮旀墭妫�楠�</el-radio> <el-radio :style="`background-color: ${type==2?'rgb(170, 236, 214)':'#fff'};border-radius: 10px;`" - :label="2" border>鎴愬搧妫�楠�</el-radio> + :label="2" border>濮旀墭妫�楠�</el-radio> + <el-radio :style="`background-color: ${type==1?'rgb(170, 236, 214)':'#fff'};border-radius: 10px;`" + :label="1" border>鎴愬搧妫�楠�</el-radio> </el-radio-group> </div> <div v-if="type === 0"> @@ -154,14 +154,14 @@ <el-col :span="10"> <el-form-item label="妫�楠屾椂闂达細"> <el-date-picker v-model="infoForm.checkdate" type="daterange" range-separator="鑷�" - start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" style="width: 300px;"> + start-placeholder="寮�濮嬫棩鏈�" value-format="yyyy-MM-dd" end-placeholder="缁撴潫鏃ユ湡" style="width: 300px;"> </el-date-picker> </el-form-item> </el-col> </el-row> </el-form> </div> - <div v-if="type === 1"> + <div v-if="type === 2"> <el-form :model="commisionSelection" ref="commisionSelection" class="checkTypeForm" label-position="top" label-width="200px" size="mini"> <el-row :gutter="100"> @@ -210,55 +210,43 @@ <el-col :span="10"> <el-form-item label="瀹屾垚鏈熼檺"> <el-input style="width: 300px" type="text" disabled :value="commisionSelection.completionDeadline" - placeholder="璇疯緭鍏ユ暟閲�" autocomplete="off" /> + placeholder="璇疯緭鍏ュ畬鎴愭湡闄�" autocomplete="off" /> </el-form-item> </el-col> <el-col :span="10"> <el-form-item label="妫�楠屾棩鏈燂細"> <el-date-picker v-model="commisionSelection.checkdate" type="daterange" range-separator="鑷�" - start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" style="width: 300px;"> + start-placeholder="寮�濮嬫棩鏈�" value-format="yyyy-MM-dd" end-placeholder="缁撴潫鏃ユ湡" style="width: 300px;"> </el-date-picker> </el-form-item> </el-col> </el-row> </el-form> </div> - <div v-if="type === 2"> + <div v-if="type === 1"> <el-form :model="finishedTable" ref="finishedTable" class="checkTypeForm" label-position="top" label-width="200px" size="mini"> <el-row :gutter="100"> <el-col :span="10"> - <el-form-item label="鏉ユ枡鏃ユ湡锛�"> - <el-input style="width: 300px" type="text" v-model="finishedTable.deliverydate" - placeholder="璇疯緭鍏ユ潵鏂欐棩鏈�" autocomplete="off" /> - </el-form-item> - </el-col> - <el-col :span="10"> - <el-form-item label="渚涘簲鍟嗗悕绉帮細"> - <el-input style="width: 300px" type="text" v-model="finishedTable.supplier" placeholder="璇疯緭鍏ヤ緵搴斿晢鍚嶇О" - autocomplete="off" /> - </el-form-item> - </el-col> - </el-row> - <el-row :gutter="100"> - <el-col :span="10"> <el-form-item label="鎴愬搧缂栫爜锛�"> - <el-input style="width: 300px" type="text" v-model="finishedTable.code" placeholder="璇疯緭鍏ユ垚鍝佺紪鐮�" + <el-input style="width: 300px" type="text" disabled v-model="finishedTable.code" placeholder="璇疯緭鍏ユ垚鍝佺紪鐮�" autocomplete="off" /> </el-form-item> </el-col> <el-col :span="10"> <el-form-item label="鎴愬搧鍚嶇О锛�"> - <el-input style="width: 300px" type="text" v-model="finishedTable.name" placeholder="璇疯緭鍏ユ垚鍝佸悕绉�" - autocomplete="off" /> + <el-select style="width: 300px" v-model="finishedTable.name" @change="getSpecifications"> + <el-option v-for="(item,index) in mList" :key="index" :label="item.name" :value="item.id"></el-option> + </el-select> </el-form-item> </el-col> </el-row> <el-row :gutter="100"> <el-col :span="10"> <el-form-item label="瑙勬牸鍨嬪彿锛�"> - <el-input style="width: 300px" type="text" v-model="finishedTable.modelandspecification" - placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�" autocomplete="off" /> + <el-cascader style="width: 300px" v-model="finishedTable.modelandspecification" + :options="specificationList" :show-all-levels="false" @change="changeSpe" + :props="{label:'name',value:'id',children:'children'}"></el-cascader> </el-form-item> </el-col> <el-col :span="10"> @@ -271,14 +259,14 @@ <el-row :gutter="100"> <el-col :span="10"> <el-form-item label="鏁伴噺锛�"> - <el-input style="width: 300px" type="text" v-model="finishedTable.amount" placeholder="璇疯緭鍏ユ暟閲�" + <el-input style="width: 300px" min="0" type="number" v-model="finishedTable.amount" placeholder="璇疯緭鍏ユ暟閲�" autocomplete="off" /> </el-form-item> </el-col> <el-col :span="10"> <el-form-item label="妫�楠屾椂闂达細"> <el-date-picker v-model="finishedTable.checkdate" type="daterange" range-separator="鑷�" - start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" style="width: 300px;"> + start-placeholder="寮�濮嬫棩鏈�" value-format="yyyy-MM-dd" end-placeholder="缁撴潫鏃ユ湡" style="width: 300px;"> </el-date-picker> </el-form-item> </el-col> @@ -356,13 +344,13 @@ :data="commisionTable" @selection-change="handleSelectionChange" style="width: 100%"> <el-table-column type="selection" min-width="10%" /> <el-table-column type="index" label="搴忓彿" min-width="10%" /> - <el-table-column prop="entrust_coding" label="濮旀墭缂栧彿" min-width="10%" /> + <el-table-column prop="entrustCoding" label="濮旀墭缂栧彿" min-width="10%" /> <el-table-column prop="supplier" label="濮旀墭鍗曚綅" min-width="12%" /> <el-table-column prop="mcode" label="鏍峰搧缂栧彿" min-width="8%" /> <el-table-column prop="name" label="鏍峰搧鍚嶇О" min-width="8%" /> <el-table-column prop="specifications" label="瑙勬牸鍨嬪彿" min-width="12%" /> - <el-table-column prop="endTime" label="閫佽揪鏃堕棿" min-width="8%" /> - <el-table-column prop="formTime" label="瀹屾垚鏈熼檺" min-width="8%" /> + <el-table-column prop="formTime" label="閫佽揪鏃堕棿" min-width="8%" /> + <el-table-column prop="endTime" label="瀹屾垚鏈熼檺" min-width="8%" /> <el-table-column prop="contacts" label="濮旀墭缂栧埗浜�" min-width="8%" /> <el-table-column prop="endTime" label="妫�楠屾棩鏈�" min-width="8%" /> <el-table-column prop="inspection_status" label="鐘舵��" min-width="8%"> @@ -401,11 +389,16 @@ addInspect, chooseVer, lookProByVer, - delInspect + delInspect, + getSpecificationByMaterielId, + getMaterielList } from '@/api/experiment/planAssignments' export default { data() { return { + speName:"", + specificationList: [], + mList:[], showDetail: false, searchData: { applicationnumber: '', @@ -419,8 +412,6 @@ rawMaterialTable: [], commisionTable: [], finishedTable: { - deliverydate: '', - supplier: '', code: '', name: '', modelandspecification: '', @@ -470,7 +461,7 @@ pageSize: 10, // 姣忛〉鐨勬暟鎹潯鏁� radioValue: '鍏ㄩ儴', checkTypeVisible: false, - type: 2, // 榛樿涓嶉�変腑鐨勭姸鎬� + type: 1, // 榛樿涓嶉�変腑鐨勭姸鎬� rawmaterialVisible: false, commisionVisible: false, tmp: {}, @@ -488,6 +479,30 @@ handler(val, oldval) {}, // 娣卞害瑙傚療鐩戝惉 deep: true + }, + checkTypeVisible(newVal){ + if(newVal == false){ + this.finishedTable = { + code: '', + name: '', + modelandspecification: '', + unit: '', + amount: '', + checkdate: [] + }; + this.infoForm = {}; + this.commisionSelection = { + entrust_coding: '', + entrusted: '', + samples_number: '', + sample_name: '', + specifications_models: '', + dateSurvey: '', + completionDeadline: '', + contacts: '', + inspectionTime: '' + }; + } } }, created() { @@ -497,7 +512,51 @@ if (this.$route.name === 'ForInspectionDetail') this.showDetail = true }, methods: { + changeSpe(val){ + this.tmp.specificationsId = val[val.length-1]; + let arr1 = this.specificationList[0].children.filter(item=>{ + return item.id==val[1] + }); + let arr2 = arr1[0].children.filter(item=>{ + return item.id = val[2] + }) + let speName = arr1[0].name + "-" + arr2[0].name; + this.speName = speName; + + }, + getSpecifications(val){ + if(val != null){ + this.selectSpecificationByMaterielId(val); + let item = this.mList.filter(item => { + return item.id == val; + }); + this.finishedTable.code = item[0].code; + this.tmp.mcode = item[0].code; + this.tmp.name = item[0].name; + } + }, + async selectSpecificationByMaterielId(mId){ + await getSpecificationByMaterielId({id : mId}).then(res=>{ + this.specificationList = new Array(res.data); + }).catch(error => { + this.$message.error(error.message); + }); + }, + //鏄剧ず鏂板妫�楠屽崟妯℃�佹 + showAddDialog(){ + this.selectMaterielList(); + this.checkTypeVisible = true + }, + //鑾峰彇鎴愬搧淇℃伅 + async selectMaterielList(){ + await getMaterielList().then(res=>{ + this.mList = res.data + }).catch(error => { + this.$message.error(error.message); + }); + }, async selectAll() { + const res = selectAll({ type: 0 }) @@ -654,7 +713,7 @@ }) this.rawMaterialTable = arr }) - } else if (this.type === 1) { + } else if (this.type === 2) { this.commisionVisible = true selectAll({ type: 2 @@ -690,7 +749,7 @@ version: this.version } } - if (this.type === 1) { + if (this.type === 2) { obj = { endTime: this.commisionSelection.checkdate[1], formTime: this.commisionSelection.formTime, @@ -698,6 +757,7 @@ name: this.commisionSelection.name, num: this.commisionSelection.num, specifications: this.commisionSelection.specifications, + specificationId:this.commisionSelection.specificationsId, startTime: this.commisionSelection.checkdate[0], supplier: this.commisionSelection.supplier, type: this.type, @@ -705,16 +765,15 @@ version: this.version } } - if (this.type === 2) { + if (this.type === 1) { obj = { endTime: this.finishedTable.checkdate[1], - formTime: this.finishedTable.deliverydate, mcode: this.finishedTable.code, - name: this.finishedTable.name, + name: this.tmp.name, num: parseInt(this.finishedTable.amount), - specifications: this.finishedTable.modelandspecification, - startTime: this.finishedTable.checkdate[1], - supplier: this.finishedTable.supplier, + specifications: this.speName, + specificationId: this.finishedTable.modelandspecification[2], + startTime: this.finishedTable.checkdate[0], type: this.type, unit: this.finishedTable.unit, version: this.version @@ -725,7 +784,7 @@ message: '娣诲姞鎴愬姛锛�', type: 'success' }); - this.type = 2 + this.type = 1 this.checkTypeVisible = false this.$router.push(`Viewdetails/${res.data}`) }).catch(error=>{ @@ -756,7 +815,8 @@ // }, //纭畾璺宠浆 QUEding() { - if (this.infoForm.checkdate[0] == undefined || this.infoForm.checkdate[1] == undefined) { + console.log(this.infoForm); + if (this.type==0 &&(this.infoForm.checkdate[0] == undefined || this.infoForm.checkdate[1] == undefined)) { this.$message({ message: '璇烽�夋嫨妫�楠屾椂闂�', type: 'warning' -- Gitblit v1.9.3