From 16257dd099d9811fb5caf78047ffc2425c401e0e Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期一, 05 八月 2024 03:11:20 +0800
Subject: [PATCH] 工单工艺路线更新

---
 src/views/tigerprojects/system/lowcode/entityts/WoRouteBinding.ts |  581 +++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 476 insertions(+), 105 deletions(-)

diff --git a/src/views/tigerprojects/system/lowcode/entityts/WoRouteBinding.ts b/src/views/tigerprojects/system/lowcode/entityts/WoRouteBinding.ts
index 942ade7..7bfc72b 100644
--- a/src/views/tigerprojects/system/lowcode/entityts/WoRouteBinding.ts
+++ b/src/views/tigerprojects/system/lowcode/entityts/WoRouteBinding.ts
@@ -4,11 +4,16 @@
  * @version:
  * @Date: 2024-06-19 20:34:27
  * @LastEditors: Ben Lin
- * @LastEditTime: 2024-07-22 18:38:48
+ * @LastEditTime: 2024-08-05 00:43:08
  */
 
 import { Ref, h, ref, render, unref } from 'vue';
-import { GetRoutePTree, GetWoPTree, RouteToCust, RouteToProd, SP_MES_PROD2WO, SP_MES_WO2CUST } from '/@/api/tigerapi/mes/router';
+import {
+  DeleteWoRoute,
+  GetWoPTree,
+  SP_MES_PROD2WO,
+  SP_MES_WO2CUST,
+} from '/@/api/tigerapi/mes/router';
 import { GetEnum, SaveEntity, convertToTree, getEntity } from '/@/api/tigerapi/system';
 import { useLocale } from '/@/locales/useLocale';
 import { isNullOrEmpty, isNullOrUnDef } from '/@/utils/is';
@@ -16,10 +21,13 @@
 import { NavItem } from '/@/api/tigerapi/model/basModel';
 import { useMessage } from '/@/hooks/web/useMessage';
 import { useModal } from '/@/components/Modal';
-import { FormSchema } from '/@/components/Table';
-import { initRoute } from '../data';
+import { BasicColumn, FormSchema, useTable } from '/@/components/Table';
 import { CustModalParams } from '/@/api/tigerapi/model/systemModel';
 import { useUserStore } from '/@/store/modules/user';
+import { EventDataNode } from 'ant-design-vue/lib/tree';
+import { ContextMenuItem } from '/@/components/TigerTree';
+import { UpdateWoStatus } from '/@/api/tigerapi/mes/wo';
+import { useForm } from '/@/components/Form';
 
 const { t } = useI18n();
 const { createErrorModal } = useMessage();
@@ -78,7 +86,7 @@
      */
     fetchTreeData: async (type: string, wo: string) => {
       let data = { title: '', treeData: [] as any[], fieldNames: {} };
-      let prodTreeData = await GetWoPTree({wo: wo});
+      let prodTreeData = await GetWoPTree({ wo: wo });
       // let uniqueArr = prodTreeData.reduce((acc, current) => {
       //   if (!acc.some((x) => x.pid == current.pid && x.id == current.id && x.seq == current.seq && x.type == current.type)) {
       //     acc.push(current);
@@ -86,7 +94,7 @@
       //   return acc;
       // }, [] as V_MES_ROUTE_PTREE[]);
       data.treeData = convertToTree(prodTreeData, 'pid', 'tid', 'root');
-      if(data.treeData.length == 0){
+      if (data.treeData.length == 0) {
         data.treeData.push({
           pid: 'root',
           tid: '',
@@ -94,7 +102,7 @@
           wo: wo,
           prod: '',
           name: wo,
-          type: 'WorkOrder'
+          type: 'WorkOrder',
         });
       }
       data.title = '宸ュ崟宸ヨ壓璺嚎';
@@ -115,6 +123,9 @@
         case 'Node':
           form = nodeFormShema;
           break;
+        case 'BAS_PKG_DTL':
+          form = crudForms[type];
+          break;
       }
       return form;
     },
