Files
tms-erp-web/src/option/settlement/receivable-payable-detail.js
T
gxwebsoft 9b9e652afd refactor(organization): 将所属组织搜索组件统一替换为级联选择器
- 全站搜索栏所属组织由树形下拉 (el-tree-select) 统一替换为级联选择器 (el-cascader)
- 修改多个视图和组件中所属组织相关表单与搜索逻辑,适配级联选择器数据结构
- 组织数据结构调整及新增 findOrgPath、findDeptPath 等方法支持路径反查与回显
- 表单模型与搜索参数中所属组织字段改用 ID 路径数组,提交时转换为名称
- 优化所属组织搜索UI,统一清除、过滤、提示等功能样式和行为
- 引入 organization-search mixin 支持组织数据加载、路径转换及搜索参数格式化
- 更新相关依赖组件 Element Plus 引入 ElCascader 替换 ElTreeSelect
- 修正搜索表单CSS,新增el-cascader全宽样式支持搜索栏布局一致性
- 兼容老数据,支持多种部门ID格式自动转换到单选路径数组格式
- 业务部门与承办部门表单同样应用级联选择器及路径转换逻辑
- 相关搜索配置项所属组织字段类型由 input 改为 cascader,提升搜索交互体验
2026-08-31 12:19:18 +08:00

