From 10bd1c0bbba80d86313b86559546557b2bdbc920 Mon Sep 17 00:00:00 2001 From: spring <2396852758@qq.com> Date: 星期四, 20 二月 2025 10:21:13 +0800 Subject: [PATCH] Merge branch 'dev' of http://114.132.189.42:9002/r/lims-ruoyi-before into dev --- src/api/business/productOrder.js | 10 src/components/Table/lims-table.vue | 3 /dev/null | 162 ---------- src/views/business/materialOrderComponents/materialOrder/dataLookVisible.vue | 4 src/views/business/materialOrder/copperOrder.vue | 52 +-- src/views/business/materialOrder/customsInspection.vue | 82 ++-- src/views/business/rawMaterialInspection/index.vue | 108 +++++- src/api/business/rawMaterialOrder.js | 4 src/views/business/materialOrderComponents/materialOrder/filesLookVisible.vue | 52 +- src/views/business/productOrder/index.vue | 342 ++++++++++++---------- src/router/index.js | 16 src/views/business/materialOrder/index.vue | 27 - 12 files changed, 390 insertions(+), 472 deletions(-) diff --git a/src/api/business/productOrder.js b/src/api/business/productOrder.js index 674e9c9..c6aa047 100644 --- a/src/api/business/productOrder.js +++ b/src/api/business/productOrder.js @@ -78,6 +78,14 @@ return request({ url: '/insOrder/delInsOrder', method: 'delete', - data: query + params: query + }) +} +// 灏嗗緟瀹℃牳鏇存柊鎴愭挙閿�鐘舵�� +export function selectNoProducts(query) { + return request({ + url: '/insOrder/selectNoProducts', + method: 'get', + params: query }) } diff --git a/src/api/business/rawMaterialOrder.js b/src/api/business/rawMaterialOrder.js index c463090..ee21873 100644 --- a/src/api/business/rawMaterialOrder.js +++ b/src/api/business/rawMaterialOrder.js @@ -44,7 +44,7 @@ // 鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭� export function getUserNow(query) { return request({ - url: '/user/getUserNow', + url: '/system/newUser/getUserNow', method: 'get', }) } @@ -138,7 +138,7 @@ // 閾滃崟涓濅笅鍗� export function addRawCopperOrder(query) { return request({ - url: '/insOrder/addRawCopperOrder', + url: '/rawMaterialOrder/addRawCopperOrder', method: 'post', data: query }) diff --git a/src/components/Table/lims-table.vue b/src/components/Table/lims-table.vue index 8b5b5b4..2f12565 100644 --- a/src/components/Table/lims-table.vue +++ b/src/components/Table/lims-table.vue @@ -46,7 +46,7 @@ :label="item.label" :min-width="item.minWidth" :prop="item.prop" - show-overflow-tooltip + :show-overflow-tooltip="item.dataType === 'action' ? false : true" :sortable="item.sortable ? true : false" :type="item.type" :width=" @@ -370,7 +370,6 @@ methods: { getWidth(row) { let count = 0; - console.log("row---", row); row.forEach((a) => { count += a.name.length; }); diff --git a/src/components/rawMaterialInspection/dataLookVisible.vue b/src/components/rawMaterialInspection/dataLookVisible.vue deleted file mode 100644 index 79aceca..0000000 --- a/src/components/rawMaterialInspection/dataLookVisible.vue +++ /dev/null @@ -1,162 +0,0 @@ -<template> - <div> - <el-dialog title="鏁版嵁鏌ョ湅" :visible.sync="isShow" width="80%" @closed="$emit('closeDataLook')"> - <ul class="tab"> - <li v-for="(m,i) in dataVisibleTitle" :key="i" :class="{active:i===dataVisibleIndex}" @click="handleDataVisibleTab(m,i)">{{m.label}}</li> - </ul> - <div style="height: 70vh;overflow-y: auto;"> - <ValueTable ref="ValueTableDataLook" :url="$api.insOrder.selectSampleAndProductByOrderId" - :key="upIndex" - :componentData="componentDataDataLook"/> - </div> - </el-dialog> - <un-pass-retest-result :retestVisible="retestVisible" :retestInfo="retestInfo" @closeRetestLook="closeRetestLook" v-if="retestVisible"></un-pass-retest-result> - </div> -</template> - -<script> -import ValueTable from "@/components/Table/value-table.vue"; -import UnPassRetestResult from "./unPassRetestResult.vue"; - -export default { - name: "dataLookVisible", - // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� - components: {UnPassRetestResult, ValueTable}, - props: { - dataDialogVisible: { - type: Boolean, - default: () => false - }, - dataLookInfo: { - type: Object, - default: () => {} - }, - }, - data() { - // 杩欓噷瀛樻斁鏁版嵁 - return { - upIndex: 0, - isShow: this.dataDialogVisible, - dataVisibleTitle: [ - { - label: '杩涘巶妫�楠�', - value: 0 - }, - { - label: '瀛e害妫�楠�', - value: 1 - }, - ], - dataVisibleIndex: 0, // 鏁版嵁鏌ョ湅tab鏍忛�夋嫨鍊� - // 琛ㄦ牸鏁版嵁 - componentDataDataLook: { // 鏁扮粍鏌ョ湅鐨則able鏁版嵁 - entity: { - id: null, - }, - isIndex: false, - showSelect: false, - select: false, - do: [ - { - id: '', - font: '涓嶅悎鏍煎娴嬫煡鐪�', - type: 'text', - method: 'getRetestResult', - disabFun: (row, index) => { - return row.insResult!=0 - } - } - ], - tagField: { - insState: { - select: [] - }, - insResult: { - select: [{ - value: 1, - label: '鍚堟牸', - type: 'success' - },{ - value: 0, - label: '涓嶅悎鏍�', - type: 'danger' - },{ - value: 3, - label: '涓嶅垽瀹�', - type: '' - }] - } - }, - selectField: {}, - requiredAdd: [], - requiredUp: [] - }, - retestVisible: false, - retestInfo: [] - } - }, - mounted() { - this.refreshTable() - }, - // 鏂规硶闆嗗悎 - methods: { - // 鍒囨崲鏁版嵁鏌ョ湅tab鏍� - handleDataVisibleTab (m, i) { - this.dataVisibleIndex = i - this.refreshTable() - }, - // 鏌ヨ鍥炶皟 - refreshTable(e) { - if (this.dataVisibleIndex === 0) { - this.componentDataDataLook.entity.id = this.dataLookInfo.enterOrderId - } else { - this.componentDataDataLook.entity.id = this.dataLookInfo.quarterOrderId - } - this.$nextTick(() => { - this.$refs['ValueTableDataLook'].selectList(e) - }) - }, - // 鏌ョ湅涓嶅悎鏍煎娴嬬粨鏋� - getRetestResult (row) { - this.$axios.get(this.$api.insOrder.getRetestResult+'?insProductId='+row.insProductId).then(res => { - if (res.code == 201) return - this.retestVisible = true - this.retestInfo = res.data - }) - }, - closeRetestLook () { - this.retestVisible = false - }, - }, -} -</script> - -<style scoped> -.tab { - list-style-type: none; - display: flex; - margin-bottom: 12px; -} - -.tab li { - line-height: 24px; - padding: 6px 14px; - font-size: 14px; - color: #333333; - border: 1px solid #EEEEEE; - cursor: pointer; -} - -.tab li:nth-child(1) { - border-radius: 8px 0 0 8px; -} - -.tab li:nth-child(2) { - border-radius: 0 8px 8px 0; -} - -.tab li.active { - border-color: #3A7BFA; - color: #3A7BFA; -} -</style> diff --git a/src/router/index.js b/src/router/index.js index 0795a32..298860f 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -100,12 +100,18 @@ permissions: ["business:order"], children: [ { + // 鍘熸潗鏂欎笅鍗� + path: 'customsInspection', + component: () => import('@/views/business/materialOrder/customsInspection'), + name: 'customsInspection', + meta: { title: '鍘熸潗鏂欎笅鍗曡鎯�', activeMenu: '/business/materialOrder' } + }, + { // 閾滄潗鏂欎笅鍗� - path: "customsInspection", - component: () => - import("@/views/business/materialOrder/customsInspection"), - name: "customsInspection", - meta: { title: "閾滄潗鏂欎笅鍗�", activeMenu: "/business/materialOrder" }, + path: 'copperOrder', + component: () => import('@/views/business/materialOrder/copperOrder'), + name: 'copperOrder', + meta: { title: '閾滄潗鏂欎笅鍗�', activeMenu: '/business/materialOrder' } }, ], }, diff --git a/src/views/business/materialOrder/copperOrder.vue b/src/views/business/materialOrder/copperOrder.vue index ad0d97d..467bc40 100644 --- a/src/views/business/materialOrder/copperOrder.vue +++ b/src/views/business/materialOrder/copperOrder.vue @@ -515,8 +515,6 @@ bsm2: false, bsm2Val: null, bsm2Dia: false, - bsm2Val2: [], - bsm2Val3: [], bsmRow3: null, bsm3Val: null, bsm3Dia: false, @@ -649,7 +647,6 @@ item.quantity = 1 }) this.count++ - this.computationalPairing(this.sampleList.length) }, noNeedCheck () { this.$refs['addObj'].validate((valid) => { @@ -902,10 +899,6 @@ this.$message.error('璇烽�夋嫨妫�楠屾爣鍑�') return } - // if (!this.sampleList.every(m => m.quantity)) { - // this.$message.error('璇烽�夋嫨寰呮椤规暟閲�') - // return - // } const sampleList = this.HaveJson(this.sampleList) sampleList.forEach(item => { item.quantity = 1 @@ -1148,25 +1141,27 @@ saveMethod(sampleList){ this.saveLoad = true addRawCopperOrder({ - str: JSON.stringify({ - insOrder: this.addObj, - list: JSON.stringify(sampleList.map(a => { - if (a.modelNum) { - const index = a.modelNum.indexOf('脳') - if (index === 0) { - a.model = a.model + a.modelNum - } else if (index === -1) { - a.model = a.model + '-' + a.modelNum - } else { - a.model = a.modelNum + a.model - } + copperInsOrder: this.addObj, + sampleList: sampleList.map(a => { + if (a.insProduct.length > 0) { + a.insProduct.forEach(c => { + delete c.id + }) + } + if (a.modelNum) { + const index = a.modelNum.indexOf('脳') + if (index === 0) { + a.model = a.model + a.modelNum + } else if (index === -1) { + a.model = a.model + '-' + a.modelNum } else { - a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum)) + a.model = a.modelNum + a.model } - a.insProduct = a.insProduct.filter(b=>b.state === 1) - return a - })), - pairing: JSON.stringify(this.bsm2Val2) + } else { + a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum)) + } + a.insProduct = a.insProduct.filter(b=>b.state === 1) + return a }) }).then(res => { this.saveLoad = false @@ -1333,8 +1328,6 @@ this.sampleList.push(this.HaveJson(this.sample)) // this.count++ } - this.computationalPairing(this.sampleList.length) - this.bsm2Val2 = this.HaveJson(this.bsm2Val3) }, selectSample(val) { this.sampleIds = [] @@ -1463,13 +1456,6 @@ } backtrack([], nums); return result; - }, - computationalPairing(n) { - const nums = []; - for (let i = 1; i <= n; i++) { - nums.push(i); - } - this.bsm2Val3 = this.HaveJson(this.permute(nums)) }, tableRowClassName({row, rowIndex}) { if (row.state === 0) { diff --git a/src/views/business/materialOrder/customsInspection.vue b/src/views/business/materialOrder/customsInspection.vue index 63eb53f..f54eec2 100644 --- a/src/views/business/materialOrder/customsInspection.vue +++ b/src/views/business/materialOrder/customsInspection.vue @@ -431,8 +431,8 @@ </template> <script> -import ValueTable from "@/components/Table/value-table.vue"; import { + addExemptionOrder, addInsOrder, addRawMaterOrderTemplate, delRawMaterOrderTemplate, getInsOrder, @@ -444,9 +444,7 @@ export default { name: "CustomsInspection", dicts: ['check_type', 'urgency_level'], - components: { - ValueTable, - }, + components: {}, props: { currentId: { type: Number, @@ -998,28 +996,26 @@ this.addObj.ifsInventoryId = this.customsInspection.id this.noNeedCheckLoad = true addExemptionOrder({ - str: JSON.stringify({ - insOrder: this.addObj, - list: JSON.stringify(sampleList.map(a => { - if (a.modelNum) { - // 鏍规嵁x鍙峰垽鏂瀷鍙峰弬鏁颁笌鏍峰搧鍨嬪彿鐨勬嫾鎺ヤ綅缃� - // 渚嬪脳4锛屽氨涓�500ML脳4锛�4脳锛屽氨涓�4脳500ML - const index = a.modelNum.indexOf('脳') - if (index === 0) { - a.model = a.model + a.modelNum - } else if (index === -1) { - a.model = a.model + '-' + a.modelNum - } else { - a.model = a.modelNum + a.model - } + insOrder: this.addObj, + list: sampleList.map(a => { + if (a.modelNum) { + // 鏍规嵁x鍙峰垽鏂瀷鍙峰弬鏁颁笌鏍峰搧鍨嬪彿鐨勬嫾鎺ヤ綅缃� + // 渚嬪脳4锛屽氨涓�500ML脳4锛�4脳锛屽氨涓�4脳500ML + const index = a.modelNum.indexOf('脳') + if (index === 0) { + a.model = a.model + a.modelNum + } else if (index === -1) { + a.model = a.model + '-' + a.modelNum } else { - a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum)) + a.model = a.modelNum + a.model } - a.insProduct = a.insProduct.filter(b=>b.state === 1) - return a - })), - pairing: JSON.stringify(pairing) - }) + } else { + a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum)) + } + a.insProduct = a.insProduct.filter(b=>b.state === 1) + return a + }), + pairing: pairing }).then(res => { this.noNeedCheckLoad = false if (res.code == 201) return @@ -1049,28 +1045,26 @@ this.addObj.ifsInventoryId = this.customsInspection.id this.saveLoad = true addInsOrder({ - str: JSON.stringify({ - insOrder: this.addObj, - list: JSON.stringify(sampleList.map(a => { - if (a.modelNum) { - // 鏍规嵁x鍙峰垽鏂瀷鍙峰弬鏁颁笌鏍峰搧鍨嬪彿鐨勬嫾鎺ヤ綅缃� - // 渚嬪脳4锛屽氨涓�500ML脳4锛�4脳锛屽氨涓�4脳500ML - const index = a.modelNum.indexOf('脳') - if (index === 0) { - a.model = a.model + a.modelNum - } else if (index === -1) { - a.model = a.model + '-' + a.modelNum - } else { - a.model = a.modelNum + a.model - } + insOrder: this.addObj, + list: sampleList.map(a => { + if (a.modelNum) { + // 鏍规嵁x鍙峰垽鏂瀷鍙峰弬鏁颁笌鏍峰搧鍨嬪彿鐨勬嫾鎺ヤ綅缃� + // 渚嬪脳4锛屽氨涓�500ML脳4锛�4脳锛屽氨涓�4脳500ML + const index = a.modelNum.indexOf('脳') + if (index === 0) { + a.model = a.model + a.modelNum + } else if (index === -1) { + a.model = a.model + '-' + a.modelNum } else { - a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum)) + a.model = a.modelNum + a.model } - a.insProduct = a.insProduct.filter(b=>b.state === 1) - return a - })), - pairing: JSON.stringify(pairing) - }) + } else { + a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum)) + } + a.insProduct = a.insProduct.filter(b=>b.state === 1) + return a + }), + pairing: pairing }).then(res => { this.saveLoad = false if (res.code == 201) return diff --git a/src/views/business/materialOrder/index.vue b/src/views/business/materialOrder/index.vue index 44e6eb4..e0b3b07 100644 --- a/src/views/business/materialOrder/index.vue +++ b/src/views/business/materialOrder/index.vue @@ -195,7 +195,6 @@ </template> <script> -import CustomsInspection from "./customsInspection.vue"; import PrintDialog from "@/views/business/materialOrderComponents/materialOrder/printDialog.vue"; import ShowInfo from "@/views/business/materialOrderComponents/materialOrder/showInfo.vue"; import DataLookVisible from "@/views/business/materialOrderComponents/materialOrder/dataLookVisible.vue"; @@ -206,9 +205,7 @@ concessionRelease, getIfsByAll, getIfsByOver, - getIfsByQuarter, getIfsByStateOne, - getPurchaseOrder, rawAllExport, rawOrderRelease, repealEnterRawOrder, @@ -222,7 +219,7 @@ export default { name: "b1-material-inspection-order", // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� - components: {limsTable,DownFileDialog, FilesLookVisible, DataLookVisible, ShowInfo, PrintDialog, CustomsInspection}, + components: {limsTable,DownFileDialog, FilesLookVisible, DataLookVisible, ShowInfo, PrintDialog}, data() { // 杩欓噷瀛樻斁鏁版嵁 return { @@ -240,14 +237,14 @@ if (params == 1) { return '杩囨湡鐗╂枡' } else { - return '' + return null } }, formatType: (params) => { if (params == 1) { return 'info' } else { - return '' + return null } } }, @@ -309,14 +306,14 @@ if (params == 1) { return '杩囨湡鐗╂枡' } else { - return '' + return null } }, formatType: (params) => { if (params == 1) { return 'info' } else { - return '' + return null } } }, @@ -384,14 +381,14 @@ if (params == 1) { return '杩囨湡鐗╂枡' } else { - return '' + return null } }, formatType: (params) => { if (params == 1) { return 'info' } else { - return '' + return null } } }, @@ -497,14 +494,14 @@ if (params == 1) { return '杩囨湡鐗╂枡' } else { - return '' + return null } }, formatType: (params) => { if (params == 1) { return 'info' } else { - return '' + return null } } }, @@ -563,14 +560,14 @@ if (params == 1) { return '杩囨湡鐗╂枡' } else { - return '' + return null } }, formatType: (params) => { if (params == 1) { return 'info' } else { - return '' + return null } } }, @@ -1039,8 +1036,8 @@ }, // 鏁版嵁鏌ョ湅 handleDataLook(row) { - this.dataDialogVisible = true; this.dataLookInfo = row + this.dataDialogVisible = true; }, // 鍏抽棴鏁版嵁鏌ョ湅寮规 closeDataLook () { diff --git a/src/views/business/materialOrderComponents/materialOrder/dataLookVisible.vue b/src/views/business/materialOrderComponents/materialOrder/dataLookVisible.vue index 81c4baa..3eb9521 100644 --- a/src/views/business/materialOrderComponents/materialOrder/dataLookVisible.vue +++ b/src/views/business/materialOrderComponents/materialOrder/dataLookVisible.vue @@ -63,7 +63,7 @@ } else if (params == 3) { return '涓嶅垽瀹�' } else { - return '' + return null } }, formatType: (params) => { @@ -74,7 +74,7 @@ } else if (params == 3) { return '' } else { - return '' + return null } } }, diff --git a/src/views/business/materialOrderComponents/materialOrder/filesLookVisible.vue b/src/views/business/materialOrderComponents/materialOrder/filesLookVisible.vue index c28c5b0..bf6d838 100644 --- a/src/views/business/materialOrderComponents/materialOrder/filesLookVisible.vue +++ b/src/views/business/materialOrderComponents/materialOrder/filesLookVisible.vue @@ -17,9 +17,9 @@ </el-upload> </div> <div v-if="filesDialogVisible"> - <lims-table :tableData="tableData" :column="column" - @pagination="pagination" height="500px" key="tableData" - :page="page" :tableLoading="tableLoading"></lims-table> + <lims-table :tableData="tableDataFile" :column="columnFile" + @pagination="paginationFile" height="500px" key="tableDataFile" + :page="pageFile" :tableLoading="tableLoadingFile"></lims-table> </div> </el-dialog> </div> @@ -48,20 +48,18 @@ data() { // 杩欓噷瀛樻斁鏁版嵁 return { - tableData: [], - tableLoading: false, - column: [ + tableDataFile: [], + tableLoadingFile: false, + columnFile: [ { dataType: 'tag', label: '绫诲瀷', prop: 'type', formatData: (params) => { if (params == 1) { - return '鍚堟牸' - } else if (params == 0) { - return '涓嶅悎鏍�' - } else if (params == 3) { - return '涓嶅垽瀹�' + return '鍥剧墖' + } else if (params == 2) { + return '鏂囦欢' } else { return '' } @@ -69,11 +67,9 @@ formatType: (params) => { if (params == 1) { return 'success' - } else if (params == 0) { - return 'danger' - } else if (params == 3) { - return '' - } else { + } else if (params == 2) { + return 'warning' + } else { return '' } } @@ -104,7 +100,7 @@ ] } ], - page: { + pageFile: { total:0, size:10, current:1 @@ -127,37 +123,37 @@ } }, mounted() { - this.refreshTable() + this.getFileList() }, // 鏂规硶闆嗗悎 methods: { // 鍒囨崲鏁版嵁鏌ョ湅tab鏍� handleDataVisibleTab (m, i) { this.dataVisibleIndex = i - this.refreshTable() + this.getFileList() }, // 鏌ヨ鍥炶皟 - refreshTable() { + getFileList() { if (this.dataVisibleIndex === 0) { this.entity.insOrderId = this.filesLookInfo.enterOrderId } else { this.entity.insOrderId = this.filesLookInfo.quarterOrderId } - this.tableLoading = true + this.tableLoadingFile = true const params = {...this.entity} getFileList(params).then(res => { - this.tableLoading = false + this.tableLoadingFile = false if (res.code === 200) { - this.tableData = res.data.records - this.page.total = res.data.total + this.tableDataFile = res.data.records + this.pageFile.total = res.data.total } }).catch(err => { - this.tableLoading = false + this.tableLoadingFile = false }) }, - pagination (page) { - this.page.size = page.limit - this.refreshTable() + paginationFile (page) { + this.pageFile.size = page.limit + this.getFileList() }, // 涓嬭浇 handleDown(row){ diff --git a/src/views/business/productOrder/index.vue b/src/views/business/productOrder/index.vue index d562f24..ad315e7 100644 --- a/src/views/business/productOrder/index.vue +++ b/src/views/business/productOrder/index.vue @@ -64,7 +64,7 @@ <div class="table"> <lims-table :tableData="tableData" :column="column" :isSelection="true" :handleSelectionChange="selectMethod" - @pagination="pagination" :height="'calc(100vh - 290px)'" key="tableData" + @pagination="pagination" :height="'calc(100vh - 280px)'" key="tableData" :page="page" :tableLoading="tableLoading"></lims-table> </div> <div> @@ -148,34 +148,33 @@ </span> </el-dialog> <el-dialog :visible.sync="dataDialogVisible" title="鏁版嵁鏌ョ湅" width="80%"> - <div v-if="dataDialogVisible" style="height: 70vh;overflow-y: auto;"> - <ValueTable ref="ValueTableDataLook" :componentData="componentDataDataLook" :rowKey="'insProductId'" - :url="$api.insOrder.selectSampleAndProductByOrderId"/> + <div v-if="dataDialogVisible"> + <lims-table :tableData="tableDataLook" :column="tableDataLookColumn" + @pagination="tableDataLookPagination" height="500px" key="tableDataLook" + :page="tableDataLookPage" :tableLoading="tableDataLookTableLoading"></lims-table> </div> </el-dialog> <el-dialog :visible.sync="filesDialogVisible" title="闄勪欢鏌ョ湅" width="80%"> - <div v-if="filesDialogVisible" style="height: 70vh;overflow-y: auto;"> - <ValueTable :key="upIndex" ref="fileList" - :componentData="componentData0" - :url="$api.insOrderPlan.getFileList" - class="value-table"/> + <div v-if="filesDialogVisible"> + <lims-table :tableData="tableDataFile" :column="columnFile" + @pagination="paginationFile" height="500px" key="tableDataFile" + :page="pageFile" :tableLoading="tableLoadingFile"></lims-table> </div> </el-dialog> <el-dialog :title="deleteTilte" :visible.sync="deleteDialogVisible" width="80%"> <div v-if="deleteDialogVisible" style="height: 70vh;overflow-y: auto;"> - <ValueTable ref="ValueTableDataDelete" :componentData="componentDataDelete" - :isColumnWidth="true" :url="$api.insOrder.selectNoProducts+'?orderId='+orderId+'&ids='+this.revocationInsProductIds"/> + <lims-table :tableData="componentDataDelete" :column="columnDelete" + :isSelection="true" :handleSelectionChange="selectDelete" + @pagination="paginationDelete" height="500px" key="componentDataDelete" + :page="pageDelete" :tableLoading="tableLoadingDelete"></lims-table> </div> <span slot="footer" class="dialog-footer"> - <el-row> - <el-button @click="handleNo">{{deleteTilte=='鎾ら攢'?'鍙� 娑�':'涓嶉�氳繃'}}</el-button> - <el-button :loading="printLoading" type="primary" @click="submitDelete">{{deleteTilte=='鎾ら攢'?'纭� 瀹�':'閫� 杩�'}}</el-button> - </el-row> - </span> + <el-row> + <el-button @click="handleNo">{{deleteTilte=='鎾ら攢'?'鍙� 娑�':'涓嶉�氳繃'}}</el-button> + <el-button :loading="printLoading" type="primary" @click="submitDelete">{{deleteTilte=='鎾ら攢'?'纭� 瀹�':'閫� 杩�'}}</el-button> + </el-row> + </span> </el-dialog> - </div> - <div> -<!-- <Add v-if="active<4" :active="active" :currentId="currentId" :examine = "examine" :tabIndex="tabIndex" />--> </div> <el-dialog :visible.sync="printDialogVisible" title="鏍囩鎵撳嵃" top="5vh" width="40%"> <div v-loading="loadPint" style="width:100%;height: 400px;overflow-y: auto;"> @@ -307,17 +306,15 @@ import PrintDialog from "@/views/business/productOrder/components/printDialog.vue"; import AddInspectionDia from "@/views/business/productOrder/components/addInspectionDia.vue"; import limsTable from "@/components/Table/lims-table.vue"; -import {getWarehouseSubmit} from "@/api/business/materialInspection"; import { checkUpdate, delInsOrder, rawAllInsOrderExport, - selectInsOrderParameter, selectOrderManDay, + selectInsOrderParameter, selectNoProducts, selectOrderManDay, updateInspected, updateOrderEntrustCode, updateStatus, upInsOrder, upPlanUser2 } from "@/api/business/productOrder"; -import {Message} from "element-ui"; import {selectUserCondition} from "@/api/performance/class"; -import {downFile} from "@/api/business/rawMaterialOrder"; +import {downFile, getFileList, selectSampleAndProductByOrderId} from "@/api/business/rawMaterialOrder"; // import Inspection from "../do/b1-inspect-order-plan/Inspection.vue"; export default { components: { @@ -533,7 +530,104 @@ quashDialogVisible: false, issuedDialogVisible: false, dataDialogVisible: false, // 鏁版嵁鏌ョ湅寮规 + tableDataLookTableLoading: false, // 鏁版嵁鏌ョ湅寮规 + tableDataLook: [], + tableDataLookPage: { + total:0, + size:10, + current:1 + }, + tableDataLookColumn: [ + {label: '鏍峰搧缂栧彿', prop: 'sampleCode'}, + {label: '鏍峰搧鍚嶇О', prop: 'sample'}, + {label: '妫�楠岄」鍒嗙被', prop: 'inspectionItemClass'}, + {label: '妫�楠岄」', prop: 'inspectionItem'}, + {label: '妫�楠屽瓙椤�', prop: 'inspectionItemSubclass'}, + {label: '鍗曚綅', prop: 'unit'}, + {label: '鏍峰搧鍨嬪彿', prop: 'model'}, + {label: '鏉′欢', prop: 'radius'}, + {label: '鐢电紗鏍囪瘑', prop: 'cableTag'}, + {label: '璇曢獙瑕佹眰', prop: 'tell'}, + {label: '妫�楠岀粨鏋�', prop: 'lastValue'}, + { + dataType: 'tag', + label: '缁撴灉鍒ゅ畾', + prop: 'insResult', + formatData: (params) => { + if (params == 1) { + return '鍚堟牸' + } else if (params == 0) { + return '涓嶅悎鏍�' + } else if (params == 3) { + return '涓嶅垽瀹�' + } else { + return '' + } + }, + formatType: (params) => { + if (params == 1) { + return 'success' + } else if (params == 0) { + return 'danger' + } else if (params == 3) { + return '' + } else { + return '' + } + } + }, + ], filesDialogVisible: false, // 闄勪欢鏌ョ湅寮规 + tableDataFile: [], + tableLoadingFile: false, + columnFile: [ + { + dataType: 'tag', + label: '绫诲瀷', + prop: 'type', + formatData: (params) => { + if (params == 1) { + return '鍥剧墖' + } else if (params == 2) { + return '鏂囦欢' + } else { + return '' + } + }, + formatType: (params) => { + if (params == 1) { + return 'success' + } else if (params == 2) { + return 'warning' + } else { + return '' + } + } + }, + {label: '闄勪欢鍚嶇О', prop: 'fileName'}, + {label: '涓婁紶浜�', prop: 'name'}, + {label: '涓婁紶鏃堕棿', prop: 'createTime'}, + { + dataType: 'action', + fixed: 'right', + label: '鎿嶄綔', + width: '170px', + operation: [ + { + name: '涓嬭浇', + type: 'text', + clickFun: (row) => { + this.handleDown(row); + } + } + ] + } + ], + pageFile: { + total:0, + size:10, + current:1 + }, formData: {}, formData0: {}, formData1: {}, @@ -551,130 +645,25 @@ personList: [], orderId:'', revocationInsProductIds:'', - componentDataDataLook: { - entity: { - id: 0, - orderBy: { - field: 'sampleCode', - order: 'asc' - } - }, - isIndex: false, - showSelect: false, - select: false, - do: [], - tagField: { - insState: { - select: [] - }, - insResult: { - select: [{ - value: 1, - label: '鍚堟牸', - type: 'success' - },{ - value: 0, - label: '涓嶅悎鏍�', - type: 'danger' - },{ - value: 3, - label: '涓嶅垽瀹�', - type: '' - }] - } - }, - selectField: {}, - spanConfig:{ - rows:[ - { - name:'sampleCode', - index:0 - }, - { - name:'sample', - index:1 - }, - { - name:'model', - index:6 - } - ] - }, - requiredAdd: [], - requiredUp: [] - }, - componentData0: { - entity: { - insOrderId:'' - }, - isIndex: true, - showSelect: false, - select: false, - sort: false, - init:false, - do: [ - { - id: 'parent', - font: '涓嬭浇', - type: 'text', - method: 'handleDown' - } - ], - isPage: false, - linkEvent: {}, - tagField: { - type:{ - select:[ - { - value: 1, - label: '鍥剧墖' - }, - { - value: 2, - label: '鏂囦欢' - } - ] - } - }, - currentId: '', - selectField: {}, - requiredAdd: [], - requiredUp: [] - }, - componentDataDelete: { - entity: { - // orderId: '', - // orderBy: { - // field: 'sampleCode', - // order: 'asc' - // } - }, - isPage:true, - isIndex: false, - showSelect: true, - select: true, - selectMethod: 'selectDelete', - do: [], - tagField: { - insState: { - select: [] - }, - insResult: { - select: [{ - value: 1, - label: '鍚堟牸', - type: 'success' - },{ - value: 0, - label: '涓嶅悎鏍�', - type: 'danger' - }] - } - }, - selectField: {}, - spanConfig:{}, - requiredAdd: [], - requiredUp: [] + componentDataDelete: [], + tableLoadingDelete: false, + columnDelete: [ + {label: '鏍峰搧缂栧彿', prop: 'sampleCode'}, + {label: '妫�楠岄」鍒嗙被', prop: 'inspectionItemClass'}, + {label: '妫�楠岄」', prop: 'inspectionItem'}, + {label: '妫�楠岄」瀛愮被', prop: 'inspectionItemSubclass'}, + {label: '鏍峰搧鍒嗙被', prop: 'sampleType'}, + {label: '鏍峰搧', prop: 'sample'}, + {label: '鍨嬪彿', prop: 'model'}, + {label: '绾胯姱', prop: 'cableTag'}, + {label: '璇曢獙瀹�', prop: 'sonLaboratory'}, + {label: '瑕佹眰鍊�', prop: 'ask'}, + {label: '瑕佹眰鎻忚堪', prop: 'tell'}, + ], + pageDelete: { + total:0, + size:10, + current:1 }, deleteDialogVisible:false, upLoad: false, @@ -935,16 +924,46 @@ }, // 鏁版嵁鏌ョ湅 handleDataLook(row) { - this.componentDataDataLook.entity.id = row.id this.dataDialogVisible = true; + this.getDataTableList(row) + }, + // 鏌ヨ鏁版嵁鏌ョ湅鍒楄〃鏁版嵁 + getDataTableList (row) { + this.tableDataLookTableLoading = true + selectSampleAndProductByOrderId({id: row.id}).then(res => { + this.tableDataLookTableLoading = false + if (res.code === 200) { + this.tableDataLook = res.data.records + this.tableDataLookPage.total = res.data.total + } + }).catch(err => { + this.tableDataLookTableLoading = false + }) + }, + tableDataLookPagination (page) { + this.tableDataLookPage.size = page.limit + this.getDataTableList() }, // 闄勪欢鏌ョ湅 handleFileLook (row) { - this.componentData0.entity.insOrderId = row.id; this.filesDialogVisible = true - this.$nextTick(() => { - this.$refs.fileList.selectList() + this.getFileList(row) + }, + getFileList(row) { + this.tableLoadingFile = true + getFileList({insOrderId: row.id}).then(res => { + this.tableLoadingFile = false + if (res.code === 200) { + this.tableDataFile = res.data.records + this.pageFile.total = res.data.total + } + }).catch(err => { + this.tableLoadingFile = false }) + }, + paginationFile (page) { + this.pageFile.size = page.limit + this.getFileList() }, // 闄勪欢涓嬭浇 handleDown(row){ @@ -993,14 +1012,26 @@ this.quashDialogVisible = true; this.insOrderRow=row }else{ - // this.componentDataDelete.entity.orderId = row.id this.orderId = row.id this.revocationInsProductIds = '' - this.componentDataDelete.showSelect= true - this.componentDataDelete.select= true this.deleteTilte = '鎾ら攢' - this.deleteDialogVisible = true; + this.deleteDialogVisible = true + this.getDeleteList() } + }, + getDeleteList () { + this.tableLoadingDelete = true + selectNoProducts({orderId: this.orderId, revocationInsProductIds: this.revocationInsProductIds}).then(res => { + this.tableLoadingDelete = false + this.componentDataDelete = res.data.records + this.pageDelete.total = res.data.total + }).catch(err => { + this.tableLoadingDelete = false + }) + }, + paginationDelete (page) { + this.pageDelete.size = page.limit + this.getDeleteList() }, selectDelete(arr){ this.deleteList = arr; @@ -1033,7 +1064,6 @@ } }, handlEquashCheck(row){ - // this.componentDataDelete.entity.orderId = row.id this.orderId = row.id this.revocationInsProductIds = row.revocationInsProductIds this.componentDataDelete.showSelect= false diff --git a/src/views/business/rawMaterialInspection/index.vue b/src/views/business/rawMaterialInspection/index.vue index 3430970..2ea2eb7 100644 --- a/src/views/business/rawMaterialInspection/index.vue +++ b/src/views/business/rawMaterialInspection/index.vue @@ -79,6 +79,7 @@ <!--寰呮姤妫�銆佸緟涓嬪崟--> <div class="table"> <lims-table :tableData="tableData" :column="column" v-if="tabIndex === 0 || tabIndex === 1" + :isSelection="true" :handleSelectionChange="selectMethod" @pagination="pagination" :height="'calc(100vh - 290px)'" :page="page" :tableLoading="tableLoading"></lims-table> </div> @@ -179,7 +180,7 @@ </template> <script> -import DataLookVisible from "@/components/rawMaterialInspection/dataLookVisible.vue"; +import DataLookVisible from "@/views/business/materialOrderComponents/materialOrder/dataLookVisible.vue"; import { addIfsInventoryQuantity, advancedGodown, @@ -201,7 +202,41 @@ tableData: [], tableLoading: false, column: [ - {label: '妫�楠岀姸鎬�', prop: 'inspectStatus'}, + { + dataType: 'tag', + label: '妫�楠岀姸鎬�', + prop: 'inspectStatus', + formatData: (params) => { + if (params == 0) { + return '妫�楠屼腑' + } else if (params == 1) { + return '鍚堟牸' + } else if (params == 2) { + return '涓嶅悎鏍�' + } else if (params == 3) { + return '鏈笅鍗�' + } else if (params == 4) { + return '璁╂鏀捐' + } else { + return null + } + }, + formatType: (params) => { + if (params == 0) { + return 'warning' + } else if (params == 1) { + return 'success' + } else if (params == 2) { + return 'danger' + } else if (params == 3) { + return 'info' + } else if (params == 4) { + return '' + } else { + return null + } + } + }, {label: '璁㈠崟鍙�', prop: 'orderNo'}, {label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'qtyArrived',width: '140px',}, {label: '鎵瑰彿', prop: 'updateBatchNo'}, @@ -216,14 +251,14 @@ if (params == 1) { return '杩囨湡鐗╂枡' } else { - return '' + return null } }, formatType: (params) => { if (params == 1) { return 'info' } else { - return '' + return null } } }, @@ -232,9 +267,7 @@ {label: '鎶ユ鏃堕棿', prop: 'declareDate'}, { dataType: 'action', - fixed: 'right', label: '鎿嶄綔', - width: '150px', operation: [ { name: '鎶ユ', @@ -278,7 +311,41 @@ tableLoading1: false, column1: [ {label: '濮旀墭缂栧彿', prop: 'entrustCode'}, - {label: '妫�楠岀姸鎬�', prop: 'inspectStatus'}, + { + dataType: 'tag', + label: '妫�楠岀姸鎬�', + prop: 'inspectStatus', + formatData: (params) => { + if (params == 0) { + return '妫�楠屼腑' + } else if (params == 1) { + return '鍚堟牸' + } else if (params == 2) { + return '涓嶅悎鏍�' + } else if (params == 3) { + return '鏈笅鍗�' + } else if (params == 4) { + return '璁╂鏀捐' + } else { + return null + } + }, + formatType: (params) => { + if (params == 0) { + return 'warning' + } else if (params == 1) { + return 'success' + } else if (params == 2) { + return 'danger' + } else if (params == 3) { + return 'info' + } else if (params == 4) { + return '' + } else { + return null + } + } + }, {label: '璁㈠崟鍙�', prop: 'orderNo'}, {label: '鎶佃揪鐨勯噰璐暟閲�', prop: 'qtyArrived'}, {label: '涓嬪彂鏃堕棿', prop: 'sendTime'}, @@ -299,14 +366,14 @@ if (params == 1) { return '杩囨湡鐗╂枡' } else { - return '' + return null } }, formatType: (params) => { if (params == 1) { return 'info' } else { - return '' + return null } } }, @@ -317,7 +384,6 @@ dataType: 'action', fixed: 'right', label: '鎿嶄綔', - width: '140px', operation: [ { name: '鏁版嵁鏌ョ湅', @@ -552,8 +618,8 @@ }, // 鏁版嵁鏌ョ湅 handleDataLook(row) { - this.dataDialogVisible = true; this.dataLookInfo = row + this.dataDialogVisible = true; }, // 鐩存帴鏀捐 goPass (row) { @@ -568,7 +634,7 @@ type: 'success', message: '鏀捐鎴愬姛!' }); - this.refresh() + this.refreshTable() } }) }).catch(() => { @@ -591,7 +657,7 @@ type: 'success', message: '鎿嶄綔鎴愬姛!' }); - this.refresh() + this.refreshTable() } }) }).catch(() => { @@ -630,7 +696,7 @@ if (res.code === 200) { this.declareDialogSVisible = false this.$message.success('鎶ユ鎴愬姛') - this.refresh() + this.refreshTable() } this.submitDeclareLoading = false }).catch(err => { @@ -653,7 +719,7 @@ if (res.code === 200) { this.declareDialogVisible = false this.$message.success('鎶ユ鎴愬姛') - this.refresh() + this.refreshTable() } }).catch(err => { console.log(err) @@ -673,7 +739,7 @@ if (res.code === 200) { this.declareDialogVisible = false this.$message.success('鎶ユ鎴愬姛') - this.refresh() + this.refreshTable() } }).catch(err => { console.log(err) @@ -698,11 +764,9 @@ submitDelete () { this.deleteLoading = true delIfsInventory({id: this.deleteInfo.id}).then(res => { - if (res.code === 200) { - this.deleteVisible = false - this.$message.success('鍒犻櫎鎴愬姛') - this.refresh() - } + this.deleteVisible = false + this.$message.success('鍒犻櫎鎴愬姛') + this.refreshTable() this.deleteLoading = false }).catch(err => { console.log(err) @@ -717,7 +781,7 @@ openIFS() { this.btnLoading = true getIfsOrder().then(res => { - this.refresh() + this.refreshTable() this.btnLoading = false }).catch(err => { this.btnLoading = false -- Gitblit v1.9.3