From 103b4575556d8c18a5707c162099070b82640554 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期五, 17 十一月 2023 09:45:55 +0800
Subject: [PATCH] 车间订单客户附件bug解决
---
src/views/technology/completeproductstructure/completeproductstructure-form.vue | 1
src/views/plan/manufacturingorder/customerorder.vue | 307 +++++++++++++++++++++++++++++++++++++++++++++------
src/views/plan/manufacturingorder/productorder-form.vue | 22 ++-
src/api/plan/manufacturingorder.js | 8 +
src/views/plan/customerorder/customerorder-form.vue | 4
5 files changed, 291 insertions(+), 51 deletions(-)
diff --git a/src/api/plan/manufacturingorder.js b/src/api/plan/manufacturingorder.js
index cb98b76..e9b8d5d 100644
--- a/src/api/plan/manufacturingorder.js
+++ b/src/api/plan/manufacturingorder.js
@@ -80,6 +80,14 @@
})
}
+export function getProcessConfigFile(obj) {
+ return request({
+ url: '/mes/plan/customerOrder/processConfigFiles',
+ method: 'get',
+ params: obj
+ })
+}
+
export function checkOutTechnologyRouting(query) {
return request({
url: '/mes/plan/manufacturingOrder/checkout',
diff --git a/src/views/plan/customerorder/customerorder-form.vue b/src/views/plan/customerorder/customerorder-form.vue
index 22b36b5..ec8dfc5 100644
--- a/src/views/plan/customerorder/customerorder-form.vue
+++ b/src/views/plan/customerorder/customerorder-form.vue
@@ -1299,9 +1299,6 @@
this.getConfigFiles()
},
delProcessConfigFile(row) {
- if (row.lineNumber !== this.dataForm.otcLineNo) {
- this.$message.error('涓婁紶鏂囦欢琛屽彿涓庡綋鍓嶉攢鍞鍗曡鍙蜂笉涓�鑷达紝涓嶅厑璁稿垹闄�')
- } else {
this.$confirm('鏄惁鍒犻櫎宸ヨ壓閰嶇疆鏂囦欢', '鎻愮ず', {
confirmButtonText: '纭畾',
cancelButtonText: '鍙栨秷',
@@ -1314,7 +1311,6 @@
.then((data) => {
this.getConfigFiles()
})
- }
},
downloadProcessConfigFile(row) {
downloadProcessConfigFile(
diff --git a/src/views/plan/manufacturingorder/customerorder.vue b/src/views/plan/manufacturingorder/customerorder.vue
index 8cc4949..18f47fd 100644
--- a/src/views/plan/manufacturingorder/customerorder.vue
+++ b/src/views/plan/manufacturingorder/customerorder.vue
@@ -22,18 +22,18 @@
@keyup.enter.native="dataFormSubmit()"
label-width="100px"
class="l-mes productorder-order"
- :disabled="!editable"
>
- <el-tabs type="border-card">
+ <!-- :disabled="!editable" -->
+ <el-tabs type="border-card" @tab-click="downs" v-model="activeFileName">
<el-tab-pane label="涓昏" type="card">
<el-row>
<el-col :span="12">
<el-form-item label="鍚屾鏁版嵁鏉ユ簮" prop="sourceId">
- <el-input
- v-model="dataForm.sourceId"
- placeholder=""
- :disabled="!ediSource"
- ></el-input>
+ <el-input
+ v-model="dataForm.sourceId == 0 ? '鍚屾' : '鎵嬪姩'"
+ placeholder=""
+ disabled
+ ></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -86,7 +86,7 @@
</el-select>
</el-form-item>
</el-col>
- <el-col :span="12">
+ <!-- <el-col :span="12">
<el-form-item label="琛屽彿" prop="coLineNo">
<el-input
v-model="dataForm.coLineNo"
@@ -94,7 +94,17 @@
:disabled="!ediSource"
></el-input>
</el-form-item>
- </el-col>
+ </el-col> -->
+ <el-col :span="6">
+ <el-form-item label="浜у搧鍚嶇О" prop="productName">
+ <el-input
+ v-model="dataForm.productName"
+ placeholder=""
+ disabled
+ >
+ </el-input>
+ </el-form-item>
+ </el-col>
</el-row>
<el-row>
<el-col :span="12">
@@ -121,9 +131,9 @@
</el-row>
<el-row>
<el-col :span="12">
- <el-form-item label="鏈熸湜浜よ揣鏃堕棿" prop="wantedDeliveryDate">
+ <el-form-item label="鏈熸湜浜よ揣鏃堕棿" prop="deliveryDate">
<el-date-picker
- v-model="dataForm.wantedDeliveryDate"
+ v-model="dataForm.deliveryDate"
style="width: 100%"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
@@ -132,7 +142,16 @@
</el-date-picker>
</el-form-item>
</el-col>
- <el-col :span="12">
+ <el-col :span="12">
+ <el-form-item label="宸ヨ壓鏂囦欢鍚嶇О" prop="docName">
+ <el-input
+ v-model="dataForm.docName"
+ placeholder=""
+ disabled
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <!-- <el-col :span="12">
<el-form-item label="璁″垝浜よ揣鏃堕棿" prop="plannedDeliveryDate">
<el-date-picker
v-model="dataForm.plannedDeliveryDate"
@@ -143,13 +162,37 @@
>
</el-date-picker>
</el-form-item>
- </el-col>
+ </el-col> -->
</el-row>
- <el-card
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="璁㈠崟澶囨敞" prop="comment">
+ <el-input
+ v-model="dataForm.comment"
+ placeholder=""
+ :disabled="!ediSource"
+ >
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="浜у搧澶囨敞" prop="remark">
+ <el-input
+ v-model="dataForm.remark"
+ placeholder=""
+ :disabled="!ediSource"
+ >
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <!-- <el-card
header="璁㈠崟鍙傛暟"
shadow="never"
class="productorder-order-param"
- >
+ > -->
<el-row>
<el-form-item
style="float:left;width: 50%"
@@ -166,8 +209,33 @@
</el-row>
</el-card>
</el-tab-pane>
- <el-tab-pane label="闄勪欢" type="card">
+ <el-tab-pane label="闄勪欢" type="card" name="闄勪欢">
+ <div style="display: flex;justify-content:flex-end;">
+ <div></div>
+ </div>
+ <div
+ v-loading="progrecessFileLoading"
+ element-loading-text="璇风◢绛夛紝鏂囦欢涓婁紶涓�"
+ >
<el-upload
+ drag
+ ref="upload"
+ action="/mes/plan/customerOrder/upload"
+ :auto-upload="true"
+ :headers="headers"
+ :before-upload="submitUpload"
+ :on-success="uploadSuccess"
+ :data="paramData"
+ :with-credentials="true"
+ :show-file-list="false"
+ >
+ <i class="el-icon-upload"></i>
+ <div class="el-upload__text">
+ 灏嗘枃浠舵嫋鍒版澶勶紝鎴�<em>鐐瑰嚮涓婁紶</em>
+ </div>
+ </el-upload>
+ </div>
+ <!-- <el-upload
disabled
action=""
ref="upload"
@@ -176,10 +244,93 @@
:on-preview="handlePreview"
:with-credentials="true"
>
- </el-upload>
+ </el-upload> -->
+ <el-table :data="processConfigFileTableData" height="400px">
+ <el-table-column
+ prop="orderNumber"
+ align="center"
+ label="璁㈠崟鍙�"
+ show-overflow-tooltip
+ >
+ </el-table-column>
+ <!-- <el-table-column prop="lineNumber" align="center" label="琛屽彿"> -->
+ <!-- </el-table-column> -->
+ <el-table-column
+ prop="originalFileName"
+ align="center"
+ label="鍘熸枃浠跺悕"
+ width="200"
+ >
+ </el-table-column>
+ <el-table-column prop="fileName" align="center" label="鏂囦欢鍚庣紑">
+ </el-table-column>
+ <el-table-column prop="createUser" align="center" label="涓婁紶浜�">
+ </el-table-column>
+ <el-table-column
+ prop="createTime"
+ align="center"
+ label="涓婁紶鏃堕棿"
+ show-overflow-tooltip
+ >
+ </el-table-column>
+ <el-table-column prop="updateUser" align="center" label="鏇存柊浜�">
+ </el-table-column>
+ <el-table-column
+ prop="updateTime"
+ align="center"
+ label="鏇存柊鏃堕棿"
+ show-overflow-tooltip
+ >
+ </el-table-column>
+ <!-- <el-table-column align="center" label="鏄惁鍚屾宸ヨ壓閰嶇疆鍗�">-->
+ <!-- <template slot-scope="scope">-->
+ <!-- <el-switch-->
+ <!-- :value="scope.row.effectiveRange"-->
+ <!-- active-value="1"-->
+ <!-- inactive-value="0"-->
+ <!-- @input="handleInput(scope.row)"-->
+ <!-- :disabled="scope.row.lineNumber !== dataForm.otcLineNo"-->
+ <!-- />-->
+ <!-- </template>-->
+ <!-- </el-table-column>-->
+ <el-table-column fixed="right" align="center" label="鎿嶄綔">
+ <template slot-scope="scope">
+ <!-- <el-button
+ @click="synchronizeFile(scope.row)"
+ type="text"
+ size="small"
+ :disabled="scope.row.lineNumber !== dataForm.customerNo"
+ >鍚屾</el-button
+ > -->
+ <el-button
+ @click="delProcessConfigFile(scope.row)"
+ type="text"
+ size="small"
+ :disabled="scope.row.lineNumber !== dataForm.customerNo"
+ >鍒犻櫎</el-button
+ >
+ <el-button
+ @click="downloadProcessConfigFile(scope.row)"
+ type="text"
+ size="small"
+ >涓嬭浇</el-button
+ >
+ </template>
+ </el-table-column>
+ </el-table>
</el-tab-pane>
</el-tabs>
</el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="visible = false">鍙栨秷</el-button>
+ <el-button
+ type="primary"
+ :disabled="buttonDisable"
+ v-thinclick="`dataFormSubmit`"
+ v-if="editable"
+ >纭畾</el-button
+ >
+ </span>
</el-tab-pane>
</el-tabs>
</template>
@@ -196,11 +347,14 @@
addCustomerOrder,
download,
getCustomerOrder,
+ deleteProcessConfigFile,
+ downloadProcessConfigFile,
putCustomerOrder
} from '@/api/plan/customerorder'
import { remote } from '@/api/admin/dict'
import { validateSixDecimal } from '@/util/validate'
-import { getCustomer } from '../../../api/plan/manufacturingorder'
+import { getStore } from '@/util/store'
+import { getCustomer,getProcessConfigFile } from '../../../api/plan/manufacturingorder'
export default {
props: {
@@ -277,37 +431,71 @@
{ validator: validateSixDecimal, trigger: 'blur' }
]
},
+ paramData: {
+ // range: '1',
+ orderNumber: '',
+ lineNumber: ''
+ },
+ headers: {
+ Authorization: 'Bearer ' + getStore({ name: 'access_token' })
+ },
units: [],
coStates: [
+ // {
+ // value: '01plan',
+ // label: '寰呰鍒�'
+ // },
+ // {
+ // value: '03planed',
+ // label: '宸茶鍒�'
+ // },
+ // {
+ // value: '02planing',
+ // label: '璁″垝涓�'
+ // },
+ // {
+ // value: '04complete',
+ // label: '宸插畬鎴�'
+ // }
+ {
+ value: '01partUnCheck',
+ label: '闆朵欢寰呴��'
+ },
{
- value: '01plan',
+ value: '02technologyUnCheck',
+ label: '宸ヨ壓鏂囦欢寰呴��'
+ },
+ {
+ value: '03plan',
label: '寰呰鍒�'
},
{
- value: '03planed',
- label: '宸茶鍒�'
+ value: '04planed',
+ label: '宸蹭笅鍙�'
},
{
- value: '02planing',
- label: '璁″垝涓�'
+ value: '05cancel',
+ label: '宸蹭綔搴�'
},
{
- value: '04complete',
- label: '宸插畬鎴�'
+ value: '06unedit',
+ label: '璁㈠崟缂栬緫'
}
- ]
+ ],
+ processConfigFileTableData: [],
+ activeFileName: ""
}
},
computed: {
- editable: function() {
- if (!this.dataForm.id) {
- return true
- }
- if (this.dataForm.id && this.dataForm.coState !== '04complete') {
- return true
- }
- return false
- },
+ // editable: function() {
+ // if (!this.dataForm.id) {
+ // return true
+ // }
+ // if (this.dataForm.id && this.dataForm.coState !== '04complete') {
+ // return true
+ // }
+ // return false
+ // },
ediSource: function() {
if (!this.dataForm.id) {
return true
@@ -360,8 +548,8 @@
}
this.fileList = response.data.data.customerOrderAttachmentList
this.orderParamList = response.data.data.orderParamList
-
-
+ //闄勪欢
+ this.processConfigFileTableData = response.data.data.configFiles
this.title =
this.dataForm.customerName + this.dataForm.customerOrderNo
})
@@ -371,6 +559,48 @@
this.$refs.tabs.currentName = '0'
}
})
+ },
+ submitUpload() {
+ this.paramData.orderNumber = this.dataForm.contractNo
+ this.paramData.lineNumber = this.dataForm.customerNo
+ this.progrecessFileLoading = true
+ },
+ uploadSuccess() {
+ this.progrecessFileLoading = false
+ this.downs()
+ },
+ //闄勪欢鐨勬煡璇�
+ downs(label, e){
+ if(this.activeFileName=='闄勪欢'){
+ console.log('1');
+ getProcessConfigFile({
+ orderNumber: this.dataForm.contractNo,
+ lineNumber: this.dataForm.customerNo
+ }).then((res)=>{
+ this.processConfigFileTableData = res.data.data
+ })
+ }
+ },
+ downloadProcessConfigFile(row) {
+ downloadProcessConfigFile(
+ row.fileName,
+ row.bucketName,
+ row.originalFileName
+ )
+ },
+ delProcessConfigFile(row) {
+ this.$confirm('鏄惁鍒犻櫎宸ヨ壓閰嶇疆鏂囦欢', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning',
+ closeOnClickModal: false
+ })
+ .then(function() {
+ return deleteProcessConfigFile(row.id)
+ })
+ .then((data) => {
+ this.downs()
+ })
},
// 闄勪欢鐨勭偣鍑�
handlePreview(file) {
@@ -425,6 +655,9 @@
},
handleTabClick(tab, event) {
this.init(parseInt(tab.name))
+ if(tab.name){
+
+ }
},
// 闆朵欢閫夋嫨
openPartDialog() {
diff --git a/src/views/plan/manufacturingorder/productorder-form.vue b/src/views/plan/manufacturingorder/productorder-form.vue
index 039af71..ba11120 100644
--- a/src/views/plan/manufacturingorder/productorder-form.vue
+++ b/src/views/plan/manufacturingorder/productorder-form.vue
@@ -638,17 +638,11 @@
</el-row>
<el-row>
<el-table
- default-expand-all
- :data="components"
+ :data="components[0]"
@selection-change="structSelectionChange"
- row-key="id"
border
- :tree-props="{
- children: 'children'
- }"
style="width: 100%"
height="400px"
- :default-sort="{ prop: 'index' }"
>
<el-table-column type="selection" width="40" fixed="left" />
<el-table-column
@@ -1071,6 +1065,7 @@
data() {
return {
+ componentsTable:[],
typeOptions: [],
paramTemplateSelArr: [],
paramTemplateSelCol: 'operationTemplateNo',
@@ -1232,6 +1227,7 @@
this.getBomTypeDbOptions()
this.getManufactureAttrs('manufacture_attr_type')
this.getSysParam(sysParam.IS_REPORT_OPERATION)
+ // console.log(this.components);
},
watch: {
'dataForm.partId'(newValue, oldValue) {
@@ -1245,7 +1241,11 @@
}
}
},
-
+ components(newVal,oldVal){
+ console.log("鏂�",newVal);
+ console.log("鑰�",oldVal);
+ console.log(this.components);
+ },
currentRouting(newValue, oldValue) {
if (newValue && newValue.id) {
if (this.dataForm.id != null && this.dataForm.id !== 0) {
@@ -1295,7 +1295,8 @@
if (newValue && newValue.id) {
// 鏌ヨ浜у搧缁撴瀯瀵瑰簲鐨勭粍浠�
getBom(newValue.id).then((response) => {
- this.components = [response.data.data.tree]
+ console.log("鏌�",this.components);
+ // this.components = [response.data.data.tree]
})
}
},
@@ -1397,6 +1398,7 @@
},
// 鏌ヨ褰撳墠杞﹂棿璁㈠崟淇℃伅
getOrderInfo() {
+ let that=this
getManufacturingOrder(this.dataForm.id).then((response) => {
this.dataForm = response.data.data
// 鎶婂伐鑹烘寕涓婂幓
@@ -1416,7 +1418,7 @@
}
// 鎶婁骇鍝佺粨鏋勭粍浠舵寕涓婂幓
if (this.dataForm.bomRoot) {
- this.components = [this.dataForm.bomRoot]
+ that.components = [this.dataForm.bomRoot]
}
})
},
diff --git a/src/views/technology/completeproductstructure/completeproductstructure-form.vue b/src/views/technology/completeproductstructure/completeproductstructure-form.vue
index c821f69..74b5c07 100644
--- a/src/views/technology/completeproductstructure/completeproductstructure-form.vue
+++ b/src/views/technology/completeproductstructure/completeproductstructure-form.vue
@@ -134,6 +134,7 @@
<el-table-column label="闆朵欢鍚嶇О" prop="partName"></el-table-column>
<el-table-column label="鍗曚綅" prop="unit"></el-table-column>
<el-table-column label="鏁伴噺" prop="qpa"></el-table-column>
+ <el-table-column label="鐩樻暟" prop="discNum"></el-table-column>
</el-table>
<!-- <el-table
class="tree-select-table"
--
Gitblit v1.9.3