142 lines
7.2 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
export const settlementTypeOptions = [
{ label: '应收', value: 'receivable' },
{ label: '应付', value: 'payable' },
];
export const settlementStatusOptions = [
{ label: '待结算', value: 'pending' },
{ label: '已转预结算', value: 'pre_settled' },
{ label: '已转正式结算', value: 'formal_settled' },
{ label: '已关闭', value: 'closed' },
];
export const searchFields = [
{ label: '单据号', prop: 'documentNo', type: 'input' },
{ label: '生成日期', prop: 'generateDateRange', type: 'daterange' },
{ label: '客户名称', prop: 'customerName', type: 'input' },
{ label: '所属组织', prop: 'deptName', type: 'cascader' },
{ label: '项目名称', prop: 'projectName', type: 'input' },
{ label: '货物类型', prop: 'cargoType', type: 'input' },
{ label: '货物名称', prop: 'cargoName', type: 'input' },
{ label: '合同编号', prop: 'contractNo', type: 'input' },
{ label: '合同名称', prop: 'contractName', type: 'input' },
{ label: '预结算单号', prop: 'preSettlementNo', type: 'input' },
{ label: '正式结算单号', prop: 'formalSettlementNo', type: 'input' },
{ label: '批次号', prop: 'batchNo', type: 'input' },
{ label: '车号', prop: 'vehicleNo', type: 'input' },
];
export const tableColumns = [
{ label: '单据号', prop: 'documentNo', minWidth: 180, link: true, fixed: 'left' },
{ label: '项目名称', prop: 'projectName', minWidth: 120 },
{ label: '所属组织', prop: 'deptName', minWidth: 120 },
{ label: '费用日期', prop: 'feeDate', minWidth: 120 },
{ label: '客商名称', prop: 'customerName', minWidth: 130 },
{ label: '合同编号', prop: 'contractNo', minWidth: 140 },
{ label: '合同名称', prop: 'contractName', minWidth: 140 },
{ label: '来源', prop: 'sourceType', minWidth: 110 },
{ label: '预结算单号', prop: 'preSettlementNo', minWidth: 140, link: true },
{ label: '正式结算单号', prop: 'formalSettlementNo', minWidth: 140, link: true },
{ label: '运单号', prop: 'waybillNo', minWidth: 140, link: true },
{ label: '车号', prop: 'vehicleNo', minWidth: 120 },
{ label: '运输类型', prop: 'transportType', minWidth: 120 },
{ label: '货物名称', prop: 'cargoName', minWidth: 130 },
{ label: '货物类型', prop: 'cargoType', minWidth: 120 },
{ label: '运输总量', prop: 'transportQuantity', minWidth: 120 },
{ label: '里程(KM', prop: 'mileage', minWidth: 120 },
{ label: '批次号', prop: 'batchNo', minWidth: 120 },
{ label: '运输单价', prop: 'unitPriceText', minWidth: 120 },
{ label: '费用合计', prop: 'totalAmountText', minWidth: 130 },
{ label: '状态', prop: 'settlementStatusName', minWidth: 120 },
{ label: '创建人', prop: 'createUserName', minWidth: 120 },
{ label: '创建时间', prop: 'createTime', minWidth: 170 },
];
export const feeDetailBaseColumns = [
{ label: '货物名称', prop: 'cargoName', minWidth: 140 },
{ label: '货物类型', prop: 'cargoType', minWidth: 130 },
{ label: '规格', prop: 'specification', minWidth: 120 },
{ label: '型号', prop: 'model', minWidth: 120 },
{ label: '计费要素', prop: 'billingFactor', minWidth: 130 },
{ label: '计费类型', prop: 'billingType', minWidth: 130 },
{ label: '运输量', prop: 'transportQuantityText', minWidth: 120 },
{ label: '运费计算单位', prop: 'priceUnit', minWidth: 130 },
{ label: '运输单价', prop: 'unitPrice', minWidth: 120 },
{ label: '里程(KM', prop: 'mileage', minWidth: 120 },
{ label: '运输费', prop: 'freightAmount', minWidth: 180 },
];
export const feeDetailTailColumns = [
{ label: '原总金额', prop: 'originalAmountText', minWidth: 120 },
{ label: '调整金额', prop: 'adjustAmountText', minWidth: 120 },
{ label: '调整后总金额', prop: 'afterAmountText', minWidth: 140 },
{ label: '备注', prop: 'remark', minWidth: 160 },
{ label: '最后录入人', prop: 'updateUserName', minWidth: 120 },
{ label: '最后录入时间', prop: 'updateTime', minWidth: 170 },
];
export const changeRecordColumns = [
{ label: '行号', prop: 'lineNo', minWidth: 120 },
{ label: '货物名称', prop: 'cargoName', minWidth: 140 },
{ label: '变更内容', prop: 'changeContent', minWidth: 260 },
{ label: '调整人', prop: 'adjustUserName', minWidth: 140 },
{ label: '调整原因', prop: 'adjustReason', minWidth: 180 },
{ label: '调整时间', prop: 'adjustTime', minWidth: 170 },
];
export const updateFeeFormFields = [
{ label: '更新范围', prop: 'contractId', required: true },
{ label: '合同计费方案', prop: 'billingPlanId' },
];
export const transferSearchFields = [
{ label: '合同名称', prop: 'contractName', type: 'input' },
{ label: '批次号', prop: 'batchNo', type: 'input' },
{ label: '生成日期', prop: 'generateDateRange', type: 'daterange' },
];
export const generateSearchFields = [
{ label: '运单合同', prop: 'contractId', required: true },
{ label: '计费方案', prop: 'billingPlanId', required: true },
{ label: '批次号', prop: 'batchNo' },
{ label: '运单完成日期', prop: 'finishDateRange', type: 'daterange' },
];
export const generateWaybillColumns = [
{ label: '运单号', prop: 'waybillNo', minWidth: 160, link: true },
{ label: '项目名称', prop: 'projectName', minWidth: 160 },
{ label: '客户/委托方', prop: 'customerName', minWidth: 160 },
{ label: '车牌号/航班号/船号/班列号', prop: 'vehicleNo', minWidth: 190 },
{ label: '司机', prop: 'driverName', minWidth: 120 },
{ label: '承运商', prop: 'carrierName', minWidth: 160 },
{ label: '运输类型', prop: 'transportType', minWidth: 130 },
{ label: '承运类型', prop: 'carrierType', minWidth: 130 },
{ label: '货物信息', prop: 'cargoInfo', minWidth: 160 },
{ label: '发货地址', prop: 'departureAddress', minWidth: 220 },
{ label: '发货联系人', prop: 'departureContact', minWidth: 130 },
{ label: '到货地址', prop: 'arrivalAddress', minWidth: 220 },
{ label: '收货联系人', prop: 'arrivalContact', minWidth: 130 },
{ label: '单价', prop: 'unitPrice', minWidth: 110 },
{ label: '运费', prop: 'freight', minWidth: 110 },
{ label: '其他费用合计', prop: 'otherFeeTotal', minWidth: 140 },
{ label: '运费合计', prop: 'freightTotal', minWidth: 120 },
{ label: '客户合同', prop: 'contractName', minWidth: 160 },
{ label: '发货计划', prop: 'planName', minWidth: 140 },
{ label: '运输批次', prop: 'batchNo', minWidth: 140 },
{ label: '原始单号', prop: 'originalNo', minWidth: 140 },
{ label: '多式联运总单号', prop: 'masterNo', minWidth: 160 },
{ label: '备注', prop: 'remark', minWidth: 180 },
{ label: '创建时间', prop: 'createTime', minWidth: 170 },
{ label: '更新时间', prop: 'updateTime', minWidth: 170 },
{ label: '状态', prop: 'businessStatusName', minWidth: 110 },
];
export const generatePreviewColumns = [
{ label: '客商名称', prop: 'customerName', minWidth: 160 },
{ label: '运单号', prop: 'waybillNo', minWidth: 160 },
{ label: '车号', prop: 'vehicleNo', minWidth: 140 },
{ label: '货物名称', prop: 'cargoName', minWidth: 140 },
{ label: '货物类型', prop: 'cargoType', minWidth: 140 },
{ label: '规格', prop: 'specification', minWidth: 140 },
];