From 29f6965685fc76d4164d9264cc52085bc825e641 Mon Sep 17 00:00:00 2001 From: lijingjia Date: Wed, 26 Jun 2024 19:58:20 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B4=B9=E7=94=A8=E7=94=B3=E8=AF=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../baseinfo/accountMaintenance/columns.tsx | 14 +- src/views/fee/template/columns.tsx | 12 +- src/views/operation/paidApply/api.ts | 47 +++- src/views/operation/paidApply/columns.tsx | 2 +- .../paidApply/components/tableActionBar.vue | 114 +++++++-- .../operation/paidApply/detail/columns.tsx | 33 ++- .../detail/components/businessTable.vue | 218 ++++++++++++++---- .../detail/components/exchangeRate.vue | 89 +++++++ .../operation/paidApply/detail/index.vue | 24 +- src/views/operation/paidApply/index.vue | 1 - 10 files changed, 461 insertions(+), 93 deletions(-) create mode 100644 src/views/operation/paidApply/detail/components/exchangeRate.vue diff --git a/src/views/baseinfo/accountMaintenance/columns.tsx b/src/views/baseinfo/accountMaintenance/columns.tsx index 687118c1..9f6fe324 100644 --- a/src/views/baseinfo/accountMaintenance/columns.tsx +++ b/src/views/baseinfo/accountMaintenance/columns.tsx @@ -13,6 +13,12 @@ import { getDictOption } from '/@/utils/dictUtil' const customTypeDict = ref([]) // 账号类型下拉数据 const accountTypeDict = ref([]) +getDictOption('account_type').then(data => { + accountTypeDict.value = data +}) +getDictOption('djy_cust_prop').then(data => { + customTypeDict.value = data +}) // 客户名称下拉框数据 const companyDict = ref([]) export const columns: BasicColumn[] = [ @@ -76,9 +82,6 @@ export const formSchema: FormSchema[] = [ component: 'Select', colProps: { span: 12 }, componentProps: () => { - getDictOption('account_type').then(data => { - accountTypeDict.value = data - }) return { options: accountTypeDict.value, allowClear: true, @@ -100,12 +103,8 @@ export const formSchema: FormSchema[] = [ field: 'customerType', label: '客户类型', component: 'Select', - required: true, colProps: { span: 12 }, componentProps: () => { - getDictOption('djy_cust_prop').then(data => { - customTypeDict.value = data - }) return { options: customTypeDict.value, allowClear: true, @@ -129,7 +128,6 @@ export const formSchema: FormSchema[] = [ { field: 'customerName', label: '客户名称', - required: true, component: 'Select', colProps: { span: 12 }, componentProps: ({ formModel }) => { diff --git a/src/views/fee/template/columns.tsx b/src/views/fee/template/columns.tsx index cc4987fb..0a692993 100644 --- a/src/views/fee/template/columns.tsx +++ b/src/views/fee/template/columns.tsx @@ -9,6 +9,12 @@ import { BasicColumn, FormSchema } from '/@/components/Table' import { getDictOption } from '/@/utils/dictUtil' // 业务种类字典 const opTypeDict = ref([]) +getDictOption('business_type').then(data => { + data.forEach(res => { + res.value = String(res.value) + }) + opTypeDict.value = data +}) export const columns: BasicColumn[] = [ { title: '模版名称', @@ -100,12 +106,6 @@ export const formSchema: FormSchema[] = [ required: true, colProps: { span: 8 }, componentProps: ({ formActionType }) => { - getDictOption('business_type').then(data => { - data.forEach(res => { - res.value = String(res.value) - }) - opTypeDict.value = data - }) return { options: opTypeDict.value, allowClear: true, diff --git a/src/views/operation/paidApply/api.ts b/src/views/operation/paidApply/api.ts index 9bc01ba2..a803e00b 100644 --- a/src/views/operation/paidApply/api.ts +++ b/src/views/operation/paidApply/api.ts @@ -12,7 +12,12 @@ enum Api { info = '/feeApi/FeeCurrency/GetFeeCurrencyInfo', GetBizList = '/feeApi/PaymentApplication/GetBizList', Save = '/feeApi/PaymentApplication/Save', - Get = '/feeApi/PaymentApplication//Get' + Get = '/feeApi/PaymentApplication/Get', + GetExchangeRate = '/feeApi/FeeCurrencyExchange/GetExchangeRate', + BizSave = '/feeApi/PaymentApplication/BizSave', + Delete = '/feeApi/PaymentApplication/Delete', + ApplyAudit = '/feeApi/PaymentApplication/ApplyAudit', + Withdraw = '/feeApi/PaymentApplication/Withdraw' } // 列表 (Auth) export function GetList(data: PageRequest) { @@ -61,4 +66,44 @@ export function Get(query) { method: 'get', params: query }) +} +// 根据两种币别计算汇率接口 +export function GetExchangeRate(query) { + return request({ + url: Api.GetExchangeRate, + method: 'get', + params: query + }) +} +// 按业务申请 +export function BizSave(data: PageRequest) { + return request({ + url: Api.BizSave, + method: 'post', + data + }) +} +// 删除申请单 +export function Delete(data: PageRequest) { + return request({ + url: Api.Delete, + method: 'post', + data + }) +} +// 申请单提交审核 +export function ApplyAudit(data: PageRequest) { + return request({ + url: Api.ApplyAudit, + method: 'post', + data + }) +} +// 撤销审批 +export function Withdraw(data: PageRequest) { + return request({ + url: Api.Withdraw, + method: 'post', + data + }) } \ No newline at end of file diff --git a/src/views/operation/paidApply/columns.tsx b/src/views/operation/paidApply/columns.tsx index 74d41dde..5d627859 100644 --- a/src/views/operation/paidApply/columns.tsx +++ b/src/views/operation/paidApply/columns.tsx @@ -29,7 +29,7 @@ export const columns: BasicColumn[] = [ }, { title: '状态', - dataIndex: 'status', + dataIndex: 'statusText', width: 100, align: 'left' }, diff --git a/src/views/operation/paidApply/components/tableActionBar.vue b/src/views/operation/paidApply/components/tableActionBar.vue index 20051147..e530c2ee 100644 --- a/src/views/operation/paidApply/components/tableActionBar.vue +++ b/src/views/operation/paidApply/components/tableActionBar.vue @@ -11,25 +11,35 @@ - - 提交审核 + + - - - - - - + + + + + + + + diff --git a/src/views/operation/paidApply/detail/columns.tsx b/src/views/operation/paidApply/detail/columns.tsx index 8b8ac3ca..68ff9f41 100644 --- a/src/views/operation/paidApply/detail/columns.tsx +++ b/src/views/operation/paidApply/detail/columns.tsx @@ -7,8 +7,11 @@ import { ref, h, ComponentOptions, resolveComponent } from 'vue' import { BasicColumn, FormSchema } from '/@/components/Table' import { useOptionsStore } from '/@/store/modules/options' const optionsStore = useOptionsStore() +import { useRoute } from 'vue-router' +const route = useRoute() // 引入字典数据 import { getDictOption } from '/@/utils/dictUtil' +import { placeholderSign } from 'element-plus/es/components/table-v2/src/private' // 业务表格列 export const businessColumns: BasicColumn[] = [ @@ -189,6 +192,12 @@ export const businessColumns: BasicColumn[] = [ ] export const formSchema: FormSchema[] = [ + { + field: 'id', + label: '申请编号', + component: 'Input', + show: false + }, { field: 'applicationNO', label: '申请编号', @@ -226,7 +235,6 @@ export const formSchema: FormSchema[] = [ labelField: 'shortName', valueField: 'id', resultField: 'data', - immediate: false, filterOption: (input: string, option: any) => { return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 } @@ -266,7 +274,13 @@ export const formSchema: FormSchema[] = [ label: '申请日期', component: 'DatePicker', dynamicDisabled: false, - colProps: { span: 3 } + colProps: { span: 3 }, + componentProps: { + showTime: true, + allowClear: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss' + }, }, { field: 'currency', @@ -274,12 +288,14 @@ export const formSchema: FormSchema[] = [ component: 'ApiSelect', required: false, dynamicDisabled: false, + defaultValue: null, colProps: { span: 3 }, componentProps: () => { return { option: optionsStore.getOptionsByCode('GetFeeCurrencySelectList'), labelField: 'name', valueField: 'codeName', + placeholder: '原币申请', resultField: 'data', immediate: false, filterOption: (input: string, option: any) => { @@ -355,7 +371,13 @@ export const formSchema: FormSchema[] = [ label: '申请支付日期', component: 'DatePicker', dynamicDisabled: false, - colProps: { span: 3 } + colProps: { span: 3 }, + componentProps: { + showTime: true, + allowClear: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss' + }, }, // { // field: 'createBy', @@ -374,7 +396,7 @@ export const formSchema: FormSchema[] = [ ] export const searchFormSchema: FormSchema[] = [ { - label: '结算单位', + label: '结算对象', field: 'customerId', component: 'ApiSelect', dynamicDisabled: false, @@ -382,9 +404,8 @@ export const searchFormSchema: FormSchema[] = [ componentProps: () => { return { option: optionsStore.getOptionsByCode('GetClientListByCode'), - immediate: false, labelField: 'shortName', - valueField: 'codeName', + valueField: 'id', resultField: 'data', filterOption: (input: string, option: any) => { return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 diff --git a/src/views/operation/paidApply/detail/components/businessTable.vue b/src/views/operation/paidApply/detail/components/businessTable.vue index c24645ba..6443e4c7 100644 --- a/src/views/operation/paidApply/detail/components/businessTable.vue +++ b/src/views/operation/paidApply/detail/components/businessTable.vue @@ -5,37 +5,45 @@ --> + + \ No newline at end of file diff --git a/src/views/operation/paidApply/detail/index.vue b/src/views/operation/paidApply/detail/index.vue index 0b62da29..d4ca0c72 100644 --- a/src/views/operation/paidApply/detail/index.vue +++ b/src/views/operation/paidApply/detail/index.vue @@ -6,8 +6,8 @@