@@ -126,73 +137,162 @@
       return ['scanadd', 'assyadd', 'testadd', 'auditadd', 'printadd', 'pkgadd'];
     },
     /**
+     * @description: 鑾峰彇琛ㄦ牸use鍒楄〃
+     * @param {string} type
+     * @param {array} args
+     * @return {*}
+     */
+    GetUseTables: (data: Ref<{}>, ...args) => {
+      return {
+        Table: useTable({
+          title: '鍒楄〃淇℃伅',
+          // api: getListByPage,
+          // searchInfo: { TABLE_NAME: 'V_BAS_PKG_DTL' },
+          dataSource: data.value['Table'],
+          columns: GetBaseColumns('', args[0], data),
+          maxHeight: 520,
+          useSearchForm: false,
+          showTableSetting: false,
+          bordered: true,
+          canResize: true,
+          showIndexColumn: false,
+          // rowSelection: {
+          //   type: 'radio', //'checkbox'
+          // },
+          actionColumn: {
+            width: 100,
+            title: '鎿嶄綔',
+            dataIndex: 'action',
+            slots: { customRender: 'action' },
+            fixed: 'right',
+          }, //鑷畾涔夋搷浣滃垪
+        }),
+      };
+    },
+    GetUseForm: () => {
+      return {
+        Action: useForm({
+          labelWidth: 145,
+          schemas: methods.GetCrudForm('Action'),
+          actionColOptions: {
+            offset: 8,
+            span: 24,
+          },
+          wrapperCol: {
+            span: 15,
+          },
+          showActionButtonGroup: true,
+          submitButtonOptions: {
+            text: '淇濆瓨',
+          },
+        }),
+        Node: useForm({
+          labelWidth: 145,
+          schemas: methods.GetCrudForm('Node'),
+          actionColOptions: {
+            offset: 8,
+            span: 24,
+          },
+          wrapperCol: {
+            span: 15,
+          },
+          showActionButtonGroup: true,
+          submitButtonOptions: {
+            text: '淇濆瓨',
+          },
+        }),
+      };
+    },
+    /**
      * @description: 鍒囨崲鑺傜偣鏃朵簨浠舵柟娉�
      * @return {*}
      */
