From 6abf4c703ebcdd4f856cb9cfe39bd7f0027dd6ac Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期六, 15 六月 2024 22:49:28 +0800 Subject: [PATCH] 工艺行为更新 --- src/views/tigerprojects/system/lowcode/normal/basDefectGrp.ts | 318 +++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 299 insertions(+), 19 deletions(-) diff --git a/src/views/tigerprojects/system/lowcode/normal/basDefectGrp.ts b/src/views/tigerprojects/system/lowcode/normal/basDefectGrp.ts index d139d9e..b22ff4f 100644 --- a/src/views/tigerprojects/system/lowcode/normal/basDefectGrp.ts +++ b/src/views/tigerprojects/system/lowcode/normal/basDefectGrp.ts @@ -1,12 +1,23 @@ -import { ActionItem, BasicColumn } from '/@/components/Table'; -import { useMessage } from '/@/hooks/web/useMessage'; +import { Ref, h, unref } from 'vue'; +import { ActionItem, BasicColumn, FormSchema } from '/@/components/Table'; import { useI18n } from '/@/hooks/web/useI18n'; -import { getFormSchema } from '/@/views/components/data'; -import { ref } from 'vue'; +import { useLocale } from '/@/locales/useLocale'; +import { Tag } from 'ant-design-vue'; +import { DeleteEntity, GetEnum, getEntity } from '/@/api/tigerapi/system'; +import { isNullOrEmpty } from '/@/utils/is'; +import { buildUUID } from '/@/utils/uuid'; +import { useUserStore } from '/@/store/modules/user'; +import { formatToDateTime } from '/@/utils/dateUtil'; const { t } = useI18n(); -const { notification, createErrorModal } = useMessage(); -/* 鑷畾涔夋寜閽柟娉� */ +const { getLocale } = useLocale(); + +/** + * @description: 鑷畾涔夋寜閽柟娉� + * @param {Fn} args + * @param {*} params + * @return {*} + */ export function DftGrpRelease(args: Fn[], params: {}) { console.log('鐐瑰嚮浜嗕笅鍙戞寜閽�'); // notification.success({ @@ -23,7 +34,7 @@ // }); // return; // } - params.dtlSlots.value = [ + params['dtlSlots'].value = [ { name: 'forminfo', slots: ['add', 'set'], @@ -34,33 +45,117 @@ args[2](true, { isUpdate: true, //鏄惁鏇存柊鎿嶄綔 - ctype: params.cType.value, //鏄摢涓〉闈� + ctype: params['cType'].value, //鏄摢涓〉闈� title: '宸ュ崟涓嬪彂', //鏍囬 width: '900px', //寮瑰嚭妗嗗搴� - formEl: params.useFormData.value, + formEl: params['useFormData'].value, formElName: ['forminfo'], //琛ㄥ崟鎻掓Ы鍚嶇О RowKeys: { add: 'ROUTE_CODE', set: 'ROUTE_CODE' }, //鎻掓Ы鐨勫脊鍑烘閫夋嫨鐨刢ode fnName: { BIZ_MES_WO: 'SaveWoBatch' }, //淇濆瓨鏂规硶鍚� initFnName: {}, //鍒濆鍖栨柟娉曞悕 - values: params.record, //琛ㄥ崟璁板綍 + values: params['record'], //琛ㄥ崟璁板綍 }); } +/** + * @description: 鑷畾涔夌紪杈戞柟娉� + * @param {Fn} args + * @param {*} params + * @return {*} + */ +export function DftGrpEdit(args: Fn[], params: {}) { + const param = { CODE: params['record']['DFTG_CODE'], ID: params['record']['ID'], Name: 'BAS_DEFECT', Title: `缂栬緫涓嶈壇浠g爜缁勶細${params['record']['DFTG_CODE']}`, pCode: 'DFTG_CODE', IsID: false }; + args[5](`/BAS_DEFECT/High/${encodeURI(JSON.stringify(param))}`); +} + +/** + * @description: 鑷畾涔夊垹闄ゆ柟娉� + * @param {Fn} args + * @param {*} params + * @return {*} + */ +export function DftGrpDel(args: Fn[], params: {}) { + if (!isNullOrEmpty(params['data'])) { + var _data = params['data'].value.filter((item) => item['ID'] != params['record']['ID']); + params['data'].value = _data; + args[6]({ + dataSource: [], + }); + args[6]({ + dataSource: params['data'], + }); + args[1](); + } else { + DeleteEntity(params['record'], params['entityName']).then((action) => { + if (action.IsSuccessed) { + args[1](); + } + }); + } +} + +/** + * @description: 鑷畾涔夋槑缁嗚〃涓紪杈戣繑鍥炴柟娉� + * @param {string} type + * @param {*} d + * @param {*} u + * @return {*} + */ +export function dftEditeOperation(data: Ref<any[]>, d, u) { + if (u.isUpdate) { + //鏇存柊 + var _data = data.value.map((item) => { + if (item['ID'] == d.ID) + return { + ...item, + DFT_CODE: d.DFT_CODE, + DFT_NAME: d.DFT_NAME, + DFT_LEVEL: d.DFT_LEVEL, + 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)) { + _data2 = data.value.map((item) => { + return item; + }); + } + _data2.push(d); + data.value = _data2; + } +} + export const dftGrpactionColumn: BasicColumn = { - width: 180, + width: 100, title: '鎿嶄綔', dataIndex: 'action', slots: { customRender: 'action' }, - fixed: undefined, + fixed: 'right', }; -export const dftGrpActionItem: ActionItem[] = [ - { - icon: 'release|svg', - tooltip: '涓嬪彂', - onClick: () => {}, - }, -]; +// export const dftGrpActionItem: ActionItem[] =[ +// { +// icon: 'clarity:note-edit-line', +// onClick: () => {}, +// }, +// { +// icon: 'ant-design:delete-outlined', +// color: 'error', +// popConfirm: { +// title: '鏄惁纭鍒犻櫎?', +// placement: 'left', +// confirm: () => {}, +// }, +// }, +// ]; export function dftGrpGetSelectSuccess(d, u) { return { @@ -99,5 +194,190 @@ ], tableName: 'BAS_ITEM', rowKey: 'ITEM_CODE', + searchInfo: {TABLE_NAME: 'BAS_ITEM'} }); } + +/** + * @description: 涓嶈壇浠g爜鍩烘湰淇℃伅 + * @return {*} + */ +export const baseSchema: FormSchema[] = [ + { + field: 'DFTG_CODE', + label: '涓嶈壇浠g爜缁勭紪鐮�', + component: 'Input', + required: true, + colProps: { + span: 8, + }, + }, + { + label: '涓嶈壇浠g爜缁勫悕绉�', + field: 'DFTG_NAME', + required: true, + component: 'Input', + colProps: { + span: 8, + }, + }, + { + label: '澶囨敞', + field: 'REMARK', + component: 'Input', + colProps: { + span: 8, + }, + }, +]; + +export const searchSchema: FormSchema[] = [ + { + field: 'DFT_CODE', + label: '涓嶈壇浠g爜缂栫爜', + component: 'Input', + colProps: { + span: 8, + }, + }, + { + label: '涓嶈壇浠g爜鍚嶇О', + field: 'DFT_NAME', + component: 'Input', + colProps: { + span: 8, + }, + }, +]; + +/** + * @description: 鑾峰彇涓嶈壇浠g爜澧炲垹鏀硅〃鍗� + * @return {*} + */ +export const crudSchema: FormSchema[] = [ + { + field: 'DFT_CODE', + label: '涓嶈壇浠g爜缂栫爜', + component: 'Input', + required: true, + colProps: { + span: 24, + }, + }, + { + label: '涓嶈壇浠g爜鍚嶇О', + field: 'DFT_NAME', + component: 'Input', + required: true, + colProps: { + span: 24, + }, + }, + { + label: '涓嶈壇浠g爜缁勭紪鐮�', + field: 'DFTG_CODE', + component: 'ApiSelect', + colProps: { + span: 24, + }, + componentProps: { + api: getEntity, + params: { entityName: 'BAS_DEFECT_GRP', sqlcmd: ' 1=1 ' }, + resultField: 'Data.Items', + labelField: 'DFTG_NAME', + valueField: 'DFTG_CODE', + }, + dynamicDisabled: ({ values }) => { + return true; + }, + }, + { + label: '缂洪櫡绛夌骇', + field: 'DFT_LEVEL', + component: 'ApiSelect', + required: true, + colProps: { + span: 24, + }, + componentProps: { + api: GetEnum, + params: { name: 'BAS_DEFECT+DFT_LEVELs' }, + resultField: 'Data', + labelField: unref(getLocale) == 'zh_CN' ? 'Desc' : 'Name', + valueField: 'Value', + }, + }, + { + label: '澶囨敞', + field: 'REMARK', + component: 'Input', + colProps: { + span: 24, + }, + }, + { + label: 'ID', + field: 'ID', + component: 'Input', + colProps: { + span: 24, + }, + show: false, + }, +]; + +/** + * @description: 涓嶈壇浠g爜琛ㄦ牸鍒� + * @return {*} + */ +export const defectBaseColumn: BasicColumn[] = [ + { + title: '涓嶈壇浠g爜缂栫爜', + dataIndex: 'DFT_CODE', + // ifShow: false, + width: 180, + }, + { + title: '涓嶈壇浠g爜鍚嶇О', + dataIndex: 'DFT_NAME', + }, + { + title: '缂洪櫡绛夌骇', + dataIndex: 'DFT_LEVEL', + customRender: ({ record }) => { + const type = record.DFT_LEVEL; + var text = ''; + var color = 'green'; + switch (type) { + case 0: + text = '杞诲井缂洪櫡'; + break; + case 1: + color = 'blue'; + text = '涓ラ噸缂洪櫡'; + break; + case 2: + color = 'red'; + text = '鑷村懡缂洪櫡'; + break; + } + return h(Tag, { color: color }, () => text); + }, + }, + { + title: '涓嶈壇浠g爜缁勭紪鐮�', + dataIndex: 'DFTG_CODE', + }, + { + title: '澶囨敞', + dataIndex: 'REMARK', + }, + { + title: '鏇存柊鏃堕棿', + dataIndex: 'UPDATE_TIME', + }, + { + title: '鏇存柊浜�', + dataIndex: 'UPDATE_USER', + }, +]; -- Gitblit v1.9.3