更新
This commit is contained in:
@@ -424,6 +424,15 @@ export function prescriptionOrderEdit(params: Record<string, unknown>) {
|
||||
return request.post({ url: '/tcm.prescriptionOrder/edit', params })
|
||||
}
|
||||
|
||||
/** 仅修改业务订单的承运商与快递单号;所有履约状态均可使用 */
|
||||
export function prescriptionOrderDdcode(params: {
|
||||
id: number
|
||||
express_company: string
|
||||
tracking_number: string
|
||||
}) {
|
||||
return request.post({ url: '/tcm.prescriptionOrder/ddcode', params })
|
||||
}
|
||||
|
||||
/** 业务订单详情:仅修改关联处方的患者姓名与手机号 */
|
||||
export function prescriptionOrderPatchPrescriptionPatient(params: {
|
||||
id: number
|
||||
|
||||
@@ -2255,6 +2255,7 @@ import {
|
||||
prescriptionOrderAuditPayment,
|
||||
prescriptionOrderAuditPrescription,
|
||||
prescriptionOrderDetail,
|
||||
prescriptionOrderDdcode,
|
||||
prescriptionOrderEdit,
|
||||
prescriptionOrderLists,
|
||||
prescriptionOrderExport,
|
||||
@@ -3243,9 +3244,8 @@ function canRefundRow(row: { fulfillment_status?: number; payment_slip_audit_sta
|
||||
return (fs === 5 || fs === 6 || fs === 3 || fs === 9) && Number(row.payment_slip_audit_status) === 1
|
||||
}
|
||||
|
||||
function canQuickTrackRow(row: { fulfillment_status?: number }) {
|
||||
// 仅已发货(5) 可修改快递单号;已签收(6) 不可再改
|
||||
return Number(row.fulfillment_status) === 5
|
||||
function canQuickTrackRow(_row: { fulfillment_status?: number }) {
|
||||
return true
|
||||
}
|
||||
|
||||
function canUploadPharmacyRow(row: {
|
||||
@@ -4094,33 +4094,8 @@ async function submitQuickTrack() {
|
||||
}
|
||||
quickTrackSaving.value = true
|
||||
try {
|
||||
// 先拉详情,获取所有必填字段,再只覆盖快递信息
|
||||
const res: any = await prescriptionOrderDetail({ id: quickTrackRowId.value })
|
||||
const d = res?.data ?? res
|
||||
if (!d) {
|
||||
feedback.msgError('加载订单数据失败')
|
||||
return
|
||||
}
|
||||
await prescriptionOrderEdit({
|
||||
id: d.id,
|
||||
recipient_name: d.recipient_name || '',
|
||||
recipient_phone: d.recipient_phone || '',
|
||||
shipping_province: d.shipping_province || '',
|
||||
shipping_city: d.shipping_city || '',
|
||||
shipping_district: d.shipping_district || '',
|
||||
shipping_address: d.shipping_address || '',
|
||||
is_follow_up: d.is_follow_up ? 1 : 0,
|
||||
medication_days: (d.medication_days != null && String(d.medication_days).trim() !== '') ? d.medication_days : '',
|
||||
prev_staff: d.prev_staff || '',
|
||||
service_channel: d.service_channel || '',
|
||||
service_package: d.service_package || '',
|
||||
fee_type: Number(d.fee_type) || 3,
|
||||
amount: Number(d.amount) || 0,
|
||||
remark_extra: d.remark_extra || '',
|
||||
remark_assistant: d.remark_assistant || '',
|
||||
internal_cost: (d.internal_cost != null && d.internal_cost !== '') ? d.internal_cost : '',
|
||||
pay_order_ids: Array.isArray(d.pay_order_ids) ? d.pay_order_ids : [],
|
||||
// 仅覆盖快递字段
|
||||
await prescriptionOrderDdcode({
|
||||
id: quickTrackRowId.value,
|
||||
express_company: quickTrackForm.express_company || 'auto',
|
||||
tracking_number: quickTrackForm.tracking_number.trim()
|
||||
})
|
||||
@@ -4129,17 +4104,6 @@ async function submitQuickTrack() {
|
||||
getLists()
|
||||
// 若详情 Drawer 打开且是同一订单,同步刷新
|
||||
await detailDrawerRef.value?.refreshIfCurrent(quickTrackRowId.value)
|
||||
// 仅保存前为履约中(2)时才询问确认发货;已发货(5)/已签收(6)等修改单号不再弹窗
|
||||
if (canShipRow({ fulfillment_status: Number(d.fulfillment_status) })) {
|
||||
try {
|
||||
await ElMessageBox.confirm(
|
||||
`快递单号「${quickTrackForm.tracking_number}」已保存,是否立即确认发货?`,
|
||||
'确认发货',
|
||||
{ type: 'success', confirmButtonText: '确认发货', cancelButtonText: '稍后再说' }
|
||||
)
|
||||
openShip({ id: quickTrackRowId.value, tracking_number: quickTrackForm.tracking_number, express_company: quickTrackForm.express_company })
|
||||
} catch { /* 用户点了「稍后」 */ }
|
||||
}
|
||||
} catch {
|
||||
/* 拦截器已提示 */
|
||||
} finally {
|
||||
|
||||
@@ -2713,6 +2713,7 @@ import {
|
||||
prescriptionOrderAuditPayment,
|
||||
prescriptionOrderAuditPrescription,
|
||||
prescriptionOrderDetail,
|
||||
prescriptionOrderDdcode,
|
||||
prescriptionOrderEdit,
|
||||
prescriptionOrderLists,
|
||||
prescriptionOrderPaidPayOrders,
|
||||
@@ -3551,8 +3552,8 @@ function canRefundRow(row: { fulfillment_status?: number; payment_slip_audit_sta
|
||||
return (fs === 5 || fs === 6 || fs === 3 || fs === 9) && Number(row.payment_slip_audit_status) === 1
|
||||
}
|
||||
|
||||
function canQuickTrackRow(row: { fulfillment_status?: number }) {
|
||||
return Number(row.fulfillment_status) === 5
|
||||
function canQuickTrackRow(_row: { fulfillment_status?: number }) {
|
||||
return true
|
||||
}
|
||||
|
||||
function canUploadPharmacyRow(row: {
|
||||
@@ -4900,33 +4901,8 @@ async function submitQuickTrack() {
|
||||
}
|
||||
quickTrackSaving.value = true
|
||||
try {
|
||||
// 先拉详情,获取所有必填字段,再只覆盖快递信息
|
||||
const res: any = await prescriptionOrderDetail({ id: quickTrackRowId.value })
|
||||
const d = res?.data ?? res
|
||||
if (!d) {
|
||||
feedback.msgError('加载订单数据失败')
|
||||
return
|
||||
}
|
||||
await prescriptionOrderEdit({
|
||||
id: d.id,
|
||||
recipient_name: d.recipient_name || '',
|
||||
recipient_phone: d.recipient_phone || '',
|
||||
shipping_province: d.shipping_province || '',
|
||||
shipping_city: d.shipping_city || '',
|
||||
shipping_district: d.shipping_district || '',
|
||||
shipping_address: d.shipping_address || '',
|
||||
is_follow_up: d.is_follow_up ? 1 : 0,
|
||||
medication_days: (d.medication_days != null && String(d.medication_days).trim() !== '') ? d.medication_days : '',
|
||||
prev_staff: d.prev_staff || '',
|
||||
service_channel: d.service_channel || '',
|
||||
service_package: d.service_package || '',
|
||||
fee_type: Number(d.fee_type) || 3,
|
||||
amount: Number(d.amount) || 0,
|
||||
remark_extra: d.remark_extra || '',
|
||||
remark_assistant: d.remark_assistant || '',
|
||||
internal_cost: (d.internal_cost != null && d.internal_cost !== '') ? d.internal_cost : '',
|
||||
pay_order_ids: Array.isArray(d.pay_order_ids) ? d.pay_order_ids : [],
|
||||
// 仅覆盖快递字段
|
||||
await prescriptionOrderDdcode({
|
||||
id: quickTrackRowId.value,
|
||||
express_company: quickTrackForm.express_company || 'auto',
|
||||
tracking_number: quickTrackForm.tracking_number.trim()
|
||||
})
|
||||
@@ -4939,19 +4915,9 @@ async function submitQuickTrack() {
|
||||
const r: any = await prescriptionOrderDetail({ id: quickTrackRowId.value })
|
||||
const nd = r?.data ?? r ?? null
|
||||
if (nd) detailData.value = nd
|
||||
await fetchLogs(quickTrackRowId.value)
|
||||
} catch { /* 静默 */ }
|
||||
}
|
||||
// 仅保存前为履约中(2)时才询问确认发货;已发货(5)/已签收(6)等修改单号不再弹窗
|
||||
if (canShipRow({ fulfillment_status: Number(d.fulfillment_status) })) {
|
||||
try {
|
||||
await ElMessageBox.confirm(
|
||||
`快递单号「${quickTrackForm.tracking_number}」已保存,是否立即确认发货?`,
|
||||
'确认发货',
|
||||
{ type: 'success', confirmButtonText: '确认发货', cancelButtonText: '稍后再说' }
|
||||
)
|
||||
openShip({ id: quickTrackRowId.value, tracking_number: quickTrackForm.tracking_number, express_company: quickTrackForm.express_company })
|
||||
} catch { /* 用户点了「稍后」 */ }
|
||||
}
|
||||
} catch {
|
||||
/* 拦截器已提示 */
|
||||
} finally {
|
||||
|
||||
Reference in New Issue
Block a user