-    nodeChange: (params: {
-      resetFields: any;
-      setFieldsValue: any;
-      objParams: Ref<any>;
-      selectedNodes: Ref<any[]>;
-    }) => {
-      let sqlcmd = ' 1=1 ';
-      if (!isNullOrEmpty(params['objParams'].value['CODE'])) {
-        sqlcmd += `And WORK_ORDER = '${params['objParams'].value['CODE']}'`;
-      }
-      if (!isNullOrEmpty(params['selectedNodes'].value[0].id)) {
-        sqlcmd +=
-          params['selectedNodes'].value[0].type == 'Action'
-            ? `And ACT_ID = '${params['selectedNodes'].value[0].id}'`
-            : `And NODE_ID = '${params['selectedNodes'].value[0].id}'`;
-      }
-      getEntity({
-        sqlcmd: sqlcmd,
-        entityName:
-          params['selectedNodes'].value[0].type == 'Action' ? 'MES_WO_ACTION' : 'MES_WO_OPER',
-        order: '',
-      }).then((res) => {
-        params['resetFields']();
-        if (params['selectedNodes'].value[0].type == 'Action') {
-          params['setFieldsValue']({
-            ID: res.Data.Items[0].ID,
-            ACT_ID: res.Data.Items[0].ACT_ID,
-            ROT_ID: res.Data.Items[0].ROT_ID,
-            NODE_ID: res.Data.Items[0].NODE_ID,
-            IS_ACTIVE: res.Data.Items[0].IS_ACTIVE,
-            ITEM_CODE: res.Data.Items[0].ITEM_CODE,
-            RULE_CODE: res.Data.Items[0].RULE_CODE,
-            TEST_CODE: res.Data.Items[0].TEST_CODE,
-            SAPL_CODE: res.Data.Items[0].SAPL_CODE,
-            LABEL_CODE: res.Data.Items[0].LABEL_CODE,
-            PKG_CODE: res.Data.Items[0].PKG_CODE,
-            ACT_CODE: res.Data.Items[0].ACT_CODE,
-            REMARK: res.Data.Items[0].REMARK,
-            WORK_ORDER: params['objParams'].value['CODE'],
-            ACT_TYPE: res.Data.Items[0].ACT_TYPE,
-            CUST_CODE: params['selectedNodes'].value[0].cust,
-            PROD_CODE: params['selectedNodes'].value[0].prod,
-          });
+    nodeChange: (params: { useForms: Ref<any>; objParams: Ref<any>; selectedNodes: any[] }) =>
+      new Promise<any>(async (resolve, reject) => {
+        let result = {};
+        let sqlcmd = ' 1=1 ';
+        if (!isNullOrEmpty(params['objParams'].value['CODE'])) {
+          sqlcmd += `And WORK_ORDER = '${params['objParams'].value['CODE']}'`;
         }
-        if (params['selectedNodes'].value[0].type == 'Node') {
-          params['setFieldsValue']({
-            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,
-            REMARK: res.Data.Items[0].REMARK,
-            WORK_ORDER: params['objParams'].value['CODE'],
-            CUST_CODE: params['selectedNodes'].value[0].cust,
-            PROD_CODE: params['selectedNodes'].value[0].prod,
-          });
+        if (!isNullOrEmpty(params['selectedNodes'][0].id)) {
+          sqlcmd +=
+            params['selectedNodes'][0].type == 'Action'
+              ? `And ACT_ID = '${params['selectedNodes'][0].id}'`
+              : `And NODE_ID = '${params['selectedNodes'][0].id}'`;
         }
-      });
-    },
+        try {
+          const res = await getEntity({
+            sqlcmd: sqlcmd,
+            entityName:
+              params['selectedNodes'][0].type == 'Action' ? 'MES_WO_ACTION' : 'MES_WO_OPER',
+            order: '',
+          });
+          const setFieldsValue = params['useForms'].value['Action'][1]['setFieldsValue'];
+          const setFieldsValueNode = params['useForms'].value['Node'][1]['setFieldsValue'];
+          const resetFields = params['useForms'].value['Action'][1]['resetFields'];
+          const resetFieldsNode = params['useForms'].value['Node'][1]['resetFields'];
+          if (params['selectedNodes'][0].type == 'Action') {
+            resetFields();
+            setFieldsValue({
+              ID: res.Data.Items[0].ID,
+              ACT_ID: res.Data.Items[0].ACT_ID,
+              ROT_ID: res.Data.Items[0].ROT_ID,
+              NODE_ID: res.Data.Items[0].NODE_ID,
+              IS_ACTIVE: res.Data.Items[0].IS_ACTIVE,
+              ITEM_CODE: res.Data.Items[0].ITEM_CODE,
+              RULE_CODE: res.Data.Items[0].RULE_CODE,
+              TEST_CODE: res.Data.Items[0].TEST_CODE,
+              SAPL_CODE: res.Data.Items[0].SAPL_CODE,
+              LABEL_CODE: res.Data.Items[0].LABEL_CODE,
+              PKG_CODE: res.Data.Items[0].PKG_CODE,
+              ACT_CODE: res.Data.Items[0].ACT_CODE,
+              REMARK: res.Data.Items[0].REMARK,
+              WORK_ORDER: params['objParams'].value['CODE'],
+              ACT_TYPE: res.Data.Items[0].ACT_TYPE,
+              CUST_CODE: params['selectedNodes'][0].cust,
+              PROD_CODE: params['selectedNodes'][0].prod,
+              OPTION_1: res.Data.Items[0].OPTION_1,
+            });
+            result['isShow'] = isNullOrEmpty(res.Data.Items[0].PKG_CODE) ? false : true;
+            const ents = await getEntity({
+              sqlcmd: `RULE_CODE ='${res.Data.Items[0].PKG_CODE}'`,
+              entityName: 'V_BAS_PKG_DTL',
+              order: '',
+            });
+            result['Table'] = isNullOrEmpty(res.Data.Items[0].OPTION_1)
+              ? ents.Data.Items
+              : JSON.parse(res.Data.Items[0].OPTION_1);
+            /* 濡傛灉OPTION_1瀛楁涓虹┖灏辨妸鍖呰淇℃伅杞琂SON瀛樺埌OPTION_1瀛楁 */
+            res.Data.Items[0].OPTION_1 = isNullOrEmpty(res.Data.Items[0].OPTION_1)
+              ? JSON.stringify(ents.Data.Items)
+              : res.Data.Items[0].OPTION_1;
+            result['Action'] = res.Data.Items;
+          }
+          if (params['selectedNodes'][0].type == 'Node') {
+            resetFieldsNode();
+            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,
+              REMARK: res.Data.Items[0].REMARK,
+              WORK_ORDER: params['objParams'].value['CODE'],
+              CUST_CODE: params['selectedNodes'][0].cust,
+              PROD_CODE: params['selectedNodes'][0].prod,
+            });
+          }
+          resolve(result);
+        } catch (e) {
+          reject(e);
+        }
+      }),
     /**
      * @description: 鑷畾涔夋彁浜ゆ柟娉�
      * @return {*}
@@ -247,28 +347,47 @@
      * @param {*} u
      * @return {*}
      */
