diff --git a/src/components/CostEntry/components/applyModify.tsx b/src/components/CostEntry/components/applyModify.tsx index 11bfae21..4c9bdc16 100644 --- a/src/components/CostEntry/components/applyModify.tsx +++ b/src/components/CostEntry/components/applyModify.tsx @@ -4,8 +4,6 @@ import { FormSchema } from '/@/components/Table' import { getDictOption } from '/@/utils/dictUtil' // 下拉框数据接口 import { GetFeeCurrencySelectList, GetClientListByCode, GetFeeCodeSelectList } from '/@/api/common' -// 客户类别下拉框数据 -const customTypeDict = ref([]) // 往来单位下拉框数据 const companyDict = ref([]) // 引入计费标准字典 @@ -70,16 +68,20 @@ export const formSchema: FormSchema[] = [ field: 'customerType', label: '客户类别', defaultValue: '', - component: 'Select', + component: 'ApiSelect', colProps: { span: 5 }, componentProps: ({ formModel }) => { - getDictOption('djy_cust_prop').then(data => { - customTypeDict.value = data - }) return { - options: customTypeDict.value, - allowClear: true, - showSearch: true, + api: () => { + return new Promise((resolve) => { + getDictOption('djy_cust_prop').then((res) => { + resolve(res) + }) + }) + }, + labelField: 'label', + valueField: 'value', + resultField: 'data', filterOption: (input: string, option: any) => { return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 }, diff --git a/src/components/FlowChart/index.vue b/src/components/FlowChart/index.vue index 205c0d94..fcc0305a 100644 --- a/src/components/FlowChart/index.vue +++ b/src/components/FlowChart/index.vue @@ -4,14 +4,35 @@ * @Description: 流程图组件 --> - - + + + + + + + + + + + + + + 已通过 + 已驳回 + + + + + @@ -19,35 +40,64 @@ import { ref, defineExpose } from 'vue' import FlowDesign from '/@/views/flowcenter/flowInstances/Lowflow/index.vue' import { GetFlowContent } from './api' + import { GetFlowInstanceHistoryList } from '/@/views/flowcenter/flowInstances/api' const visible = ref(false) + const process = ref({}) + const activeKey = ref('2') const init = (id, type, btype) => { visible.value = true - console.log(id) + GetFlowInstanceHistoryList({ id }).then(res => { + console.log(res) + }) GetFlowContent({ businessId: id, type, businessType: btype }).then(res => { - console.log(res.Data) + process.value = JSON.parse(res.data) }) - } - const fields = ref([]) - const process = ref({ - id: 'root', - pid: null, - type: 'start', - name: '发起人', - formProperties: [], - child: { - id: 'end', - pid: 'root', - type: 'end', - name: '结束', - child: null, - } - }) - const handleOk = () => { - } defineExpose({ init }) - diff --git a/src/design/public.less b/src/design/public.less index b65fd3a1..a0b5325c 100644 --- a/src/design/public.less +++ b/src/design/public.less @@ -51,7 +51,7 @@ } .ant-modal { - top: 30px!important; + // top: 30px!important; } // 自定义最小输入框 diff --git a/src/views/approve/fee/api.ts b/src/views/approve/fee/api.ts index f121aa03..39ea2a92 100644 --- a/src/views/approve/fee/api.ts +++ b/src/views/approve/fee/api.ts @@ -3,7 +3,10 @@ import { request } from '/@/utils/request' import { DataResult, PageRequest } from '/@/api/model/baseModel' enum Api { GetList = '/feeApi/FeeAudit/GetList', - AuditByBiz = '/feeApi/FeeAudit/AuditByBiz' + AuditByBiz = '/feeApi/FeeAudit/AuditByBiz', + Audit = '/feeApi/FeeAudit/Audit', + SetInvoiceEnabled = '/feeApi/FeeRecord/SetInvoiceEnabled', + GetFees = '/feeApi/FeeAudit/GetFees' } // 业务列表 @@ -23,6 +26,34 @@ export function AuditByBiz(data: PageRequest) { data }) } + +// 费用审核 +export function Audit(data: PageRequest) { + return request({ + url: Api.Audit, + method: 'post', + data + }) +} + +// 费用禁(解)开发票 +export function SetInvoiceEnabled(data: PageRequest) { + return request({ + url: Api.SetInvoiceEnabled, + method: 'post', + data + }) +} + +// 获取费用明细 +export function GetFees(data: PageRequest) { + return request({ + url: Api.GetFees, + method: 'post', + data + }) +} + // export function getThermometryWarningCount() { // return request({ // url: Api.getThermometryWarningCount, diff --git a/src/views/approve/fee/columns.tsx b/src/views/approve/fee/columns.tsx index e6d16a48..92db2187 100644 --- a/src/views/approve/fee/columns.tsx +++ b/src/views/approve/fee/columns.tsx @@ -6,7 +6,15 @@ import { ref } from 'vue' import { BasicColumn, FormSchema } from '/@/components/Table' import { getDictOption } from '/@/utils/dictUtil' -import { GetVesselSelectList, GetVoynoSelectList, GetAgentClientList, GetSaleList } from '/@/views/operation/seaexport/api/BookingLedger' +import { + GetVesselSelectList, + GetVoynoSelectList, + GetAgentClientList, + GetSaleList, + GetControllerClientList, + GetClientSourceSelectList +} from '/@/views/operation/seaexport/api/BookingLedger' +import { GetFeeCodeSelectList } from '/@/api/common' // 结算对象下拉数据 import { GetClientListByCode } from '/@/api/common' export const searchFormSchema: FormSchema[] = [ @@ -137,6 +145,75 @@ export const searchFormSchema: FormSchema[] = [ resultField: 'data' } } + }, + { + label: '委托单位', + field: 'customer', + component: 'ApiSelect', + required: false, + dynamicDisabled: false, + colProps: { span: 4 }, + componentProps: () => { + return { + api: GetControllerClientList, + immediate: false, + labelField: 'shortName', + valueField: 'id', + resultField: 'data', + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + } + } + } + }, + { + field: 'etd', + label: '业务日期', + component: 'RangePicker', + required: false, + dynamicDisabled: false, + colProps: { span: 4 }, + componentProps: { + allowClear: true, + } + }, + { + field: 'feeCode', + label: '费用名称', + defaultValue: '', + component: 'ApiSelect', + colProps: { span: 4 }, + componentProps: () => { + return { + api: GetFeeCodeSelectList, + labelField: 'name', + immediate: false, + valueField: 'code', + resultField: 'data', + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + } + } + } + }, + { + field: 'sourceId', + label: '业务来源', + component: 'ApiSelect', + colProps: { span: 4 }, + defaultValue: '', + componentProps: () => { + return { + api: GetClientSourceSelectList, + labelField: 'sourceName', + immediate: false, + valueField: 'id', + resultField: 'data', + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + } + } + } } ] diff --git a/src/views/approve/fee/components/feeActionBar.vue b/src/views/approve/fee/components/feeActionBar.vue index 80f89a73..ef139257 100644 --- a/src/views/approve/fee/components/feeActionBar.vue +++ b/src/views/approve/fee/components/feeActionBar.vue @@ -5,31 +5,188 @@ --> - - + + 审核通过 - + 配对审核 - 驳回提交 - 禁开发票 - 解禁发票 - 批准申请 - 驳回申请 - 历史申请 - 查看信息 - 显示工作量 + + + 驳回提交 + + 禁开发票 + 解禁发票 + 批准申请 + 驳回申请 + + + 显示工作流 + + {{ profit < 0 ? '该票业务利润小于0,确定审核通过吗?' : '该票业务利润等于0,确定审核通过吗?' }} + + + + + diff --git a/src/views/approve/fee/components/feeRejectModal.vue b/src/views/approve/fee/components/feeRejectModal.vue new file mode 100644 index 00000000..5223199e --- /dev/null +++ b/src/views/approve/fee/components/feeRejectModal.vue @@ -0,0 +1,112 @@ + + + + + + + + + + 取消 + + + 确定 + + + + + + + \ No newline at end of file diff --git a/src/views/approve/fee/components/feeTable.vue b/src/views/approve/fee/components/feeTable.vue index 80016ad1..8ec4faf5 100644 --- a/src/views/approve/fee/components/feeTable.vue +++ b/src/views/approve/fee/components/feeTable.vue @@ -12,6 +12,12 @@ > @@ -24,10 +30,10 @@ diff --git a/src/views/approve/fee/components/mainActionBar.vue b/src/views/approve/fee/components/mainActionBar.vue index 7c7d61c3..5f8c9877 100644 --- a/src/views/approve/fee/components/mainActionBar.vue +++ b/src/views/approve/fee/components/mainActionBar.vue @@ -36,7 +36,6 @@ 仅需审核业务 费用明细仅显示待审核 - 隐藏查询
{{ profit < 0 ? '该票业务利润小于0,确定审核通过吗?' : '该票业务利润等于0,确定审核通过吗?' }}