From adeed9c2997994193ceb4d9667e7ef1bfe07de48 Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期一, 22 七月 2024 10:57:28 +0800 Subject: [PATCH] Merge branch 'master' of http://114.132.189.42:9002/r/center-lims-before into master --- src/components/do/b1-inspect-order-plan/Inspection.vue | 7 + src/components/view/b1-material-inspection-order.vue | 256 +++++++++++++++++++++++++++++++++++++++++++++++++++ src/components/do/b6-device-management/b6-data-acquisition-config.vue | 6 3 files changed, 265 insertions(+), 4 deletions(-) diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue index a339685..2060de5 100644 --- a/src/components/do/b1-inspect-order-plan/Inspection.vue +++ b/src/components/do/b1-inspect-order-plan/Inspection.vue @@ -1005,8 +1005,9 @@ }, methods: { getDataAcquisitionDevice(){ + this.dataAcquisitionLoading = true - this.$axios.get(this.$api.deviceScope.dataCollection+'?entrustCode='+this.insOrder.entrustCode+'&sampleCode='+this.currentSample.sampleCode).then(res=>{ + this.$axios.get(this.$api.deviceScope.dataCollection+'?entrustCode='+this.insOrder.entrustCode+'&sampleCode='+this.currentSample.sampleCode + '&id=' + this.currentSample.id).then(res=>{ this.dataAcquisitionLoading = false if(res.code!=200){ return @@ -2175,7 +2176,9 @@ this.$axios.post(this.$api.insOrderPlan.submitPlan, { orderId: this.orderId, laboratory: this.sonLaboratory, - verifyUser: this.verifyUser + verifyUser: this.verifyUser, + entrustCode: this.insOrder.entrustCode, + sampleCode: this.currentSample.sampleCode }).then(res => { if (res.code === 200) { this.$message.success("鎿嶄綔鎴愬姛") diff --git a/src/components/do/b6-device-management/b6-data-acquisition-config.vue b/src/components/do/b6-device-management/b6-data-acquisition-config.vue index 0f5b5d3..a37163d 100644 --- a/src/components/do/b6-device-management/b6-data-acquisition-config.vue +++ b/src/components/do/b6-device-management/b6-data-acquisition-config.vue @@ -14,7 +14,8 @@ <el-table :data="tableList.slice((page.current - 1) * page.size, page.current * page.size)" border tooltip-effect="dark" style="width: 100%;" height="100%"> <el-table-column type="index" label="搴忓彿" align="center" width="65"></el-table-column> - <el-table-column prop="insProductItem" align="center" label="妫�楠岄」鐩�"> + <el-table-column prop="inspectionItemSubclass" align="center" label="妫�楠岄」"></el-table-column> + <el-table-column prop="insProductItem" align="center" label="妫�楠岄」瀛愰」"> </el-table-column> <el-table-column prop="section" label="鎿嶄綔" width="120"> <template slot-scope="scope"> @@ -101,6 +102,7 @@ this.tableList.forEach(i => { let data = i.insProductItem.split(',') i.insProductItem = data[data.length - 1] + i.inspectionItemSubclass = data[data.length - 2] }) }, data() { @@ -204,7 +206,7 @@ const index = this.domains.indexOf(item) if (index !== -1 && this.domains.length > 1) { if(item.id){ - this.$axios.get(this.$api.deviceScope.deleteDataAcquisitionConfiguration + "?id=" + item.id).then(res => { + this.$axios.delete(this.$api.deviceScope.deleteDataAcquisitionConfiguration + "?id=" + item.id).then(res => { if(res.code == 200) { this.domains.splice(index, 1) } diff --git a/src/components/view/b1-material-inspection-order.vue b/src/components/view/b1-material-inspection-order.vue new file mode 100644 index 0000000..75eb15d --- /dev/null +++ b/src/components/view/b1-material-inspection-order.vue @@ -0,0 +1,256 @@ +<template> + <div> + <div style="width: 100%;height: 100%;"> + <div> + <el-row class="title"> + <el-col :span="12" style="padding-left: 20px;text-align: left;">鍘熸潗鏂欐楠屼笅鍗�</el-col> + <el-col :span="12" style="text-align: right;"> + <el-button size="medium" type="primary" v-if="tabIndex === 0" @click="openIFS">鑾峰彇IFS璁㈠崟</el-button> + <el-button size="medium" type="primary" v-if="tabIndex === 0">鎶ユ</el-button> + </el-col> + </el-row> + </div> + <div class="search"> + <div class="search_thing"> + <div class="search_label">閲囪喘璁㈠崟鍙凤細</div> + <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable + v-model="componentData.entity.entrustCode" @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="componentData.entity.sample" @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="componentData.entity.sampleModel" @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="table"> + <ul class="tab"> + <li v-for="(m,i) in tabList" :key="i" :class="{active:i==tabIndex}" @click="handleTab(m,i)">{{m.label}}</li> + </ul> + <ValueTable :style="getStyle()" ref="ValueTable" + :url="$api.insOrder.selectSampleAndProductByOrderId" + :componentData="componentData" + :key="'b'+ upIndex" /> + </div> + </div> + <el-dialog title="鑾峰彇IFS璁㈠崟琛�" :visible.sync="IFSDialog" width="70%"> + <div class="search"> + <div class="search_thing"> + <div class="search_label">閲囪喘璁㈠崟鍙凤細</div> + <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable + v-model="componentData.entity.sampleModel" @keyup.enter.native="refreshTable()"></el-input></div> + </div> + <div class="search_thing" style="padding-left: 30px;"> + <el-button size="small" @click="refreshIFS()">閲� 缃�</el-button> + <el-button size="small" type="primary" @click="refreshTableIFS()">鏌� 璇�</el-button> + </div> + </div> + <div style="height: 70vh;overflow-y: auto;"> + <ValueTable ref="ValueTableIFS" + :url="$api.insOrder.selectSampleAndProductByOrderId" + :componentData="componentDataIFS"/> + </div> + <span slot="footer" class="dialog-footer"> + <el-row> + <el-button @click="IFSDialog=false">鍙� 娑�</el-button> + <el-button type="primary" @click="submitPrint" :loading="IFSGetLoading">鑾峰彇</el-button> + </el-row> + </span> + </el-dialog> + </div> +</template> + +<script> +import ValueTable from "../tool/value-table.vue"; + +export default { + name: "b1-material-inspection-order", + // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� + components: {ValueTable}, + data() { + // 杩欓噷瀛樻斁鏁版嵁 + return { + componentData: { // 琛ㄦ牸鏁版嵁 + entity: { + entrustCode: null, + sample: null, + sampleModel: null, + }, + isIndex: true, + showSelect: true, + select: true, + selectMethod:'selectMethod', + do: [ + { + id: 'update', + font: '缂栬緫', + type: 'text', + method: 'doDiy', + }, + { + id: 'verify', + font: '鏌ョ湅', + type: 'text', + method: 'doDiy', + }, + { + id: 'dataLook', + font: '鎾ら攢鎶ユ', + type: 'text', + method: 'handleDataLook', + } + ], + tagField: {}, + selectField: {}, + requiredAdd: [], + requiredUp: [] + }, + componentDataIFS: { + entity: { + entrustCode: null, + sample: null, + sampleModel: null, + }, + isIndex: true, + showSelect: true, + select: true, + selectMethod:'selectMethod', + do: [], + tagField: {}, + selectField: {}, + requiredAdd: [], + requiredUp: [] + }, + tabList: [{ + label: '寰呮姤妫�', + value: 0 + }, { + label: '寰呭埗鍗�', + value: 1 + }], + upIndex: 0, + tabIndex: 0, + multipleSelection:[], + entityCopy: {}, + entityCopyIFS: {}, + IFSDialog: false, + IFSGetLoading: false + } + }, + mounted () { + this.entityCopy = this.HaveJson(this.componentData.entity) + this.entityCopyIFS = this.HaveJson(this.componentDataIFS.entity) + }, + // 鏂规硶闆嗗悎 + methods: { + refreshTable(e) { + this.$refs.ValueTable.selectList(e) + }, + refresh() { + this.componentData.entity = this.HaveJson(this.entityCopy) + this.refreshTable() + }, + refreshIFS() { + this.componentDataIFS.entity = this.HaveJson(this.entityCopyIFS) + this.refreshTableIFS() + }, + refreshTableIFS(e) { + this.$refs.ValueTableIFS.selectList(e) + }, + // 鑾峰彇IFS璁㈠崟 + submitPrint () { + + }, + // 鍒囨崲tab琛ㄦ牸 + handleTab(m, i) { + this.tabIndex = i; + this.componentData.entity.state = m.value + this.refreshTable() + }, + // 琛ㄦ牸閫夋嫨鏂规硶 + selectMethod(val){ + this.multipleSelection = val + }, + openIFS () { + this.IFSDialog = true + }, + getStyle(){ + return 'height: calc(100% - '+(this.more?'94':'44')+'px)' + } + }, +} +</script> + +<style scoped> +.title { + height: 60px; + line-height: 60px; +} + +.search { + background-color: #fff; + height: 80px; + display: flex; + align-items: center; + overflow: hidden; +} + +.search_thing { + display: flex; + align-items: center; + height: 50px; + width: 250px; +} + +.search_label { + width: 110px; + font-size: 14px; + text-align: right; +} + +.search_input { + width: calc(100% - 90px); +} +.table { + margin-top: 10px; + background-color: #fff; + width: calc(100% - 40px); + height: calc(100% - 60px - 80px - 10px - 40px); + padding: 20px; +} +.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> -- Gitblit v1.9.3