diff --git a/src/api/approve/Appro/index.ts b/src/api/approve/Appro/index.ts index e9e80df..03292e1 100644 --- a/src/api/approve/Appro/index.ts +++ b/src/api/approve/Appro/index.ts @@ -5,6 +5,7 @@ import { ErrorMessageMode } from '/#/axios'; enum Api { // Page = '/approve/appro/page', Page = '/magic-api/sales/lngApproPage', + PageFile = '/magic-api/sales/lngApproPage/modal', List = '/approve/appro/list', Info = '/approve/appro/info', LngAppro = '/approve/appro', @@ -84,6 +85,17 @@ export async function getCompDept(userId: String, mode: ErrorMessageMode = 'moda }, ); } +export async function getLngApproPageFile(params: LngApproPageParams, mode: ErrorMessageMode = 'modal') { + return defHttp.get( + { + url: Api.PageFile, + params, + }, + { + errorMessageMode: mode, + }, + ); +} /** * @description: 查询LngAppro分页列表 */ diff --git a/src/api/contract/ContractPurInt/index.ts b/src/api/contract/ContractPurInt/index.ts new file mode 100644 index 0000000..f141167 --- /dev/null +++ b/src/api/contract/ContractPurInt/index.ts @@ -0,0 +1,111 @@ +import { LngContractPageModel, LngContractPageParams, LngContractPageResult } from './model/ContractPurIntModel'; +import { defHttp } from '/@/utils/http/axios'; +import { ErrorMessageMode } from '/#/axios'; + +enum Api { + // Page = '/contract/contractPurInt/page', + Page = '/magic-api/contract/contractPurInt/page', + List = '/contract/contractPurInt/list', + Info = '/contract/contractPurInt/info', + LngContract = '/contract/contractPurInt', + queryAllPriceTerm = '/magic-api/mdm/queryAllPriceTerm', + queryCom = '/magic-api/mdm/queryCom', + + + + +} +export async function getAllCom (mode: ErrorMessageMode = 'modal') { + return defHttp.get( + { + url: Api.queryCom, + }, + { + errorMessageMode: mode, + }, + ); +} +export async function getAllPriceTerm (mode: ErrorMessageMode = 'modal') { + return defHttp.get( + { + url: Api.queryAllPriceTerm, + }, + { + errorMessageMode: mode, + }, + ); +} +/** + * @description: 查询LngContract分页列表 + */ +export async function getLngContractPage(params: LngContractPageParams, mode: ErrorMessageMode = 'modal') { + return defHttp.get( + { + url: Api.Page, + params, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 获取LngContract信息 + */ +export async function getLngContract(id: String, mode: ErrorMessageMode = 'modal') { + return defHttp.get( + { + url: Api.Info, + params: { id }, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 新增LngContract + */ +export async function addLngContract(lngContract: Recordable, mode: ErrorMessageMode = 'modal') { + return defHttp.post( + { + url: Api.LngContract, + params: lngContract, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 更新LngContract + */ +export async function updateLngContract(lngContract: Recordable, mode: ErrorMessageMode = 'modal') { + return defHttp.put( + { + url: Api.LngContract, + params: lngContract, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 删除LngContract(批量删除) + */ +export async function deleteLngContract(ids: string[], mode: ErrorMessageMode = 'modal') { + return defHttp.delete( + { + url: Api.LngContract, + data: ids, + }, + { + errorMessageMode: mode, + }, + ); +} \ No newline at end of file diff --git a/src/api/contract/ContractPurInt/model/ContractPurIntModel.ts b/src/api/contract/ContractPurInt/model/ContractPurIntModel.ts new file mode 100644 index 0000000..17544b1 --- /dev/null +++ b/src/api/contract/ContractPurInt/model/ContractPurIntModel.ts @@ -0,0 +1,58 @@ +import { BasicPageParams, BasicFetchResult } from '/@/api/model/baseModel'; + +/** + * @description: LngContract分页参数 模型 + */ +export interface LngContractPageParams extends BasicPageParams { + id: string; + + kNo: string; + + kName: string; + + cpCode: string; + + dateFrom: string; + + dateTo: string; + + approCode: string; + + ruleUserId: string; + + comId: string; + + note: string; +} + +/** + * @description: LngContract分页返回值模型 + */ +export interface LngContractPageModel { + id: string; + + kNo: string; + + kName: string; + + cpCode: string; + + dateFrom: string; + + dateTo: string; + + approCode: string; + + ruleUserId: string; + + comId: string; + + note: string; +} + +0; + +/** + * @description: LngContract分页返回值结构 + */ +export type LngContractPageResult = BasicFetchResult; \ No newline at end of file diff --git a/src/api/contract/ContractSalesInt/index.ts b/src/api/contract/ContractSalesInt/index.ts new file mode 100644 index 0000000..3e5cd72 --- /dev/null +++ b/src/api/contract/ContractSalesInt/index.ts @@ -0,0 +1,89 @@ +import { LngContractPageModel, LngContractPageParams, LngContractPageResult } from './model/ContractSalesIntModel'; +import { defHttp } from '/@/utils/http/axios'; +import { ErrorMessageMode } from '/#/axios'; + +enum Api { + Page = '/contract/contractSalesInt/page', + List = '/contract/contractSalesInt/list', + Info = '/contract/contractSalesInt/info', + LngContract = '/contract/contractSalesInt', + + + + +} + +/** + * @description: 查询LngContract分页列表 + */ +export async function getLngContractPage(params: LngContractPageParams, mode: ErrorMessageMode = 'modal') { + return defHttp.get( + { + url: Api.Page, + params, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 获取LngContract信息 + */ +export async function getLngContract(id: String, mode: ErrorMessageMode = 'modal') { + return defHttp.get( + { + url: Api.Info, + params: { id }, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 新增LngContract + */ +export async function addLngContract(lngContract: Recordable, mode: ErrorMessageMode = 'modal') { + return defHttp.post( + { + url: Api.LngContract, + params: lngContract, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 更新LngContract + */ +export async function updateLngContract(lngContract: Recordable, mode: ErrorMessageMode = 'modal') { + return defHttp.put( + { + url: Api.LngContract, + params: lngContract, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 删除LngContract(批量删除) + */ +export async function deleteLngContract(ids: string[], mode: ErrorMessageMode = 'modal') { + return defHttp.delete( + { + url: Api.LngContract, + data: ids, + }, + { + errorMessageMode: mode, + }, + ); +} \ No newline at end of file diff --git a/src/api/contract/ContractSalesInt/model/ContractSalesIntModel.ts b/src/api/contract/ContractSalesInt/model/ContractSalesIntModel.ts new file mode 100644 index 0000000..7caefc4 --- /dev/null +++ b/src/api/contract/ContractSalesInt/model/ContractSalesIntModel.ts @@ -0,0 +1,58 @@ +import { BasicPageParams, BasicFetchResult } from '/@/api/model/baseModel'; + +/** + * @description: LngContract分页参数 模型 + */ +export interface LngContractPageParams extends BasicPageParams { + id: string; + + kNo: string; + + kName: string; + + cpCode: string; + + dateFrom: string; + + dateTo: string; + + approCode: string; + + onlineSign: string; + + comId: string; + + note: string; +} + +/** + * @description: LngContract分页返回值模型 + */ +export interface LngContractPageModel { + id: string; + + kNo: string; + + kName: string; + + cpCode: string; + + dateFrom: string; + + dateTo: string; + + approCode: string; + + onlineSign: string; + + comId: string; + + note: string; +} + +0; + +/** + * @description: LngContract分页返回值结构 + */ +export type LngContractPageResult = BasicFetchResult; \ No newline at end of file diff --git a/src/api/contract/ContractSalesLng/index.ts b/src/api/contract/ContractSalesLng/index.ts new file mode 100644 index 0000000..ed91053 --- /dev/null +++ b/src/api/contract/ContractSalesLng/index.ts @@ -0,0 +1,90 @@ +import { LngContractPageModel, LngContractPageParams, LngContractPageResult } from './model/ContractSalesLngModel'; +import { defHttp } from '/@/utils/http/axios'; +import { ErrorMessageMode } from '/#/axios'; + +enum Api { + // Page = '/contract/contractSalesLng/page', + Page = '/magic-api/contract/contractSalesLng/page', + List = '/contract/contractSalesLng/list', + Info = '/contract/contractSalesLng/info', + LngContract = '/contract/contractSalesLng', + + + + +} + +/** + * @description: 查询LngContract分页列表 + */ +export async function getLngContractPage(params: LngContractPageParams, mode: ErrorMessageMode = 'modal') { + return defHttp.get( + { + url: Api.Page, + params, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 获取LngContract信息 + */ +export async function getLngContract(id: String, mode: ErrorMessageMode = 'modal') { + return defHttp.get( + { + url: Api.Info, + params: { id }, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 新增LngContract + */ +export async function addLngContract(lngContract: Recordable, mode: ErrorMessageMode = 'modal') { + return defHttp.post( + { + url: Api.LngContract, + params: lngContract, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 更新LngContract + */ +export async function updateLngContract(lngContract: Recordable, mode: ErrorMessageMode = 'modal') { + return defHttp.put( + { + url: Api.LngContract, + params: lngContract, + }, + { + errorMessageMode: mode, + }, + ); +} + +/** + * @description: 删除LngContract(批量删除) + */ +export async function deleteLngContract(ids: string[], mode: ErrorMessageMode = 'modal') { + return defHttp.delete( + { + url: Api.LngContract, + data: ids, + }, + { + errorMessageMode: mode, + }, + ); +} \ No newline at end of file diff --git a/src/api/contract/ContractSalesLng/model/ContractSalesLngModel.ts b/src/api/contract/ContractSalesLng/model/ContractSalesLngModel.ts new file mode 100644 index 0000000..85b8819 --- /dev/null +++ b/src/api/contract/ContractSalesLng/model/ContractSalesLngModel.ts @@ -0,0 +1,267 @@ +import { BasicPageParams, BasicFetchResult } from '/@/api/model/baseModel'; + +/** + * @description: LngContract分页参数 模型 + */ +export interface LngContractPageParams extends BasicPageParams { + id: string; + + kNo: string; + + kName: string; + + cpName: string; + + onlineSign: string; + + dateFromStart: string; + dateFromEnd: string; + + dateToStart: string; + dateToEnd: string; + + approCode: string; + + comId: string; + + note: string; +} + +/** + * @description: LngContract分页返回值模型 + */ +export interface LngContractPageModel { + id: string; + + kNo: string; + + kName: string; + + cpName: string; + + onlineSign: string; + + dateFrom: string; + + dateTo: string; + + approCode: string; + + comId: string; + + note: string; +} + +/** + * @description: LngContract表类型 + */ +export interface LngContractModel { + id: number; + + comId: number; + + kNo: string; + + kName: string; + + typeCode: string; + + onlineSign: string; + + cpTableName: string; + + cpCode: string; + + cpName: string; + + kPeriod: string; + + dateSign: string; + + dateFrom: string; + + dateTo: string; + + dateCfmFrom: string; + + dateCfmTo: string; + + curCode: string; + + amountDesc: string; + + empId: number; + + bDeptId: number; + + approCode: string; + + note: string; + + createUserId: number; + + createDate: string; + + modifyUserId: number; + + modifyDate: string; + + tenantId: number; + + deptId: number; + + ruleUserId: number; + + lngContractSalesLngDiscList?: LngContractSalesLngDiscModel; + + lngContractSalesLngList?: LngContractSalesLngModel; + + lngContractSalesLngQtyList?: LngContractSalesLngQtyModel; + + lngContractSalesLngStaList?: LngContractSalesLngStaModel; +} + +/** + * @description: LngContractSalesLngDisc表类型 + */ +export interface LngContractSalesLngDiscModel { + id: number; + + kId: number; + + discTypeCode: string; + + dateFrom: string; + + dateTo: string; + + discDesc: string; + + note: string; + + createUserId: number; + + createDate: string; + + modifyUserId: number; + + modifyDate: string; + + tenantId: number; + + deptId: number; + + ruleUserId: number; +} + +/** + * @description: LngContractSalesLng表类型 + */ +export interface LngContractSalesLngModel { + id: number; + + kId: number; + + prcTypeCode: string; + + periodTypeCode: string; + + uomCode: string; + + allStaSign: string; + + note: string; + + createUserId: number; + + createDate: string; + + modifyUserId: number; + + modifyDate: string; + + tenantId: number; + + deptId: number; + + ruleUserId: number; +} + +/** + * @description: LngContractSalesLngQty表类型 + */ +export interface LngContractSalesLngQtyModel { + id: number; + + kId: number; + + dateFrom: string; + + dateTo: string; + + baseInc: string; + + sort: number; + + rateTonGj: number; + + qtyGjMonth: number; + + qtyTonMonth: number; + + qtyGjDay: number; + + qtyTonDay: number; + + zfbyTypeCode: string; + + zfbyValue: number; + + note: string; + + createUserId: number; + + createDate: string; + + modifyUserId: number; + + modifyDate: string; + + tenantId: number; + + deptId: number; + + ruleUserId: number; +} + +/** + * @description: LngContractSalesLngSta表类型 + */ +export interface LngContractSalesLngStaModel { + id: number; + + kId: number; + + staCode: string; + + note: string; + + createUserId: number; + + createDate: string; + + modifyUserId: number; + + modifyDate: string; + + tenantId: number; + + deptId: number; + + ruleUserId: number; +} + +/** + * @description: LngContract分页返回值结构 + */ +export type LngContractPageResult = BasicFetchResult; \ No newline at end of file diff --git a/src/components/SecondDev/OpinionDialog.vue b/src/components/SecondDev/OpinionDialog.vue index 9398f68..b99a88d 100644 --- a/src/components/SecondDev/OpinionDialog.vue +++ b/src/components/SecondDev/OpinionDialog.vue @@ -30,11 +30,11 @@ - + @@ -13,7 +21,9 @@ import { BasicTable, useTable, FormSchema, BasicColumn, TableAction } from '/@/components/Table'; import { useMessage } from '/@/hooks/web/useMessage'; import { useI18n } from '/@/hooks/web/useI18n'; - import { getLngApproPage} from '/@/api/approve/appro'; + import { getLngApproPageFile} from '/@/api/approve/appro'; + import { parseDownloadUrl} from '/@/api/system/file'; + import { downloadByUrl } from '/@/utils/file/download'; const { t } = useI18n(); const codeFormSchema: FormSchema[] = [ @@ -22,12 +32,12 @@ const columns: BasicColumn[] = [ { dataIndex: 'title', title: '标题', align: 'left', }, - { dataIndex: 'code', title: '编号', align: 'left', }, - { dataIndex: 'typeName', title: '签报类型', align: 'left', }, - { dataIndex: 'empName', title: '拟稿人', align: 'left', }, - { dataIndex: 'bDeptName', title: '拟稿人所属部门', align: 'left', }, - { dataIndex: 'dateAppro', title: '拟稿日期', align: 'left', }, - { dataIndex: 'file', title: '附件', align: 'left', }, + { dataIndex: 'code', title: '编号', align: 'left',width: 120 }, + { dataIndex: 'typeName', title: '签报类型', align: 'left',width: 100 }, + { dataIndex: 'empName', title: '拟稿人', align: 'left',width: 120 }, + { dataIndex: 'bDeptName', title: '拟稿人所属部门', align: 'left',width: 120 }, + { dataIndex: 'dateAppro', title: '拟稿日期', align: 'left', width: 120 }, + { dataIndex: 'file', title: '附件', align: 'left',width: 200 }, ]; @@ -51,7 +61,7 @@ const [registerTable, { getDataSource, setTableData, updateTableDataRecord, reload }] = useTable({ title: t('签报列表'), - api: getLngApproPage, + api: getLngApproPageFile, columns, bordered: true, @@ -71,6 +81,11 @@ onChange: onSelectChange }, }); + const handleDownload = (info) => { + const url = parseDownloadUrl(info.response ? info.response.data.fileUrl : info.fileUrl); + const fileName = info.response ? info.response.data.fileOrg : info.fileOrg; + downloadByUrl({ url, fileName: fileName}); + }; const handleVisibleChange = (visible: boolean) => { if (visible) { nextTick(() => { @@ -104,8 +119,20 @@ diff --git a/src/components/common/contractFactListModal.vue b/src/components/common/contractFactListModal.vue index 2dfae25..166897a 100644 --- a/src/components/common/contractFactListModal.vue +++ b/src/components/common/contractFactListModal.vue @@ -16,27 +16,26 @@ import { getLngContractFactPage,} from '/@/api/contract/ContractFact'; const { t } = useI18n(); - const codeFormSchema: FormSchema[] = [ + const codeFormSchema: FormSchema[] = [ { field: 'kName', label: '合同号/名称', component: 'Input'}, { - field: 'relTypeCode', - label: '关联类别', - component: 'XjrSelect', - componentProps: { - datasourceType: 'dic', - params: { itemId: '2003815292742479874' }, - labelField: 'name', - valueField: 'value', - - getPopupContainer: () => document.body, - }, + field: 'dateFrom', + label: '有效期', + component: 'RangePicker', + componentProps: { + format: 'YYYY-MM-DD', + style: { width: '100%' }, + getPopupContainer: () => document.body, }, + }, ]; const columns: BasicColumn[] = [ { title: t('合同号'), dataIndex: 'kNo', }, { title: t('合同名称'), dataIndex: 'kName', }, - { title: t('关联类别'), dataIndex: 'relTypeName', }, + { dataIndex: 'periodTypeName', title: '合同期限', width: 120}, + { dataIndex: 'dateFrom', title: '有效期开始', width: 120,}, + { dataIndex: 'dateTo', title: '有效期结束', width: 120}, { title: t('合同类别'), dataIndex: 'kTypeName1', }, { title: t('承办人'), dataIndex: 'empName' ,}, { title: t('承办部门'), dataIndex: 'bDeptName' ,}, @@ -72,6 +71,7 @@ formConfig: { labelCol:{span: 9, offSet:10}, schemas: codeFormSchema, + fieldMapToTime: [['dateFrom', ['startDate', 'endDate'], 'YYYY-MM-DD']], showResetButton: true, }, immediate: false, // 设置为不立即调用 @@ -120,4 +120,14 @@ position: inherit !important; top: 0; } + + + diff --git a/src/components/common/contractQtyLngList.vue b/src/components/common/contractQtyLngList.vue new file mode 100644 index 0000000..5d9104f --- /dev/null +++ b/src/components/common/contractQtyLngList.vue @@ -0,0 +1,228 @@ + + + diff --git a/src/components/common/correlationApproList.vue b/src/components/common/correlationApproList.vue index 692bf5f..f371513 100644 --- a/src/components/common/correlationApproList.vue +++ b/src/components/common/correlationApproList.vue @@ -1,7 +1,7 @@ diff --git a/src/components/common/discountList.vue b/src/components/common/discountList.vue new file mode 100644 index 0000000..e19f456 --- /dev/null +++ b/src/components/common/discountList.vue @@ -0,0 +1,143 @@ + + + diff --git a/src/components/common/lngStationList.vue b/src/components/common/lngStationList.vue new file mode 100644 index 0000000..0db9fda --- /dev/null +++ b/src/components/common/lngStationList.vue @@ -0,0 +1,105 @@ + + + diff --git a/src/components/common/lngStationModal.vue b/src/components/common/lngStationModal.vue new file mode 100644 index 0000000..d1d11c1 --- /dev/null +++ b/src/components/common/lngStationModal.vue @@ -0,0 +1,115 @@ + + + diff --git a/src/design/index.less b/src/design/index.less index 0f6007a..38f22c9 100644 --- a/src/design/index.less +++ b/src/design/index.less @@ -63,6 +63,9 @@ span { color: rgb(0 0 0 / 85%) !important; } + .ant-select-disabled .ant-select-selection-placeholder { + display: none; + } .ant-picker.ant-picker-disabled .ant-picker-input .ant-picker-suffix { display: none !important; } diff --git a/src/views/contract/ContractFact/components/config.ts b/src/views/contract/ContractFact/components/config.ts index e05416e..378fe16 100644 --- a/src/views/contract/ContractFact/components/config.ts +++ b/src/views/contract/ContractFact/components/config.ts @@ -6,29 +6,40 @@ export const formConfig = { }; export const searchFormSchema: FormSchema[] = [ + { + field: 'dateFrom', + label: '有效期', + component: 'RangePicker', + componentProps: { + format: 'YYYY-MM-DD', + style: { width: '100%' }, + getPopupContainer: () => document.body, + }, + }, { field: 'kName', label: '合同号/名称', component: 'Input', }, { - field: 'relTypeCode', - label: '关联类别', - component: 'XjrSelect', + field: 'comId', + label: '合同主体', + component: 'Select', componentProps: { - datasourceType: 'dic', - params: { itemId: '2003815292742479874' }, - labelField: 'name', - valueField: 'value', + showSearch: true, + optionFilterProp: 'label', + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0; + }, + options: [ + // { label: '全部', value: '' }, + ], + placeholder: '请选择', + allowClear: true, getPopupContainer: () => document.body, }, }, - { - field: 'comId', - label: '合同主体', - component: 'Input', - }, { field: 'approCode', label: '审批状态', @@ -62,7 +73,7 @@ export const columns: BasicColumn[] = [ sorter: true, }, - { + { dataIndex: 'relTypeName', title: '关联类别', componentType: 'input', diff --git a/src/views/contract/ContractFact/components/createForm.vue b/src/views/contract/ContractFact/components/createForm.vue index 5c70e67..0b90598 100644 --- a/src/views/contract/ContractFact/components/createForm.vue +++ b/src/views/contract/ContractFact/components/createForm.vue @@ -52,12 +52,12 @@ - + - + @@ -452,6 +452,12 @@ if (!val) return formState.amountCn = amountToChinese(Number(val)*10000) } + const dateChange = (val, k) => { + if (!val) { + k=='dateFrom' && (formState.dateFrom = null) + k=='dateTo' && (formState.dateTo = null) + } + } const disabledDateStart = (startValue) => { const endValue = formState?.dateTo; if (!startValue || !endValue) { diff --git a/src/views/contract/ContractFact/index.vue b/src/views/contract/ContractFact/index.vue index 196b3b2..6f9f8df 100644 --- a/src/views/contract/ContractFact/index.vue +++ b/src/views/contract/ContractFact/index.vue @@ -52,6 +52,7 @@ import ApprovalProcess from '/@/views/workflow/task/components/ApprovalProcess.vue'; import { getDraftInfo } from '/@/api/workflow/process'; import { isValidJSON } from '/@/utils/event/design'; + import { getAllCom } from '/@/api/contract/ContractPurInt'; import ContractFactModal from './components/ContractFactModal.vue'; import {formConfig, searchFormSchema, columns } from './components/config'; @@ -79,7 +80,7 @@ const tableRef = ref(); //所有按钮 - const buttons = ref([{"name":"新增","code":"add","icon":"ant-design:plus-outlined","isDefault":true,"isUse":true,"type":"primary"},{"name":"编辑","code":"edit","icon":"ant-design:form-outlined","isDefault":true,"isUse":true},{"name":"刷新","code":"refresh","icon":"ant-design:reload-outlined","isDefault":true,"isUse":true},{"name":"查看","code":"view","icon":"ant-design:eye-outlined","isDefault":true,"isUse":true},{"name":"发起审批","code":"startwork","icon":"ant-design:form-outlined","isDefault":true,"isUse":true},{"name":"查看流转记录","code":"flowRecord","icon":"ant-design:form-outlined","isDefault":true,"isUse":true},{"name":"审批","code":"approve","icon":"ant-design:check-outlined","isDefault":false,"isUse":true},{"name":"变更","code":"update","icon":"ant-design:edit-filled","isDefault":false,"isUse":true},{"name":"删除","code":"delete","icon":"ant-design:delete-outlined","isDefault":true,"isUse":true}]); + const buttons = ref([{"name":"新增","code":"add","icon":"ant-design:plus-outlined","isDefault":true,"isUse":true,"type":"primary"},{"name":"编辑","code":"edit","icon":"ant-design:form-outlined","isDefault":true,"isUse":true},{"name":"刷新","code":"refresh","icon":"ant-design:reload-outlined","isDefault":true,"isUse":true},{"name":"查看","code":"view","icon":"ant-design:eye-outlined","isDefault":true,"isUse":true},{"name":"发起审批","code":"startwork","icon":"ant-design:form-outlined","isDefault":true,"isUse":true},{"name":"查看流转记录","code":"flowRecord","icon":"ant-design:form-outlined","isDefault":true,"isUse":true},{"name":"审批","code":"approve","icon":"ant-design:check-outlined","isDefault":false,"isUse":true},{"name":"变更","code":"update","icon":"ant-design:edit-filled","isDefault":false,"isUse":true},{"name":"删除","code":"delete","icon":"ant-design:delete-outlined","isDefault":true,"isUse":true},{"name":"数据日志","code":"datalog","icon":"ant-design:profile-outlined","isDefault":true,"isUse":true},]); //展示在列表内的按钮 const actionButtons = ref(['view', 'edit','datalog', 'copyData', 'delete','update', 'startwork','flowRecord','approve']); const buttonConfigs = computed(()=>{ @@ -94,7 +95,7 @@ return buttonConfigs.value?.filter((x) => actionButtons.value.includes(x.code)); }); - const btnEvent = {add : handleAdd,edit : handleEdit,refresh : handleRefresh,view : handleView,startwork : handleStartwork,flowRecord : handleFlowRecord,delete : handleDelete,update: handleUpdate, approve: handleApprove} + const btnEvent = {add : handleAdd,edit : handleEdit,refresh : handleRefresh,view : handleView,startwork : handleStartwork,flowRecord : handleFlowRecord,delete : handleDelete,update: handleUpdate, approve: handleApprove,datalog : handleDatalog} const { currentRoute } = useRouter(); const router = useRouter(); @@ -127,7 +128,7 @@ gutter: 16, }, schemas: customSearchFormSchema, - fieldMapToTime: [], + fieldMapToTime: [['dateFrom', ['startDate', 'endDate'], 'YYYY-MM-DD']], showResetButton: true, }, beforeFetch: (params) => { @@ -324,8 +325,18 @@ dbClickRow(record); } - onMounted(() => { - + onMounted(async () => { + let res = await getAllCom() || [] + customSearchFormSchema.value.forEach(v => { + if (v.field == 'comId') { + v.componentProps.options = res.map(v=> { + return { + label: v.name, + value: v.id + } + }) + } + }); if (schemaIdComputedRef.value) { bus.on(FLOW_PROCESSED, handleRefresh); bus.on(CREATE_FLOW, handleRefresh); @@ -352,7 +363,7 @@ let approveBtn: ActionItem[] = []; let hasFlowRecord = false; actionButtonConfig.value?.map((button) => { - if (['view', 'copyData', 'enable', 'disable'].includes(button.code)) { + if (['view', 'copyData', 'enable', 'disable', 'datalog'].includes(button.code)) { actionsList.push({ icon: button?.icon, tooltip: button?.name, @@ -504,4 +515,22 @@ .hide{ display: none !important; } + + :deep( .ant-col-8:nth-child(1)) { + width: 320px !important; + max-width: 320px !important;; + } + :deep(.ant-col-8:nth-child(1) .ant-form-item-label) { + width: 80px !important; + } + :deep( .ant-col-8:nth-child(4)) { + width: 320px !important; + max-width: 320px !important;; + } + :deep(.ant-col-8:nth-child(4) .ant-form-item-label) { + width: 80px !important; + } + :deep(.ant-col-8:nth-child(3) .ant-select-selector) { + width: 172px !important; + } \ No newline at end of file diff --git a/src/views/contract/ContractPurInt/components/ContractPurIntModal.vue b/src/views/contract/ContractPurInt/components/ContractPurIntModal.vue new file mode 100644 index 0000000..168dd47 --- /dev/null +++ b/src/views/contract/ContractPurInt/components/ContractPurIntModal.vue @@ -0,0 +1,110 @@ + + \ No newline at end of file diff --git a/src/views/contract/ContractPurInt/components/Form.vue b/src/views/contract/ContractPurInt/components/Form.vue new file mode 100644 index 0000000..ae982b2 --- /dev/null +++ b/src/views/contract/ContractPurInt/components/Form.vue @@ -0,0 +1,224 @@ + + \ No newline at end of file diff --git a/src/views/contract/ContractPurInt/components/config.ts b/src/views/contract/ContractPurInt/components/config.ts new file mode 100644 index 0000000..256a9a1 --- /dev/null +++ b/src/views/contract/ContractPurInt/components/config.ts @@ -0,0 +1,748 @@ +import { FormProps, FormSchema } from '/@/components/Form'; +import { BasicColumn } from '/@/components/Table'; + +export const formConfig = { + useCustomConfig: false, +}; + +export const searchFormSchema: FormSchema[] = [ + { + field: 'dateFrom', + label: '有效期', + component: 'RangePicker', + componentProps: { + format: 'YYYY-MM-DD', + style: { width: '100%' }, + getPopupContainer: () => document.body, + }, + }, + { + field: 'kName', + label: '合同号/名称', + component: 'Input', + }, + { + field: 'cpName', + label: '供应商', + component: 'Input', + }, + { + field: 'longSpotCode', + label: '长协现货', + component: 'XjrSelect', + componentProps: { + datasourceType: 'dic', + params: { itemId: '2018871666841546754' }, + labelField: 'name', + valueField: 'value', + + getPopupContainer: () => document.body, + }, + }, + { + field: 'comId', + label: '合同主体', + component: 'Select', + componentProps: { + showSearch: true, + optionFilterProp: 'label', + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0; + }, + options: [ + // { label: '全部', value: '' }, + ], + placeholder: '请选择', + allowClear: true, + + getPopupContainer: () => document.body, + }, + }, + { + field: 'approCode', + label: '审批状态', + component: 'XjrSelect', + componentProps: { + datasourceType: 'dic', + params: { itemId: '1990669393069129729' }, + labelField: 'name', + valueField: 'value', + + getPopupContainer: () => document.body, + }, + }, +]; + +export const columns: BasicColumn[] = [ + + { + dataIndex: 'kNo', + title: '合同号', + componentType: 'input', + align: 'left', + width:150, + sorter: true, + }, + + { + dataIndex: 'kName', + title: '合同名称', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'cpName', + title: '供应商', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'dateFrom', + title: '有效期开始', + componentType: 'input', + align: 'left', + width: 120, + sorter: true, + }, + + { + dataIndex: 'dateTo', + title: '有效期结束', + componentType: 'input', + align: 'left', + width: 120, + sorter: true, + }, + + { + dataIndex: 'approName', + title: '状态', + componentType: 'input', + align: 'left', + width: 100, + sorter: true, + }, + + { + dataIndex: 'longSpotName', + title: '长协/现货', + componentType: 'input', + align: 'left', + width: 100, + sorter: true, + }, + + { + dataIndex: 'comName', + title: '合同主体', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'note', + title: '备注', + componentType: 'input', + align: 'left', + + sorter: true, + }, +]; +//表单事件 +export const formEventConfigs = { + 0: [ + { + type: 'circle', + color: '#2774ff', + text: '开始节点', + icon: '#icon-kaishi', + bgcColor: '#D8E5FF', + isUserDefined: false, + }, + { + color: '#F6AB01', + icon: '#icon-chushihua', + text: '初始化表单', + bgcColor: '#f9f5ea', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 1: [ + { + color: '#B36EDB', + icon: '#icon-shujufenxi', + text: '获取表单数据', + detail: '(新增无此操作)', + bgcColor: '#F8F2FC', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 2: [ + { + color: '#F8625C', + icon: '#icon-jiazai', + text: '加载表单', + bgcColor: '#FFF1F1', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 3: [ + { + color: '#6C6AE0', + icon: '#icon-jsontijiao', + text: '提交表单', + bgcColor: '#F5F4FF', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 4: [ + { + type: 'circle', + color: '#F8625C', + text: '结束节点', + icon: '#icon-jieshuzhiliao', + bgcColor: '#FFD6D6', + isLast: true, + isUserDefined: false, + }, + ], +}; +export const formProps: FormProps = { + labelCol: { span: 3, offset: 0 }, + labelAlign: 'right', + layout: 'horizontal', + size: 'default', + schemas: [ + { + key: '29c5fddb475e4068933c4cdd3aa16f5e', + field: 'id', + label: 'id', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入id', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '27bc7461df904678aeb49a093dc4b730', + field: 'kNo', + label: '合同号', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入合同号', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: 'd123a6eef3a545ff844f6ac704a33818', + field: 'kName', + label: '合同名称', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入合同名称', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '12fb6cf2213a4cc08fdb230c5753ff9d', + field: 'cpCode', + label: '供应商', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入供应商', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '14deab63ce0247a7bc2b26ee2d4f798e', + field: 'dateFrom', + label: '有效期开始', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入有效期开始', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '16501b8ceb02452d87b5ad73c26dfbe3', + field: 'dateTo', + label: '有效期结束', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入有效期结束', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '663f5c58fcee4bf3a0b5f44dac189aa3', + field: 'approCode', + label: '状态', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入状态', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '914db13b0ed240b1a78e8215ad7f3fc0', + field: 'ruleUserId', + label: '长协/现货', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入长协/现货', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: 'e05d695935964d1b8ef81b95f5409265', + field: 'comId', + label: '合同主体', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入合同主体', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '8e1d827a4fa141f2a3c8082476021882', + field: 'note', + label: '备注', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入备注', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: 'bbe113993f47471aaf121fd0b15739b3', + label: '表格组件', + field: 'lngContractPurIntList', + type: 'form', + component: 'SubForm', + required: true, + colProps: { span: 24 }, + componentProps: { + mainKey: 'lngContractPurIntList', + columns: [ + { + key: 'f80329b85f7949c38f4c1bb5ec0ae426', + title: '单行文本', + dataIndex: 'id', + componentType: 'Input', + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入单行文本', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + }, + }, + { title: '操作', key: 'action', fixed: 'right', width: '50px' }, + ], + span: '24', + preloadType: 'api', + apiConfig: {}, + itemId: '', + dicOptions: [], + useSelectButton: false, + buttonName: '选择数据', + showLabel: true, + showComponentBorder: true, + showFormBorder: true, + showIndex: false, + isShow: true, + multipleHeads: [], + }, + }, + { + key: '04ecdc24d18345ca840e62c7b10f9cb7', + label: '表格组件', + field: 'lngContractFactRelList', + type: 'form', + component: 'SubForm', + required: true, + colProps: { span: 24 }, + componentProps: { + mainKey: 'lngContractFactRelList', + columns: [ + { + key: '8489d5b01b72476ea19da6bcf94326ff', + title: '单行文本', + dataIndex: 'id', + componentType: 'Input', + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入单行文本', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + }, + }, + { title: '操作', key: 'action', fixed: 'right', width: '50px' }, + ], + span: '24', + preloadType: 'api', + apiConfig: {}, + itemId: '', + dicOptions: [], + useSelectButton: false, + buttonName: '选择数据', + showLabel: true, + showComponentBorder: true, + showFormBorder: true, + showIndex: false, + isShow: true, + multipleHeads: [], + }, + }, + { + key: '31a26fb3a0c74d7ab1887ba99b23329b', + label: '表格组件', + field: 'lngContractApproRelList', + type: 'form', + component: 'SubForm', + required: true, + colProps: { span: 24 }, + componentProps: { + mainKey: 'lngContractApproRelList', + columns: [ + { + key: '1df666506f784eec9dda452641a1de8b', + title: '单行文本', + dataIndex: 'id', + componentType: 'Input', + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入单行文本', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + }, + }, + { title: '操作', key: 'action', fixed: 'right', width: '50px' }, + ], + span: '24', + preloadType: 'api', + apiConfig: {}, + itemId: '', + dicOptions: [], + useSelectButton: false, + buttonName: '选择数据', + showLabel: true, + showComponentBorder: true, + showFormBorder: true, + showIndex: false, + isShow: true, + multipleHeads: [], + }, + }, + ], + showActionButtonGroup: false, + buttonLocation: 'center', + actionColOptions: { span: 24 }, + showResetButton: false, + showSubmitButton: false, + hiddenComponent: [], +}; \ No newline at end of file diff --git a/src/views/contract/ContractPurInt/components/createForm.vue b/src/views/contract/ContractPurInt/components/createForm.vue new file mode 100644 index 0000000..a1ff320 --- /dev/null +++ b/src/views/contract/ContractPurInt/components/createForm.vue @@ -0,0 +1,718 @@ + + + + + diff --git a/src/views/contract/ContractPurInt/components/workflowPermission.ts b/src/views/contract/ContractPurInt/components/workflowPermission.ts new file mode 100644 index 0000000..5c448fe --- /dev/null +++ b/src/views/contract/ContractPurInt/components/workflowPermission.ts @@ -0,0 +1,239 @@ +export const permissionList = [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: 'id', + fieldId: 'id', + isSubTable: false, + showChildren: true, + type: 'input', + key: '29c5fddb475e4068933c4cdd3aa16f5e', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '合同号', + fieldId: 'kNo', + isSubTable: false, + showChildren: true, + type: 'input', + key: '27bc7461df904678aeb49a093dc4b730', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '合同名称', + fieldId: 'kName', + isSubTable: false, + showChildren: true, + type: 'input', + key: 'd123a6eef3a545ff844f6ac704a33818', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '供应商', + fieldId: 'cpCode', + isSubTable: false, + showChildren: true, + type: 'input', + key: '12fb6cf2213a4cc08fdb230c5753ff9d', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '有效期开始', + fieldId: 'dateFrom', + isSubTable: false, + showChildren: true, + type: 'input', + key: '14deab63ce0247a7bc2b26ee2d4f798e', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '有效期结束', + fieldId: 'dateTo', + isSubTable: false, + showChildren: true, + type: 'input', + key: '16501b8ceb02452d87b5ad73c26dfbe3', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '状态', + fieldId: 'approCode', + isSubTable: false, + showChildren: true, + type: 'input', + key: '663f5c58fcee4bf3a0b5f44dac189aa3', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '长协/现货', + fieldId: 'ruleUserId', + isSubTable: false, + showChildren: true, + type: 'input', + key: '914db13b0ed240b1a78e8215ad7f3fc0', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '合同主体', + fieldId: 'comId', + isSubTable: false, + showChildren: true, + type: 'input', + key: 'e05d695935964d1b8ef81b95f5409265', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '备注', + fieldId: 'note', + isSubTable: false, + showChildren: true, + type: 'input', + key: '8e1d827a4fa141f2a3c8082476021882', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + showChildren: false, + tableName: 'lngContractPurIntList', + fieldName: '表格组件', + fieldId: 'lngContractPurIntList', + type: 'form', + key: 'bbe113993f47471aaf121fd0b15739b3', + children: [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + isSaveTable: false, + showChildren: false, + tableName: 'lngContractPurIntList', + fieldName: '单行文本', + fieldId: 'id', + key: 'f80329b85f7949c38f4c1bb5ec0ae426', + children: [], + }, + ], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + showChildren: false, + tableName: 'lngContractFactRelList', + fieldName: '表格组件', + fieldId: 'lngContractFactRelList', + type: 'form', + key: '04ecdc24d18345ca840e62c7b10f9cb7', + children: [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + isSaveTable: false, + showChildren: false, + tableName: 'lngContractFactRelList', + fieldName: '单行文本', + fieldId: 'id', + key: '8489d5b01b72476ea19da6bcf94326ff', + children: [], + }, + ], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + showChildren: false, + tableName: 'lngContractApproRelList', + fieldName: '表格组件', + fieldId: 'lngContractApproRelList', + type: 'form', + key: '31a26fb3a0c74d7ab1887ba99b23329b', + children: [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + isSaveTable: false, + showChildren: false, + tableName: 'lngContractApproRelList', + fieldName: '单行文本', + fieldId: 'id', + key: '1df666506f784eec9dda452641a1de8b', + children: [], + }, + ], + }, +]; \ No newline at end of file diff --git a/src/views/contract/ContractPurInt/index.vue b/src/views/contract/ContractPurInt/index.vue new file mode 100644 index 0000000..35f7567 --- /dev/null +++ b/src/views/contract/ContractPurInt/index.vue @@ -0,0 +1,531 @@ + + + \ No newline at end of file diff --git a/src/views/contract/ContractSalesInt/components/ContractSalesIntModal.vue b/src/views/contract/ContractSalesInt/components/ContractSalesIntModal.vue new file mode 100644 index 0000000..168dd47 --- /dev/null +++ b/src/views/contract/ContractSalesInt/components/ContractSalesIntModal.vue @@ -0,0 +1,110 @@ + + \ No newline at end of file diff --git a/src/views/contract/ContractSalesInt/components/Form.vue b/src/views/contract/ContractSalesInt/components/Form.vue new file mode 100644 index 0000000..4460fd0 --- /dev/null +++ b/src/views/contract/ContractSalesInt/components/Form.vue @@ -0,0 +1,224 @@ + + \ No newline at end of file diff --git a/src/views/contract/ContractSalesInt/components/config.ts b/src/views/contract/ContractSalesInt/components/config.ts new file mode 100644 index 0000000..ca59ab5 --- /dev/null +++ b/src/views/contract/ContractSalesInt/components/config.ts @@ -0,0 +1,693 @@ +import { FormProps, FormSchema } from '/@/components/Form'; +import { BasicColumn } from '/@/components/Table'; + +export const formConfig = { + useCustomConfig: false, +}; + +export const searchFormSchema: FormSchema[] = [ + { + field: 'kName', + label: '合同号/名称', + component: 'Input', + }, + { + field: 'cpName', + label: '客户', + component: 'Input', + }, +]; + +export const columns: BasicColumn[] = [ + + { + dataIndex: 'kNo', + title: '合同号', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'kName', + title: '合同名称', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'cpCode', + title: '客户', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'dateFrom', + title: '有效期开始', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'dateTo', + title: '有效期结束', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'approCode', + title: '状态', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'onlineSign', + title: ' 长协/现货', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'comId', + title: '合同主体', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'note', + title: '备注', + componentType: 'input', + align: 'left', + + sorter: true, + }, +]; +//表单事件 +export const formEventConfigs = { + 0: [ + { + type: 'circle', + color: '#2774ff', + text: '开始节点', + icon: '#icon-kaishi', + bgcColor: '#D8E5FF', + isUserDefined: false, + }, + { + color: '#F6AB01', + icon: '#icon-chushihua', + text: '初始化表单', + bgcColor: '#f9f5ea', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 1: [ + { + color: '#B36EDB', + icon: '#icon-shujufenxi', + text: '获取表单数据', + detail: '(新增无此操作)', + bgcColor: '#F8F2FC', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 2: [ + { + color: '#F8625C', + icon: '#icon-jiazai', + text: '加载表单', + bgcColor: '#FFF1F1', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 3: [ + { + color: '#6C6AE0', + icon: '#icon-jsontijiao', + text: '提交表单', + bgcColor: '#F5F4FF', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 4: [ + { + type: 'circle', + color: '#F8625C', + text: '结束节点', + icon: '#icon-jieshuzhiliao', + bgcColor: '#FFD6D6', + isLast: true, + isUserDefined: false, + }, + ], +}; +export const formProps: FormProps = { + labelCol: { span: 3, offset: 0 }, + labelAlign: 'right', + layout: 'horizontal', + size: 'default', + schemas: [ + { + key: '78069583d31647abafa20cbca816202a', + field: 'id', + label: 'id', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入id', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '8e72b59c0294429aa82b9537848c9d0d', + field: 'kNo', + label: '合同号', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入合同号', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '55301c8174424692aa917df7e1d15706', + field: 'kName', + label: '合同名称', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入合同名称', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '4c153b6d960b498fad4edf77d7de070d', + field: 'cpCode', + label: '客户', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入客户', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '1b9aa275c8b94518be41f6c31030164d', + field: 'dateFrom', + label: '有效期开始', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入有效期开始', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '23c4724a51f54b458d9f1cecdfe26283', + field: 'dateTo', + label: '有效期结束', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入有效期结束', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: 'bfed8f792dab483582acf337c92f8939', + field: 'approCode', + label: '状态', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入状态', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '2dd66cb3955d4fc7a683f90706a582ac', + field: 'onlineSign', + label: ' 长协/现货', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入 长协/现货', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '86de8960a0234dfca53589b781057db0', + field: 'comId', + label: '合同主体', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入合同主体', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '080137758b784c6d963933012d70577c', + field: 'note', + label: '备注', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入备注', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '1dfe4e60cc744c1a8d2e9457b630d805', + label: '表格组件', + field: 'lngContractSalesIntList', + type: 'form', + component: 'SubForm', + required: true, + colProps: { span: 24 }, + componentProps: { + mainKey: 'lngContractSalesIntList', + columns: [ + { + key: 'e8df885a3f25478dbf53c2ed13b8a48e', + title: '单行文本', + dataIndex: 'id', + componentType: 'Input', + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入单行文本', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + }, + }, + { title: '操作', key: 'action', fixed: 'right', width: '50px' }, + ], + span: '24', + preloadType: 'api', + apiConfig: {}, + itemId: '', + dicOptions: [], + useSelectButton: false, + buttonName: '选择数据', + showLabel: true, + showComponentBorder: true, + showFormBorder: true, + showIndex: false, + isShow: true, + multipleHeads: [], + }, + }, + { + key: '25eb524c997d4d4986a3fc400899fff4', + label: '表格组件', + field: 'lngContractFactRelList', + type: 'form', + component: 'SubForm', + required: true, + colProps: { span: 24 }, + componentProps: { + mainKey: 'lngContractFactRelList', + columns: [ + { + key: '718e23353c004f2b8b9f0772bdccda42', + title: '单行文本', + dataIndex: 'id', + componentType: 'Input', + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入单行文本', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + }, + }, + { title: '操作', key: 'action', fixed: 'right', width: '50px' }, + ], + span: '24', + preloadType: 'api', + apiConfig: {}, + itemId: '', + dicOptions: [], + useSelectButton: false, + buttonName: '选择数据', + showLabel: true, + showComponentBorder: true, + showFormBorder: true, + showIndex: false, + isShow: true, + multipleHeads: [], + }, + }, + { + key: 'b256413d175442329e39f6fd0f0a55e3', + label: '表格组件', + field: 'lngContractApproRelList', + type: 'form', + component: 'SubForm', + required: true, + colProps: { span: 24 }, + componentProps: { + mainKey: 'lngContractApproRelList', + columns: [ + { + key: '2a7034e3da7d4ce586424b0919fc5625', + title: '单行文本', + dataIndex: 'id', + componentType: 'Input', + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入单行文本', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + }, + }, + { title: '操作', key: 'action', fixed: 'right', width: '50px' }, + ], + span: '24', + preloadType: 'api', + apiConfig: {}, + itemId: '', + dicOptions: [], + useSelectButton: false, + buttonName: '选择数据', + showLabel: true, + showComponentBorder: true, + showFormBorder: true, + showIndex: false, + isShow: true, + multipleHeads: [], + }, + }, + ], + showActionButtonGroup: false, + buttonLocation: 'center', + actionColOptions: { span: 24 }, + showResetButton: false, + showSubmitButton: false, + hiddenComponent: [], +}; \ No newline at end of file diff --git a/src/views/contract/ContractSalesInt/components/workflowPermission.ts b/src/views/contract/ContractSalesInt/components/workflowPermission.ts new file mode 100644 index 0000000..16f36d7 --- /dev/null +++ b/src/views/contract/ContractSalesInt/components/workflowPermission.ts @@ -0,0 +1,239 @@ +export const permissionList = [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: 'id', + fieldId: 'id', + isSubTable: false, + showChildren: true, + type: 'input', + key: '78069583d31647abafa20cbca816202a', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '合同号', + fieldId: 'kNo', + isSubTable: false, + showChildren: true, + type: 'input', + key: '8e72b59c0294429aa82b9537848c9d0d', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '合同名称', + fieldId: 'kName', + isSubTable: false, + showChildren: true, + type: 'input', + key: '55301c8174424692aa917df7e1d15706', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '客户', + fieldId: 'cpCode', + isSubTable: false, + showChildren: true, + type: 'input', + key: '4c153b6d960b498fad4edf77d7de070d', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '有效期开始', + fieldId: 'dateFrom', + isSubTable: false, + showChildren: true, + type: 'input', + key: '1b9aa275c8b94518be41f6c31030164d', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '有效期结束', + fieldId: 'dateTo', + isSubTable: false, + showChildren: true, + type: 'input', + key: '23c4724a51f54b458d9f1cecdfe26283', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '状态', + fieldId: 'approCode', + isSubTable: false, + showChildren: true, + type: 'input', + key: 'bfed8f792dab483582acf337c92f8939', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: ' 长协/现货', + fieldId: 'onlineSign', + isSubTable: false, + showChildren: true, + type: 'input', + key: '2dd66cb3955d4fc7a683f90706a582ac', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '合同主体', + fieldId: 'comId', + isSubTable: false, + showChildren: true, + type: 'input', + key: '86de8960a0234dfca53589b781057db0', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '备注', + fieldId: 'note', + isSubTable: false, + showChildren: true, + type: 'input', + key: '080137758b784c6d963933012d70577c', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + showChildren: false, + tableName: 'lngContractSalesIntList', + fieldName: '表格组件', + fieldId: 'lngContractSalesIntList', + type: 'form', + key: '1dfe4e60cc744c1a8d2e9457b630d805', + children: [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + isSaveTable: false, + showChildren: false, + tableName: 'lngContractSalesIntList', + fieldName: '单行文本', + fieldId: 'id', + key: 'e8df885a3f25478dbf53c2ed13b8a48e', + children: [], + }, + ], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + showChildren: false, + tableName: 'lngContractFactRelList', + fieldName: '表格组件', + fieldId: 'lngContractFactRelList', + type: 'form', + key: '25eb524c997d4d4986a3fc400899fff4', + children: [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + isSaveTable: false, + showChildren: false, + tableName: 'lngContractFactRelList', + fieldName: '单行文本', + fieldId: 'id', + key: '718e23353c004f2b8b9f0772bdccda42', + children: [], + }, + ], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + showChildren: false, + tableName: 'lngContractApproRelList', + fieldName: '表格组件', + fieldId: 'lngContractApproRelList', + type: 'form', + key: 'b256413d175442329e39f6fd0f0a55e3', + children: [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + isSaveTable: false, + showChildren: false, + tableName: 'lngContractApproRelList', + fieldName: '单行文本', + fieldId: 'id', + key: '2a7034e3da7d4ce586424b0919fc5625', + children: [], + }, + ], + }, +]; \ No newline at end of file diff --git a/src/views/contract/ContractSalesInt/index.vue b/src/views/contract/ContractSalesInt/index.vue new file mode 100644 index 0000000..576847a --- /dev/null +++ b/src/views/contract/ContractSalesInt/index.vue @@ -0,0 +1,413 @@ + + + \ No newline at end of file diff --git a/src/views/contract/ContractSalesLng/components/ContractSalesLngModal.vue b/src/views/contract/ContractSalesLng/components/ContractSalesLngModal.vue new file mode 100644 index 0000000..168dd47 --- /dev/null +++ b/src/views/contract/ContractSalesLng/components/ContractSalesLngModal.vue @@ -0,0 +1,110 @@ + + \ No newline at end of file diff --git a/src/views/contract/ContractSalesLng/components/Form.vue b/src/views/contract/ContractSalesLng/components/Form.vue new file mode 100644 index 0000000..844336b --- /dev/null +++ b/src/views/contract/ContractSalesLng/components/Form.vue @@ -0,0 +1,224 @@ + + \ No newline at end of file diff --git a/src/views/contract/ContractSalesLng/components/config.ts b/src/views/contract/ContractSalesLng/components/config.ts new file mode 100644 index 0000000..6aa8043 --- /dev/null +++ b/src/views/contract/ContractSalesLng/components/config.ts @@ -0,0 +1,747 @@ +import { FormProps, FormSchema } from '/@/components/Form'; +import { BasicColumn } from '/@/components/Table'; + +export const formConfig = { + useCustomConfig: false, +}; + +export const searchFormSchema: FormSchema[] = [ + + { + field: 'kName', + label: '合同号/名称', + component: 'Input', + }, + { + field: 'cpName', + label: '客户', + component: 'Input', + }, +]; + +export const columns: BasicColumn[] = [ + + { + dataIndex: 'kNo', + title: '合同号', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'kName', + title: '合同名称', + componentType: 'input', + align: 'left', + width: 200, + sorter: true, + }, + + { + dataIndex: 'cpName', + title: '客户', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'onlineSign', + title: '竞拍', + componentType: 'input', + align: 'left', + width: 90, + sorter: true, + }, + + { + dataIndex: 'dateFrom', + title: '有效期开始', + componentType: 'input', + align: 'left', + width: 120, + sorter: true, + }, + + { + dataIndex: 'dateTo', + title: '有效期结束', + componentType: 'input', + align: 'left', + width: 120, + sorter: true, + }, + + { + dataIndex: 'approName', + title: '状态', + componentType: 'input', + align: 'left', + width: 100, + sorter: true, + }, + + { + dataIndex: 'comName', + title: '合同主体', + componentType: 'input', + align: 'left', + + sorter: true, + }, + + { + dataIndex: 'note', + title: '备注', + componentType: 'input', + align: 'left', + + sorter: true, + }, +]; +//表单事件 +export const formEventConfigs = { + 0: [ + { + type: 'circle', + color: '#2774ff', + text: '开始节点', + icon: '#icon-kaishi', + bgcColor: '#D8E5FF', + isUserDefined: false, + }, + { + color: '#F6AB01', + icon: '#icon-chushihua', + text: '初始化表单', + bgcColor: '#f9f5ea', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 1: [ + { + color: '#B36EDB', + icon: '#icon-shujufenxi', + text: '获取表单数据', + detail: '(新增无此操作)', + bgcColor: '#F8F2FC', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 2: [ + { + color: '#F8625C', + icon: '#icon-jiazai', + text: '加载表单', + bgcColor: '#FFF1F1', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 3: [ + { + color: '#6C6AE0', + icon: '#icon-jsontijiao', + text: '提交表单', + bgcColor: '#F5F4FF', + isUserDefined: false, + nodeInfo: { processEvent: [] }, + }, + ], + 4: [ + { + type: 'circle', + color: '#F8625C', + text: '结束节点', + icon: '#icon-jieshuzhiliao', + bgcColor: '#FFD6D6', + isLast: true, + isUserDefined: false, + }, + ], +}; +export const formProps: FormProps = { + labelCol: { span: 3, offset: 0 }, + labelAlign: 'right', + layout: 'horizontal', + size: 'default', + schemas: [ + { + key: '5fd2021fb4364f89af03715c02e24c6e', + field: 'id', + label: 'id', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入id', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: 'bc43e07c314b42d09479a47cb100e264', + field: 'kNo', + label: '合同号', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入合同号', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: 'ce7975ba0930445e8819dcb81327a1a8', + field: 'kName', + label: '合同名称', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入合同名称', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: 'ce8d212247424964bb200367eab4a8ac', + field: 'cpName', + label: '客户', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入客户', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: 'f3ea91406ce74686a8cbfd85b3a5ea69', + field: 'onlineSign', + label: '竞拍', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入竞拍', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: 'ce61bc1f7bd64a9cb3f994313d64f2fa', + field: 'dateFrom', + label: '有效期开始', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入有效期开始', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '67f46ba642c44afdbdbf10f1c86c4ee3', + field: 'dateTo', + label: '有效期结束', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入有效期结束', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: 'f149e1fc19b74d1c82b07d8447c6b73f', + field: 'approCode', + label: '状态', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入状态', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '2099a21542154dafb7a2d8b8fae09057', + field: 'comId', + label: '合同主体', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入合同主体', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: 'cb929d16b0ce4d60bdf30bf55e88c87d', + field: 'note', + label: '备注', + type: 'input', + component: 'Input', + colProps: { span: 24 }, + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入备注', + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + style: { width: '100%' }, + }, + }, + { + key: '9a10c785177349a29662a3ab4cefa23e', + label: '表格组件', + field: 'lngContractSalesLngStaList', + type: 'form', + component: 'SubForm', + required: true, + colProps: { span: 24 }, + componentProps: { + mainKey: 'lngContractSalesLngStaList', + columns: [ + { + key: 'fbf35895ffb44781a4e4b7d705b99a8b', + title: '单行文本', + dataIndex: 'id', + componentType: 'Input', + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入单行文本', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + }, + }, + { title: '操作', key: 'action', fixed: 'right', width: '50px' }, + ], + span: '24', + preloadType: 'api', + apiConfig: {}, + itemId: '', + dicOptions: [], + useSelectButton: false, + buttonName: '选择数据', + showLabel: true, + showComponentBorder: true, + showFormBorder: true, + showIndex: false, + isShow: true, + multipleHeads: [], + }, + }, + { + key: 'c6991d84526548b39bdad4012d6fdef2', + label: '表格组件', + field: 'lngContractSalesLngQtyList', + type: 'form', + component: 'SubForm', + required: true, + colProps: { span: 24 }, + componentProps: { + mainKey: 'lngContractSalesLngQtyList', + columns: [ + { + key: '3584c389ed484f20b69c0e8d0bd38ea5', + title: '单行文本', + dataIndex: 'id', + componentType: 'Input', + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入单行文本', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + }, + }, + { title: '操作', key: 'action', fixed: 'right', width: '50px' }, + ], + span: '24', + preloadType: 'api', + apiConfig: {}, + itemId: '', + dicOptions: [], + useSelectButton: false, + buttonName: '选择数据', + showLabel: true, + showComponentBorder: true, + showFormBorder: true, + showIndex: false, + isShow: true, + multipleHeads: [], + }, + }, + { + key: 'c3c45fe855384fd8ae2b719ec3d7b3fe', + label: '表格组件', + field: 'lngContractSalesLngDiscList', + type: 'form', + component: 'SubForm', + required: true, + colProps: { span: 24 }, + componentProps: { + mainKey: 'lngContractSalesLngDiscList', + columns: [ + { + key: '2d27f81a3c794524b2abeff976351cb3', + title: '单行文本', + dataIndex: 'id', + componentType: 'Input', + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入单行文本', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + }, + }, + { title: '操作', key: 'action', fixed: 'right', width: '50px' }, + ], + span: '24', + preloadType: 'api', + apiConfig: {}, + itemId: '', + dicOptions: [], + useSelectButton: false, + buttonName: '选择数据', + showLabel: true, + showComponentBorder: true, + showFormBorder: true, + showIndex: false, + isShow: true, + multipleHeads: [], + }, + }, + { + key: 'aaa9a38647db471f99a49b55e264273a', + label: '表格组件', + field: 'lngContractSalesLngList', + type: 'form', + component: 'SubForm', + required: true, + colProps: { span: 24 }, + componentProps: { + mainKey: 'lngContractSalesLngList', + columns: [ + { + key: '166269879a9848d0b6ad6d16a09b4de9', + title: '单行文本', + dataIndex: 'id', + componentType: 'Input', + defaultValue: '', + componentProps: { + width: '100%', + span: '', + defaultValue: '', + labelWidthMode: 'fix', + labelFixWidth: 120, + responsive: false, + respNewRow: false, + placeholder: '请输入单行文本', + maxlength: null, + prefix: '', + suffix: '', + addonBefore: '', + addonAfter: '', + disabled: false, + allowClear: false, + showLabel: true, + required: false, + rules: [], + events: {}, + isSave: false, + isShow: true, + scan: false, + }, + }, + { title: '操作', key: 'action', fixed: 'right', width: '50px' }, + ], + span: '24', + preloadType: 'api', + apiConfig: {}, + itemId: '', + dicOptions: [], + useSelectButton: false, + buttonName: '选择数据', + showLabel: true, + showComponentBorder: true, + showFormBorder: true, + showIndex: false, + isShow: true, + multipleHeads: [], + }, + }, + ], + showActionButtonGroup: false, + buttonLocation: 'center', + actionColOptions: { span: 24 }, + showResetButton: false, + showSubmitButton: false, + hiddenComponent: [], +}; \ No newline at end of file diff --git a/src/views/contract/ContractSalesLng/components/createForm.vue b/src/views/contract/ContractSalesLng/components/createForm.vue new file mode 100644 index 0000000..1b2c0df --- /dev/null +++ b/src/views/contract/ContractSalesLng/components/createForm.vue @@ -0,0 +1,573 @@ + + + + + diff --git a/src/views/contract/ContractSalesLng/components/workflowPermission.ts b/src/views/contract/ContractSalesLng/components/workflowPermission.ts new file mode 100644 index 0000000..0949058 --- /dev/null +++ b/src/views/contract/ContractSalesLng/components/workflowPermission.ts @@ -0,0 +1,268 @@ +export const permissionList = [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: 'id', + fieldId: 'id', + isSubTable: false, + showChildren: true, + type: 'input', + key: '5fd2021fb4364f89af03715c02e24c6e', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '合同号', + fieldId: 'kNo', + isSubTable: false, + showChildren: true, + type: 'input', + key: 'bc43e07c314b42d09479a47cb100e264', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '合同名称', + fieldId: 'kName', + isSubTable: false, + showChildren: true, + type: 'input', + key: 'ce7975ba0930445e8819dcb81327a1a8', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '客户', + fieldId: 'cpName', + isSubTable: false, + showChildren: true, + type: 'input', + key: 'ce8d212247424964bb200367eab4a8ac', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '竞拍', + fieldId: 'onlineSign', + isSubTable: false, + showChildren: true, + type: 'input', + key: 'f3ea91406ce74686a8cbfd85b3a5ea69', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '有效期开始', + fieldId: 'dateFrom', + isSubTable: false, + showChildren: true, + type: 'input', + key: 'ce61bc1f7bd64a9cb3f994313d64f2fa', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '有效期结束', + fieldId: 'dateTo', + isSubTable: false, + showChildren: true, + type: 'input', + key: '67f46ba642c44afdbdbf10f1c86c4ee3', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '状态', + fieldId: 'approCode', + isSubTable: false, + showChildren: true, + type: 'input', + key: 'f149e1fc19b74d1c82b07d8447c6b73f', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '合同主体', + fieldId: 'comId', + isSubTable: false, + showChildren: true, + type: 'input', + key: '2099a21542154dafb7a2d8b8fae09057', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSaveTable: false, + tableName: '', + fieldName: '备注', + fieldId: 'note', + isSubTable: false, + showChildren: true, + type: 'input', + key: 'cb929d16b0ce4d60bdf30bf55e88c87d', + children: [], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + showChildren: false, + tableName: 'lngContractSalesLngStaList', + fieldName: '表格组件', + fieldId: 'lngContractSalesLngStaList', + type: 'form', + key: '9a10c785177349a29662a3ab4cefa23e', + children: [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + isSaveTable: false, + showChildren: false, + tableName: 'lngContractSalesLngStaList', + fieldName: '单行文本', + fieldId: 'id', + key: 'fbf35895ffb44781a4e4b7d705b99a8b', + children: [], + }, + ], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + showChildren: false, + tableName: 'lngContractSalesLngQtyList', + fieldName: '表格组件', + fieldId: 'lngContractSalesLngQtyList', + type: 'form', + key: 'c6991d84526548b39bdad4012d6fdef2', + children: [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + isSaveTable: false, + showChildren: false, + tableName: 'lngContractSalesLngQtyList', + fieldName: '单行文本', + fieldId: 'id', + key: '3584c389ed484f20b69c0e8d0bd38ea5', + children: [], + }, + ], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + showChildren: false, + tableName: 'lngContractSalesLngDiscList', + fieldName: '表格组件', + fieldId: 'lngContractSalesLngDiscList', + type: 'form', + key: 'c3c45fe855384fd8ae2b719ec3d7b3fe', + children: [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + isSaveTable: false, + showChildren: false, + tableName: 'lngContractSalesLngDiscList', + fieldName: '单行文本', + fieldId: 'id', + key: '2d27f81a3c794524b2abeff976351cb3', + children: [], + }, + ], + }, + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + showChildren: false, + tableName: 'lngContractSalesLngList', + fieldName: '表格组件', + fieldId: 'lngContractSalesLngList', + type: 'form', + key: 'aaa9a38647db471f99a49b55e264273a', + children: [ + { + required: true, + view: true, + edit: true, + disabled: false, + isSubTable: true, + isSaveTable: false, + showChildren: false, + tableName: 'lngContractSalesLngList', + fieldName: '单行文本', + fieldId: 'id', + key: '166269879a9848d0b6ad6d16a09b4de9', + children: [], + }, + ], + }, +]; \ No newline at end of file diff --git a/src/views/contract/ContractSalesLng/index.vue b/src/views/contract/ContractSalesLng/index.vue new file mode 100644 index 0000000..a9dd86a --- /dev/null +++ b/src/views/contract/ContractSalesLng/index.vue @@ -0,0 +1,506 @@ + + + \ No newline at end of file diff --git a/src/views/dayPlan/Demand/index.vue b/src/views/dayPlan/Demand/index.vue index b147b12..ea35328 100644 --- a/src/views/dayPlan/Demand/index.vue +++ b/src/views/dayPlan/Demand/index.vue @@ -71,7 +71,7 @@ import {formConfig, searchFormSchema, columns } from './components/config'; import Icon from '/@/components/Icon/index'; import FlowRecord from '/@/views/workflow/task/components/flow/FlowRecord.vue'; - + import { DataFormat, FormatOption, DATE_FORMAT, FormatType } from '/@/utils/dataFormat'; import useEventBus from '/@/hooks/event/useEventBus'; import { cloneDeep } from 'lodash-es'; import NP from 'number-precision'; @@ -441,7 +441,7 @@ } onMounted(() => { reload({ searchInfo: { startDate: defaultDate.value[0], endDate: defaultDate.value[1] }}); - + // DataFormat.test(); if (schemaIdComputedRef.value) { bus.on(FLOW_PROCESSED, handleRefresh); bus.on(CREATE_FLOW, handleRefresh); diff --git a/src/views/secondDev/approveFlowPage.vue b/src/views/secondDev/approveFlowPage.vue index 54a399c..6dc2079 100644 --- a/src/views/secondDev/approveFlowPage.vue +++ b/src/views/secondDev/approveFlowPage.vue @@ -202,6 +202,9 @@ if (rQuery.status=='COMPLETED' && btn.buttonCode=='draft'){ show = true } + if (readonly.value && btn.buttonCode=='drawBack'){ + show = false + } return show; } diff --git a/src/views/secondDev/customFormConfig.ts b/src/views/secondDev/customFormConfig.ts index 0785f91..d4e18f4 100644 --- a/src/views/secondDev/customFormConfig.ts +++ b/src/views/secondDev/customFormConfig.ts @@ -8,5 +8,7 @@ export const customFormConfig = { 'contractFactApprove', 'addContractPurPng', 'addContractSales', + 'addContractSalesLng', + 'ContractPurInt' ], }; \ No newline at end of file