| | |
| | | * @version: |
| | | * @Date: 2024-06-18 15:09:48 |
| | | * @LastEditors: Ben Lin |
| | | * @LastEditTime: 2024-07-27 12:59:25 |
| | | * @LastEditTime: 2024-07-29 21:26:39 |
| | | --> |
| | | <template> |
| | | <PageWrapper |
| | |
| | | </Suspense> |
| | | <!-- <a-card :title="titleInfo['baseTableTitle']" :bordered="false" class="!mt-5"> --> |
| | | <Suspense> |
| | | <Editdtl :entityName="entityName" @search="dtlFormSearch" /> |
| | | <Editdtl |
| | | :entityName="entityName" |
| | | @search="dtlFormSearch" |
| | | @gettables="GetTablesData" |
| | | @opencust="OpenCust" |
| | | /> |
| | | </Suspense> |
| | | <!-- </a-card> --> |
| | | <a-card |
| | |
| | | </template> |
| | | </CustModal> |
| | | </Suspense> |
| | | <GeneralModal @register="register" @success="handleCustSuccess" /> |
| | | </PageWrapper> |
| | | </template> |
| | | <script lang="ts" setup> |
| | |
| | | provide<Ref<any>>('baseCards', baseCards); |
| | | provide<Ref<any>>('useTables', useTables); |
| | | |
| | | const [registerCust, { openModal: openCustomModal, closeModal }] = useModal(); |
| | | const [registerCust] = useModal(); |
| | | const [register, { openModal, closeModal }] = useModal(); |
| | | const { setTitle } = useTabs(); |
| | | setTitle(objParams.value.Title); //设置标签页标题 |
| | | |
| | |
| | | }); |
| | | |
| | | /** |
| | | * @description: 获取useTable |
| | | * @param {*} d |
| | | * @return {*} |
| | | */ |
| | | function GetTablesData(d) { |
| | | useTableData.value = d; |
| | | } |
| | | |
| | | const currTableName = ref(''); |
| | | const currRecordId = ref(''); |
| | | /** |
| | | * @description: 打开弹框 |
| | | * @param {*} d |
| | | * @return {*} |
| | | */ |
| | | function OpenCust(d) { |
| | | console.log(d.name); |
| | | currTableName.value = d.name; |
| | | currRecordId.value = d.data.ID; |
| | | data.value[d.name].map((x) => { |
| | | if (x.ID == currRecordId.value && x.VAR_TYPE != d.data.VAR_TYPE) { |
| | | x.VAR_TYPE = d.data.VAR_TYPE; |
| | | } |
| | | }); |
| | | openModal(true, d.modalSchema); |
| | | } |
| | | |
| | | /** |
| | | * @description: |
| | | * @param {*} d |
| | | * @param {*} u |
| | | * @return {*} |
| | | */ |
| | | function handleCustSuccess(d, u) { |
| | | const _data = data.value[currTableName.value].map((x) => { |
| | | if (x.ID == currRecordId.value) { |
| | | x.VAR_VALUE = d.values.val; |
| | | } |
| | | return x; |
| | | }); |
| | | data.value[currTableName.value] = []; |
| | | useTables.value[currTableName.value][1].setProps({ |
| | | dataSource: [], |
| | | }); |
| | | data.value[currTableName.value] = _data; |
| | | useTables.value[currTableName.value][1].setProps({ |
| | | dataSource: data.value[currTableName.value], |
| | | }); |
| | | useTables.value[currTableName.value][1].reload(); |
| | | } |
| | | |
| | | /** |
| | | * @description: 异步全部提交方法 |
| | | * @return {*} |
| | | */ |
| | | async function submitAll() { |
| | | try { |
| | | const validates = await validate(); |
| | | const Keys = Object.getOwnPropertyNames(useFormData.value); |
| | | let i; |
| | | let p = [] as Promise<any>[]; |
| | | for (i = 0; i < Keys.length; i++) { |
| | | p.push( |
| | | SaveEntity( |
| | | validates[Keys[i]], |
| | | unref(isAllUpdate), |
| | | baseCards.value[i]['entityName'], |
| | | `${objParams.value['IsExist']}='${validates[Keys[i]][objParams.value['IsExist']]}'`, |
| | | true, |
| | | ), |
| | | ); |
| | | } |
| | | await Promise.all(p); |
| | | if ( |
| | | !custImport.value['default']()[0].SubmitAll && |
| | | !isFunction(custImport.value['default']()[0].SubmitAll) |
| | | ) { |
| | | /* 默认提交 */ |
| | | const Keys = Object.getOwnPropertyNames(useFormData.value); |
| | | let i; |
| | | let p = [] as Promise<any>[]; |
| | | for (i = 0; i < Keys.length; i++) { |
| | | p.push( |
| | | SaveEntity( |
| | | validates[Keys[i]], |
| | | unref(isAllUpdate), |
| | | baseCards.value[i]['entityName'], |
| | | `${objParams.value['IsExist']}='${validates[Keys[i]][objParams.value['IsExist']]}'`, |
| | | true, |
| | | ), |
| | | ); |
| | | } |
| | | await Promise.all(p); |
| | | objParams.value['drawers'].forEach((d) => { |
| | | let where = `${d['code']} = '${keyFieldValues.value[d['code']]}'`; |
| | | /* type: all-表示需要code的所有的值 */ |
| | |
| | | }); |
| | | } else { |
| | | /* 如果自定义提交方法存在就用自定义提交 */ |
| | | custImport.value['default']()[0].SubmitAll(data, keyFieldValues, cancel); |
| | | custImport.value['default']()[0].SubmitAll( |
| | | data, |
| | | keyFieldValues, |
| | | cancel, |
| | | objParams.value['drawers'], |
| | | validates, |
| | | ); |
| | | } |
| | | } catch (error) {} |
| | | } |