From e04fbe73f7785155bffe3db30a7ead37f9200f06 Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期五, 19 四月 2024 16:09:32 +0800
Subject: [PATCH] 对接测试项目统计接口
---
src/components/view/b1-inspection-order.vue | 138 +++++++++++++++++++++++++++++----------------
1 files changed, 89 insertions(+), 49 deletions(-)
diff --git a/src/components/view/b1-inspection-order.vue b/src/components/view/b1-inspection-order.vue
index 4ad89cb..c09dd5f 100644
--- a/src/components/view/b1-inspection-order.vue
+++ b/src/components/view/b1-inspection-order.vue
@@ -54,7 +54,7 @@
border-radius: 8px 0 0 8px;
}
- .tab li:nth-child(4) {
+ .tab li:nth-child(5) {
border-radius: 0 8px 8px 0;
}
@@ -86,9 +86,9 @@
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_label">鏍峰搧绫诲瀷锛�</div>
<div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
- v-model="componentData.entity.sample" @keyup.enter.native="refreshTable()"></el-input></div>
+ v-model="componentData.entity.sampleType" @keyup.enter.native="refreshTable()"></el-input></div>
</div>
<div class="search_thing" style="padding-left: 30px;">
<el-button size="small" @click="refresh()">閲� 缃�</el-button>
@@ -100,7 +100,7 @@
<li v-for="(m,i) in tabList" :key="i" :class="{active:i==tabIndex}" @click="handleTab(m,i)">{{m.label}}</li>
</ul>
<ValueTable ref="ValueTable" :url="$api.insOrder.selectInsOrderParameter" :componentData="componentData"
- :key="upIndex" style="height: calc(100% - 44px)" />
+ :key="'b'+upIndex" style="height: calc(100% - 44px)" />
</div>
<!-- 瀹℃牳 -->
<el-dialog title="涓嬪崟瀹℃牳" :visible.sync="verifyDialogVisible" width="30%" :before-close="handleClose">
@@ -155,10 +155,10 @@
</div>
</el-col>
<el-col class="search_thing" :span="22">
- <div class="search_label"><span class="required-span">* </span>鎸囨淳浜哄憳锛�</div>
+ <div class="search_label"><span class="required-span" v-show="distributeData.type==2">* </span>鎸囨淳浜哄憳锛�</div>
<div class="search_input">
- <el-select v-model="distributeData.userId" placeholder="璇烽�夋嫨" size="small" style="width: 100%;">
- <el-option v-for="item in personList" :key="item.value" :label="item.label" :value="item.value">
+ <el-select v-model="distributeData.userId" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" clearable>
+ <el-option v-for="(item,i) in personList" :key="i" :label="item.label" :value="item.value">
</el-option>
</el-select>
</div>
@@ -172,10 +172,10 @@
</el-row>
</span>
</el-dialog>
- <el-dialog title="鏁版嵁鏌ョ湅" :visible.sync="dataDialogVisible" width="70%" :before-close="handleClose2">
- <div style="height: 70vh;overflow-y: auto;">
- <ValueTable ref="ValueTableDataLook" :url="$api.deviceScope.selectDeviceParameter"
- :componentData="componentDataDataLook" :key="upIndex" />
+ <el-dialog title="鏁版嵁鏌ョ湅" :visible.sync="dataDialogVisible" width="70%">
+ <div style="height: 70vh;overflow-y: auto;" v-if="dataDialogVisible">
+ <ValueTable ref="ValueTableDataLook" :url="$api.insOrder.selectSampleAndProductByOrderId"
+ :componentData="componentDataDataLook"/>
</div>
</el-dialog>
</div>
@@ -217,8 +217,8 @@
componentData: {
entity: {
entrustCode: null,
- sample: null,
- state: 1,
+ sampleType: null,
+ state: 0,
orderBy: {
field: 'id',
order: 'asc'
@@ -241,7 +241,7 @@
type: 'text',
method: 'download',
disabFun: (row, index) => {
- return row.state != 1
+ return row.state != 1 || row.reportId == null
}
}, {
id: 'verify',
@@ -255,19 +255,22 @@
id: 'quash',
font: '鎾ら攢',
type: 'text',
- method: 'handlEquash'
+ method: 'handlEquash',
+ disabFun: (row, index) => {
+ return row.state == 2 || row.state == 3
+ }
}, {
- font: '涓嬪彂',
+ font: '鍒嗛厤',
type: 'text',
method: 'handleIssued',
disabFun: (row, index) => {
return row.state != 1 || row.sendTime != null
}
}],
- linkEvent:{
- entrustCode:{
- method:'selectAllByOne'
- }
+ linkEvent: {
+ entrustCode: {
+ method: 'selectAllByOne'
+ }
},
tagField: {
type: {
@@ -295,8 +298,9 @@
},
componentDataDataLook: {
entity: {
+ id: 0,
orderBy: {
- field: 'id',
+ field: 'sampleCode',
order: 'asc'
}
},
@@ -305,21 +309,21 @@
select: false,
do: [],
tagField: {
- deviceStatus: {
+ insState: {
+ select: []
+ },
+ insResult: {
select: [{
- value: 0,
- type: 'success',
- label: '姝e父'
- }, {
value: 1,
- type: 'warning',
- label: '鎶ュ簾'
- }, {
- value: 2,
- type: 'danger',
- label: '淇濅慨'
+ label: '鍚堟牸',
+ type: 'success'
+ },{
+ value: 0,
+ label: '涓嶅悎鏍�',
+ type: 'danger'
}]
- }
+ },
+ inspectionValueType: {select: []}
},
selectField: {},
requiredAdd: [],
@@ -330,12 +334,15 @@
addPower: true,
upLoad: false,
tabList: [{
- label: '妫�楠屽鐞�',
+ label: '寰呭鏍�',
+ value: 0
+ }, {
+ label: '寰呮楠�',
value: 1
},
{
- label: '寰呭鏍�',
- value: 0
+ label: '宸叉楠�',
+ value: 4
},
{
label: '閫�鍥�',
@@ -347,8 +354,8 @@
},
],
tabIndex: 0,
- active: 0,//1锛氫笅鍗曪紝2锛氭煡鐪嬶紝3锛氬鏍�
- currentId:null
+ active: 0, //1锛氫笅鍗曪紝2锛氭煡鐪嬶紝3锛氬鏍�
+ currentId: null
}
},
mounted() {
@@ -356,6 +363,8 @@
this.getPower()
this.getUserMenu()
this.getAuthorizedPerson()
+ this.getInsStateDicts()
+ this.selectEnumByCategoryForInspectionValueType()
},
methods: {
getAuthorizedPerson() {
@@ -412,27 +421,27 @@
},
// 璇︽儏
selectAllByOne(row) {
- this.active = 2;
+ this.active = 2;
// console.log(row);
// //鎵撳紑寮规
// this.dialogVisible = true;
// //row = 鐐瑰嚮瀵瑰簲琛屽��
// //澶嶅埗缁檉ormData
// this.formData = this.HaveJson(row);
- this.currentId = row.id
+ this.currentId = row.id
},
// 鏁版嵁鏌ョ湅
handleDataLook(row) {
+ this.componentDataDataLook.entity.id = row.id
this.dataDialogVisible = true;
},
// 涓嬭浇鎶ュ憡
- download(row) {
- },
+ download(row) {},
// 瀹℃牳
handleVerify(row) {
// this.verifyDialogVisible = true;
- this.active = 3;
- this.currentId = row.id
+ this.active = 3;
+ this.currentId = row.id
},
// 鎾ら攢
handlEquash(row) {
@@ -441,17 +450,22 @@
// 涓嬪彂
handleIssued(row) {
this.issuedDialogVisible = true;
- this.$axios.post(this.$api.insOrder.selectOrderManDay,{
- id: row.sampleId
- }).then(res=>{
+ this.$axios.post(this.$api.insOrder.selectOrderManDay, {
+ id: row.id
+ }).then(res => {
this.distributeData.orderId = row.id
this.distributeData.sampleId = row.sampleId
this.distributeData.appointed = res.data
+ this.distributeData.type = row.type
})
},
submitForm2() {
- if(this.distributeData.appointed==null||this.distributeData.appointed==''){
+ if (this.distributeData.appointed == null || this.distributeData.appointed == '') {
this.$message.error('绾﹀畾鏃堕棿鏈~鍐�')
+ return
+ }
+ if(this.distributeData.type==2&&(this.distributeData.userId==null||this.distributeData.userId=='')){
+ this.$message.error('鎸囨淳浜哄憳鏈~鍐�')
return
}
this.upLoad = true;
@@ -503,7 +517,33 @@
})
this.componentData.tagField.createUser.select = data
})
- }
+ },
+ getInsStateDicts() {
+ this.$axios.post(this.$api.enums.selectEnumByCategory, {
+ category: "妫�楠屼换鍔$姸鎬�"
+ }).then(res => {
+ let data = res.data
+ this.insStateList = data
+ data.forEach(ele => {
+ //0:寰呮楠� 1:妫�楠屼腑 2:宸叉楠� 3:寰呭鏍� 4:澶嶆牳鏈�氳繃 5:澶嶆牳閫氳繃
+ if (['2', '5'].includes(ele.value)) {
+ ele.type = 'success'
+ } else if (['1', '3'].includes(ele.value)) {
+ ele.type = 'warning'
+ } else if (['0', '4'].includes(ele.value)) {
+ ele.type = 'danger'
+ }
+ })
+ this.componentDataDataLook.tagField.insState.select = data
+ })
+ },
+ selectEnumByCategoryForInspectionValueType() {
+ this.$axios.post(this.$api.enums.selectEnumByCategory, {
+ category: "妫�楠屽�肩被鍨�"
+ }).then(res => {
+ this.componentDataDataLook.tagField.inspectionValueType.select = res.data
+ })
+ },
}
}
</script>
--
Gitblit v1.9.3