From aa8684dfcf2ddbbadbd045770ff540e64c26bbee Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期三, 06 三月 2024 17:53:45 +0800
Subject: [PATCH] 销售订单-下载排产单
---
src/views/quality/rawMaterial/rawMaterial-form.vue | 105 ++++++++++++++++++-----------------
src/views/plan/customerorder/index.vue | 28 ++++++++-
src/views/quality/rawMaterial/testValue-select.vue | 13 ++++
src/api/plan/customerorder.js | 9 +++
4 files changed, 101 insertions(+), 54 deletions(-)
diff --git a/src/api/plan/customerorder.js b/src/api/plan/customerorder.js
index 11cbee6..b6db926 100644
--- a/src/api/plan/customerorder.js
+++ b/src/api/plan/customerorder.js
@@ -264,6 +264,15 @@
})
}
+export function downloadProduct(data){
+ return request({
+ url: '/mes/plan/customerOrder/downloadProduct',
+ method: 'post',
+ responseType: 'blob',
+ data: data
+ })
+}
+
export function downloadProcessConfigFile(filename, bucket, originalFileName) {
return request({
url: '/mes/plan/customerOrder/processConfig/' + bucket + '/' + filename,
diff --git a/src/views/plan/customerorder/index.vue b/src/views/plan/customerorder/index.vue
index 1e5ebda..6cad8e6 100644
--- a/src/views/plan/customerorder/index.vue
+++ b/src/views/plan/customerorder/index.vue
@@ -299,6 +299,7 @@
exportCustomerOrderSplit,
syncOrder,
dropByContractNo,
+ downloadProduct,
downloadWordFile
} from '../../../api/plan/customerorder'
import DocumentTable from '@/views/common/document.vue'
@@ -920,11 +921,18 @@
})
}
this.table.toolbar.push({
- text: '涓嬭浇Word',
+ text: '涓嬭浇宸ヨ壓鏂囦欢',
disabled: false,
type: 'primary',
fun: this.downloadWord,
permitArr: ['03plan','04planed'],
+ })
+ this.table.toolbar.push({
+ text: '涓嬭浇鎺掍骇鍗�',
+ disabled: false,
+ type: 'primary',
+ permitArr: [],
+ fun: this.downloadProductionScheduling,
})
this.table.toolbar.push({
text: '鍏宠仈璁㈠崟',
@@ -993,8 +1001,22 @@
this.interrelatedOrderId = currentOrder.id
this.showInterrelatedOrderDialog = true
},
-
- //涓嬭浇word
+ //涓嬭浇鎺掍骇閫氱煡鍗�
+ downloadProductionScheduling(){
+ let ids = this.multipleSelection.map(obj => obj.id)
+ if(ids.length<1){
+ this.$message.error("璇烽�夋嫨涓�鏉℃暟鎹�")
+ return
+ }
+ downloadProduct({ids: ids}).then(res=>{
+ if(res.status===200){
+ transform(res)
+ }
+ }).catch(error=>{
+ console.error(error)
+ })
+ },
+ //涓嬭浇宸ヨ壓鏂囦欢
downloadWord(){
let ids = this.multipleSelection.map(ele=>ele.id)
if(ids.length<1){
diff --git a/src/views/quality/rawMaterial/rawMaterial-form.vue b/src/views/quality/rawMaterial/rawMaterial-form.vue
index 89e79b8..c4c60ab 100644
--- a/src/views/quality/rawMaterial/rawMaterial-form.vue
+++ b/src/views/quality/rawMaterial/rawMaterial-form.vue
@@ -178,9 +178,21 @@
<template slot-scope="scope">
<div v-if="!scope.row.children">
<el-tooltip :disabled="scope.row.deviceId != null" class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start">
- <el-autocomplete clearable
+ <el-dropdown>
+ <el-input placeholder="妫�娴嬪��"/>
+ <i style="line-height: normal;padding: 10px 7px;" class="el-icon-arrow-down el-icon--right"></i>
+ <el-dropdown-menu slot="dropdown">
+ <el-dropdown-item>榛勯噾绯�</el-dropdown-item>
+ <el-dropdown-item>鐙瓙澶�</el-dropdown-item>
+ <el-dropdown-item>铻鸿洺绮�</el-dropdown-item>
+ <el-dropdown-item>鍙岀毊濂�</el-dropdown-item>
+ <el-dropdown-item>铓典粩鐓�</el-dropdown-item>
+ </el-dropdown-menu>
+ </el-dropdown>
+ <!-- <el-autocomplete clearable
:disabled="scope.row.deviceId == null || (dataForm.id!=null&&(resultVal!=null && resultVal!=''))"
- @input="changeState(scope.row,scope.$index)"
+ @blur.stop="changeState(scope.row,scope.$index)"
+ @select="changeState(scope.row,scope.$index)"
v-model="scope.row.testValueList[index]"
:fetch-suggestions="querySearch"
placeholder="璇疯緭鍏ユ垨閫夋嫨妫�娴嬪��" >
@@ -188,20 +200,7 @@
<template slot-scope="{ item }">
<div>{{ item.value }}</div>
</template>
- </el-autocomplete>
-
- <!-- <el-select style="width:100%" filterable
- :disabled="scope.row.deviceId == null || (dataForm.id!=null&&(resultVal!=null && resultVal!=''))"
- v-model="scope.row.testValueList[index]"
- placeholder="璇疯緭鍏ユ垨閫夋嫨妫�娴嬪��"
- allow-create
- default-first-option
- @change="changeState(scope.row,scope.$index)"
- @blur="selectBlur"
- >
- <el-option label="鏄�" value="鏄�"/>
- <el-option label="鍚�" value="鍚�"/>
- </el-select> -->
+ </el-autocomplete> -->
</el-tooltip>
</div>
</template>
@@ -893,43 +892,47 @@
console.log(e.target.value);
},
changeState(row, index) {
- if(row){
- let isTrue = true
- for(var i=0;i<row.testValueList.length;i++){
- let val = row.testValueList[i]
- let reg = /(^-?[0-9]{1,6}$)|(^-?[0-9]{1,6}[\.]{1}[0-9]{1,3}$)/
- if(val.slice(-1)!='.'){
- if(!reg.test(val) && !['鏄�','鍚�'].includes(val)){
- row.testValueList[i] = null
- this.$message.error("璇疯緭鍏�6浣嶆暟瀛楁垨閫夋嫨鏄惁")
- isTrue = false
+ this.$nextTick(()=>{
+ if(row){
+ let isTrue = true
+ for(var i=0;i<row.testValueList.length;i++){
+ let val = row.testValueList[i]
+ if(!['鏄�','鍚�'].includes(val)){
+ let reg = /(^-?[0-9]{1,6}$)|(^-?[0-9]{1,6}[\.]{1}[0-9]{1,3}$)/
+ if(!reg.test(val)){
+ row.testValueList = ''
+ this.$message.error("璇疯緭鍏�6浣嶆暟瀛楁垨閫夋嫨鏄惁")
+ isTrue = false
+ }
}
- }
+ }
+ if(!isTrue){
+ return
+ }
}
- if(!isTrue){
- return
+ console.log(row.testValueList.join(","));
+ return
+ if (row.rpId != null && row.rpId != '') {
+ let val = row.testValueList.join(",")
+ if (val === undefined || val === '' || val === null) {
+ return
+ }
+ let obj = {
+ deviceId: row.deviceId,
+ rpId: row.rpId,
+ testValue: val,
+ note: row.note
+ }
+ updateRawInsProduct(obj).then(res => {
+ if (res.data.code == 0) {
+ this.$message.success("鏇存柊鎴愬姛")
+ } else {
+ this.$message.error("鏇存柊澶辫触")
+ }
+ this.init(this.dataForm.id)
+ })
}
- }
- if (row.rpId != null && row.rpId != '') {
- let val = row.testValueList.join(",")
- if (val === undefined || val === '' || val === null) {
- return
- }
- let obj = {
- deviceId: row.deviceId,
- rpId: row.rpId,
- testValue: val,
- note: row.note
- }
- updateRawInsProduct(obj).then(res => {
- if (res.data.code == 0) {
- this.$message.success("鏇存柊鎴愬姛")
- } else {
- this.$message.error("鏇存柊澶辫触")
- }
- this.init(this.dataForm.id)
- })
- }
+ })
},
// 鍒犻櫎瀛愰」鐩�
delChildren(row,index,isParent) {
@@ -961,7 +964,7 @@
required: null,
rpId: null,
name: null,
- unit: 'mm',
+ unit: '',
userName: null,
testValue: null,
testValueList: [],
diff --git a/src/views/quality/rawMaterial/testValue-select.vue b/src/views/quality/rawMaterial/testValue-select.vue
new file mode 100644
index 0000000..0e814c9
--- /dev/null
+++ b/src/views/quality/rawMaterial/testValue-select.vue
@@ -0,0 +1,13 @@
+<!-- 鍘熸潗鏂欐楠�-妫�娴嬪�艰緭鍏ユ缁勪欢 -->
+<template>
+</template>
+
+<script>
+export default {
+
+}
+</script>
+
+<style>
+
+</style>
--
Gitblit v1.9.3