Ben Lin
2024-07-04 68d75a540ec8b3168c3af956ea00b898036d92cd
src/views/tigerprojects/system/lowcode/entityts/MES_SHIFT.ts
@@ -4,42 +4,21 @@
 * @version:
 * @Date: 2024-06-19 20:34:27
 * @LastEditors: Ben Lin
 * @LastEditTime: 2024-07-02 03:40:15
 * @LastEditTime: 2024-07-03 22:27:11
 */
import { Ref, h, ref, unref } from 'vue';
import { DeleteEntity, GetEnum, getEntity } from '/@/api/tigerapi/system';
import { ActionItem, BasicColumn, useTable } from '/@/components/Table';
import { ActionItem, BasicColumn, FormSchema, useTable } from '/@/components/Table';
import { isNullOrEmpty, isNullOrUnDef } from '/@/utils/is';
import { buildUUID } from '/@/utils/uuid';
import { useUserStore } from '/@/store/modules/user';
import { formatToDateTime } from '/@/utils/dateUtil';
import { Tag } from 'ant-design-vue';
import { useLocale } from '/@/locales/useLocale';
import { useDrawer } from '/@/components/Drawer';
import { EditOperation, Search } from '../data';
const { getLocale } = useLocale();
function _default() {
  let _data = ref([
    {
      SFT_CODE: '1',
      SFT_NAME: '1',
      SFTS_CODE: '1',
      SFT_BEGIN: 1,
      SFT_END: 1,
      IS_ACROSS_DAY: 'N',
      REMARK: '1',
      AUTH_ORG: '1',
      AUTH_PROD: '1',
      AUTH_WH: '1',
      GHOST_ROW: false,
      CREATE_TIME: '2024-07-01 12:34:29',
      CREATE_USER: '1',
      UPDATE_TIME: '2024-07-01 12:34:29',
      UPDATE_USER: '1',
      ID: '6632a14fec8c470c9216f5c7354baa22',
    },
  ] as Recordable<any>[]);
  let _data = ref<any>({});
  const ActionColumn: BasicColumn = {
    width: 80,
    title: '操作',
@@ -203,9 +182,11 @@
          title: '列表信息',
          dataSource: data.value['MES_SHIFT'],
          columns: baseColumns['MES_SHIFT'],
          maxHeight: 230,
          formConfig: {
            labelWidth: 140,
            schemas: searchForms['MES_SHIFT'],
            submitFunc: () => Search('MES_SHIFT', data, args[0]), //自定义查询提交按钮的方法,触发查询提交事件
          },
          useSearchForm: true,
          showTableSetting: true,
@@ -224,9 +205,11 @@
          title: '列表信息',
          dataSource: data.value['MES_SHIFT_PRD'],
          columns: baseColumns['MES_SHIFT_PRD'],
          maxHeight: 260,
          formConfig: {
            labelWidth: 140,
            schemas: searchForms['MES_SHIFT_PRD'],
            submitFunc: () => Search('MES_SHIFT_PRD', data, args[0]), //自定义查询提交按钮的方法,触发查询提交事件
          },
          useSearchForm: true,
          showTableSetting: true,
@@ -243,9 +226,32 @@
        }),
      };
    },
    OthersValues: (val: string, id: string) => {
    /**
     * @description: 表格查询回调,父组件中通过子组件触发的事件获取传入的值,做具体的查询逻辑实现
     * @param {*} d
     * @return {*}
     */
    FormSearch: (d) => {
      let data = {} as any;
      switch (d.type) {
        case 'MES_SHIFT':
          data = d.data.value[d.type].filter(
            (item) =>
              item.SFT_CODE.includes(d.values.SFT_CODE) || item.SFT_NAME == d.values.SFT_NAME,
          );
          if (isNullOrEmpty(d.values.SFT_CODE) && isNullOrEmpty(d.values.SFT_NAME)) {
            data = d.data.value[d.type];
          }
          break;
        case 'MES_SHIFT_PRD':
          break;
      }
      return data;
    },
    KeyFieldValues: (val: string, id: string) => {
      return { SFTS_CODE: val };
    } /**
    }
    /**
     * @description: 自定义明细表中编辑返回方法
     * @param {string} type
     * @param {*} d
@@ -253,37 +259,21 @@
     * @return {*}
     */,
    EditOperation: (data: Ref<any[]>, d, u, item) => {
      if (u.isUpdate) {
        //更新
        var _data = data.value.map((item) => {
          if (item['ID'] == d.ID)
            return {
              ...item,
              SFT_CODE: d.SFT_CODE,
              SFT_NAME: d.SFT_NAME,
              SFT_BEGIN: d.SFT_BEGIN,
              SFT_END: d.SFT_END,
              IS_ACROSS_DAY: d.IS_ACROSS_DAY,
              REMARK: d.REMARK,
            };
          return item;
        });
        data.value = _data;
      } else {
        //新增
        d.ID = buildUUID();
        d.CREATE_USER = useUserStore().getUserInfo.userId as string;
        d.UPDATE_TIME = formatToDateTime(new Date());
        d.UPDATE_USER = useUserStore().getUserInfo.userId as string;
        var _data2: any[] = [];
        if (!isNullOrEmpty(data.value[item])) {
          _data2 = data.value[item].map((item) => {
            return item;
          });
        }
        _data2.push(d);
        data.value[item] = _data2;
      }
       //更新
       var _data = data.value[item].map((item) => {
        if (item['ID'] == d.ID)
          return {
            ...item,
            SFT_CODE: d.SFT_CODE,
            SFT_NAME: d.SFT_NAME,
            SFT_BEGIN: d.SFT_BEGIN,
            SFT_END: d.SFT_END,
            IS_ACROSS_DAY: d.IS_ACROSS_DAY,
            REMARK: d.REMARK,
          };
        return item;
      });
      EditOperation(data,d, u, item, _data);
    },
    /**
     * @description: 获取标题信息
@@ -311,14 +301,15 @@
   * @return {*}
   */
  function Del(args: Fn[], params: {}) {
    const name = params['name'];
    if (!isNullOrEmpty(params['data'])) {
      var _data = params['data'].value.filter((item) => item['ID'] != params['record']['ID']);
      params['data'].value = _data;
      var _data = params['data'].value[name].filter((item) => item['ID'] != params['record']['ID']);
      params['data'].value[name] = _data;
      args[6]({
        dataSource: [],
      });
      args[6]({
        dataSource: params['data'],
        dataSource: params['data'].value[name],
      });
      args[1]();
    } else {
@@ -492,7 +483,7 @@
          span: 8,
        },
      },
    ],
    ] as FormSchema[],
    MES_SHIFT_PRD: [
      {
        field: 'PRD_CODE',
@@ -510,7 +501,7 @@
          span: 8,
        },
      },
    ],
    ] as FormSchema[],
  };
  const crudForms = {
@@ -643,7 +634,7 @@
          span: 24,
        },
        componentProps: () => {
          const options = _data.map((entity) => ({
          const options = _data.value['MES_SHIFT'].map((entity) => ({
            value: entity.SFT_CODE,
            label: entity.SFT_NAME,
          }));