|
|
@@ -197,12 +197,19 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="门店编码" prop="third_shop_id">
|
|
|
+ <!-- 自动生成(2026-10-09):编号在上游是**幂等键** —— 撞号等于整笔建店被拒,
|
|
|
+ 手填还容易抄错;而上游没有门店更新接口,错一个字符这家店就补不回来。
|
|
|
+ 只读展示、不改动。 -->
|
|
|
<el-input
|
|
|
v-model="form.third_shop_id"
|
|
|
- placeholder="商户侧门店唯一编码"
|
|
|
+ readonly
|
|
|
+ placeholder="打开时自动生成"
|
|
|
maxlength="32"
|
|
|
- show-word-limit
|
|
|
/>
|
|
|
+ <div class="form-tip">
|
|
|
+ 编号由系统自动生成(SP + 时间 + 随机段),一旦提交不可再改 ——
|
|
|
+ 上游没有门店更新接口。
|
|
|
+ </div>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="门店名称" prop="shop_name">
|
|
|
<el-input v-model="form.shop_name" maxlength="128" show-word-limit />
|
|
|
@@ -297,6 +304,7 @@ import HarAPI, {
|
|
|
type HarShopVO,
|
|
|
} from "@/api/module_payment/har";
|
|
|
import { useEnterpriseStore } from "@/store/modules/enterprise.store";
|
|
|
+import { generateShopCode } from "@/utils/shop-code";
|
|
|
|
|
|
const enterpriseStore = useEnterpriseStore();
|
|
|
|
|
|
@@ -479,6 +487,8 @@ function handleReset() {
|
|
|
|
|
|
function openCreate() {
|
|
|
Object.assign(form, defaultForm());
|
|
|
+ // 每次打开都生成新号:编号在上游是幂等键,手填易撞号/抄错,且事后补不上
|
|
|
+ form.third_shop_id = generateShopCode();
|
|
|
createVisible.value = true;
|
|
|
// 目录是异步来的(也只在真正建店时用得上),别放进 onMounted 让列表页白等
|
|
|
ensureProvinces();
|