1、完善发货模板

2、完善运输计划
3、完善运单管理
This commit is contained in:
2026-08-05 15:52:24 +08:00
parent e683c2cc00
commit 433c611195
72 changed files with 7556 additions and 772 deletions

View File

@@ -2,6 +2,7 @@ import {
auditColumns,
createCrudOption,
dataSourceOptions,
phoneRule,
selectRule,
textRule,
waybillStatusOptions,
@@ -96,9 +97,17 @@ export const config = {
exportName: '运单管理',
importUrl: '/blade-transport/waybill-manage/import-waybill-manage',
enableAllDept: false,
enableProjectSelect: true,
templateCreateTarget: 'waybill-manage',
enableContractSelect: true,
enableShippingPlanSelect: true,
enableShippingInfoForm: true,
enableTaskInfoForm: true,
batchDelete: false,
actionButtonLikeSearch: true,
createText: '新建运单',
importText: '导入运单',
enableWaybillImport: true,
roadLoading: true,
roadLoadingText: '公路配载',
searchRangeMap: {
@@ -115,6 +124,15 @@ export const config = {
export const option = {
...createCrudOption([
{
label: '',
prop: 'basicInfoTitle',
formslot: true,
span: 24,
order: 900,
hide: true,
labelWidth: 0,
},
{
label: '运单号',
prop: 'waybillNo',
@@ -129,6 +147,8 @@ export const option = {
prop: 'loadingNo',
search: true,
searchOrder: 5,
span: 6,
order: 840,
minWidth: 140,
},
{
@@ -137,13 +157,18 @@ export const option = {
search: true,
searchLabel: '多联总单',
searchOrder: 6,
span: 6,
order: 830,
minWidth: 140,
},
{
label: '项目名称',
label: '项目',
prop: 'projectName',
formslot: true,
search: true,
searchOrder: 22,
span: 6,
order: 890,
minWidth: 150,
rules: textRule('项目', 100, true),
},
@@ -154,6 +179,10 @@ export const option = {
searchLabel: '客户名称',
searchOrder: 21,
minWidth: 150,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
display: false,
},
{
label: '车牌号/航班号/船号/班列号',
@@ -162,6 +191,7 @@ export const option = {
searchLabel: '车/船/航班/班列',
searchOrder: 13,
minWidth: 210,
display: false,
},
{
label: '司机',
@@ -170,6 +200,7 @@ export const option = {
searchLabel: '司机名称',
searchOrder: 14,
minWidth: 120,
display: false,
},
{
label: '联系方式',
@@ -179,6 +210,7 @@ export const option = {
addDisplay: false,
editDisplay: false,
viewDisplay: false,
display: false,
},
{
label: '运输方式',
@@ -199,6 +231,8 @@ export const option = {
type: 'select',
search: true,
searchOrder: 20,
span: 6,
order: 850,
...transportTypeDict,
minWidth: 130,
rules: selectRule('运输类型'),
@@ -207,6 +241,10 @@ export const option = {
label: '过程节点',
prop: 'currentProcessNode',
minWidth: 140,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
display: false,
},
{
label: '承运类型',
@@ -216,6 +254,7 @@ export const option = {
addDisplay: false,
editDisplay: false,
viewDisplay: false,
display: false,
},
{
label: '承运商',
@@ -224,6 +263,7 @@ export const option = {
searchLabel: '承运商名称',
searchOrder: 15,
minWidth: 150,
display: false,
},
{
label: '货物信息',
@@ -238,17 +278,23 @@ export const option = {
{
label: '发货地址',
prop: 'departureAddress',
formslot: true,
search: true,
searchOrder: 17,
span: 24,
order: 790,
minWidth: 220,
rules: textRule('发货地址', 255, true),
},
{
label: '到货地址',
prop: 'arrivalAddress',
formslot: true,
search: true,
searchLabel: '收货地址',
searchOrder: 16,
span: 24,
order: 780,
minWidth: 220,
rules: textRule('收货地址', 255, true),
},
@@ -307,14 +353,20 @@ export const option = {
{
label: '客户合同',
prop: 'contractName',
formslot: true,
span: 6,
order: 880,
minWidth: 160,
rules: textRule('客户合同', 100, true),
},
{
label: '计划名称',
label: '发货计划',
prop: 'planName',
formslot: true,
search: true,
searchOrder: 7,
span: 6,
order: 870,
minWidth: 150,
},
{
@@ -324,6 +376,7 @@ export const option = {
searchOrder: 18,
formatter: row => formatGoodsField(row, ['cargoType', 'goodsType', 'typeName']),
minWidth: 130,
display: false,
rules: textRule('货物类型', 100, true),
},
{
@@ -333,6 +386,7 @@ export const option = {
searchOrder: 19,
formatter: row => formatGoodsField(row, ['cargoName', 'goodsName', 'name']),
minWidth: 150,
display: false,
rules: textRule('货物名称', 100, true),
},
{
@@ -356,6 +410,8 @@ export const option = {
prop: 'originalNo',
search: true,
searchOrder: 12,
span: 6,
order: 860,
minWidth: 140,
},
{
@@ -365,30 +421,36 @@ export const option = {
searchLabel: '运输批次',
searchOrder: 3,
minWidth: 140,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
display: false,
},
{
label: '预计发货时间',
label: '预计发货日期',
prop: 'estimatedStartTime',
type: 'datetime',
format: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'YYYY-MM-DD HH:mm:ss',
type: 'date',
format: 'YYYY-MM-DD',
valueFormat: 'YYYY-MM-DD',
formatter: row => getFirstValue(row, ['estimatedStartTime', 'planStartDate']),
minWidth: 170,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
display: false,
},
{
label: '预计完成时间',
label: '预计完成日期',
prop: 'estimatedEndTime',
type: 'datetime',
format: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'YYYY-MM-DD HH:mm:ss',
type: 'date',
format: 'YYYY-MM-DD',
valueFormat: 'YYYY-MM-DD',
formatter: row => getFirstValue(row, ['estimatedEndTime', 'planEndDate']),
minWidth: 170,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
display: false,
},
{
label: '备注',
@@ -396,11 +458,12 @@ export const option = {
type: 'textarea',
minRows: 4,
span: 24,
order: 810,
minWidth: 180,
overHidden: true,
maxlength: 500,
maxlength: 200,
showWordLimit: true,
rules: textRule('备注', 500),
rules: textRule('备注', 200),
},
{
label: '数据来源',
@@ -410,6 +473,10 @@ export const option = {
searchOrder: 10,
dicData: dataSourceOptions,
minWidth: 120,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
display: false,
},
{
...auditColumn('createTime'),
@@ -431,6 +498,34 @@ export const option = {
addDisplay: false,
editDisplay: false,
},
{
label: '',
prop: 'shippingInfoTitle',
formslot: true,
span: 24,
order: 800,
hide: true,
labelWidth: 0,
},
{
label: '',
prop: 'taskInfoTitle',
formslot: true,
span: 24,
order: 770,
hide: true,
labelWidth: 0,
},
{
label: '',
prop: 'taskInfoForm',
formslot: true,
span: 24,
order: 760,
hide: true,
labelWidth: '0px',
className: 'business-crud-page__full-form-item',
},
{
label: '实际发货时间',
prop: 'startDateRange',
@@ -444,6 +539,7 @@ export const option = {
addDisplay: false,
editDisplay: false,
viewDisplay: false,
display: false,
},
{
label: '实际完成时间',
@@ -458,6 +554,7 @@ export const option = {
addDisplay: false,
editDisplay: false,
viewDisplay: false,
display: false,
},
{
label: '创建时间',
@@ -478,51 +575,70 @@ export const option = {
prop: 'relationNo',
search: true,
searchOrder: 2,
span: 6,
order: 820,
minWidth: 140,
hide: true,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
},
{
label: '货物信息JSON',
label: '货物信息',
prop: 'goodsJson',
type: 'textarea',
minRows: 5,
span: 24,
hide: true,
display: false,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
},
{
label: '承运信息JSON',
label: '承运信息',
prop: 'carrierJson',
type: 'textarea',
minRows: 4,
span: 24,
hide: true,
display: false,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
},
{
label: '过程配置JSON',
label: '过程配置',
prop: 'processJson',
type: 'textarea',
minRows: 4,
span: 24,
hide: true,
display: false,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
},
{
label: '运费信息JSON',
label: '运费信息',
prop: 'freightJson',
type: 'textarea',
minRows: 4,
span: 24,
hide: true,
display: false,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
},
{
label: '附件JSON',
label: '附件',
prop: 'attachmentsJson',
type: 'textarea',
minRows: 3,
span: 24,
hide: true,
display: false,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
},
{
label: '所属组织',
@@ -532,6 +648,36 @@ export const option = {
addDisplay: false,
editDisplay: false,
},
{
label: '发货地',
prop: 'departureName',
hide: true,
display: false,
minWidth: 140,
rules: textRule('发货地', 100, true),
},
{
label: '收货地',
prop: 'arrivalName',
hide: true,
display: false,
minWidth: 140,
rules: textRule('收货地', 100, true),
},
{
label: '发货联系方式',
prop: 'departurePhone',
hide: true,
display: false,
rules: [phoneRule('发货联系方式'), ...textRule('发货联系方式', 50)],
},
{
label: '收货联系方式',
prop: 'arrivalPhone',
hide: true,
display: false,
rules: [phoneRule('收货联系方式'), ...textRule('收货联系方式', 50)],
},
{
label: '项目ID',
prop: 'projectId',
@@ -544,6 +690,33 @@ export const option = {
hide: true,
display: false,
},
{
label: '发货计划ID',
prop: 'planId',
hide: true,
display: false,
},
{
label: '任务录入模式',
prop: 'taskEntryMode',
hide: true,
display: false,
value: 'simple',
},
{
label: '任务备注',
prop: 'taskRemark',
hide: true,
display: false,
},
{
label: '任务信息',
prop: 'taskInfoJson',
hide: true,
display: false,
},
]),
dialogWidth: '96%',
dialogTop: '10px',
menuWidth: 320,
};