From e4f79a7e36214e5836cb0e667b3ffbd3db45456d Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期二, 22 十月 2024 23:54:26 +0800 Subject: [PATCH] 工单变量删除优化,预览优化 --- src/views/tigerprojects/system/lowcode/entityts/WoRouteBinding.ts | 117 +++++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 87 insertions(+), 30 deletions(-) diff --git a/src/views/tigerprojects/system/lowcode/entityts/WoRouteBinding.ts b/src/views/tigerprojects/system/lowcode/entityts/WoRouteBinding.ts index 1a7744c..3bc1df4 100644 --- a/src/views/tigerprojects/system/lowcode/entityts/WoRouteBinding.ts +++ b/src/views/tigerprojects/system/lowcode/entityts/WoRouteBinding.ts @@ -4,7 +4,7 @@ * @version: * @Date: 2024-06-19 20:34:27 * @LastEditors: Ben Lin - * @LastEditTime: 2024-10-17 21:13:17 + * @LastEditTime: 2024-10-22 23:36:24 */ import { Ref, h, ref, render, unref } from 'vue'; @@ -32,11 +32,14 @@ import { buildUUID } from '/@/utils/uuid'; import { mesApi } from '/@/api/tigerapi/mes/mesApi'; import { useProdRouteStore } from '/@/store/modules/prodRoute'; +import { useWebSocketStore } from '/@/store/modules/websocket'; +import { useGlobSetting } from '/@/hooks/setting'; const { t } = useI18n(); const { createErrorModal } = useMessage(); const useProdRoute = useProdRouteStore(); const { getLocale } = useLocale(); +const globSetting = useGlobSetting(); function _default() { /* 瀹氫箟鍙橀噺 */ const isNormal = (type: number) => type === 0; @@ -93,8 +96,8 @@ let data = { title: '', treeData: [] as any[], fieldNames: {} }; let prodTreeData = await GetWoPTree({ wo: wo }); let _treeData = convertToTree(prodTreeData, 'pid', 'tid', 'root'); - if (data.treeData.length == 0) { - data.treeData.push({ + if (_treeData.length == 0) { + _treeData.push({ pid: 'root', tid: '', id: '', @@ -102,13 +105,23 @@ prod: '', name: wo, type: 'WorkOrder', + cust: '', + code: '', + seq: 0, }); } data.title = '宸ュ崟宸ヨ壓璺嚎'; data.fieldNames = { key: 'tid', title: 'name' }; - /* 淇濆瓨宸ヨ壓鏍戝舰鏁版嵁鍒扮姸鎬佺鐞� */ - useProdRoute.setCurProdRotTree(_treeData as unknown as MesRotTree[]); - data.treeData = useProdRoute.getCurProdRotTree; + if (!useProdRoute.changeToCPPage || !useProdRoute.curProdRotTree.some((q) => q.name == wo)) { + /* 淇濆瓨宸ヨ壓鏍戝舰鏁版嵁鍒扮姸鎬佺鐞� */ + useProdRoute.setCurProdRotTree({ + name: wo, + treeInfo: _treeData as unknown as MesRotTree[], + }); + } + if (useProdRoute.curProdRotTree.some((q) => q.name == wo)) { + data.treeData = useProdRoute.curProdRotTree.filter((q) => q.name == wo)[0].treeInfo; + } return data; }, /** @@ -173,11 +186,12 @@ // searchInfo: { TABLE_NAME: 'V_BAS_PKG_DTL' }, dataSource: data.value['BAS_PKG_DTL'], columns: GetBaseColumns('BAS_PKG_DTL', args[0], data), - maxHeight: 520, + // maxHeight: 520, useSearchForm: false, showTableSetting: false, bordered: true, - canResize: true, + isCanResizeParent: true, + // canResize: true, showIndexColumn: false, // rowSelection: { // type: 'radio', //'checkbox' @@ -196,11 +210,12 @@ // searchInfo: { TABLE_NAME: 'V_BAS_PKG_DTL' }, dataSource: data.value['ItemCode'], columns: GetBaseColumns('ItemCode', args[0], data), - maxHeight: 520, + // maxHeight: 520, useSearchForm: false, showTableSetting: false, bordered: true, - canResize: true, + isCanResizeParent: true, + // canResize: true, showIndexColumn: false, // rowSelection: { // type: 'radio', //'checkbox' @@ -332,18 +347,38 @@ } if (params['selectedNodes'][0].type == 'Node') { resetFieldsNode(); + const wonode = await getEntity({ + sqlcmd: `WORK_ORDER ='${params['objParams'].value['CODE']}' AND ID = '${res.Data.Items[0].NODE_ID}'`, + entityName: 'MES_WO_NODE', + order: '', + }); setFieldsValueNode({ ID: res.Data.Items[0].ID, OPER_CODE: res.Data.Items[0].OPER_CODE, ROT_ID: res.Data.Items[0].ROT_ID, NODE_ID: res.Data.Items[0].NODE_ID, NODE_NAME: res.Data.Items[0].NODE_NAME, - IS_ACTIVE: res.Data.Items[0].IS_ACTIVE, - IS_CALC_FPY: res.Data.Items[0].IS_CALC_FPY, - CAN_SKIP: res.Data.Items[0].CAN_SKIP, - IS_INPUT: res.Data.Items[0].IS_INPUT, - IS_OUTPUT: res.Data.Items[0].IS_OUTPUT, - ALLOW_DFT_IN: res.Data.Items[0].ALLOW_DFT_IN, + IS_ACTIVE: isNullOrEmpty(res.Data.Items[0].IS_ACTIVE) + ? 'N' + : res.Data.Items[0].IS_ACTIVE, + IS_CALC_FPY: isNullOrEmpty(res.Data.Items[0].IS_CALC_FPY) + ? 'N' + : res.Data.Items[0].IS_CALC_FPY, + CAN_SKIP: isNullOrEmpty(res.Data.Items[0].CAN_SKIP) + ? 'N' + : res.Data.Items[0].CAN_SKIP, + IS_INPUT: + wonode.Data.Items[0].IS_FIRST_NODE == 'Y' + ? 'Y' + : isNullOrEmpty(res.Data.Items[0].IS_INPUT) + ? 'N' + : res.Data.Items[0].IS_INPUT, + IS_OUTPUT: isNullOrEmpty(res.Data.Items[0].IS_OUTPUT) + ? 'N' + : res.Data.Items[0].IS_OUTPUT, + ALLOW_DFT_IN: isNullOrEmpty(res.Data.Items[0].ALLOW_DFT_IN) + ? 'N' + : res.Data.Items[0].ALLOW_DFT_IN, REMARK: res.Data.Items[0].REMARK, WORK_ORDER: params['objParams'].value['CODE'], CUST_CODE: params['selectedNodes'][0].cust, @@ -377,8 +412,8 @@ } values.AUTH_ORG = useUserStore().getUserInfo.orgCode; values.AUTH_PROD = useUserStore().getUserInfo.prodCode; - if(type == 'Action'){ - values.OPTION_1 = JSON.stringify(useProdRoute.getcurDtl['BAS_PKG_DTL']) + if (type == 'Action') { + values.OPTION_1 = JSON.stringify(useProdRoute.getcurDtl['BAS_PKG_DTL']); } SaveEntity(values, true, entityName).then((action) => { if (action.IsSuccessed) { @@ -522,7 +557,7 @@ Status: -1, RouteStatus: 1, WoBatch: '', - ActLine: '' + ActLine: '', }).then((action) => { if (action.IsSuccessed) { SP_MES_PROD2WO({ rotId: d.values.id, wo: args[1]['CODE'] }).then((action) => { @@ -535,7 +570,7 @@ Status: -1, RouteStatus: 0, WoBatch: '', - ActLine: '' + ActLine: '', }); createErrorModal({ title: t('sys.api.errorTip'), @@ -619,7 +654,7 @@ * @param {Ref} selectedNodes * @return {*} */ - SelectNode: (selectedNodes: Ref<any[]>) => { + SelectNode: (selectedNodes: Ref<any[]>, code: string) => { let result = { showConfig: false, showNav: false, @@ -644,6 +679,7 @@ result.showOtherTable = { BAS_PKG_DTL: false, ItemCode: false }; } } + useProdRoute.setCurSelectedNodes({ name: code, SelectedNodes: selectedNodes.value }); return result; }, /** @@ -662,7 +698,7 @@ url: '/addRoute', action: 'addRoute', isStep: false, - isCustEl: false + isCustEl: false, }, // { // title: '娣诲姞瀹㈡埛宸ヨ壓璺嚎', @@ -683,7 +719,7 @@ url: '/editRoute', action: 'editRoute', isStep: false, - isCustEl: false + isCustEl: false, }, ]; break; @@ -819,7 +855,7 @@ param.data.value['BAS_PKG_DTL'].map((x) => { if (x.PKG_CODE == param.values['PKG_CODE']) { x.LABEL_CODE = param.values['LABEL_CODE']; - x.LABEL_ID = param.values['LABEL_CODE']; + x.LABEL_ID = param.values['LABEL_CODE']; } }); param.data.value['Action'][0]['OPTION_1'] = JSON.stringify( @@ -840,8 +876,26 @@ case 'BAS_LABEL_VAR_WO': param.values['WORK_ORDER'] = param.others['WORK_ORDER']; param.values['ID'] = buildUUID(); - - await AddOrEditLabelVarByWorkOrder(param.values as unknown as BAS_LABEL_VAR_WO); + + const apiaction = await AddOrEditLabelVarByWorkOrder( + param.values as unknown as BAS_LABEL_VAR_WO, + ); + if (apiaction.IsSuccessed) { + const webSocketStore = useWebSocketStore(); + if (webSocketStore.GetSocketState == 1) { + webSocketStore.sendMessage( + `wsGetNew ${param.values['LABEL_ID']}_#_${ param.values['WORK_ORDER']}`, + ); + } + } + case 'delete': + const webSocketStore = useWebSocketStore(); + if (webSocketStore.GetSocketState == 1) { + webSocketStore.sendMessage( + `wsGetNew ${param.values['LABEL_ID']}_#_${ param.values['WORK_ORDER']}`, + ); + } + break; } resolve('OK'); } catch (e) { @@ -1378,7 +1432,7 @@ { field: 'PKG_CODE', label: '鍖呰瑙勫垯', - colProps: { span: 11 }, + colProps: window.screen.width == 2560 ? { span: 10 } : { span: 11 }, component: 'Input', ifShow: ({ values }) => isPackage(values.ACT_TYPE), }, @@ -1387,7 +1441,10 @@ label: '1', defaultValue: '', component: 'Input', - colProps: { span: 1, pull: window.screen.width == 1366 ? -1 : 1 }, + colProps: + window.screen.width == 2560 + ? { span: 2, pull: 1 } + : { span: 1, pull: window.screen.width == 1366 ? -1 : 1 }, ifShow: ({ values }) => isPackage(values.ACT_TYPE), colSlot: 'pkgadd', }, @@ -1852,8 +1909,8 @@ { title: '榛樿鍊�', dataIndex: 'DEFAULT_VALUE', - editRow: true, - editRule: true, + // editRow: true, + // editRule: true, }, ] as BasicColumn[]; -- Gitblit v1.9.3