feat(shop): 优化发货弹窗文案及修复小程序配送方式判断

- deliveryModal.vue 中发货门店、发货人标签及提示文案,根据快递配送与商家送货动态显示
- 快递配送场景下新增寄件人信息同步至快递面单的小字说明和验证文案动态调整
- 修正小程序订单详情页 deliveryType 判断,新增 DELIVERY_TYPE_MAP 支持快递及商家送货标识
- 订单详情页收货信息卡片图标和配送门店名称根据实际配送方式动态显示
- 订单信息区新增配送方式字段,清晰展示快递配送、自提及商家送货三种状态
This commit is contained in:
2026-07-17 12:05:22 +08:00
parent 3edbb13a8d
commit bd814d00b0
2 changed files with 58 additions and 10 deletions

View File

@@ -88,10 +88,13 @@
<template v-if="form.deliveryType !== 1">
<!-- 发货门店快递配送=发货仓库商家送货=配送门店 -->
<a-form-item label="发货门店" name="sendStoreId">
<a-form-item
:label="form.deliveryType === 0 ? '发货门店' : '配送门店'"
name="sendStoreId"
>
<a-select
v-model:value="form.sendStoreId"
placeholder="请选择门店"
:placeholder="form.deliveryType === 0 ? '请选择发货门店' : '请选择配送门店'"
@change="onStoreChange"
>
<a-select-option
@@ -127,20 +130,36 @@
</a-form-item>
<div style="color: #999; font-size: 12px; margin: 4px 0 12px">
选择门店后将自动回填下方发货人信息可手动修改
{{
form.deliveryType === 0
? '选择发货门店后,将自动回填寄件人信息(快递配送时,寄件人即为发货门店)'
: '选择配送门店后,将自动回填配送店员信息'
}}可手动修改
</div>
<a-form-item label="发货人" name="sendName">
<a-form-item
:label="form.deliveryType === 0 ? '寄件人' : '发货人'"
name="sendName"
>
<a-input
v-model:value="form.sendName"
placeholder="请输入发货人"
:placeholder="form.deliveryType === 0 ? '请输入寄件人' : '请输入发货人'"
:maxlength="50"
/>
<div
v-if="form.deliveryType === 0"
style="color: #999; font-size: 12px; margin-top: 4px"
>
快递配送场景下寄件人信息将同步至快递面单
</div>
</a-form-item>
<a-form-item label="发货人联系方式" name="sendPhone">
<a-form-item
:label="form.deliveryType === 0 ? '寄件人联系方式' : '发货人联系方式'"
name="sendPhone"
>
<a-input
v-model:value="form.sendPhone"
placeholder="请输入发货人联系方式"
:placeholder="form.deliveryType === 0 ? '请输入寄件人联系方式' : '请输入发货人联系方式'"
:maxlength="50"
/>
</a-form-item>
@@ -274,7 +293,9 @@
{
validator: (_: any, value: any) => {
if (form.deliveryType !== 1 && !value) {
return Promise.reject('请输入发货人');
return Promise.reject(
form.deliveryType === 0 ? '请输入寄件人' : '请输入发货人'
);
}
return Promise.resolve();
}
@@ -284,7 +305,11 @@
{
validator: (_: any, value: any) => {
if (form.deliveryType !== 1 && !value) {
return Promise.reject('请输入发货人联系方式');
return Promise.reject(
form.deliveryType === 0
? '请输入寄件人联系方式'
: '请输入发货人联系方式'
);
}
return Promise.resolve();
}
@@ -304,7 +329,9 @@
{
validator: (_: any, value: any) => {
if (form.deliveryType !== 1 && !value) {
return Promise.reject('请选择发货门店');
return Promise.reject(
form.deliveryType === 0 ? '请选择发货门店' : '请选择配送门店'
);
}
return Promise.resolve();
}