-    GetSelectSuccess: (d, u, ...args) => {
+    GetSelectSuccess: async (d, u, ...args) => {
       let value = {};
       switch (args[0]) {
         case 'scanadd':
           value = {
-            RULE_CODE: d.values['val'],
+            value: {
+              RULE_CODE: d.values['val'],
+            },
+            isShow: false,
           };
           break;
         case 'assyadd':
           value = {
-            ITEM_CODE: d.values['val'],
+            value: {
+              ITEM_CODE: d.values['val'],
+            },
+            isShow: false,
           };
           break;
         case 'printadd':
           value = {
-            LABEL_CODE: d.values['val'],
+            value: {
+              LABEL_CODE: d.values['val'],
+            },
+            isShow: false,
           };
           break;
         case 'pkgadd':
+          const ents = await getEntity({
+            sqlcmd: `RULE_CODE ='${d.values['val']}'`,
+            entityName: 'V_BAS_PKG_DTL',
+            order: '',
+          });
           value = {
-            pkgRULE_CODE: d.values['val'],
+            value: {
+              PKG_CODE: d.values['val'],
+            },
+            isShow: true,
+            data: ents.Data.Items,
           };
+          break;
         case 'addRoute':
           if (isNullOrEmpty(args[1]['CODE'])) {
             createErrorModal({
@@ -277,15 +396,37 @@
             });
             return;
           }
-          let codes = d.values.id.split(',');
-          var i;
-          for (i = 0; i < codes.length; i++) {
-            if (d.which == 'addRoute') {
-              SP_MES_PROD2WO({ rotId: codes[i], wo: args[1]['CODE'] });
+          /* 鏇存柊宸ュ崟鐘舵�佸苟鐢熸垚宸ュ崟鐨勫伐鑹鸿矾绾� */
+          UpdateWoStatus({
+            UserId: useUserStore().getUserInfo.userId as string,
+            WorkOrder: args[1]['CODE'],
+            Status: -1,
+            RouteStatus: 1,
+          }).then((action) => {
+            if (action.IsSuccessed) {
+              SP_MES_PROD2WO({ rotId: d.values.id, wo: args[1]['CODE'] }).then((action) => {
+                if (action.IsSuccessed) {
+                  args[2]();
+                } else {
+                  UpdateWoStatus({
+                    UserId: useUserStore().getUserInfo.userId as string,
+                    WorkOrder: args[1]['CODE'],
+                    Status: -1,
+                    RouteStatus: 0,
+                  });
+                  createErrorModal({
+                    title: t('sys.api.errorTip'),
+                    content: t(action.LocaleMsg),
+                  });
+                }
+              });
+            } else {
+              createErrorModal({
+                title: t('sys.api.errorTip'),
+                content: t(action.LocaleMsg),
+              });
             }
-          }
-
-          args[2]();
+          });
           break;
         case 'addCustomer':
           if (isNullOrEmpty(args[1]['CODE'])) {
@@ -295,7 +436,7 @@
             });
             return;
           }
-          SP_MES_WO2CUST({ wo: args[1]['CODE']});
+          SP_MES_WO2CUST({ wo: args[1]['CODE'] });
 
           args[2]();
           break;
@@ -311,6 +452,12 @@
         addRoute: useModal(),
         addCustomer: useModal(),
         editRoute: useModal(),
+        scanadd: useModal(),
+        assyadd: useModal(),
+        testadd: useModal(),
+        auditadd: useModal(),
+        printadd: useModal(),
+        pkgadd: useModal(),
       };
     },
     /**
@@ -322,6 +469,7 @@
       return {
         configTitle: type == 'Action' ? '琛屼负閰嶇疆' : '宸ュ簭閰嶇疆',
         navTitle: type == 'Product' ? '娣诲姞宸ヨ壓璺嚎' : '宸ヨ壓璺嚎缁存姢',
+        tableTitle: type == 'Action' ? '鍖呰灞傜骇鍒楄〃' : '',
       };
     },
     /**
@@ -335,6 +483,7 @@
         showNav: false,
         type: selectedNodes.value[0].type,
         nodes: selectedNodes.value,
+        showOtherTable: false,
       };
       if (isNullOrUnDef(selectedNodes)) {
         return result;
@@ -342,10 +491,16 @@
       if (selectedNodes.value[0].type == 'WorkOrder' || selectedNodes.value[0].type == 'Route') {
         result.showNav = true;
         result.showConfig = false;
+        result.showOtherTable = false;
       }
       if (selectedNodes.value[0].type == 'Action' || selectedNodes.value[0].type == 'Node') {
         result.showNav = false;
         result.showConfig = true;
+        if (selectedNodes.value[0].type == 'Action') {
+          result.showOtherTable = true;
+        } else {
+          result.showOtherTable = false;
+        }
       }
       return result;
     },
@@ -442,10 +597,10 @@
             });
             return;
           }
-          SP_MES_WO2CUST({ wo: args[2][0]['wo']});
+          SP_MES_WO2CUST({ wo: args[2][0]['wo'] });
           break;
         case 'editRoute':
-          args[1](true, { rotId: args[2][0].id, slotName: '' });
+          args[1](true, { rotId: args[2][0].wo, slotName: '', rotType: 'Wo' });
           break;
       }
     },
@@ -456,7 +611,7 @@
     GetBaseCards: (type: string) => {
       let reusts: any[] = [];
       switch (type) {
-        case 'Product':
+        case 'WorkOrder':
           reusts = [];
           break;
         case 'Route':
@@ -500,18 +655,110 @@
      * @param {array} args
      * @return {*}
      */
