From 4eeee1087b4055fcc6bb7b9ed1205f4f8bc0980d Mon Sep 17 00:00:00 2001 From: jia <1451658316@qq.com> Date: Mon, 18 Dec 2023 18:52:49 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B4=A2=E5=8A=A1=E7=AE=A1=E7=90=86=E4=B8=8B?= =?UTF-8?q?=E6=94=B6=E6=AC=BE=E7=AE=A1=E7=90=86=20=E5=BC=80=E7=A5=A8?= =?UTF-8?q?=E7=94=B3=E8=AF=B7=20=E3=80=81=E5=9B=9E=E6=AC=BE=E8=AE=A1?= =?UTF-8?q?=E5=88=92=E3=80=81=E5=9B=9E=E6=AC=BE=E8=AE=B0=E5=BD=95=E3=80=81?= =?UTF-8?q?=E9=80=80=E6=AC=BE=E7=94=B3=E8=AF=B7=E5=A2=9E=E5=88=A0=E6=94=B9?= =?UTF-8?q?=E6=9F=A5=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/InvoicingRequests.ts | 26 + src/api/appointment.ts | 26 + src/api/recordsPayment.ts | 28 ++ src/api/refund.ts | 27 ++ src/api/remittance.ts | 26 + src/components/bankaccount/index.vue | 61 +++ src/components/pending_paymentplan/index.vue | 87 ++++ src/components/personnelselector/index.vue | 3 +- src/components/proontract/index.vue | 2 +- src/components/salescontract/index.vue | 76 +++ src/utils/util.ts | 48 ++ src/utils/validate.ts | 16 + src/views/InvoicingRequests/detail.vue | 288 +++++++++++ src/views/InvoicingRequests/edit.vue | 451 ++++++++++++++++++ src/views/InvoicingRequests/index.vue | 189 ++++++++ src/views/bid_buy_bidding_document/edit.vue | 3 +- src/views/bid_buy_bidding_document/index.vue | 4 +- src/views/contract/edit.vue | 7 +- src/views/contract/index.vue | 6 +- src/views/division_subdivision/index.vue | 189 ++++++++ src/views/paymentplan/detail.vue | 172 +++++++ src/views/paymentplan/edit.vue | 359 ++++++++++++++ src/views/paymentplan/index.vue | 148 ++++++ src/views/paymentrequest/detail.vue | 172 +++++++ src/views/paymentrequest/edit.vue | 359 ++++++++++++++ src/views/paymentrequest/index.vue | 148 ++++++ src/views/project/edit.vue | 27 +- src/views/project_document/index.vue | 0 .../project_manager_appointment/detail.vue | 172 +++++++ .../project_manager_appointment/edit.vue | 408 ++++++++++++++++ .../project_manager_appointment/index.vue | 152 ++++++ src/views/project_milestones/index.vue | 149 ++++++ src/views/project_plan/index.vue | 0 src/views/receiptrecord/detail.vue | 172 +++++++ src/views/receiptrecord/edit.vue | 385 +++++++++++++++ src/views/receiptrecord/index.vue | 148 ++++++ src/views/recordsPayment/detail.vue | 194 ++++++++ src/views/recordsPayment/edit.vue | 432 +++++++++++++++++ src/views/recordsPayment/index.vue | 164 +++++++ src/views/refund/detail.vue | 172 +++++++ src/views/refund/edit.vue | 359 ++++++++++++++ src/views/refund/index.vue | 148 ++++++ src/views/refundrecord/detail.vue | 172 +++++++ src/views/refundrecord/edit.vue | 359 ++++++++++++++ src/views/refundrecord/index.vue | 148 ++++++ src/views/remittance/detail.vue | 181 +++++++ src/views/remittance/edit.vue | 290 +++++++++++ src/views/remittance/index.vue | 161 +++++++ 48 files changed, 7297 insertions(+), 17 deletions(-) create mode 100644 src/api/InvoicingRequests.ts create mode 100644 src/api/appointment.ts create mode 100644 src/api/recordsPayment.ts create mode 100644 src/api/refund.ts create mode 100644 src/api/remittance.ts create mode 100644 src/components/bankaccount/index.vue create mode 100644 src/components/pending_paymentplan/index.vue create mode 100644 src/components/salescontract/index.vue create mode 100644 src/views/InvoicingRequests/detail.vue create mode 100644 src/views/InvoicingRequests/edit.vue create mode 100644 src/views/InvoicingRequests/index.vue create mode 100644 src/views/division_subdivision/index.vue create mode 100644 src/views/paymentplan/detail.vue create mode 100644 src/views/paymentplan/edit.vue create mode 100644 src/views/paymentplan/index.vue create mode 100644 src/views/paymentrequest/detail.vue create mode 100644 src/views/paymentrequest/edit.vue create mode 100644 src/views/paymentrequest/index.vue create mode 100644 src/views/project_document/index.vue create mode 100644 src/views/project_manager_appointment/detail.vue create mode 100644 src/views/project_manager_appointment/edit.vue create mode 100644 src/views/project_manager_appointment/index.vue create mode 100644 src/views/project_milestones/index.vue create mode 100644 src/views/project_plan/index.vue create mode 100644 src/views/receiptrecord/detail.vue create mode 100644 src/views/receiptrecord/edit.vue create mode 100644 src/views/receiptrecord/index.vue create mode 100644 src/views/recordsPayment/detail.vue create mode 100644 src/views/recordsPayment/edit.vue create mode 100644 src/views/recordsPayment/index.vue create mode 100644 src/views/refund/detail.vue create mode 100644 src/views/refund/edit.vue create mode 100644 src/views/refund/index.vue create mode 100644 src/views/refundrecord/detail.vue create mode 100644 src/views/refundrecord/edit.vue create mode 100644 src/views/refundrecord/index.vue create mode 100644 src/views/remittance/detail.vue create mode 100644 src/views/remittance/edit.vue create mode 100644 src/views/remittance/index.vue diff --git a/src/api/InvoicingRequests.ts b/src/api/InvoicingRequests.ts new file mode 100644 index 0000000..b352b35 --- /dev/null +++ b/src/api/InvoicingRequests.ts @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 开票申请列表 +export function apiinvoiceapplyLists(params: any) { + return request.get({ url: '/finance.finance_invoice_apply/lists', params }) +} + +// 添加开票申请 +export function apiinvoiceapplyAdd(params: any) { + return request.post({ url: '/finance.finance_invoice_apply/add', params }) +} + +// 编辑开票申请 +export function apiinvoiceapplyEdit(params: any) { + return request.post({ url: '/finance.finance_invoice_apply/edit', params }) +} + +// 删除开票申请 +export function apiinvoiceapplyDelete(params: any) { + return request.post({ url: '/finance.finance_invoice_apply/delete', params }) +} + +// 开票申请详情 +export function apiinvoiceapplyDetail(params: any) { + return request.get({ url: '/finance.finance_invoice_apply/detail', params }) +} \ No newline at end of file diff --git a/src/api/appointment.ts b/src/api/appointment.ts new file mode 100644 index 0000000..f9867da --- /dev/null +++ b/src/api/appointment.ts @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 项目经理委任列表 +export function appointmentLists(params: any) { + return request.get({ url: '/project.project_manager_appointment/lists', params }) +} + +// 添加项目经理委任 +export function appointmentAdd(params: any) { + return request.post({ url: '/project.project_manager_appointment/add', params }) +} + +// 编辑项目经理委任 +export function appointmentEdit(params: any) { + return request.post({ url: '/project.project_manager_appointment/edit', params }) +} + +// 删除项目经理委任 +export function appointmentDelete(params: any) { + return request.post({ url: '/project.project_manager_appointment/delete', params }) +} + +//项目经理委任详情 +export function appointmentDetail(params: any) { + return request.get({ url: '/project.project_manager_appointment/detail', params }) +} \ No newline at end of file diff --git a/src/api/recordsPayment.ts b/src/api/recordsPayment.ts new file mode 100644 index 0000000..0ef3a90 --- /dev/null +++ b/src/api/recordsPayment.ts @@ -0,0 +1,28 @@ + + +import request from '@/utils/request' + +// 回款记录列表 +export function apireturnedrecordLists(params: any) { + return request.get({ url: '/finance.finance_returned_record/lists', params }) +} + +// 添加回款记录 +export function apireturnedrecordAdd(params: any) { + return request.post({ url: '/finance.finance_returned_record/add', params }) +} + +// 编辑回款记录 +export function apireturnedrecordEdit(params: any) { + return request.post({ url: '/finance.finance_returned_record/edit', params }) +} + +// 删除回款记录 +export function apireturnedrecordDelete(params: any) { + return request.post({ url: '/finance.finance_returned_record/delete', params }) +} + +// 回款记录详情 +export function apireturnedrecordDetail(params: any) { + return request.get({ url: '/finance.finance_returned_record/detail', params }) +} \ No newline at end of file diff --git a/src/api/refund.ts b/src/api/refund.ts new file mode 100644 index 0000000..ae34783 --- /dev/null +++ b/src/api/refund.ts @@ -0,0 +1,27 @@ + +import request from '@/utils/request' + +// 退款申请列表 +export function apirefundapplyLists(params: any) { + return request.get({ url: '/finance.finance_refund_apply/lists', params }) +} + +// 添加退款申请 +export function apirefundapplyAdd(params: any) { + return request.post({ url: '/finance.finance_refund_apply/add', params }) +} + +// 编辑退款申请 +export function apirefundapplyEdit(params: any) { + return request.post({ url: '/finance.finance_refund_apply/edit', params }) +} + +// 删除退款申请 +export function apirefundapplyDelete(params: any) { + return request.post({ url: '/finance.finance_refund_apply/delete', params }) +} + +// 退款申请详情 +export function apirefundapplyDetail(params: any) { + return request.get({ url: '/finance.finance_refund_apply/detail', params }) +} \ No newline at end of file diff --git a/src/api/remittance.ts b/src/api/remittance.ts new file mode 100644 index 0000000..f84e48b --- /dev/null +++ b/src/api/remittance.ts @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 回款计划列表 +export function apireturnedLists(params: any) { + return request.get({ url: '/finance.finance_returned_money/lists', params }) +} + +// 添加回款计划 +export function apireturnedAdd(params: any) { + return request.post({ url: '/finance.finance_returned_money/add', params }) +} + +// 编辑回款计划 +export function apireturnedEdit(params: any) { + return request.post({ url: '/finance.finance_returned_money/edit', params }) +} + +// 删除回款计划 +export function apireturnedDelete(params: any) { + return request.post({ url: '/finance.finance_returned_money/delete', params }) +} + +// 回款计划详情 +export function apireturnedDetail(params: any) { + return request.get({ url: '/finance.finance_returned_money/detail', params }) +} diff --git a/src/components/bankaccount/index.vue b/src/components/bankaccount/index.vue new file mode 100644 index 0000000..4dab2ec --- /dev/null +++ b/src/components/bankaccount/index.vue @@ -0,0 +1,61 @@ + + + \ No newline at end of file diff --git a/src/components/pending_paymentplan/index.vue b/src/components/pending_paymentplan/index.vue new file mode 100644 index 0000000..a68761b --- /dev/null +++ b/src/components/pending_paymentplan/index.vue @@ -0,0 +1,87 @@ + + + \ No newline at end of file diff --git a/src/components/personnelselector/index.vue b/src/components/personnelselector/index.vue index 3743247..cf671d0 100644 --- a/src/components/personnelselector/index.vue +++ b/src/components/personnelselector/index.vue @@ -10,7 +10,6 @@ -
@@ -222,7 +221,7 @@ import { defineEmits } from "vue" const leixin = ref('0') const props = defineProps({ type: { - type: String,//1:单选 2.多选 + type: String || Number,//1:单选 2.多选 default: () => ({}) } }) diff --git a/src/components/proontract/index.vue b/src/components/proontract/index.vue index b0dd9dc..b261b83 100644 --- a/src/components/proontract/index.vue +++ b/src/components/proontract/index.vue @@ -18,7 +18,7 @@ - + diff --git a/src/components/salescontract/index.vue b/src/components/salescontract/index.vue new file mode 100644 index 0000000..ad50bde --- /dev/null +++ b/src/components/salescontract/index.vue @@ -0,0 +1,76 @@ + + + \ No newline at end of file diff --git a/src/utils/util.ts b/src/utils/util.ts index 57d9ab6..7db144f 100644 --- a/src/utils/util.ts +++ b/src/utils/util.ts @@ -160,3 +160,51 @@ export const getNonDuplicateID = (length = 8) => { idStr += Math.random().toString(36).substring(3, length) return idStr } + +/** + * 将数字转成中文大写 + * @params num + */ +export const toChinesNum = (value: any) => { + const chineseNumbers = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖']; + const chineseUnits = ['', '拾', '佰', '仟', '万', '亿']; + + let integerPart = Math.floor(value); + let decimalPart = Math.round((value - integerPart) * 100); + + let result = ''; + + // 处理整数部分 + if (integerPart === 0) { + result += chineseNumbers[0]; + } else { + let integerPartStr = integerPart.toString(); + let len = integerPartStr.length; + let zeroFlag = false; // 是否需要添加零 + + for (let i = 0; i < len; i++) { + let num = parseInt(integerPartStr[i]); + let unit = len - i - 1; + + if (num === 0) { + zeroFlag = true; + } else { + if (zeroFlag) { + result += chineseNumbers[0]; + zeroFlag = false; + } + result += chineseNumbers[num] + chineseUnits[unit]; + } + } + } + + // 处理小数部分 + if (decimalPart > 0) { + result += '点'; + result += chineseNumbers[decimalPart / 10] + chineseNumbers[decimalPart % 10]; + } + + + + return result; + } \ No newline at end of file diff --git a/src/utils/validate.ts b/src/utils/validate.ts index 0f8d8f1..bc512bb 100644 --- a/src/utils/validate.ts +++ b/src/utils/validate.ts @@ -5,3 +5,19 @@ export function isExternal(path: string) { return /^(https?:|mailto:|tel:)/.test(path) } + +//电话 +export function isPhone(data: string) { + return /^1[3|4|5|7|8][0-9]{9}$/.test(data) +} + +//身份号 +export function isIdCard(data: string ){ + return /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(data) +} + +//邮箱 +export function isEmail(data: string) { + return /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/.test(data) +} + diff --git a/src/views/InvoicingRequests/detail.vue b/src/views/InvoicingRequests/detail.vue new file mode 100644 index 0000000..6e6b61d --- /dev/null +++ b/src/views/InvoicingRequests/detail.vue @@ -0,0 +1,288 @@ + + + + + diff --git a/src/views/InvoicingRequests/edit.vue b/src/views/InvoicingRequests/edit.vue new file mode 100644 index 0000000..8eaeb68 --- /dev/null +++ b/src/views/InvoicingRequests/edit.vue @@ -0,0 +1,451 @@ + + + diff --git a/src/views/InvoicingRequests/index.vue b/src/views/InvoicingRequests/index.vue new file mode 100644 index 0000000..627c20a --- /dev/null +++ b/src/views/InvoicingRequests/index.vue @@ -0,0 +1,189 @@ + + + + diff --git a/src/views/bid_buy_bidding_document/edit.vue b/src/views/bid_buy_bidding_document/edit.vue index 7ff0e43..7d3c3a3 100644 --- a/src/views/bid_buy_bidding_document/edit.vue +++ b/src/views/bid_buy_bidding_document/edit.vue @@ -14,7 +14,7 @@ - + @@ -152,6 +152,7 @@ const popupTitle = computed(() => { const formData = reactive({ id: '', project_id: '', + approve_id: '1', bid_document_no: '', invite_tenders_company_name: '', bid_company_name: '', diff --git a/src/views/bid_buy_bidding_document/index.vue b/src/views/bid_buy_bidding_document/index.vue index fea37bc..2d8601f 100644 --- a/src/views/bid_buy_bidding_document/index.vue +++ b/src/views/bid_buy_bidding_document/index.vue @@ -38,8 +38,8 @@ - - + + diff --git a/src/views/contract/edit.vue b/src/views/contract/edit.vue index a4b5078..a6be72c 100644 --- a/src/views/contract/edit.vue +++ b/src/views/contract/edit.vue @@ -184,10 +184,9 @@ const customEvent = (e: any) => { }; const customEvent1 = (e: any) => { formData.buy_bidding_document_id = e.id; - document_name.value = e.bid_company_name - document_code.value = e.bid_document_no - bidding_code.value = e.bid_document_no - + document_name.value = e.name; + document_code.value = e.project.project_code + bidding_code.value = e.document.bid_document_no showDialog1.value = false; }; diff --git a/src/views/contract/index.vue b/src/views/contract/index.vue index 328c65c..b2e3b80 100644 --- a/src/views/contract/index.vue +++ b/src/views/contract/index.vue @@ -30,10 +30,10 @@
- + - - + +