From b723865e2b3ad6032d10deda501644ebabef8368 Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期四, 31 八月 2023 15:43:58 +0800 Subject: [PATCH] modified: src/api/inspection/commisioninspection.js modified: src/api/inspection/rawmaterial.js modified: src/views/inspectionManagement/commissionInspection/index.vue modified: src/views/inspectionManagement/reportForInspection/index.vue --- src/api/inspection/commisioninspection.js | 16 +++ src/views/inspectionManagement/reportForInspection/index.vue | 92 ++++++++---------- src/api/inspection/rawmaterial.js | 2 src/views/inspectionManagement/commissionInspection/index.vue | 160 +++++++++++++++++++++++++++++++- 4 files changed, 213 insertions(+), 57 deletions(-) diff --git a/src/api/inspection/commisioninspection.js b/src/api/inspection/commisioninspection.js index 95df195..5f49894 100644 --- a/src/api/inspection/commisioninspection.js +++ b/src/api/inspection/commisioninspection.js @@ -95,4 +95,20 @@ method: 'get', params }) +} + +export function chooseVersion(params){ + return request({ + url: '/link-basic-table/chooseVer', + method: 'get', + params + }) +} + +export function lookProByVer(params){ + return request({ + url: '/link-basic-table/lookProByVer', + method: 'get', + params + }) } \ No newline at end of file diff --git a/src/api/inspection/rawmaterial.js b/src/api/inspection/rawmaterial.js index d21c70b..1c487a9 100644 --- a/src/api/inspection/rawmaterial.js +++ b/src/api/inspection/rawmaterial.js @@ -12,7 +12,7 @@ //鏂板鎶ユ鍗� export function addInspect(data){ return request({ - url: '/inspection/addInspect', + url: '/raw-material/addInspect', method: 'post', data }) diff --git a/src/views/inspectionManagement/commissionInspection/index.vue b/src/views/inspectionManagement/commissionInspection/index.vue index 51c08b0..b4bc55b 100644 --- a/src/views/inspectionManagement/commissionInspection/index.vue +++ b/src/views/inspectionManagement/commissionInspection/index.vue @@ -53,15 +53,15 @@ </el-radio-group> </div> <div class="generateInsp"> - <el-button type="primary" size="mini" icon="el-icon-document" + <el-button @click="addReportBtn" type="primary" size="mini" icon="el-icon-document" style="background-color: rgb(1, 102, 226);">鐢熸垚鎶ユ鍗�</el-button> </div> </div> <div class="table-box"> <el-table ref="commisionTable" :max-height="800" :cell-style="{textAlign: 'center'}" :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}" - :data="commisionTable" style="width: 100%"> - <el-table-column type="selection" min-width="10%" /> + :data="commisionTable" @selection-change="handleSelectionChange" style="width: 100%"> + <el-table-column type="selection" :selectable="checkSelect" 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="entrusted" label="濮旀墭鍗曚綅" min-width="12%" /> @@ -126,6 +126,33 @@ </el-dialog> <!-- 闅愯棌鍩熻緭鍏ユ鐢ㄦ潵澶嶅埗 --> <input id="copyContext" style="position: absolute;top: 0;left: 0;opacity: 0;z-index: -10;" /> + <el-dialog title="閫夋嫨鏃ユ湡" :visible.sync="addReportDialog" width="60%"> + <el-form :model="addInspectionForm" :rules="addInspectionFormRules" ref="addInspectionForm"> + <el-form-item label="妫�楠屾棩鏈�" label-width="100px" prop="inspectionDate"> + <el-date-picker v-model="addInspectionForm.inspectionDate" type="daterange" value-format="yyyy-MM-dd" + range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡"> + </el-date-picker> + </el-form-item> + <el-form-item label="褰撳墠鐗堟湰" label-width="100px" prop="version"> + <el-select @change="changeVersionFun" v-model="addInspectionForm.version" placeholder="璇烽�夋嫨鐗堟湰"> + <el-option v-for="item in chooseVersion" :key="item.value" :label="item.label" :value="item.value" ></el-option> + </el-select> + </el-form-item> + </el-form> + <el-table + style="width:90%;margin-left:5%" :data="standardLibraryData" row-key="id" border + default-expand-all :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"> + <el-table-column type="index" width="50px" label="搴忓彿"></el-table-column> + <el-table-column label="椤圭洰鍚嶇О" prop="name" sortable></el-table-column> + <el-table-column prop="unit" label="鍗曚綅" sortable></el-table-column> + <el-table-column label="鏍囧噯鍊�" prop="required" sortable></el-table-column> + <el-table-column prop="internal" label="鍐呮帶鍊�" sortable></el-table-column> + </el-table> + <div slot="footer" class="dialog-footer"> + <el-button @click="resetForm('addInspectionForm')">鍙� 娑�</el-button> + <el-button type="primary" @click="confirmBtn('addInspectionForm')">纭� 瀹�</el-button> + </div> + </el-dialog> </div> </template> @@ -134,11 +161,28 @@ getCommisionList, getViewUUID, selectViewUUID, - delLink + delLink, + chooseVersion, + lookProByVer } from '@/api/inspection/commisioninspection' export default { data() { return { + standardLibraryData:[], + chooseVersion: [], + addInspectionForm: { + inspectionDate: [], + version: null + }, + addInspectionFormRules: { + inspectionDate: [{ + required: true, + message: '璇烽�夋嫨鏃ユ湡鍖洪棿', + trigger: 'change' + }], + }, + addReportDialog: false, + checkData: [], form: [], searchData: { code: '', @@ -196,6 +240,113 @@ } }, methods: { + resetForm(formName) { + this.addInspectionForm.inspectionDate = [], + this.$refs[formName].resetFields(); + this.addReportDialog = false + }, + checkSelect(row) { + if (row.type === 1) { + return false; + } else { + return true; + } + }, + handleSelectionChange(val) { + if (val.length > 1) { + this.$refs.commisionTable.clearSelection(); + this.$refs.commisionTable.toggleRowSelection(val.pop()) + } + this.checkData = val; + console.log(this.checkData); + }, + //鐢熸垚鎶ユ鍗曠‘璁ゆ寜閽� + confirmBtn(formName) { + this.$refs[formName].validate((valid)=>{ + if(valid){ + // let dateArr = this.addInspectionForm.inspectionDate; + // //娣诲姞鎶ユ鍗� + // let val = this.checkData[0]; + // let obj = { + // "endTime": dateArr[1], + // "experiment": "", + // "formTime": val.createTime, + // "id": val.id, + // "mcode": val.materialCoding, + // "name": val.materialName, + // "num": val.quantity, + // "specifications": val.specificationsModels, + // "startTime": dateArr[0], + // "supplier": val.supplierName, + // "type": val.type, + // "unit": val.unit, + // "version": this.addInspectionForm.version + // } + // // this.createReport(obj); + // this.addReportDialog = false; + // this.initNewSelection(); + // this.showNewPage = true; + } + }); + }, + //鐢熸垚鎶ユ鍗曟寜閽� + addReportBtn() { + if (this.checkData.length < 1) { + this.$message.error("璇烽�夋嫨涓�鏉℃暟鎹�!"); + } else { + if (this.checkData.length > 1) { + this.$message.error("鏈�澶氶�夋嫨涓�鏉℃暟鎹�!"); + } else { + let mcode = this.checkData[0].entrust_coding; + let name = this.checkData[0].sample_name; + let specifications = this.checkData[0].specifications_models; + let id = this.checkData[0].id; + this.getChooseVersionFun(mcode,name,specifications,id); + this.addReportDialog = true; + } + } + }, + changeVersionFun(){ + let mCode = this.checkData[0].entrust_coding; + let name = this.checkData[0].sample_name; + let specifications = this.checkData[0].specifications_models; + let version = this.addInspectionForm.version; + let id = this.checkData[0].id; + this.getProByVersion(mCode,name,specifications,version,id); + }, + //鑾峰彇鐗堟湰涓嬬殑鏍囧噯搴撴暟鎹� + async getProByVersion(mCode,name,specifications,version,id){ + var vm = this; + await lookProByVer({ + id : id, + mcode : mCode, + name : name, + specifications : specifications, + version: version + }).then((res)=>{ + console.log(res); + vm.standardLibraryData = res.data; + }) + }, + //鑾峰彇鐗堟湰鍒楄〃 + async getChooseVersionFun(mCode,name,specifications,id){ + var vm = this; + this.chooseVersion = []; + await chooseVersion({ + mcode : mCode, + name : name, + specifications : specifications + }).then((res)=>{ + vm.getProByVersion(mCode,name,specifications,res.data[0],id); + for(let i=0;i<res.data.length;i++){ + vm.chooseVersion.push({ + value: res.data[i], + label: "V"+res.data[i] + }); + } + vm.addInspectionForm.version = res.data[0]; + }); + }, async getCommisionList() { const res = await getCommisionList({ pageNo: this.currentPage, @@ -237,7 +388,6 @@ this.commisionTable = res.data.row this.total = res.data.total }, - // 閲嶇疆鏂规硶 reset() { // 閲嶇疆鎼滅储鏉′欢 diff --git a/src/views/inspectionManagement/reportForInspection/index.vue b/src/views/inspectionManagement/reportForInspection/index.vue index 6dbbd6f..2081aa0 100644 --- a/src/views/inspectionManagement/reportForInspection/index.vue +++ b/src/views/inspectionManagement/reportForInspection/index.vue @@ -64,12 +64,6 @@ </el-dialog> <div class="library-table"> <div class="table-header"> - <div class="search-bar"> - <el-radio-group v-model="radioValue" @change="radioclick"> - <el-radio-button v-for="option in radioOptions" :key="option.value" - :label="option.value">{{ option.label }}</el-radio-button> - </el-radio-group> - </div> <div class="generateInsp"> <el-button @click="addReportBtn" type="primary" size="mini" icon="el-icon-document" style="background-color: rgb(1, 102, 226);">鐢熸垚鎶ユ鍗�</el-button> @@ -79,8 +73,7 @@ <el-table ref="inspectionTable" :max-height="600" :cell-style="{textAlign: 'center'}" :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}" :data="inspectionTable" style="width: 100%" @selection-change="handleSelectionChange"> - <el-table-column type="selection" :selectable="checkSelect" min-width="5%"> - </el-table-column> + <el-table-column type="selection" :selectable="checkSelect" min-width="5%"></el-table-column> <el-table-column type="index" label="搴忓彿" min-width="8%" /> <el-table-column prop="createTime" label="鏉ユ枡鏃ユ湡" min-width="8%" /> <el-table-column prop="supplierName" label="渚涘簲鍟嗗悕绉�" min-width="12%" /> @@ -116,7 +109,7 @@ </div> </div> <el-dialog title="閫夋嫨鏃ユ湡" :visible.sync="addReportDialog" width="60%"> - <el-form :model="addInspectionForm" :rules="addInspectionFormRules" rule="addInspectionForm"> + <el-form :model="addInspectionForm" :rules="addInspectionFormRules" ref="addInspectionForm"> <el-form-item label="妫�楠屾棩鏈�" label-width="100px" prop="inspectionDate"> <el-date-picker v-model="addInspectionForm.inspectionDate" type="daterange" value-format="yyyy-MM-dd" range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡"> @@ -446,8 +439,8 @@ this.deviceoptions = res2.data; }, resetForm(formName) { - // this.addInspectionForm.inspectionDate = [], - // this.$refs[formName].resetFields(); + this.addInspectionForm.inspectionDate = [], + this.$refs[formName].resetFields(); this.addReportDialog = false }, removeFun(row, index) { @@ -460,7 +453,7 @@ this.deleteMaterialFun(row, index); }).catch(() => {}); }, - checkSelect(row, index) { + checkSelect(row) { if (row.type === 1) { return false; } else { @@ -468,8 +461,11 @@ } }, handleSelectionChange(val) { + if (val.length > 1) { + this.$refs.inspectionTable.clearSelection(); + this.$refs.inspectionTable.toggleRowSelection(val.pop()) + } this.checkData = val; - console.log(val); }, //鐢熸垚鎶ユ鍗曟寜閽� addReportBtn() { @@ -530,28 +526,32 @@ }, //鐢熸垚鎶ユ鍗曠‘璁ゆ寜閽� confirmBtn(formName) { - let dateArr = this.addInspectionForm.inspectionDate; - //娣诲姞鎶ユ鍗� - let val = this.checkData[0]; - let obj = { - "endTime": dateArr[1], - "experiment": "", - "formTime": val.createTime, - "id": val.id, - "mcode": val.materialCoding, - "name": val.materialName, - "num": val.quantity, - "specifications": val.specificationsModels, - "startTime": dateArr[0], - "supplier": val.supplierName, - "type": val.type, - "unit": val.unit, - "version": this.addInspectionForm.version - } - // this.createReport(obj); - this.addReportDialog = false; - this.initNewSelection(); - this.showNewPage = true; + this.$refs[formName].validate((valid=>{ + if(valid){ + let dateArr = this.addInspectionForm.inspectionDate; + //娣诲姞鎶ユ鍗� + let val = this.checkData[0]; + let obj = { + "endTime": dateArr[1], + "experiment": "", + "formTime": val.createTime, + "id": val.id, + "mcode": val.materialCoding, + "name": val.materialName, + "num": val.quantity, + "specifications": val.specificationsModels, + "startTime": dateArr[0], + "supplier": val.supplierName, + "type": val.type, + "unit": val.unit, + "version": this.addInspectionForm.version + } + // this.createReport(obj); + this.addReportDialog = false; + this.initNewSelection(); + this.showNewPage = true; + } + })); }, //鐢熸垚鎶ユ鍗� async createReport(param) { @@ -595,21 +595,6 @@ date: '' } this.getRawMaterialList() - }, - radioclick() { - console.log(this.inspectionTable); - if (this.radioValue === 0) { - - } - }, - getAllTableData() { - this.getRawMaterialList() - }, - getCheckData() { - - }, - getUnCheckData() { - }, // 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣 handleSizeChange(val) { @@ -707,10 +692,15 @@ flex-direction: column; .table-header { + width: 100%; + height: 70px; padding: 20px; display: flex; justify-content: space-between; - + .generateInsp{ + position: relative; + left: 92%; + } .el-form-item { margin-bottom: 30px !important; } -- Gitblit v1.9.3