diff --git a/src/views/baseinfo/infoclient/FeeCustTemplate/TenantAuditStepModal.vue b/src/views/baseinfo/infoclient/FeeCustTemplate/TenantAuditStepModal.vue
index 7722b655..eaa08723 100644
--- a/src/views/baseinfo/infoclient/FeeCustTemplate/TenantAuditStepModal.vue
+++ b/src/views/baseinfo/infoclient/FeeCustTemplate/TenantAuditStepModal.vue
@@ -10,7 +10,7 @@
-
+
{
+ UnitList.forEach((e: any) => {
+ if (e.value == item.unit) {
+ item.unitText = e.name
+ }
+ })
+ })
+ feeField.value.SetData(res.data.details)
+ feeField.value.condition = res.data.condition
+ detailId.value = res.data.id
+ }
+ }
const getTitle = computed(() => (!unref(isUpdate) ? '新增' : '编辑'))
// 费用表格
const feeField = ref()
diff --git a/src/views/baseinfo/infoclient/FeeCustTemplate/api.ts b/src/views/baseinfo/infoclient/FeeCustTemplate/api.ts
index bae5602e..bc70ce7e 100644
--- a/src/views/baseinfo/infoclient/FeeCustTemplate/api.ts
+++ b/src/views/baseinfo/infoclient/FeeCustTemplate/api.ts
@@ -5,6 +5,8 @@ enum Api {
list = '/feeApi/FeeCustTemplate/GetList',
edit = '/feeApi/FeeCustTemplate/Edit',
bulkEdit = '/feeApi/FeeCustTemplate/BulkEdit',
+ bulkEditDetails = '/feeApi/FeeCustTemplate/BulkEditDetails',
+
info = '/feeApi/FeeCustTemplate/Edit',
delete = '/feeApi/FeeCustTemplate/Delete',
GetColumns = '/mainApi/Common/GetColumnsByClient',
@@ -42,6 +44,14 @@ export function ApiBulkEdit(data: PageRequest) {
data,
})
}
+// 批量编辑模板明细 (Auth)
+export function ApiBulkEditDetails(data: PageRequest) {
+ return request({
+ url: Api.bulkEditDetails,
+ method: 'post',
+ data,
+ })
+}
// 详情 (Auth)
export function ApiInfo(query) {
return request({
diff --git a/src/views/baseinfo/infoclient/FeeCustTemplate/columns.tsx b/src/views/baseinfo/infoclient/FeeCustTemplate/columns.tsx
index 10d01aa3..e57e4c96 100644
--- a/src/views/baseinfo/infoclient/FeeCustTemplate/columns.tsx
+++ b/src/views/baseinfo/infoclient/FeeCustTemplate/columns.tsx
@@ -13,10 +13,8 @@ import {
GetClientSourceSelectList,
GetClientSourceDetailSelectList,
} from '/@/views/operation/seaexport/api/BookingLedger'
-// 往来单位下拉框数据
-const companyDict = ref([])
-import { useOptionsStore } from '/@/store/modules/options'
-const optionsStore = useOptionsStore()
+import { GetFeeCodeSelectList, GetFeeCurrencySelectList } from '/@/api/common'
+import { feeUnitDict } from '/@/hooks/dict/index'
let businessType: any = [
{ value: 1, label: '海运出口' },
{ value: 2, label: '海运进口' },
@@ -423,7 +421,7 @@ export const searchFormSchema: FormSchema[] = [
required: false,
dynamicDisabled: false,
colProps: { span: 4 },
- componentProps: ({ formModel, formActionType }) => {
+ componentProps: () => {
return {
api: GetClientFrtSelectList,
allowClear: true,
@@ -910,3 +908,269 @@ export const formSchema: FormSchema[] = [
},
},
]
+export const detailsFormSchema: FormSchema[] = [
+ {
+ label: '费用名称Code',
+ field: 'feeCode',
+ component: 'Input',
+ defaultValue: '',
+ show: false,
+ },
+ {
+ label: '费用名称ID',
+ field: 'feeId',
+ component: 'Input',
+ defaultValue: '',
+ show: false,
+ },
+ {
+ field: 'feeName',
+ label: '费用名称',
+ component: 'ApiSelect',
+ required: false,
+ dynamicDisabled: false,
+ defaultValue: null,
+ colProps: { span: 6 },
+ componentProps: ({ formModel }) => {
+ return {
+ api: GetFeeCodeSelectList,
+ allowClear: true,
+ showSearch: true,
+ labelField: 'name',
+ valueField: 'name',
+ resultField: 'data',
+ filterOption: (input: string, option: any) => {
+ return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
+ },
+ onChange: (e, obj) => {
+ console.log(e, obj)
+
+ if (e && obj) {
+ formModel.feeName = obj.label
+ formModel.feeCode = obj.code
+ formModel.feeId = obj.id
+ formModel.unit = obj.defaultUnit
+ formModel.unitText = obj.defaultUnitName
+ formModel.currency = obj.defaultCurrency
+ if (formModel.currency == 'RMB') {
+ formModel.exchangeRate = 1
+ } else {
+ formModel.exchangeRate = ''
+ }
+ formModel.taxRate = obj.taxRate
+ formModel.isInvoice = obj.isInvoice
+ formModel.isAdvancedPay = obj.isAdvancedPay
+ }
+ if (!e && !obj) {
+ formModel.feeName = ''
+ formModel.feeCode = ''
+ formModel.feeId = ''
+ formModel.unit = ''
+ formModel.unitText = ''
+ formModel.currency = ''
+ formModel.exchangeRate = ''
+ formModel.taxRate = ''
+ formModel.isInvoice = ''
+ formModel.isAdvancedPay = ''
+ }
+ },
+ }
+ },
+ },
+ {
+ label: '客户类别',
+ field: 'customerType',
+ component: 'Input',
+ defaultValue: '',
+ show: false,
+ },
+ {
+ field: 'customerTypeText',
+ label: '客户类别',
+ component: 'ApiSelect',
+ required: false,
+ dynamicDisabled: false,
+ defaultValue: null,
+ colProps: { span: 6 },
+ componentProps: ({ formModel }) => {
+ return {
+ api: () => {
+ return new Promise((resolve) => {
+ getDictOption('djy_cust_prop').then((res) => {
+ resolve(res)
+ })
+ })
+ },
+ allowClear: true,
+ showSearch: true,
+ labelField: 'label',
+ valueField: 'value',
+ resultField: 'data',
+ filterOption: (input: string, option: any) => {
+ return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
+ },
+ onChange: (e, obj) => {
+ console.log(e, obj)
+ if (e && obj) {
+ formModel.customerTypeText = obj.label
+ formModel.customerType = obj.value
+ }
+ if (!e && !obj) {
+ formModel.customerTypeText = ''
+ formModel.customerType = ''
+ }
+ },
+ }
+ },
+ },
+ {
+ label: '单位标准',
+ field: 'unit',
+ component: 'Input',
+ defaultValue: '',
+ show: false,
+ },
+ {
+ field: 'unitText',
+ label: '单位标准',
+ component: 'ApiSelect',
+ required: false,
+ dynamicDisabled: false,
+ defaultValue: null,
+ colProps: { span: 6 },
+ componentProps: ({ formModel }) => {
+ return {
+ api: feeUnitDict,
+ allowClear: true,
+ showSearch: true,
+ labelField: 'label',
+ valueField: 'value',
+ resultField: 'data',
+ filterOption: (input: string, option: any) => {
+ return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
+ },
+ onChange: (e, obj) => {
+ console.log(e, obj)
+ if (e && obj) {
+ formModel.unitText = obj.label
+ formModel.unit = obj.value
+ }
+ if (!e && !obj) {
+ formModel.unitText = ''
+ formModel.unit = ''
+ }
+ },
+ }
+ },
+ },
+ {
+ field: 'isCtn',
+ label: '是否箱型',
+ component: 'Switch',
+ componentProps: {
+ checkedChildren: '是',
+ checkedValue: true,
+ unCheckedChildren: '否',
+ unCheckedValue: false,
+ },
+ defaultValue: false,
+ colProps: {
+ span: 6,
+ },
+ },
+ {
+ field: 'currency',
+ label: '币别',
+ component: 'ApiSelect',
+ required: false,
+ dynamicDisabled: false,
+ defaultValue: null,
+ colProps: { span: 6 },
+ componentProps: ({ formModel }) => {
+ return {
+ api: GetFeeCurrencySelectList,
+ allowClear: true,
+ showSearch: true,
+ labelField: 'codeName',
+ valueField: 'codeName',
+ resultField: 'data',
+ filterOption: (input: string, option: any) => {
+ return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
+ },
+ onChange: (e) => {
+ if (e == 'RMB') {
+ formModel.exchangeRate = 1
+ } else {
+ formModel.exchangeRate = ''
+ }
+ },
+ }
+ },
+ },
+ {
+ field: 'unitPrice',
+ label: '单价',
+ component: 'InputNumber',
+ colProps: { span: 4 },
+ },
+ {
+ field: 'exchangeRate',
+ label: '汇率',
+ component: 'InputNumber',
+ colProps: { span: 4 },
+ },
+ {
+ field: 'taxRate',
+ label: '税率',
+ component: 'InputNumber',
+ colProps: { span: 4 },
+ },
+ {
+ field: 'accTaxRate',
+ label: '财务税率',
+ component: 'InputNumber',
+ colProps: { span: 4 },
+ },
+ {
+ field: 'tax',
+ label: '税额',
+ component: 'InputNumber',
+ colProps: { span: 4 },
+ },
+ {
+ field: 'taxUnitPrice',
+ label: '含税单价',
+ component: 'InputNumber',
+ colProps: { span: 4 },
+ },
+ {
+ field: 'isInvoice',
+ label: '是否开票',
+ component: 'Switch',
+ componentProps: {
+ checkedChildren: '是',
+ checkedValue: true,
+ unCheckedChildren: '否',
+ unCheckedValue: false,
+ },
+ defaultValue: false,
+ colProps: {
+ span: 6,
+ },
+ },
+ {
+ field: 'isAdvancedPay',
+ label: '是否垫付',
+ component: 'Switch',
+ componentProps: {
+ checkedChildren: '是',
+ checkedValue: true,
+ unCheckedChildren: '否',
+ unCheckedValue: false,
+ },
+ defaultValue: false,
+ colProps: {
+ span: 6,
+ },
+ },
+]
diff --git a/src/views/baseinfo/infoclient/FeeCustTemplate/feeField.vue b/src/views/baseinfo/infoclient/FeeCustTemplate/feeField.vue
index bb02e91c..2fea6708 100644
--- a/src/views/baseinfo/infoclient/FeeCustTemplate/feeField.vue
+++ b/src/views/baseinfo/infoclient/FeeCustTemplate/feeField.vue
@@ -11,6 +11,10 @@
添加
+
+
+ 批量编辑
+
+
+
+