-    CustFunc: (param: CustModalParams) => {
-      if (param.cType == 'Route') {
-        // initRoute(args[0], args[1]);
-      }
+    CustFunc: async (param: CustModalParams) => {
+      param.data.value['Table'].map((x) => {
+        if (x.PKG_CODE == param.values['PKG_CODE']) {
+          x.LABEL_CODE = param.values['LABEL_CODE'];
+        }
+      });
+      param.data.value['Action'][0]['OPTION_1'] = JSON.stringify(param.data.value['Table']);
     },
-    GetUseForm: () => {
-      return {};
+    /**
+     * @description: 鑾峰彇鍙抽敭鑿滃崟鍒楄〃
+     * @param {EventDataNode} node
+     * @return {*}
+     */
+    GetRightMenuList: (node: EventDataNode, ...args): ContextMenuItem[] => {
+      const emit = args[0];
+      const menu = [
+        // {
+        //   label: '鏂板',
+        //   handler: () => {
+        //     console.log('鐐瑰嚮浜嗘柊澧�', node);
+        //   },
+        //   icon: 'bi:plus',
+        // },
+        {
+          label: '鍒犻櫎',
+          handler: () => {
+            console.log('鐐瑰嚮浜嗗垹闄�', node);
+            DeleteWoRoute({ rotId: '', rotCode: node.code, wo: node.wo }).then((action) => {
+              if (action.IsSuccessed) {
+                emit('deletenode', node);
+              } else {
+                createErrorModal({
+                  title: t('sys.api.errorTip'),
+                  content: t(action.LocaleMsg),
+                });
+              }
+            });
+          },
+          icon: 'bx:bxs-folder-open',
+        },
+      ];
+      return node.type == 'Route' ? menu : [];
     },
   };
 
   /* 浠ヤ笅鏄唴閮ㄦ柟娉曪紝涓峞xport锛屼緵涓婇潰鐨勬柟娉曡皟鐢� */
 
+  let columns: BasicColumn[] = [];
+  /**
+   * @description: 鑾峰彇琛ㄦ牸瀛楁Json
+   * @param {string} type
+   * @return {*}
+   */
+  function GetBaseColumns(type: string, emit, data: Ref<{}>) {
+    columns = [
+      {
+        dataIndex: 'PKG_RULE_ID',
+        title: '鍖呰瑙勫垯ID',
+        ifShow: false,
+        sorter: true,
+        resizable: true,
+      },
+      {
+        dataIndex: 'PKG_CODE',
+        title: '鍖呰缂栫爜',
+        ifShow: false,
+        sorter: true,
+        resizable: true,
+        customRender: () => {},
+      },
+      {
+        dataIndex: 'PKG_NAME',
+        title: '鍖呰鍚嶇О',
+        ifShow: true,
+        sorter: true,
+        resizable: true,
+        customRender: () => {},
+      },
+      {
+        dataIndex: 'PKG_QTY',
+        title: '鍖呰鏁伴噺',
+        ifShow: true,
+        sorter: true,
+        resizable: true,
+        customRender: () => {},
+      },
+      {
+        dataIndex: 'PKG_LEVEL',
+        title: '鍖呰灞傜骇',
+        ifShow: true,
+        sorter: true,
+        resizable: true,
+        customRender: () => {},
+      },
+      {
+        dataIndex: 'LABEL_CODE',
+        title: '鏍囩妯℃澘缂栫爜',
+        ifShow: true,
+        sorter: true,
+        resizable: true,
+      },
+    ];
+    return columns;
+  }
   /**
    * @description: 寮瑰嚭閫夋嫨妗�-鐗╂枡閫夋嫨妗嗛厤缃�
    * @return {*}
@@ -758,7 +1005,7 @@
       field: 'RULE_CODE',
       label: '鎵爜楠岃瘉',
       component: 'Input',
-      colProps: { span: 10 },
+      colProps: { span: 11 },
       ifShow: ({ values }) => isScan(values.ACT_TYPE),
     },
     {
@@ -766,14 +1013,14 @@
       label: '1',
       defaultValue: '',
       component: 'Input',
-      colProps: { span: 2, pull: 1 },
+      colProps: { span: 1, pull: 1 },
       ifShow: ({ values }) => isScan(values.ACT_TYPE),
       colSlot: 'scanadd',
     },
     {
       field: 'ITEM_CODE',
       label: '缁勮涓婃枡',
-      colProps: { span: 10 },
+      colProps: { span: 11 },
       component: 'Input',
       ifShow: ({ values }) => isAssy(values.ACT_TYPE),
     },
@@ -782,14 +1029,14 @@
       label: '1',
       defaultValue: '',
       component: 'Input',
-      colProps: { span: 2, pull: 1 },
+      colProps: { span: 1, pull: 1 },
       ifShow: ({ values }) => isAssy(values.ACT_TYPE),
       colSlot: 'assyadd',
     },
     {
       field: 'TEST_CODE',
       label: '浜у搧娴嬭瘯',
-      colProps: { span: 10 },
+      colProps: { span: 11 },
       component: 'Input',
       ifShow: ({ values }) => isTest(values.ACT_TYPE),
     },
@@ -798,14 +1045,14 @@
       label: '1',
       defaultValue: '',
       component: 'Input',
-      colProps: { span: 2, pull: 1 },
+      colProps: { span: 1, pull: 1 },
       ifShow: ({ values }) => isTest(values.ACT_TYPE),
       colSlot: 'testadd',
     },
     {
       field: 'SAPL_CODE',
       label: '浜у搧鎶芥',
-      colProps: { span: 10 },
+      colProps: { span: 11 },
       component: 'Input',
       ifShow: ({ values }) => isAudit(values.ACT_TYPE),
     },
@@ -814,14 +1061,14 @@
       label: '1',
       defaultValue: '',
       component: 'Input',
-      colProps: { span: 2, pull: 1 },
+      colProps: { span: 1, pull: 1 },
       ifShow: ({ values }) => isAudit(values.ACT_TYPE),
       colSlot: 'auditadd',
     },
     {
       field: 'LABEL_CODE',
       label: '鏍囩鎵撳嵃',
-      colProps: { span: 10 },
+      colProps: { span: 11 },
       component: 'Input',
       ifShow: ({ values }) => isPrint(values.ACT_TYPE),
     },
@@ -830,14 +1077,14 @@
       label: '1',
       defaultValue: '',
       component: 'Input',
-      colProps: { span: 2, pull: 1 },
+      colProps: { span: 1, pull: 1 },
       ifShow: ({ values }) => isPrint(values.ACT_TYPE),
       colSlot: 'printadd',
     },
     {
-      field: 'pkgRULE_CODE',
+      field: 'PKG_CODE',
       label: '鍖呰瑙勫垯',
-      colProps: { span: 10 },
+      colProps: { span: 11 },
       component: 'Input',
       ifShow: ({ values }) => isPackage(values.ACT_TYPE),
     },
@@ -846,7 +1093,7 @@
       label: '1',
       defaultValue: '',
       component: 'Input',
-      colProps: { span: 2, pull: 1 },
+      colProps: { span: 1, pull: 1 },
       ifShow: ({ values }) => isPackage(values.ACT_TYPE),
       colSlot: 'pkgadd',
     },
@@ -855,6 +1102,13 @@
       label: '澶囨敞',
       component: 'Input',
       colProps: { span: 12 },
+    },
+    {
+      field: 'OPTION_1',
+      label: '琛屼负閫夐」1',
+      component: 'Input',
+      colProps: { span: 12 },
+      show: false,
     },
   ];
 
@@ -1027,6 +1281,27 @@
       },
     },
     {
+      field: 'ALLOW_DFT_IN',
+      label: '鏄惁鍏佽涓嶈壇鍝佽繘绔�',
+      required: true,
+      component: 'Select',
+      colProps: { span: 12 },
+      componentProps: {
+        options: [
+          {
+            label: '鏄�',
+            value: 'Y',
+            key: 'Y',
+          },
+          {
+            label: '鍚�',
+            value: 'N',
+            key: 'N',
+          },
+        ],
+      },
+    },
+    {
       field: 'REMARK',
       label: '澶囨敞',
       component: 'Input',
@@ -1034,6 +1309,102 @@
     },
   ];
 
+  const crudForms = {
+    BAS_PKG_DTL: [
+      {
+        label: '鍖呰瑙勫垯ID',
+        field: 'PKG_RULE_ID',
+        component: 'Input',
+        colProps: {
+          span: 24,
+        },
+        dynamicDisabled: ({ values }) => {
+          return true;
+        },
+      },
+      {
+        label: '鍖呰灞傜骇',
+        field: 'PKG_LEVEL',
+        component: 'Input',
+        colProps: {
+          span: 24,
+        },
+        dynamicDisabled: ({ values }) => {
+          return true;
+        },
+      },
+      {
+        field: 'PKG_CODE',
+        label: '鍖呰/杞藉叿缂栫爜',
+        component: 'Input',
+        colProps: {
+          span: 24,
+        },
+        dynamicDisabled: ({ values }) => {
+          return true;
+        },
+      },
+      {
+        label: '鍖呰鏁伴噺',
+        field: 'PKG_QTY',
+        component: 'Input',
+        colProps: {
+          span: 24,
+        },
+        dynamicDisabled: ({ values }) => {
+          return true;
+        },
+      },
+      {
+        field: 'LABEL_CODE',
+        label: '妯℃澘缂栫爜',
+        component: 'Input',
+        show: true,
+        // required: true,
+        colProps: {
+          span: 22,
+        },
+      },
+      {
+        field: 'BAS_LABEL_TEMP1PSelect_0', //鎸変綆浠g爜閰嶇疆鐨勮鍒欙紝瀹炰綋鍚�+搴忓彿+PSelect_0锛屽簭鍙风敤鏉ュ尯鍒嗗涓殑鏃跺�欙紝PSelect_0杩欐槸涓浐瀹氬悗缂�
+        label: '1',
+        defaultValue: 'BAS_LABEL_TEMP',
+        component: 'Input',
+        colProps: { span: 2 },
+        colSlot: 'BAS_LABEL_TEMP1add', //鎸変綆浠g爜閰嶇疆鐨勮鍒欙紝瀹炰綋鍚�+搴忓彿+add锛屽簭鍙风敤鏉ュ尯鍒嗗涓殑鏃跺�欙紝add杩欐槸涓浐瀹氬悗缂�
+      },
+      {
+        label: '鍖呰鍚嶇О',
+        field: 'PKG_NAME',
+        component: 'Input',
+        colProps: {
+          span: 24,
+        },
+        show: false,
+      },
+      {
+        label: '澶囨敞',
+        field: 'REMARK',
+        component: 'Input',
+        colProps: {
+          span: 24,
+        },
+        dynamicDisabled: ({ values }) => {
+          return true;
+        },
+      },
+      {
+        label: 'ID',
+        field: 'ID',
+        component: 'Input',
+        colProps: {
+          span: 24,
+        },
+        show: false,
+      },
+    ] as FormSchema[],
+  };
+
   return [methods];
 }
 

--
Gitblit v1.9.3