From 69de142c7501b745dd94907c90cef69f0d454e0e Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期五, 31 五月 2024 11:24:40 +0800
Subject: [PATCH] 人员明细bug修改
---
src/components/do/b1-ins-order/add.vue | 154 ++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 121 insertions(+), 33 deletions(-)
diff --git a/src/components/do/b1-ins-order/add.vue b/src/components/do/b1-ins-order/add.vue
index 87de2ad..9ca4c9d 100644
--- a/src/components/do/b1-ins-order/add.vue
+++ b/src/components/do/b1-ins-order/add.vue
@@ -81,18 +81,18 @@
color: #bababa;
}
- .el-select .is-disabled {
+ .ins_order_add .el-select .is-disabled {
background: transparent !important;
}
- .el-select .is-disabled .el-input__inner {
+ .ins_order_add .el-select .is-disabled .el-input__inner {
background: transparent !important;
}
</style>
<template>
<div class="ins_order_add">
- <div>
+ <div v-show="!configShow">
<el-row class="title">
<el-col :span="6" style="padding-left: 20px;">濮旀墭鍗曚俊鎭�</el-col>
<el-col :span="18" style="text-align: right;">
@@ -107,6 +107,7 @@
<el-button size="medium" @click="templateDia=true" v-show="active==1">
<span style="color: #3A7BFA;">淇濆瓨妯℃澘</span>
</el-button>
+ <el-button size="medium" type="primary" @click="openConfig">鍏夌氦閰嶇疆</el-button>
<el-button size="medium" type="primary" @click="save" :loading="saveLoad" v-show="active==1">鎻愪氦</el-button>
<!-- 瀹℃牳 -->
<el-button size="medium" @click="upInsOrderOfState(2)" :loading="saveLoad" v-show="active==3"
@@ -119,7 +120,7 @@
</el-col>
</el-row>
</div>
- <div class="search">
+ <div class="search" v-show="!configShow">
<el-row>
<el-col class="search_thing" :span="6">
<div class="search_label">濮旀墭缂栧彿锛�</div>
@@ -197,7 +198,9 @@
<el-col class="search_thing" :span="6">
<div class="search_label"><span class="required-span">* </span>鏉ユ牱鏂瑰紡锛�</div>
<div class="search_input">
- <el-input size="small" clearable v-model="addObj.formType" :readonly="active>1"></el-input>
+ <el-select v-model="addObj.formType" size="small" :disabled="active>1" style="width: 100%;">
+ <el-option v-for="(a,ai) in formType" :key="ai" :label="a.label" :value="a.value"></el-option>
+ </el-select>
</div>
</el-col>
<el-col class="search_thing" :span="6">
@@ -216,6 +219,30 @@
<el-radio :label="0">濮旀墭鍗曚綅鍙栧洖</el-radio>
<el-radio :label="1">瀹為獙瀹ゅ鐞�</el-radio>
</el-radio-group>
+ </div>
+ </el-col>
+ <el-col class="search_thing" :span="6">
+ <div class="search_label"><span class="required-span">* </span>宸ョ▼鍚嶇О锛�</div>
+ <div class="search_input">
+ <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.engineering" :readonly="active>1"></el-input>
+ </div>
+ </el-col>
+ <el-col class="search_thing" :span="6">
+ <div class="search_label"><span class="required-span">* </span>宸ョ▼鍚嶇ОEN锛�</div>
+ <div class="search_input">
+ <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.engineeringEn" :readonly="active>1"></el-input>
+ </div>
+ </el-col>
+ <el-col class="search_thing" :span="6">
+ <div class="search_label"><span class="required-span">* </span>鐢熶骇鍗曚綅锛�</div>
+ <div class="search_input">
+ <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.production" :readonly="active>1"></el-input>
+ </div>
+ </el-col>
+ <el-col class="search_thing" :span="6">
+ <div class="search_label"><span class="required-span">* </span>鐢熶骇鍗曚綅EN锛�</div>
+ <div class="search_input">
+ <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.productionEn" :readonly="active>1"></el-input>
</div>
</el-col>
<el-col class="search_thing" :span="6">
@@ -251,7 +278,7 @@
</el-col>
</el-row>
</div>
- <div>
+ <div v-show="!configShow">
<el-table class="el-table sampleTable" ref="sampleTable" :data="sampleList" height="250px" tooltip-effect="dark"
border @selection-change="selectSample" highlight-current-row @row-click="rowClick" style="margin-top: 10px;">
<el-table-column type="selection" width="60" :selectable="selectable" v-if="active==1"></el-table-column>
@@ -270,29 +297,36 @@
<el-table-column prop="model" label="鏍峰搧鍨嬪彿" align="center" min-width="100">
<template slot-scope="scope">
<el-select v-model="scope.row.model" filterable allow-create default-first-option placeholder="鏍峰搧鍨嬪彿"
- size="small" @change="handleChangeModel" :disabled="active>1">
+ size="small" @change="handleChangeModel" :disabled="active>1" style="width: 100%;">
<el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
+ </template>
+ </el-table-column>
+ <el-table-column prop="modelNum" label="鍨嬪彿鍙傛暟" width="130" align="center" v-if="!(active>1)">
+ <template slot-scope="scope">
+ <el-input size="small" v-model="scope.row.modelNum" clearable placeholder="闈炲繀濉�"
+ @keyup.enter.native="methodChange(scope.row.standardMethodListId, scope.row)"
+ @clear="methodChange(scope.row.standardMethodListId, scope.row)"></el-input>
</template>
</el-table-column>
<el-table-column prop="standardMethodListId" label="妫�楠屾爣鍑�" align="center" min-width="100">
<template slot-scope="scope">
<el-select v-model="scope.row.standardMethodListId" :disabled="scope.row.model==null||active>1"
placeholder="妫�楠屾爣鍑�" size="small" :loading="methodLoad" @change="(value)=>methodChange(value, scope.row)"
- @focus="methodFocus" :readonly="active>1">
+ @focus="methodFocus" :readonly="active>1" style="width: 100%;">
<el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id">
</el-option>
</el-select>
</template>
</el-table-column>
- <el-table-column prop="unit" label="鍗曚綅" align="center" min-width="100">
+ <!-- <el-table-column prop="unit" label="鍗曚綅" align="center" min-width="100">
<template slot-scope="scope">
<el-select v-model="scope.row.unit" clearable size="small" style="width: 100%;" :disabled="active>1">
<el-option v-for="(a, i) in units" :key="i" :label="a.label" :value="a.value"></el-option>
</el-select>
</template>
- </el-table-column>
+ </el-table-column> -->
<!-- <el-table-column prop="isLeave" label="鏄惁鐣欐牱" align="center" min-width="100">
<template slot-scope="scope">
<el-select v-model="scope.row.isLeave" size="small" :disabled="active>1">
@@ -334,13 +368,14 @@
<el-table-column prop="unit" label="璁¢噺鍗曚綅" width="100" show-overflow-tooltip></el-table-column>
<el-table-column prop="price" label="鍗曚环" width="100" show-overflow-tooltip></el-table-column>
<el-table-column prop="manDay" label="棰勮鏃堕棿(澶�)" width="120" show-overflow-tooltip></el-table-column>
- <el-table-column prop="manHourGroup" label="宸ユ椂鍒嗙粍" width="100" show-overflow-tooltip></el-table-column>
+ <el-table-column prop="manHour" label="宸ユ椂绯绘暟" width="100" show-overflow-tooltip></el-table-column>
<!-- <el-table-column prop="deviceGroup" label="璁惧缁�" width="120" show-overflow-tooltip></el-table-column> -->
<el-table-column prop="section" label="鍖洪棿" width="120" show-overflow-tooltip></el-table-column>
<el-table-column prop="ask" label="瑕佹眰鍊�" min-width="220px">
<template slot-scope="scope">
<el-input size="small" placeholder="瑕佹眰鍊�" v-model="scope.row.ask" clearable type="textarea"
- :autosize="{ minRows: 1, maxRows: 3}" @change="e=>requestChange(e,scope.row)" :readonly="active>1"></el-input>
+ :autosize="{ minRows: 1, maxRows: 3}" @change="e=>requestChange(e,scope.row)" v-if="active==1&&isAskOnlyRead"></el-input>
+ <span v-else>{{ scope.row.ask }}</span>
</template>
</el-table-column>
</el-table>
@@ -370,7 +405,7 @@
<el-row>
<el-col :span="24">
<span><i
- :class="`node_i ${data.children != undefined ? 'el-icon-folder-opened' : 'el-icon-tickets'}`"></i>
+ :class="`node_i ${data.children != undefined ? (data.code==='[1]'?'el-icon-folder-opened':'el-icon-folder') : 'el-icon-tickets'}`"></i>
{{ data.code }} {{ data.label }}</span>
</el-col>
</el-row>
@@ -506,14 +541,17 @@
</el-row>
</span>
</el-dialog>
+ <fiberOpticConfig :currentId="currentId" v-if="configShow"/>
</div>
</template>
<script>
import ValueTable from '../../tool/value-table.vue'
+ import fiberOpticConfig from './fiberoptic-config.vue'
export default {
components: {
- ValueTable
+ ValueTable,
+ fiberOpticConfig
},
props: {
active: {
@@ -553,7 +591,12 @@
isLeave: 0,
orderType: null,
send: 1,
- formType: '閫佹'
+ formType: '閫佹',
+ engineering: null,
+ engineeringEn: null,
+ production: null,
+ productionEn: null,
+ companyId: null
},
sample: {
sampleCode: null,
@@ -562,6 +605,7 @@
sampleType: null,
sample: null,
model: null,
+ modelNum: null,
sampleNum: 1,
isLeave: 0,
unit: null
@@ -626,7 +670,11 @@
tell: '',
noLoading: false,
orderType: [],
- filters: []
+ filters: [],
+ formType: [],
+ configShow: false,
+ currentMethod: null,
+ isAskOnlyRead:false
}
},
watch: {
@@ -645,6 +693,7 @@
this.selectStandardMethods()
this.selectEnumByCategoryForOrderType()
this.selectEnumByCategoryForSonLaboratory()
+ this.selectEnumByCategoryForSampleForm()
if (this.active != 1) {
// 鏌ョ湅/瀹℃牳娴佺▼
// 璇锋眰鎺ュ彛锛屽洖鏄炬暟鎹�
@@ -659,6 +708,10 @@
this.addObj.sampleNum = this.sampleList.length
this.$nextTick(() => {
this.$refs.sampleTable.doLayout()
+ if(this.addObj.sampleNum>0){
+ this.$refs.sampleTable.setCurrentRow(this.sampleList[0],true)
+ this.rowClick(this.sampleList[0])
+ }
})
})
}
@@ -689,19 +742,14 @@
this.$message.error('鏈�夋嫨鏁版嵁')
return
}
- delete selects['orderBy']
- delete selects['updateUser']
- delete selects['updateTime']
- this.addObj.userId = selects.id
this.addObj.company = selects.company
- this.addObj.custom = selects.name
this.addObj.code = selects.code
- this.addObj.phone = selects.phone
+ this.addObj.companyId = selects.id
this.selectUserDia = false
},
save() {
- if (!this.addObj.custom) {
- this.$message.error('鏈�夋嫨涓嬪崟瀹㈡埛')
+ if (!this.addObj.companyId) {
+ this.$message.error('鏈�夋嫨瀹㈡埛鍗曚綅')
return
}
if (!this.addObj.type) {
@@ -710,6 +758,14 @@
this.$message.error('璇疯緭鍏ユ潵鏍锋柟寮�')
} else if (!this.addObj.orderType) {
this.$message.error('璇烽�夋嫨妫�楠岀被鍒�')
+ }else if (!this.addObj.engineering) {
+ this.$message.error('璇疯緭鍏ュ伐绋嬪悕绉�')
+ } else if (!this.addObj.engineeringEn) {
+ this.$message.error('璇疯緭鍏ュ伐绋嬪悕绉癊N')
+ }else if (!this.addObj.production) {
+ this.$message.error('璇疯緭鍏ョ敓浜у崟浣�')
+ }else if (!this.addObj.productionEn) {
+ this.$message.error('璇疯緭鍏ョ敓浜у崟浣岴N')
} else if (this.sampleList.length < 1) {
this.$message.error('璇锋坊鍔犱竴涓牱鍝�')
} else if (!this.sampleList.every(m => m.sample)) {
@@ -718,13 +774,14 @@
this.$message.error('璇疯緭鍏ユ牱鍝佸瀷鍙�')
} else if (!this.sampleList.every(m => m.standardMethodListId)) {
this.$message.error('璇烽�夋嫨妫�楠屾爣鍑�')
- } else if (!this.sampleList.every(m => m.unit)) {
- this.$message.error('璇疯緭鍏ユ牱鍝佺殑鍗曚綅')
} else {
this.saveLoad = true
this.$axios.post(this.$api.insOrder.addInsOrder, {
insOrder: this.addObj,
- list: JSON.stringify(this.sampleList)
+ list: JSON.stringify(this.sampleList.map(a=>{
+ a.model = a.model + ((a.modelNum==null||a.modelNum==''||a.modelNum=='null')?'':('-'+a.modelNum))
+ return a
+ }))
}, {
headers: {
'Content-Type': 'application/json'
@@ -849,9 +906,7 @@
this.$axios.get(this.$api.standardTree.selectStandardTreeList).then(res => {
this.list = res.data
this.list.forEach(a => {
- a.children.forEach(b => {
- this.expandedKeys.push(b.label)
- })
+ this.expandedKeys.push(a.label)
})
})
},
@@ -862,7 +917,7 @@
activeStandardTree() {
let trees = this.selectTree.split(" - ")
if (trees.length < 4) {
- this.$message.error('鏈�夋嫨鏍峰搧')
+ this.$message.error('鏈�夋嫨浜у搧')
return
}
this.addObj.factory = trees[0]
@@ -1000,6 +1055,13 @@
})
},
rowClick(row, column, event) {
+ this.currentMethod = row
+ let obj = this.methods.find(a=>a.id==this.currentMethod.standardMethodListId)
+ if(obj&&obj.code=='濮旀墭瑕佹眰'){
+ this.isAskOnlyRead = true
+ }else{
+ this.isAskOnlyRead = false
+ }
this.productList = row.insProduct
setTimeout(() => {
this.productList.forEach(a => {
@@ -1115,11 +1177,30 @@
}
})
},
+ selectEnumByCategoryForSampleForm() {
+ this.$axios.post(this.$api.enums.selectEnumByCategory, {
+ category: "鏉ユ牱鏂瑰紡"
+ }).then(res => {
+ this.formType = res.data
+ if(this.formType.length > 0){
+ this.addObj.formType = this.formType[0].value
+ }
+ })
+ },
methodChange(val, row) {
+ if(val===null||val==='')return
+ this.currentMethod = row
+ let obj = this.methods.find(a=>a.id==this.currentMethod.standardMethodListId)
+ if(obj&&obj.code=='濮旀墭瑕佹眰'){
+ this.isAskOnlyRead = true
+ }else{
+ this.isAskOnlyRead = false
+ }
this.getProductLoad = true
this.$axios.post(this.$api.standardTree.selectStandardProductList, {
- model: this.addObj.model,
- standardMethodListId: val
+ model: row.model + '-' + row.modelNum,
+ standardMethodListId: val,
+ factory: this.selectTree,
}, {
headers: {
'Content-Type': 'application/json'
@@ -1254,6 +1335,13 @@
filterHandler(value, row, column) {
const property = column['property'];
return row[property] === value;
+ },
+ openConfig(){
+ if(this.sampleIds.length===0){
+ this.$message.error("鏈�夋嫨鏍峰搧")
+ return
+ }
+ this.configShow = true
}
}
}
--
Gitblit v1.9.3