1车
- {{ group.rows[0].origin }} → {{ group.rows[0].destination }}
+ {{ group.rows[0].origin }} → {{ group.rows[0].destination
+ }}({{ group.rows[0].documentType }})
@@ -58,7 +63,10 @@
>{{
' ' + manualQuantityLabel(row.quantity)
}}
- · {{ row.origin }} → {{ row.destination }}({{ row.documentType }})
diff --git a/web-admin/src/views/pl/dispatch-calendar/manual-model.ts b/web-admin/src/views/pl/dispatch-calendar/manual-model.ts
index 93c6f521c..1c365a3bb 100644
--- a/web-admin/src/views/pl/dispatch-calendar/manual-model.ts
+++ b/web-admin/src/views/pl/dispatch-calendar/manual-model.ts
@@ -37,10 +37,7 @@ function byCreateOrder(a: DispatchCalendarRecord, b: DispatchCalendarRecord) {
}
function groupByVehicle(rows: DispatchCalendarRecord[]) {
- const vehicles = new Map<
- string,
- { id: string; plate: string; rows: DispatchCalendarRecord[] }
- >()
+ const vehicles = new Map()
for (const row of rows) {
if (!vehicles.has(row.vehicleId))
vehicles.set(row.vehicleId, { id: row.vehicleId, plate: row.licensePlate, rows: [] })
@@ -91,9 +88,13 @@ export function manualQuantityLabel(quantity?: string | null) {
}
function manualTripText(row: DispatchCalendarRecord) {
- const remark = row.remark ? `(${row.remark.replace(/\s+/g, ' ')})` : ''
const quantity = manualQuantityLabel(row.quantity)
const amount = quantity ? ` ${quantity}` : ''
+ if (row.calendarKind === 'site') {
+ const documentType = (row.documentType || '').trim().replace(/\s+/g, ' ')
+ return `${row.productName}${amount}${documentType ? `(${documentType})` : ''}`
+ }
+ const remark = row.remark ? `(${row.remark.replace(/\s+/g, ' ')})` : ''
return `${row.productName}${amount} ${row.origin} → ${row.destination}${remark}`
}
@@ -123,5 +124,6 @@ export function validateManualDraft(body: DispatchCalendarBody): string {
if (manualQuantityText(body.quantity) && !QUANTITY_TEXT.test(manualQuantityText(body.quantity)))
return '数量须为数字,最多两位小数'
if (body.remark.length > 500) return '备注最多500个字符'
+ if ((body.documentType || '').trim().length > 50) return '单据类型最多50个字符'
return ''
}
diff --git a/web-admin/src/views/pl/dispatch-calendar/useManualCalendar.ts b/web-admin/src/views/pl/dispatch-calendar/useManualCalendar.ts
index a27557904..895b8d403 100644
--- a/web-admin/src/views/pl/dispatch-calendar/useManualCalendar.ts
+++ b/web-admin/src/views/pl/dispatch-calendar/useManualCalendar.ts
@@ -54,6 +54,7 @@ export function useManualCalendar(
destination: '',
quantity: '',
calendarKind,
+ documentType: '',
remark: ''
})
const draft = reactive(blank(selectedDate.value))
@@ -113,7 +114,7 @@ export function useManualCalendar(
editorOpen.value = true
}
function openEdit(row: DispatchCalendarRecord) {
- if (!canManage.value || !live() || saving.value) return
+ if (!canManage.value || !live() || saving.value || row.sourceRecordId) return
editingId.value = row.id
Object.assign(draft, {
dispatchDate: row.dispatchDate,
@@ -123,6 +124,7 @@ export function useManualCalendar(
destination: row.destination,
quantity: row.quantity || '',
calendarKind,
+ documentType: row.documentType || '',
remark: row.remark || ''
})
formError.value = ''
@@ -139,6 +141,7 @@ export function useManualCalendar(
origin: draft.origin.trim(),
destination: draft.destination.trim(),
quantity: (draft.quantity || '').trim(),
+ documentType: (draft.documentType || '').trim(),
remark: draft.remark.trim()
}
try {
@@ -157,7 +160,7 @@ export function useManualCalendar(
}
}
async function remove(row: DispatchCalendarRecord) {
- if (!live() || !canManage.value || saving.value) return false
+ if (!live() || !canManage.value || saving.value || row.sourceRecordId) return false
saving.value = true
try {
await dispatchCalendarApi.delete(row.id)