From 25cc86fd8a2fb3b2bb6b385cba0adaf89ff3dcdc Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期四, 18 十二月 2025 16:39:32 +0800
Subject: [PATCH] 流程卡进度打印部分代码
---
north-glass-erp/northglass-erp/src/views/pp/processCard/SelectDetailProcessCard.vue | 123 ++++++++++++++++++++++++++++++++++++-----
1 files changed, 108 insertions(+), 15 deletions(-)
diff --git a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectDetailProcessCard.vue b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectDetailProcessCard.vue
index d08400a..92b1427 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectDetailProcessCard.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectDetailProcessCard.vue
@@ -14,6 +14,7 @@
import {VXETable} from "vxe-table";
import useUserInfoStore from '@/stores/userInfo'
import {useI18n} from "vue-i18n";
+import { computed } from 'vue'
import UpdateOrderCraft from "@/components/sd/order/UpdateOrderCraft.vue";
import {filterChanged} from "@/hook";
let productGlassTypeStore = useProductGlassTypeStore()
@@ -78,20 +79,40 @@
const saveCraft = () => {
//rowIndex.value.process = craftObj.newCraft.join('->')
let orderProcess= craftObj.newCraft.join('->')
- request.post(`/processCard/updateProcess/${rowIndex.value.process_id}/${rowIndex.value.technology_number}/${rowIndex.value.order_id}/${orderProcess}`, craftObj).then((res) => {
- if (res.code == 200 && res.data === true) {
- ElMessage.success(t('basicData.msg.saveSuccess'))
- router.push({
- path: '/main/processCard/SelectDetailProcessCard',
- query: {processId: processId,random: Math.random()}
- })
- } else {
+ //鑾峰彇宸紓宸ュ簭
+ const diffCraft = computed(() => {
+ return [
+ ...craftObj.oldCraft.filter(item => !craftObj.newCraft.includes(item)), //鍒犻櫎
+ ...craftObj.newCraft.filter(item => !craftObj.oldCraft.includes(item))//澧炲姞
+ ]
+ })
+ if (diffCraft.value == '') {//鏃犲彉鍖栦笉鎵ц鍚庣画
+ return
+ }
+ //鑾峰彇鏈�鏂版姤宸ュ伐搴忕殑椤哄簭
+request.post(`/processCard/getNewProcess/${rowIndex.value.process_id}/${rowIndex.value.order_number}/${rowIndex.value.technology_number}/${diffCraft.value}`).then((res) => {
+ if (res.code == 200 ) {
+ if (res.data){
+ request.post(`/processCard/updateProcess/${rowIndex.value.process_id}/${rowIndex.value.order_number}/${rowIndex.value.technology_number}/${rowIndex.value.order_id}/${orderProcess}`, craftObj).then((res) => {
+ if (res.code == 200 && res.data === true) {
+ ElMessage.success(t('basicData.msg.saveSuccess'))
+ router.push({
+ path: '/main/processCard/SelectDetailProcessCard',
+ query: {processId: processId,random: Math.random()}
+ })
+ } else {
- ElMessage.warning('淇濆瓨澶辫触锛屾鏌ユ槸鍚︽姤宸�')
+ ElMessage.warning(t('processCard.updateProcessMsg'))
+ }
+ })
+ craftVisible.value= false
+ }else {
+ ElMessage.warning(t('processCard.updateProcessMsg'))
+ }
}
})
- craftVisible.value= false
+
}
@@ -115,18 +136,78 @@
craftObj.technologyNumber.push(...numberList.technologyNumber);
rowIndex.value = row
}
+
+const updateTerminationNo = (row) => {
+ let processId = row.process_id
+ let orderNumber = row.order_number
+ request.post(`/processCard/updateTerminationNo/${processId}/${orderNumber}`).then((res) => {
+ if (res.code == 200 && res.data === true) {
+ ElMessage.success(t('basicData.msg.saveSuccess'))
+ router.push({
+ path: '/main/processCard/SelectDetailProcessCard',
+ query: {processId: processId,random: Math.random()}
+ })
+ }
+ })
+}
+
+const updateTermination = (row) => {
+ let processId = row.process_id
+ let orderNumber = row.order_number
+ let process = row.process
+ const completed = ref()
+ const completedOk = ref()
+ //鑾峰彇绗竴閬撳伐搴忓畬宸ユ暟閲�
+ request.post(`/processCard/selectCompleted/${processId}/${orderNumber}/${process}`, filterData.value).then((res) => {
+
+ if (res.code == 200) {
+ completed.value=res.data.data
+ completedOk.value = row.quantity*1 - completed.value*1
+ //寮圭獥
+ ElMessageBox.prompt( t('processCard.maxCompleted'), {
+ confirmButtonText: t('basicData.save'),
+ cancelButtonText: t('basicData.cancelButtonText'),
+ inputPattern:/^(\d+|)$/,
+ inputErrorMessage: t('processCard.terminationMsg'),
+ inputValue:row.quantity
+ }).then(({ value }) => {
+
+ request.post(`/processCard/updateTermination/${processId}/${orderNumber}/${value}`).then((res) => {
+ if (res.code == 200 && res.data === true) {
+ ElMessage.success(t('basicData.msg.saveSuccess'))
+ router.push({
+ path: '/main/processCard/SelectDetailProcessCard',
+ query: {processId: processId,random: Math.random()}
+ })
+ }
+ })
+ })
+ } else {
+ ElMessage.warning(res.msg)
+ }
+ })
+
+
+
+}
+
//绗竴娆″姞杞�
const {currentRoute} = useRouter()
const route = currentRoute.value
let processId = route.query.processId
+let merge = null
//绗竴娆″姞杞芥暟鎹�
request.post(`/processCard/flowCardDetail/${processId}`, filterData.value).then((res) => {
if (res.code == 200) {
produceList = produceList.value.concat(deepClone(res.data.data))
+ merge = res.data.merge
+ if(merge != 0){
+ gridOptions.toolbarConfig.buttons[0].name=t('processCard.cancelMerger')
+ }
xGrid.value.reloadData(produceList)
gridOptions.loading = false
} else {
@@ -187,13 +268,14 @@
},//琛ㄥご鍙傛暟
columns:[
{type:'expand',fixed:"left",slots: { content:'content' },width: 50},
- {title: t('basicData.operate'), width: 100, slots: { default: 'button_slot' },fixed:"left",},
+ {title: t('basicData.operate'), width: 200, slots: { default: 'button_slot' },fixed:"left",},
{ type: 'seq',fixed:"left", title: t('basicData.Number'), width: 50 },
{field: 'order_id', title: t('order.orderId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' },width: 110 },
{field: 'process_id', width: 140, title: t('processCard.processId') ,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
{field: 'order_number', title: t('order.OrderNum') ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },width: 100},
{field: 'technology_number', title: t('processCard.technologyNumber') ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },width: 100},
{field: 'quantity', title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, width: 80},
+ {field: 'termination_quantity', title: t('processCard.terminationQuantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, width: 80},
{field: 'child_width', title: t('order.width'),width: 80 },
{field: 'child_height', title: t('order.height'),width: 80 },
{field: 'area', title: t('order.area') ,showOverflow:"ellipsis",width: 70},
@@ -202,7 +284,7 @@
{field: 'glass_child', title: t('reportingWorks.glassChild'),width: 200 },
{field: 'founder', title: t('processCard.founder'),width: 110 },
{field: 'splitFrame_time', title: t('processCard.splitFrameTime'),width: 110 },
- {field: 'concatNumber', title: '鎬诲簭鍙�',width: 110},
+ {field: 'concatNumber', title: t('processCard.totalSequenceNumber'),width: 110},
],//琛ㄥご鎸夐挳
@@ -265,7 +347,7 @@
})
ElMessageBox.confirm(
- "鏄惁鍚堝苟锛�",
+ t('processCard.msg.msg6'),
{
confirmButtonText: t('basicData.confirmButtonText'),
cancelButtonText: t('basicData.cancelButtonText'),
@@ -273,7 +355,7 @@
type: 'warning',
}
).then(()=>{
- request.post("/processCard/mergeFlowCard", flowData.value).then((res) => {
+ request.post(`/processCard/mergeFlowCard/${merge}`, flowData.value).then((res) => {
if(res.code==200 && res.data==="true"){
ElMessage.success(t('basicData.msg.saveSuccess'))
router.push({path: '/main/processCard/SelectProcessCard', query:{random:Math.random()}})
@@ -331,9 +413,20 @@
<!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
<template #button_slot="{ row }">
<el-button @click="updateCraft(row)" link type="primary" size="small">{{$t('craft.updateCraft')}}</el-button>
+ <el-button @click="updateTermination(row)" link type="primary" size="small">{{$t('processCard.termination')}}</el-button>
+ <el-button @click="updateTerminationNo(row)" link type="primary" size="small">{{$t('processCard.terminationNo')}}</el-button>
</template>
-
+ <template #num1_filter="{ column, $panel }">
+ <div>
+ <div v-for="(option, index) in column.filters" :key="index">
+ <input type="text"
+ v-model="option.data"
+ @keyup.enter.native="$panel.confirmFilter()"
+ @input="changeFilterEvent($event, option, $panel)"/>
+ </div>
+ </div>
+ </template>
</vxe-grid>
<el-dialog id="processChange"
--
Gitblit v1.8.0