Ben Lin
2024-07-21 25f128f26f0330b5431e5513c16ea035ce46099a
src/views/tigerprojects/system/lowcode/entityts/BAS_PKG_DTL.ts
@@ -4,7 +4,7 @@
 * @version:
 * @Date: 2024-06-19 20:34:27
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-07-04 11:21:08
 * @LastEditTime: 2024-07-06 23:15:08
 */
import { Ref, ref } from 'vue';
@@ -46,7 +46,7 @@
    ActionItem: (params: Recordable<any>, data, ...args): ActionItem[] => {
      /* 重写删除方法 */
      if (!isNullOrUnDef(data[1])) {
        data[1].popConfirm.confirm = custDel.bind(null, args, params);
        data[1].popConfirm.confirm = Del.bind(null, args, params);
      }
      return data;
    },
@@ -64,6 +64,7 @@
          return {
            ...item,
            PKG_CODE: d.PKG_CODE,
            PKG_NAME: d.PKG_NAME,
            PKG_LEVEL: d.PKG_LEVEL,
            PKG_QTY: d.PKG_QTY,
            LABEL_CODE: d.LABEL_CODE,
@@ -261,9 +262,49 @@
        },
      };
    },
    GetUseForm: () => {
      return {};
    },
  };
  /* 以下是内部方法,不export,供上面的方法调用 */
  /**
   * @description: 自定义删除方法
   * @param {Fn} args
   * @param {*} params
   * @return {*}
   */
  function Del(args: Fn[], params: {}) {
    const name = params['name'];
    const useTables = args[1];
    if (!isNullOrEmpty(params['data'])) {
      var _data = params['data'].value[name]
        .filter((x) => x['ID'] != params['record']['ID']) //过滤掉删除掉的记录
        .map((item) => {
          //如果序号大于删除掉的记录的序号的,则序号减1
          item['PKG_LEVEL'] =
            item['PKG_LEVEL'] > params['record']['PKG_LEVEL']
              ? item['PKG_LEVEL'] - 1
              : item['PKG_LEVEL'];
          return item;
        });
      params['data'].value[name] = _data;
      useTables[name][1].setProps({
        dataSource: [],
      });
      useTables[name][1].setProps({
        dataSource: params['data'].value[name],
      });
      useTables[name][1].reload();
    } else {
      DeleteEntity(params['record'], params['entityName']).then((action) => {
        if (action.IsSuccessed) {
          useTables[name][1].reload();
        }
      });
    }
  }
  const searchForms = {
    BAS_PKG_DTL: [
@@ -283,8 +324,22 @@
      {
        title: '包装/载具编码',
        dataIndex: 'PKG_CODE',
        // ifShow: false,
        ifShow: false,
        width: 180,
      },
      {
        title: '包装/载具名称',
        dataIndex: 'PKG_NAME',
        ifShow: false,
        width: 180,
      },
      {
        title: '包装/载具',
        dataIndex: 'PKG_FULL',
        width: 180,
        customRender: ({ record }) => {
          return `${record.PKG_CODE} - ${record.PKG_NAME}`;
        },
      },
      {
        title: '包装层级',
@@ -361,7 +416,11 @@
          if (!isNullOrEmpty(record) && record['PKG_LEVEL'] == 1) {
            sqlcmd += ` And IS_MIN_PKG = 'Y'`;
          } else {
            sqlcmd += ` And IS_MIN_PKG != 'Y'`;
            if (formModel.PKG_LEVEL == 1) {
              sqlcmd += ` And IS_MIN_PKG = 'Y'`;
            } else {
              sqlcmd += ` And IS_MIN_PKG != 'Y'`;
            }
          }
          return {
            api: getEntity,
@@ -369,6 +428,10 @@
            resultField: 'Data.Items',
            labelField: 'PKG_NAME',
            valueField: 'PKG_CODE',
            onChange: (e, v) => {
              console.log('ApiSelect====>:', e, v);
              formModel.PKG_NAME = isNullOrUnDef(v) ? formModel.PKG_NAME : v.label;
            },
          };
        },
      },
@@ -381,6 +444,15 @@
        },
      },
      {
        label: '包装名称',
        field: 'PKG_NAME',
        component: 'Input',
        colProps: {
          span: 24,
        },
        show: false,
      },
      {
        label: '备注',
        field: 'REMARK',
        component: 'Input',