diff --git a/src/components/common/customerListModal.vue b/src/components/common/customerListModal.vue index f79b84c..56dd0be 100644 --- a/src/components/common/customerListModal.vue +++ b/src/components/common/customerListModal.vue @@ -67,13 +67,15 @@ const rowId = ref(''); const selectedKeys = ref([]); const selectedValues = ref([]); - + const props = defineProps({ + selectType: { type: String, default: 'checkbox' }, + + }); const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => { setModalProps({ confirmLoading: false }); isUpdate.value = !!data?.isUpdate; - }); const [registerTable, { getDataSource, setTableData, updateTableDataRecord, reload }] = useTable({ @@ -94,7 +96,7 @@ return { ...params, valid: 'Y',approCode: 'YSP'}; }, rowSelection: { - type: 'checkBox', + type: props.selectType, onChange: onSelectChange }, }); diff --git a/src/components/common/supplierListModal.vue b/src/components/common/supplierListModal.vue new file mode 100644 index 0000000..795d388 --- /dev/null +++ b/src/components/common/supplierListModal.vue @@ -0,0 +1,140 @@ + + + diff --git a/src/views/sales/ScoreCustomer/components/createForm.vue b/src/views/sales/ScoreCustomer/components/createForm.vue index 30ef611..ec564c3 100644 --- a/src/views/sales/ScoreCustomer/components/createForm.vue +++ b/src/views/sales/ScoreCustomer/components/createForm.vue @@ -5,8 +5,8 @@ - - + + @@ -61,7 +61,7 @@ - + @@ -84,7 +84,6 @@ import UploadList from '/@/components/Form/src/components/UploadList.vue'; import customerListModal from '/@/components/common/customerListModal.vue'; import { getUserInfo } from '/@/api/system/login'; -import { Rect } from '@grapecity/activereports/reportviewer'; const tableName = 'ScoreCustomer'; const columnName = 'ScoreCustomer' @@ -121,7 +120,7 @@ import { Rect } from '@grapecity/activereports/reportviewer'; const userInfo = reactive({}) const [register, { openModal:openModal}] = useModal(); const rules: Record = { - cpCode: [{ required: true, message: "该项为必填项", trigger: 'change' }], + cpCodeName: [{ required: true, message: "该项为必填项", trigger: 'change' }], gsId: [{ required: true, message: "该项为必填项", trigger: 'change' }], }; const layout = { @@ -201,6 +200,7 @@ import { Rect } from '@grapecity/activereports/reportviewer'; const handleSuccess = (val) => { formState.cpCode = val[0].cuCode formState.classCode = val[0].classCode + formState.cpCodeName = val[0].cuName } async function gsIdChange (val) { const res = await getLngGradeSystem(val) @@ -208,6 +208,7 @@ import { Rect } from '@grapecity/activereports/reportviewer'; dataList.value.forEach(v => { v.aTime = dayjs(new Date()).format('YYYY-MM-DD HH:mm:ss') v.aEmpCode = userInfo.name + v.gsiId = v.id }) } const numChagne = (type, record, index) => { diff --git a/src/views/sales/ScoreCustomer/index.vue b/src/views/sales/ScoreCustomer/index.vue index 84e8cea..bcd7c4a 100644 --- a/src/views/sales/ScoreCustomer/index.vue +++ b/src/views/sales/ScoreCustomer/index.vue @@ -111,7 +111,7 @@ const visibleFlowRecordModal = ref(false); const [registerModal, { openModal }] = useModal(); const formName='客户评价'; - const [registerTable, { reload, }] = useTable({ + const [registerTable, { reload, clearSelectedRowKeys }] = useTable({ title: '' || (formName + '列表'), api: getLngScorePage, rowKey: 'id', @@ -128,6 +128,7 @@ return { ...params, FormId: formIdComputedRef.value, PK: 'id' }; }, afterFetch: (res) => { + clearSelectedRowKeys() tableRef.value.setToolBarWidth(); }, @@ -152,14 +153,15 @@ if (!actionButtonConfig?.value.some(element => element.code == 'view')) { return; } - const { processId, taskIds, schemaId } = record.workflowData || {}; + const { processId, taskIds, schemaId, status } = record.workflowData || {}; if (taskIds && taskIds.length) { router.push({ path: '/flow/' + schemaId + '/' + (processId || '') + '/approveFlow', query: { taskId: taskIds[0], formName: formName, - formId:currentRoute.value.meta.formId + formId:currentRoute.value.meta.formId, + id: record.id } }); } else if (schemaId && !taskIds && processId) { @@ -169,18 +171,33 @@ readonly: 1, taskId: '', formName: formName, - formId:currentRoute.value.meta.formId + formId:currentRoute.value.meta.formId, + id: record.id, + status } }); } else { - router.push({ - path: '/form/ScoreCustomer/' + record.id + '/viewForm', - query: { - formPath: 'sales/ScoreCustomer', - formName: formName, - formId:currentRoute.value.meta.formId - } - }); + if (schemaIdComputedRef.value) { + router.push({ + path: '/flow/' + schemaIdComputedRef.value + '/0/createFlow', + query: { + formPath: 'sales/ScoreCustomer', + formName: formName, + formId:currentRoute.value.meta.formId, + type:'edit', + id: record.id, + disabled: 1, + } + }); + } + // router.push({ + // path: '/form/ScoreCustomer/' + record.id + '/viewForm', + // query: { + // formPath: 'sales/ScoreCustomer', + // formName: formName, + // formId:currentRoute.value.meta.formId + // } + // }); } } @@ -211,15 +228,27 @@ } function handleEdit(record: Recordable) { - - router.push({ - path: '/form/ScoreCustomer/' + record.id + '/updateForm', - query: { + if (schemaIdComputedRef.value) { + router.push({ + path: '/flow/' + schemaIdComputedRef.value + '/0/createFlow', + query: { formPath: 'sales/ScoreCustomer', formName: formName, - formId:currentRoute.value.meta.formId - } - }); + formId:currentRoute.value.meta.formId, + type:'edit', + id: record.id + } + }); + } else { + router.push({ + path: '/form/ScoreCustomer/' + record.id + '/updateForm', + query: { + formPath: 'sales/ScoreCustomer', + formName: formName, + formId:currentRoute.value.meta.formId + } + }); + } } function handleDelete(record: Recordable) { deleteList([record.id]); diff --git a/src/views/secondDev/customFormConfig.ts b/src/views/secondDev/customFormConfig.ts index 9fa945b..a0e1165 100644 --- a/src/views/secondDev/customFormConfig.ts +++ b/src/views/secondDev/customFormConfig.ts @@ -1,5 +1,5 @@ export const customFormConfig = { - codeList: ['addCustomer','addSupplier', 'addCustomerScore'], + codeList: ['addCustomer','addSupplier', 'addCustomerScore', 'addSupplierScore'], router: [ {code: 'addCustomer', src: ''} ] diff --git a/src/views/supplier/ScoreSupplier/components/createForm.vue b/src/views/supplier/ScoreSupplier/components/createForm.vue new file mode 100644 index 0000000..18080bd --- /dev/null +++ b/src/views/supplier/ScoreSupplier/components/createForm.vue @@ -0,0 +1,288 @@ + + + + + diff --git a/src/views/supplier/ScoreSupplier/index.vue b/src/views/supplier/ScoreSupplier/index.vue index a8930d5..cad6797 100644 --- a/src/views/supplier/ScoreSupplier/index.vue +++ b/src/views/supplier/ScoreSupplier/index.vue @@ -111,7 +111,7 @@ const visibleFlowRecordModal = ref(false); const [registerModal, { openModal }] = useModal(); const formName='供应商评价'; - const [registerTable, { reload, }] = useTable({ + const [registerTable, { reload, clearSelectedRowKeys }] = useTable({ title: '' || (formName + '列表'), api: getLngScorePage, rowKey: 'id', @@ -128,6 +128,7 @@ return { ...params, FormId: formIdComputedRef.value, PK: 'id' }; }, afterFetch: (res) => { + clearSelectedRowKeys() tableRef.value.setToolBarWidth(); }, @@ -152,14 +153,15 @@ if (!actionButtonConfig?.value.some(element => element.code == 'view')) { return; } - const { processId, taskIds, schemaId } = record.workflowData || {}; + const { processId, taskIds, schemaId,status } = record.workflowData || {}; if (taskIds && taskIds.length) { router.push({ path: '/flow/' + schemaId + '/' + (processId || '') + '/approveFlow', query: { taskId: taskIds[0], formName: formName, - formId:currentRoute.value.meta.formId + formId:currentRoute.value.meta.formId, + id: record.id } }); } else if (schemaId && !taskIds && processId) { @@ -169,18 +171,33 @@ readonly: 1, taskId: '', formName: formName, - formId:currentRoute.value.meta.formId + formId:currentRoute.value.meta.formId, + id: record.id, + status } }); } else { - router.push({ - path: '/form/ScoreSupplier/' + record.id + '/viewForm', - query: { - formPath: 'supplier/ScoreSupplier', - formName: formName, - formId:currentRoute.value.meta.formId - } - }); + if (schemaIdComputedRef.value) { + router.push({ + path: '/flow/' + schemaIdComputedRef.value + '/0/createFlow', + query: { + formPath: 'supplier/ScoreSupplier', + formName: formName, + formId:currentRoute.value.meta.formId, + type:'edit', + id: record.id, + disabled: 1, + } + }); + } + // router.push({ + // path: '/form/ScoreSupplier/' + record.id + '/viewForm', + // query: { + // formPath: 'supplier/ScoreSupplier', + // formName: formName, + // formId:currentRoute.value.meta.formId + // } + // }); } } @@ -211,15 +228,27 @@ } function handleEdit(record: Recordable) { - - router.push({ - path: '/form/ScoreSupplier/' + record.id + '/updateForm', - query: { + if (schemaIdComputedRef.value) { + router.push({ + path: '/flow/' + schemaIdComputedRef.value + '/0/createFlow', + query: { formPath: 'supplier/ScoreSupplier', formName: formName, - formId:currentRoute.value.meta.formId - } - }); + formId:currentRoute.value.meta.formId, + type:'edit', + id: record.id + } + }); + } else { + router.push({ + path: '/form/ScoreSupplier/' + record.id + '/updateForm', + query: { + formPath: 'supplier/ScoreSupplier', + formName: formName, + formId:currentRoute.value.meta.formId + } + }); + } } function handleDelete(record: Recordable) { deleteList([record.id]); diff --git a/src/views/supplier/Supplier/index.vue b/src/views/supplier/Supplier/index.vue index f10582f..9c44aa7 100644 --- a/src/views/supplier/Supplier/index.vue +++ b/src/views/supplier/Supplier/index.vue @@ -111,7 +111,7 @@ const visibleFlowRecordModal = ref(false); const [registerModal, { openModal }] = useModal(); const formName='供应商'; - const [registerTable, { reload, }] = useTable({ + const [registerTable, { reload, clearSelectedRowKeys }] = useTable({ title: '' || (formName + '列表'), api: getLngSupplierPage, rowKey: 'id', @@ -128,6 +128,7 @@ return { ...params, FormId: formIdComputedRef.value, PK: 'id' }; }, afterFetch: (res) => { + clearSelectedRowKeys() tableRef.value.setToolBarWidth(); }, @@ -152,7 +153,7 @@ if (!actionButtonConfig?.value.some(element => element.code == 'view')) { return; } - const { processId, taskIds, schemaId } = record.workflowData || {}; + const { processId, taskIds, schemaId, status } = record.workflowData || {}; if (taskIds && taskIds.length) { router.push({ path: '/flow/' + schemaId + '/' + (processId || '') + '/approveFlow',