From 3ab301a98d1fe4cb6998bced857f13461a9863db Mon Sep 17 00:00:00 2001 From: Qiancheng Zhao <15226586396@163.com> Date: Thu, 25 Jul 2024 14:08:51 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=9F=BA=E7=A1=80=E6=A8=A1?= =?UTF-8?q?=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/cms/contract/index.ts | 69 +++ src/api/cms/contractouts/index.ts | 47 ++ src/api/cms/extcontract/index.ts | 67 +++ src/api/cms/outscontract/index.ts | 49 ++ src/api/cms/outscontracthistory/index.ts | 53 ++ src/api/pms/budget/index.ts | 50 ++ src/api/pms/budgethistory/index.ts | 54 ++ src/api/pms/receivables/index.ts | 43 ++ src/api/pms/receivableshistory/index.ts | 47 ++ src/views/cms/contract/ContractForm.vue | 290 ++++++++++ src/views/cms/contract/index.vue | 541 ++++++++++++++++++ .../cms/contractouts/ContractOutsForm.vue | 144 +++++ src/views/cms/contractouts/index.vue | 262 +++++++++ src/views/cms/extcontract/ExtContractForm.vue | 260 +++++++++ src/views/cms/extcontract/index.vue | 520 +++++++++++++++++ .../cms/outscontract/OutsContractForm.vue | 157 +++++ src/views/cms/outscontract/index.vue | 306 ++++++++++ .../OutsContractHistoryForm.vue | 172 ++++++ src/views/cms/outscontracthistory/index.vue | 345 +++++++++++ src/views/pms/budget/BudgetForm.vue | 143 +++++ src/views/pms/budget/index.vue | 288 ++++++++++ .../pms/budgethistory/BudgetHistoryForm.vue | 165 ++++++ src/views/pms/budgethistory/index.vue | 333 +++++++++++ src/views/pms/receivables/ReceivablesForm.vue | 65 +++ src/views/pms/receivables/index.vue | 85 +++ src/views/pms/receivables/receivables.data.ts | 85 +++ .../ReceivablesHistoryForm.vue | 65 +++ src/views/pms/receivableshistory/index.vue | 85 +++ .../receivablesHistory.data.ts | 112 ++++ 29 files changed, 4902 insertions(+) create mode 100644 src/api/cms/contract/index.ts create mode 100644 src/api/cms/contractouts/index.ts create mode 100644 src/api/cms/extcontract/index.ts create mode 100644 src/api/cms/outscontract/index.ts create mode 100644 src/api/cms/outscontracthistory/index.ts create mode 100644 src/api/pms/budget/index.ts create mode 100644 src/api/pms/budgethistory/index.ts create mode 100644 src/api/pms/receivables/index.ts create mode 100644 src/api/pms/receivableshistory/index.ts create mode 100644 src/views/cms/contract/ContractForm.vue create mode 100644 src/views/cms/contract/index.vue create mode 100644 src/views/cms/contractouts/ContractOutsForm.vue create mode 100644 src/views/cms/contractouts/index.vue create mode 100644 src/views/cms/extcontract/ExtContractForm.vue create mode 100644 src/views/cms/extcontract/index.vue create mode 100644 src/views/cms/outscontract/OutsContractForm.vue create mode 100644 src/views/cms/outscontract/index.vue create mode 100644 src/views/cms/outscontracthistory/OutsContractHistoryForm.vue create mode 100644 src/views/cms/outscontracthistory/index.vue create mode 100644 src/views/pms/budget/BudgetForm.vue create mode 100644 src/views/pms/budget/index.vue create mode 100644 src/views/pms/budgethistory/BudgetHistoryForm.vue create mode 100644 src/views/pms/budgethistory/index.vue create mode 100644 src/views/pms/receivables/ReceivablesForm.vue create mode 100644 src/views/pms/receivables/index.vue create mode 100644 src/views/pms/receivables/receivables.data.ts create mode 100644 src/views/pms/receivableshistory/ReceivablesHistoryForm.vue create mode 100644 src/views/pms/receivableshistory/index.vue create mode 100644 src/views/pms/receivableshistory/receivablesHistory.data.ts diff --git a/src/api/cms/contract/index.ts b/src/api/cms/contract/index.ts new file mode 100644 index 00000000..52592ee9 --- /dev/null +++ b/src/api/cms/contract/index.ts @@ -0,0 +1,69 @@ +import request from '@/config/axios' + +// 合同 VO +export interface ContractVO { + name: string // 合同名称 + type: string // 合同类型 + progress: string // 合同进展 + expectedTime: Date // 合同拟定时间 + printingTime: Date // 合同用印时间 + signingTime: Date // 签订时间 + archiveTime: Date // 归档时间 + status: string // 合同状态 + countType: string // 计费方式 + remark: string // 备注 + contractFileUrl: string // 合同url + constructionCost: number // 建安费 + source: string // 资金来源 + discount: string // 优惠 + consortium: boolean // 是否联合体 + consortiumCompany: string // 联合体单位 + extProportion: string // 占主合同比例 + approvedAmount: number // 审定金额 + reviewFileUrl: string // 审核文件url + creator: string // 创建者 + createTime: Date // 创建时间 + updater: string // 更新者 + updateTime: Date // 更新时间 + deleted: boolean // 是否删除 + tenantId: number // 租户编号 + amount: number // 签订合同总额 + preAmount: number // 前期费 + designAmount: number // 设计费 + surveyFees: number // 勘测费 + measurementFee: number // 测量费 + otherFee: number // 其他费 +} + +// 合同 API +export const ContractApi = { + // 查询合同分页 + getContractPage: async (params: any) => { + return await request.get({ url: `/cms/contract/page`, params }) + }, + + // 查询合同详情 + getContract: async (id: number) => { + return await request.get({ url: `/cms/contract/get?id=` + id }) + }, + + // 新增合同 + createContract: async (data: ContractVO) => { + return await request.post({ url: `/cms/contract/create`, data }) + }, + + // 修改合同 + updateContract: async (data: ContractVO) => { + return await request.put({ url: `/cms/contract/update`, data }) + }, + + // 删除合同 + deleteContract: async (id: number) => { + return await request.delete({ url: `/cms/contract/delete?id=` + id }) + }, + + // 导出合同 Excel + exportContract: async (params) => { + return await request.download({ url: `/cms/contract/export-excel`, params }) + }, +} \ No newline at end of file diff --git a/src/api/cms/contractouts/index.ts b/src/api/cms/contractouts/index.ts new file mode 100644 index 00000000..2a2ead77 --- /dev/null +++ b/src/api/cms/contractouts/index.ts @@ -0,0 +1,47 @@ +import request from '@/config/axios' + +// 外包合同关联 VO +export interface ContractOutsVO { + id: number // 主键 + contractId: number // 合同id + outsContractId: number // 外包合同id + creator: string // 创建人 + cteateTime: Date // 创建时间 + updator: string // 更新人 + updateTime: Date // 更新时间 + delete: boolean // 是否删除 + tenantId: number // 租户id +} + +// 外包合同关联 API +export const ContractOutsApi = { + // 查询外包合同关联分页 + getContractOutsPage: async (params: any) => { + return await request.get({ url: `/cms/contract-outs/page`, params }) + }, + + // 查询外包合同关联详情 + getContractOuts: async (id: number) => { + return await request.get({ url: `/cms/contract-outs/get?id=` + id }) + }, + + // 新增外包合同关联 + createContractOuts: async (data: ContractOutsVO) => { + return await request.post({ url: `/cms/contract-outs/create`, data }) + }, + + // 修改外包合同关联 + updateContractOuts: async (data: ContractOutsVO) => { + return await request.put({ url: `/cms/contract-outs/update`, data }) + }, + + // 删除外包合同关联 + deleteContractOuts: async (id: number) => { + return await request.delete({ url: `/cms/contract-outs/delete?id=` + id }) + }, + + // 导出外包合同关联 Excel + exportContractOuts: async (params) => { + return await request.download({ url: `/cms/contract-outs/export-excel`, params }) + }, +} \ No newline at end of file diff --git a/src/api/cms/extcontract/index.ts b/src/api/cms/extcontract/index.ts new file mode 100644 index 00000000..440cc673 --- /dev/null +++ b/src/api/cms/extcontract/index.ts @@ -0,0 +1,67 @@ +import request from '@/config/axios' + +// 外部合同 VO +export interface ExtContractVO { + id: number // 主键 + projectId: number // 项目id + name: string // 合同名称 + type: string // 合同类型 + customerCompanyId: number // 客户公司id + progress: string // 合同进展 + expectedTime: Date // 预计签订时间 + signingTime: Date // 签订时间 + archiveTime: Date // 归档时间 + status: string // 状态 + amount: number // 合同金额 + preAmount: number // 前期费用 + designFee: number // 设计费 + surveyFees: number // 勘测费 + testingFee: number // 检测费 + otherFee: string // 其他费 + countType: string // 计费方式 + remark: string // 备注 + contractFileUrl: string // 合同附件url + constructionCost: number // 建安费 + source: string // 资金来源 + chargingStandard: string // 收费标准 + discount: string // 优惠 + consortium: boolean // 是否联合体 + consortiumCompany: string // 联合体单位 + reminderTime: Date // 合同提示时间 + approvedAmount: number // 审定金额 + reviewFileUrl: string // 审核文件url + contractId: number // 合同id +} + +// 外部合同 API +export const ExtContractApi = { + // 查询外部合同分页 + getExtContractPage: async (params: any) => { + return await request.get({ url: `/cms-ext/ext-contract/page`, params }) + }, + + // 查询外部合同详情 + getExtContract: async (id: number) => { + return await request.get({ url: `/cms-ext/ext-contract/get?id=` + id }) + }, + + // 新增外部合同 + createExtContract: async (data: ExtContractVO) => { + return await request.post({ url: `/cms-ext/ext-contract/create`, data }) + }, + + // 修改外部合同 + updateExtContract: async (data: ExtContractVO) => { + return await request.put({ url: `/cms-ext/ext-contract/update`, data }) + }, + + // 删除外部合同 + deleteExtContract: async (id: number) => { + return await request.delete({ url: `/cms-ext/ext-contract/delete?id=` + id }) + }, + + // 导出外部合同 Excel + exportExtContract: async (params) => { + return await request.download({ url: `/cms-ext/ext-contract/export-excel`, params }) + }, +} \ No newline at end of file diff --git a/src/api/cms/outscontract/index.ts b/src/api/cms/outscontract/index.ts new file mode 100644 index 00000000..348be86d --- /dev/null +++ b/src/api/cms/outscontract/index.ts @@ -0,0 +1,49 @@ +import request from '@/config/axios' + +// 外包合同 VO +export interface OutsContractVO { + id: number // 主键 + projectId: number // 项目id + name: string // 合同名称 + contractId: number // 主合同id + countType: string // 类型 + amount: number // 合同金额 + code: string // 编号 + major: string // 专业 + signingTime: Date // 签订时间 + settlementAmount: number // 结算数 + contractFileUrl: string // 合同文件url +} + +// 外包合同 API +export const OutsContractApi = { + // 查询外包合同分页 + getOutsContractPage: async (params: any) => { + return await request.get({ url: `/cms/outs-contract/page`, params }) + }, + + // 查询外包合同详情 + getOutsContract: async (id: number) => { + return await request.get({ url: `/cms/outs-contract/get?id=` + id }) + }, + + // 新增外包合同 + createOutsContract: async (data: OutsContractVO) => { + return await request.post({ url: `/cms/outs-contract/create`, data }) + }, + + // 修改外包合同 + updateOutsContract: async (data: OutsContractVO) => { + return await request.put({ url: `/cms/outs-contract/update`, data }) + }, + + // 删除外包合同 + deleteOutsContract: async (id: number) => { + return await request.delete({ url: `/cms/outs-contract/delete?id=` + id }) + }, + + // 导出外包合同 Excel + exportOutsContract: async (params) => { + return await request.download({ url: `/cms/outs-contract/export-excel`, params }) + }, +} \ No newline at end of file diff --git a/src/api/cms/outscontracthistory/index.ts b/src/api/cms/outscontracthistory/index.ts new file mode 100644 index 00000000..244f4956 --- /dev/null +++ b/src/api/cms/outscontracthistory/index.ts @@ -0,0 +1,53 @@ +import request from '@/config/axios' + +// 外包合同历史 VO +export interface OutsContractHistoryVO { + id: number // 主键 + projectId: number // 项目id + name: string // 合同名称 + contractId: number // 主合同id + countType: string // 类型 + amount: number // 合同金额 + code: string // 编号 + major: string // 专业 + processInstanceId: string // 流程实体id + signingTime: Date // 签订时间 + settlementAmount: number // 结算数 + contractFileUrl: string // 合同文件url + processStatus: string // 流程状态 + outsContractId: number // 外包合同id + version: string // 版本 +} + +// 外包合同历史 API +export const OutsContractHistoryApi = { + // 查询外包合同历史分页 + getOutsContractHistoryPage: async (params: any) => { + return await request.get({ url: `/cms/outs-contract-history/page`, params }) + }, + + // 查询外包合同历史详情 + getOutsContractHistory: async (id: number) => { + return await request.get({ url: `/cms/outs-contract-history/get?id=` + id }) + }, + + // 新增外包合同历史 + createOutsContractHistory: async (data: OutsContractHistoryVO) => { + return await request.post({ url: `/cms/outs-contract-history/create`, data }) + }, + + // 修改外包合同历史 + updateOutsContractHistory: async (data: OutsContractHistoryVO) => { + return await request.put({ url: `/cms/outs-contract-history/update`, data }) + }, + + // 删除外包合同历史 + deleteOutsContractHistory: async (id: number) => { + return await request.delete({ url: `/cms/outs-contract-history/delete?id=` + id }) + }, + + // 导出外包合同历史 Excel + exportOutsContractHistory: async (params) => { + return await request.download({ url: `/cms/outs-contract-history/export-excel`, params }) + }, +} \ No newline at end of file diff --git a/src/api/pms/budget/index.ts b/src/api/pms/budget/index.ts new file mode 100644 index 00000000..f58fe440 --- /dev/null +++ b/src/api/pms/budget/index.ts @@ -0,0 +1,50 @@ +import request from '@/config/axios' + +// 预算管理 VO +export interface BudgetVO { + id: number // 主键 + projectId: number // 项目id + contractId: number // 合同管理 + budgetFileUrl: string // 预算文件url + outsourcingCosts: number // 预算外包成本 + laborCosts: number // 人力成本 + accumulatedLaborCosts: number // 累计人力成本 + productCosts: number // 生产成本 + accumulatedProductCosts: number // 累计生产成本 + financialCosts: number // 财务成本 + accumulatedFinancialCosts: number // 累计财务成本 + collectionSituation: string // 回款情况 +} + +// 预算管理 API +export const BudgetApi = { + // 查询预算管理分页 + getBudgetPage: async (params: any) => { + return await request.get({ url: `/pms/budget/page`, params }) + }, + + // 查询预算管理详情 + getBudget: async (id: number) => { + return await request.get({ url: `/pms/budget/get?id=` + id }) + }, + + // 新增预算管理 + createBudget: async (data: BudgetVO) => { + return await request.post({ url: `/pms/budget/create`, data }) + }, + + // 修改预算管理 + updateBudget: async (data: BudgetVO) => { + return await request.put({ url: `/pms/budget/update`, data }) + }, + + // 删除预算管理 + deleteBudget: async (id: number) => { + return await request.delete({ url: `/pms/budget/delete?id=` + id }) + }, + + // 导出预算管理 Excel + exportBudget: async (params) => { + return await request.download({ url: `/pms/budget/export-excel`, params }) + }, +} \ No newline at end of file diff --git a/src/api/pms/budgethistory/index.ts b/src/api/pms/budgethistory/index.ts new file mode 100644 index 00000000..8c69be6d --- /dev/null +++ b/src/api/pms/budgethistory/index.ts @@ -0,0 +1,54 @@ +import request from '@/config/axios' + +// 预算管理 VO +export interface BudgetHistoryVO { + id: number // 主键 + projectId: number // 项目id + contractId: number // 合同管理 + budgetFileUrl: string // 预算文件url + outsourcingCosts: number // 预算外包成本 + laborCosts: number // 人力成本 + accumulatedLaborCosts: number // 累计人力成本 + productCosts: number // 生产成本 + accumulatedProductCosts: number // 累计生产成本 + financialCosts: number // 财务成本 + accumulatedFinancialCosts: number // 累计财务成本 + collectionSituation: string // 回款情况 + processInstanceId: string // 流程实体id + processStatus: string // 流程状态 + budgetId: number // 预算id + version: string // 版本 +} + +// 预算管理 API +export const BudgetHistoryApi = { + // 查询预算管理分页 + getBudgetHistoryPage: async (params: any) => { + return await request.get({ url: `/pms/budget-history/page`, params }) + }, + + // 查询预算管理详情 + getBudgetHistory: async (id: number) => { + return await request.get({ url: `/pms/budget-history/get?id=` + id }) + }, + + // 新增预算管理 + createBudgetHistory: async (data: BudgetHistoryVO) => { + return await request.post({ url: `/pms/budget-history/create`, data }) + }, + + // 修改预算管理 + updateBudgetHistory: async (data: BudgetHistoryVO) => { + return await request.put({ url: `/pms/budget-history/update`, data }) + }, + + // 删除预算管理 + deleteBudgetHistory: async (id: number) => { + return await request.delete({ url: `/pms/budget-history/delete?id=` + id }) + }, + + // 导出预算管理 Excel + exportBudgetHistory: async (params) => { + return await request.download({ url: `/pms/budget-history/export-excel`, params }) + }, +} \ No newline at end of file diff --git a/src/api/pms/receivables/index.ts b/src/api/pms/receivables/index.ts new file mode 100644 index 00000000..1e6a5bab --- /dev/null +++ b/src/api/pms/receivables/index.ts @@ -0,0 +1,43 @@ +import request from '@/config/axios' + +export interface ReceivablesVO { + id: number + projectId: number + contractId: number + planStage: string + initialDesignStage: string + constructionDrawingStage: string + constructionStage: string + approveStage: string + collectionSituation: string +} + +// 查询应收款管理列表 +export const getReceivablesPage = async (params) => { + return await request.get({ url: '/pms/receivables/page', params }) +} + +// 查询应收款管理详情 +export const getReceivables = async (id: number) => { + return await request.get({ url: '/pms/receivables/get?id=' + id }) +} + +// 新增应收款管理 +export const createReceivables = async (data: ReceivablesVO) => { + return await request.post({ url: '/pms/receivables/create', data }) +} + +// 修改应收款管理 +export const updateReceivables = async (data: ReceivablesVO) => { + return await request.put({ url: '/pms/receivables/update', data }) +} + +// 删除应收款管理 +export const deleteReceivables = async (id: number) => { + return await request.delete({ url: '/pms/receivables/delete?id=' + id }) +} + +// 导出应收款管理 Excel +export const exportReceivablesApi = async (params) => { + return await request.download({ url: '/pms/receivables/export-excel', params }) +} \ No newline at end of file diff --git a/src/api/pms/receivableshistory/index.ts b/src/api/pms/receivableshistory/index.ts new file mode 100644 index 00000000..6509a411 --- /dev/null +++ b/src/api/pms/receivableshistory/index.ts @@ -0,0 +1,47 @@ +import request from '@/config/axios' + +export interface ReceivablesHistoryVO { + id: number + projectId: number + contractId: number + planStage: string + initialDesignStage: string + constructionDrawingStage: string + constructionStage: string + approveStage: string + collectionSituation: string + processInstanceId: string + processStatus: string + receivableId: number + version: string +} + +// 查询应收款管理历史记录列表 +export const getReceivablesHistoryPage = async (params) => { + return await request.get({ url: '/pms/receivables-history/page', params }) +} + +// 查询应收款管理历史记录详情 +export const getReceivablesHistory = async (id: number) => { + return await request.get({ url: '/pms/receivables-history/get?id=' + id }) +} + +// 新增应收款管理历史记录 +export const createReceivablesHistory = async (data: ReceivablesHistoryVO) => { + return await request.post({ url: '/pms/receivables-history/create', data }) +} + +// 修改应收款管理历史记录 +export const updateReceivablesHistory = async (data: ReceivablesHistoryVO) => { + return await request.put({ url: '/pms/receivables-history/update', data }) +} + +// 删除应收款管理历史记录 +export const deleteReceivablesHistory = async (id: number) => { + return await request.delete({ url: '/pms/receivables-history/delete?id=' + id }) +} + +// 导出应收款管理历史记录 Excel +export const exportReceivablesHistoryApi = async (params) => { + return await request.download({ url: '/pms/receivables-history/export-excel', params }) +} \ No newline at end of file diff --git a/src/views/cms/contract/ContractForm.vue b/src/views/cms/contract/ContractForm.vue new file mode 100644 index 00000000..ad947705 --- /dev/null +++ b/src/views/cms/contract/ContractForm.vue @@ -0,0 +1,290 @@ + + \ No newline at end of file diff --git a/src/views/cms/contract/index.vue b/src/views/cms/contract/index.vue new file mode 100644 index 00000000..a07459d5 --- /dev/null +++ b/src/views/cms/contract/index.vue @@ -0,0 +1,541 @@ + + + \ No newline at end of file diff --git a/src/views/cms/contractouts/ContractOutsForm.vue b/src/views/cms/contractouts/ContractOutsForm.vue new file mode 100644 index 00000000..828a0b74 --- /dev/null +++ b/src/views/cms/contractouts/ContractOutsForm.vue @@ -0,0 +1,144 @@ + + \ No newline at end of file diff --git a/src/views/cms/contractouts/index.vue b/src/views/cms/contractouts/index.vue new file mode 100644 index 00000000..33613e9a --- /dev/null +++ b/src/views/cms/contractouts/index.vue @@ -0,0 +1,262 @@ + + + \ No newline at end of file diff --git a/src/views/cms/extcontract/ExtContractForm.vue b/src/views/cms/extcontract/ExtContractForm.vue new file mode 100644 index 00000000..7632f7d5 --- /dev/null +++ b/src/views/cms/extcontract/ExtContractForm.vue @@ -0,0 +1,260 @@ + + \ No newline at end of file diff --git a/src/views/cms/extcontract/index.vue b/src/views/cms/extcontract/index.vue new file mode 100644 index 00000000..b4a868ed --- /dev/null +++ b/src/views/cms/extcontract/index.vue @@ -0,0 +1,520 @@ + + + \ No newline at end of file diff --git a/src/views/cms/outscontract/OutsContractForm.vue b/src/views/cms/outscontract/OutsContractForm.vue new file mode 100644 index 00000000..76422ec0 --- /dev/null +++ b/src/views/cms/outscontract/OutsContractForm.vue @@ -0,0 +1,157 @@ + + \ No newline at end of file diff --git a/src/views/cms/outscontract/index.vue b/src/views/cms/outscontract/index.vue new file mode 100644 index 00000000..d957912a --- /dev/null +++ b/src/views/cms/outscontract/index.vue @@ -0,0 +1,306 @@ + + + \ No newline at end of file diff --git a/src/views/cms/outscontracthistory/OutsContractHistoryForm.vue b/src/views/cms/outscontracthistory/OutsContractHistoryForm.vue new file mode 100644 index 00000000..7c9746fd --- /dev/null +++ b/src/views/cms/outscontracthistory/OutsContractHistoryForm.vue @@ -0,0 +1,172 @@ + + \ No newline at end of file diff --git a/src/views/cms/outscontracthistory/index.vue b/src/views/cms/outscontracthistory/index.vue new file mode 100644 index 00000000..25270f3b --- /dev/null +++ b/src/views/cms/outscontracthistory/index.vue @@ -0,0 +1,345 @@ + + + \ No newline at end of file diff --git a/src/views/pms/budget/BudgetForm.vue b/src/views/pms/budget/BudgetForm.vue new file mode 100644 index 00000000..ba2abb0e --- /dev/null +++ b/src/views/pms/budget/BudgetForm.vue @@ -0,0 +1,143 @@ + + \ No newline at end of file diff --git a/src/views/pms/budget/index.vue b/src/views/pms/budget/index.vue new file mode 100644 index 00000000..4c3a033e --- /dev/null +++ b/src/views/pms/budget/index.vue @@ -0,0 +1,288 @@ + + + \ No newline at end of file diff --git a/src/views/pms/budgethistory/BudgetHistoryForm.vue b/src/views/pms/budgethistory/BudgetHistoryForm.vue new file mode 100644 index 00000000..60af88b4 --- /dev/null +++ b/src/views/pms/budgethistory/BudgetHistoryForm.vue @@ -0,0 +1,165 @@ + + \ No newline at end of file diff --git a/src/views/pms/budgethistory/index.vue b/src/views/pms/budgethistory/index.vue new file mode 100644 index 00000000..5540d498 --- /dev/null +++ b/src/views/pms/budgethistory/index.vue @@ -0,0 +1,333 @@ + + + \ No newline at end of file diff --git a/src/views/pms/receivables/ReceivablesForm.vue b/src/views/pms/receivables/ReceivablesForm.vue new file mode 100644 index 00000000..9446cfb6 --- /dev/null +++ b/src/views/pms/receivables/ReceivablesForm.vue @@ -0,0 +1,65 @@ + + \ No newline at end of file diff --git a/src/views/pms/receivables/index.vue b/src/views/pms/receivables/index.vue new file mode 100644 index 00000000..1a1ab5d0 --- /dev/null +++ b/src/views/pms/receivables/index.vue @@ -0,0 +1,85 @@ + + \ No newline at end of file diff --git a/src/views/pms/receivables/receivables.data.ts b/src/views/pms/receivables/receivables.data.ts new file mode 100644 index 00000000..4316f342 --- /dev/null +++ b/src/views/pms/receivables/receivables.data.ts @@ -0,0 +1,85 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const rules = reactive({ + projectId: [required], +}) + +// CrudSchema https://doc.iocoder.cn/vue3/crud-schema/ +const crudSchemas = reactive([ + { + label: '主键', + field: 'id', + isForm: false, + }, + { + label: '项目id', + field: 'projectId', + isSearch: true, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '主合同id ', + field: 'contractId', + isSearch: true, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '方案阶段比例', + field: 'planStage', + isSearch: true, + }, + { + label: '初设阶段比例', + field: 'initialDesignStage', + isSearch: true, + }, + { + label: '施工图阶段比例', + field: 'constructionDrawingStage', + isSearch: true, + }, + { + label: '施工配合阶段', + field: 'constructionStage', + isSearch: true, + }, + { + label: '审定阶段', + field: 'approveStage', + isSearch: true, + }, + { + label: '回款情况', + field: 'collectionSituation', + isSearch: true, + }, + { + label: '创建时间', + field: 'createTime', + formatter: dateFormatter, + isSearch: true, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '操作', + field: 'action', + isForm: false + } +]) +export const { allSchemas } = useCrudSchemas(crudSchemas) \ No newline at end of file diff --git a/src/views/pms/receivableshistory/ReceivablesHistoryForm.vue b/src/views/pms/receivableshistory/ReceivablesHistoryForm.vue new file mode 100644 index 00000000..34982cc5 --- /dev/null +++ b/src/views/pms/receivableshistory/ReceivablesHistoryForm.vue @@ -0,0 +1,65 @@ + + \ No newline at end of file diff --git a/src/views/pms/receivableshistory/index.vue b/src/views/pms/receivableshistory/index.vue new file mode 100644 index 00000000..c36cf0f1 --- /dev/null +++ b/src/views/pms/receivableshistory/index.vue @@ -0,0 +1,85 @@ + + \ No newline at end of file diff --git a/src/views/pms/receivableshistory/receivablesHistory.data.ts b/src/views/pms/receivableshistory/receivablesHistory.data.ts new file mode 100644 index 00000000..24677a9c --- /dev/null +++ b/src/views/pms/receivableshistory/receivablesHistory.data.ts @@ -0,0 +1,112 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const rules = reactive({ + projectId: [required], +}) + +// CrudSchema https://doc.iocoder.cn/vue3/crud-schema/ +const crudSchemas = reactive([ + { + label: '主键', + field: 'id', + isForm: false, + }, + { + label: '项目id', + field: 'projectId', + isSearch: true, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '主合同id ', + field: 'contractId', + isSearch: true, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '方案阶段比例', + field: 'planStage', + isSearch: true, + }, + { + label: '初设阶段比例', + field: 'initialDesignStage', + isSearch: true, + }, + { + label: '施工图阶段比例', + field: 'constructionDrawingStage', + isSearch: true, + }, + { + label: '施工配合阶段', + field: 'constructionStage', + isSearch: true, + }, + { + label: '审定阶段', + field: 'approveStage', + isSearch: true, + }, + { + label: '回款情况', + field: 'collectionSituation', + isSearch: true, + }, + { + label: '创建时间', + field: 'createTime', + formatter: dateFormatter, + isSearch: true, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '流程实体id', + field: 'processInstanceId', + isSearch: true, + }, + { + label: '流程状态', + field: 'processStatus', + isSearch: true, + form: { + component: 'Radio' + }, + }, + { + label: '应收款id', + field: 'receivableId', + isSearch: true, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '版本', + field: 'version', + isSearch: true, + }, + { + label: '操作', + field: 'action', + isForm: false + } +]) +export const { allSchemas } = useCrudSchemas(crudSchemas) \ No newline at end of file