From a2c4dc4fbd62ac4e05b9318a1e05d147c8ae4d8c Mon Sep 17 00:00:00 2001 From: Fixiaobai <fixiaobai@163.com> Date: 星期三, 30 八月 2023 09:26:58 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.110.209:9001/r/lims-before --- src/views/inspectionManagement/reportForInspection/index.vue | 217 ++++++++++++++++++++++++++++++++---------------------- 1 files changed, 128 insertions(+), 89 deletions(-) diff --git a/src/views/inspectionManagement/reportForInspection/index.vue b/src/views/inspectionManagement/reportForInspection/index.vue index 2526f59..292601a 100644 --- a/src/views/inspectionManagement/reportForInspection/index.vue +++ b/src/views/inspectionManagement/reportForInspection/index.vue @@ -40,9 +40,33 @@ <el-form-item> <el-button type="primary" @click="search">鏌ヨ</el-button> <el-button type="primary" plain @click="reset">閲嶇疆</el-button> + <el-button type="primary" icon="el-icon-plus" @click="addReportVisible = true">鏂板</el-button> </el-form-item> </el-form> </div> + <el-dialog + title="鏂板鍘熸潗鏂欐姤妫�" + :visible.sync="addReportVisible" + width="40%"> + <el-form v-model="insertData" label-position="left" label-width="80px"> + <el-form-item label="鏍囧噯绫诲瀷"> + <el-input v-model="insertData.materialName" /> + </el-form-item> + <el-form-item label="鐗╂枡鍚嶇О"> + <el-input v-model="insertData.materialName" /> + </el-form-item> + <el-form-item label="鎵ц鏍囧噯"> + <el-input v-model="insertData.standardName" /> + </el-form-item> + <el-form-item label="瑙勬牸鍨嬪彿"> + <el-input v-model="insertData.specificationsName" /> + </el-form-item> + </el-form> + <span slot="footer" class="dialog-footer"> + <el-button @click="addReportVisible = false">鍙� 娑�</el-button> + <el-button type="primary" @click="insert()">纭� 瀹�</el-button> + </span> + </el-dialog> <div class="library-table"> <div class="table-header"> <div class="search-bar"> @@ -51,8 +75,9 @@ </el-radio-group> </div> <div class="generateInsp"> - <el-button @click="showNewPage = true" type="primary" size="mini" icon="el-icon-document" style="background-color: rgb(1, 102, 226);">鐢熸垚鎶ユ鍗�</el-button> + <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 @@ -62,11 +87,13 @@ :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" - min-width="10%" - /> + :selectable="checkSelect" + min-width="5%"> + </el-table-column> <el-table-column type="index" label="搴忓彿" @@ -129,9 +156,16 @@ > <template slot-scope="scope"> <span :style="{ color: scope.row.type === 1 ? 'green' : 'red' }"> - {{ scope.row.type === 1 ? '宸叉娴�':'鏈娴�' }} + {{ scope.row.type === 1 ? '宸叉姤妫�':'鏈姤妫�' }} </span> </template> + </el-table-column> + <el-table-column + label="鎿嶄綔" + min-width="8%"> + <template slot-scope="scope"> + <el-button type="text" size="small" @click="removeFun(scope.row)">鍒犻櫎</el-button> + </template> </el-table-column> </el-table> <!-- 鍒嗛〉鍣� --> @@ -159,28 +193,28 @@ <el-row> <el-col :span="8"> <el-form-item label="鏉ユ枡鏃ユ湡锛�"> - <el-input style="width: 180px;" :value="inspectionForm.createTime" disabled autocomplete="off" /> + <el-input style="width: 180px;" :value="inspectionForm.formTime" disabled autocomplete="off" /> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="渚涘簲鍟嗗悕绉帮細"> - <el-input style="width: 180px;" :value="inspectionForm.supplier_name" disabled autocomplete="off" /> </el-form-item> + <el-input style="width: 180px;" :value="inspectionForm.supplier" disabled autocomplete="off" /> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="鏍峰搧缂栧彿锛�"> - <el-input style="width: 180px;" :value="inspectionForm.materialCoding" disabled autocomplete="off" /> + <el-input style="width: 180px;" :value="inspectionForm.code" disabled autocomplete="off" /> </el-form-item> </el-col> </el-row> <el-row > <el-col :span="8"> <el-form-item label="鏍峰搧鍚嶇О锛�" > - <el-input style="width: 180px;" :value="inspectionForm.materialName" disabled autocomplete="off" /> + <el-input style="width: 180px;" :value="inspectionForm.name" disabled autocomplete="off" /> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="瑙勬牸鍨嬪彿锛�"> - <el-input style="width: 180px;" :value="inspectionForm.specificationsModels" disabled autocomplete="off" /> + <el-input style="width: 180px;" :value="inspectionForm.specifications" disabled autocomplete="off" /> </el-form-item> </el-col> <el-col :span="8"> @@ -192,17 +226,17 @@ <el-row > <el-col :span="8"> <el-form-item label="鏁伴噺锛�" > - <el-input style="width: 180px;" :value="inspectionForm.quantity" disabled autocomplete="off" /> + <el-input style="width: 180px;" :value="inspectionForm.num" disabled autocomplete="off" /> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="鎶ユ鏃ユ湡锛�" > - <el-input style="width: 180px;" :value="inspectionForm.dateSurvey" disabled autocomplete="off" /> + <el-input style="width: 180px;" :value="inspectionForm.endTime" disabled autocomplete="off" /> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="鎶ユ浜猴細"> - <el-input style="width: 180px;" :value="inspectionForm.surveyor" disabled autocomplete="off" /> + <el-input style="width: 180px;" :value="inspectionForm.userName" disabled autocomplete="off" /> </el-form-item> </el-col> </el-row> @@ -213,7 +247,7 @@ <div class="header"> <span style="font-size: 14px">妫�楠岄」鐩�</span> <div> - <el-button type="primary" plain size="mini">淇濆瓨</el-button> + <!-- <el-button type="primary" plain size="mini">淇濆瓨</el-button> --> <el-button @click="showNewPage = false" type="primary" plain size="mini" icon="el-icon-back">杩斿洖</el-button> </div> </div> @@ -223,22 +257,22 @@ :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}" :data="inspectionItems"> <el-table-column type="index" label="搴忓彿" width="60"></el-table-column> - <el-table-column prop="project" label="椤圭洰" width="250"></el-table-column> + <el-table-column prop="name" label="椤圭洰" width="250"></el-table-column> <el-table-column prop="unit" label="鍗曚綅" width="125"></el-table-column> - <el-table-column prop="standardVal" label="鏍囧噯鍊�" width="125"></el-table-column> - <el-table-column prop="controlVal" label="鍐呮祴鍊�" width="125"></el-table-column> - <el-table-column prop="detectionVal" label="妫�楠屽��" width="125"></el-table-column> - <el-table-column prop="checker" label="妫�楠屼汉"> + <el-table-column prop="required" label="鏍囧噯鍊�" width="125"></el-table-column> + <el-table-column prop="internal" label="鍐呮祴鍊�" width="125"></el-table-column> + <el-table-column prop="testValue" label="妫�楠屽��" width="125"></el-table-column> + <el-table-column prop="userName" label="妫�楠屼汉"> <template slot-scope="scope"> <el-select v-model="scope.row.checker" size="small" slot="append" style="width: 260px;"> - <el-option v-for="item in checkeroptions" :key="item.value" :label="item.label">{{ item.label }}</el-option> + <el-option v-for="(item,index) in checkeroptions" :key="index" :value="item.value" :label="item.label">{{ item.label }}</el-option> </el-select> </template> </el-table-column> <el-table-column prop="device" label="璇曢獙璁惧"> <template slot-scope="scope"> <el-select v-model="scope.row.device" size="small" slot="append" style="width: 260px;"> - <el-option v-for="item in deviceoptions" :key="item.value" :label="item.label">{{ item.label }}</el-option> + <el-option v-for="(item,index) in deviceoptions" :key="index" :value="item.value" :label="item.label">{{ item.label }}</el-option> </el-select> </template> </el-table-column> @@ -249,10 +283,17 @@ </template> <script> -import { getRawMaterialList } from '@/api/inspection/rawmaterial' +import { getRawMaterialList,addInspect,selectInspectsListById } from '@/api/inspection/rawmaterial' export default { data() { return { + insertData:{ + + }, + addReportVisible: false, + checked: false, + resultData : {}, + checkData:[], form: [], searchData: { code: '', @@ -313,80 +354,82 @@ total:20, data: '', showNewPage: false, - inspectionForm:{ - createTime: '2023-07-28', - supplier_name: '鍥界綉灞变笢鐪佺數鍔涙湁闄愬叕鍙�', - materialCoding: 'BP214274', - materialName: '閾濆寘閽㈢粸绾�', - specificationsModels: 'JLHA/G1A-185/30-26/7', - unit: '鍚�', - quantity: 21, - dateSurvey: '2023-08-02', - surveyor: '榛勫皬鏄�', - inspectionDate: '2023-12-09', - }, - inspectionItems:[{ - project:'瀵肩嚎澶栧緞', - unit: 'mm', - standardVal: '30.0', - controlVal: '30.0', - detectionVal: '30.0', - device:'', - checker: '', - },{ - project:'瀵肩嚎澶栧緞', - unit: 'mm', - standardVal: '30.0', - controlVal: '30.0', - detectionVal: '30.0', - device:'', - checker: '' - },{ - project:'瀵肩嚎澶栧緞', - unit: 'mm', - standardVal: '30.0', - controlVal: '30.0', - detectionVal: '30.0', - device:'', - checker: '' - },{ - project:'瀵肩嚎澶栧緞', - unit: 'mm', - standardVal: '30.0', - controlVal: '30.0', - detectionVal: '30.0', - device:'', - checker: '' - },{ - project:'瀵肩嚎澶栧緞', - unit: 'mm', - standardVal: '30.0', - controlVal: '30.0', - detectionVal: '30.0', - device:'', - checker: '' - },{ - project:'瀵肩嚎澶栧緞', - unit: 'mm', - standardVal: '30.0', - controlVal: '30.0', - detectionVal: '30.0', - device:'', - checker: '' - }] + inspectionForm:{}, + inspectionItems:[] } }, created(){ this.getRawMaterialList() }, methods: { + removeFun(row){ + this.$confirm('纭鍒犻櫎璇ユ暟鎹悧?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + this.$message({ + type: 'success', + message: '鍒犻櫎鎴愬姛!' + }); + }).catch(() => {}); + }, + checkSelect(row,index){ + if(row.type === 1){ + return false; + }else{ + return true; + } + }, + handleSelectionChange(val){ + this.checkData = val; + console.log(val); + }, + //鐢熸垚鎶ユ鍗曟寜閽� + addReportBtn(){ + let arr = this.checkData; + if(arr.length < 1){ + this.$message.error("璇烽�夋嫨涓�鏉℃暟鎹�!"); + }else{ + if(arr.length > 1){ + this.$message.error("鏈�澶氶�夋嫨涓�鏉℃暟鎹�!"); + }else{ + //娣诲姞鎶ユ鍗� + let val = arr[0]; + let obj = { + "endTime": val.dateSurvey, + "experiment": "", + "formTime": val.createTime, + "id": val.id, + "mcode": val.materialCoding, + "name": val.materialName, + "num": val.quantity, + "specifications": val.specificationsModels, + "startTime": val.inspectionDate, + "supplier": val.supplierName, + "type": val.type, + "unit": val.unit, + "version": val.version + } + this.createReport(obj); + this.showNewPage = true; + } + } + }, + //鐢熸垚鎶ヤ环鍗� + async createReport(param){ + await addInspect(param); + const res2 = await selectInspectsListById({ id : 59}); + this.resultData = res2.data; + this.inspectionForm = res2.data; + this.inspectionItems = res2.data.insProducts; + + }, // 鑾峰彇鍒嗛〉鍒楄〃鏁版嵁 async getRawMaterialList(){ const res = await getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize}) - // console.log(res) this.inspectionTable = res.data.row this.data = res.data.row - console.log(res.data.row); this.total = res.data.total }, async search(){ @@ -398,7 +441,6 @@ pageNo: this.currentPage, pageSize: this.pageSize }) - // console.log(res) this.inspectionTable = res.data.row this.data = res.data.row this.total = res.data.total @@ -414,7 +456,6 @@ }, radioclick(){ this.searchData.state = this.radioValue - // console.log(this.radioValue) this.inspectionTable = this.data.filter((item)=>{ return item.condition === this.radioValue }) @@ -425,13 +466,11 @@ }, // 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣 handleSizeChange(val) { - console.log(`姣忛〉 ${val} 鏉) this.pageSize = val this.getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize}) }, // 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤� handleCurrentChange(val) { - console.log(`褰撳墠椤�: ${val}`) this.currentPage = val this.getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize}) } @@ -439,7 +478,7 @@ } </script> -<style scoped> +<style scoped lang="scss"> .content-main{ height: 100%; .top-bar{ -- Gitblit v1.9.3