fix some shits
pay.vue 还用 store.value.min_price,应改 minPrice。 后端下单最好也校验起送价,别只靠前端。 配送规则保存前过滤/校验空行、maxKm <= minKm。
This commit is contained in:
1 parent
a0c13b91da
commit
4a1aab453d
4 files changed
+25
-4
No files matched your search
+1
@@ -37,6 +37,7 @@ public interface ErrorCodeConstants {
|
||||
|
||||
ErrorCode STORE_ORDER_DESK_NOT = new ErrorCode(1008007023, "当前桌号不存在");
|
||||
ErrorCode STORE_ORDER_OUT_OF_DELIVERY_RANGE = new ErrorCode(1008007024, "当前收货地址不在配送范围内");
|
||||
ErrorCode STORE_ORDER_MIN_PRICE_NOT_MET = new ErrorCode(1008007025, "未达到外卖起送价");
|
||||
|
||||
|
||||
|
||||
|
||||
+6
@@ -229,6 +229,12 @@ public class AppStoreOrderServiceImpl extends ServiceImpl<StoreOrderMapper,Store
|
||||
}
|
||||
}
|
||||
|
||||
if (OrderLogEnum.ORDER_TAKE_OUT.getValue().equals(param.getOrderType())
|
||||
&& storeShopDO.getMinPrice() != null
|
||||
&& sumPrice.compareTo(storeShopDO.getMinPrice()) < 0) {
|
||||
throw exception(STORE_ORDER_MIN_PRICE_NOT_MET);
|
||||
}
|
||||
|
||||
//计算优惠券价格
|
||||
if(StrUtil.isNotBlank(param.getCouponId())){
|
||||
CouponUserDO couponUserDO = appCouponUserService.getById(param.getCouponId());
|
||||
|
||||
@@ -510,9 +510,9 @@ const submit = () => {
|
||||
}
|
||||
|
||||
// 起送价钱
|
||||
if (store.value.min_price > total.value) {
|
||||
if (store.value.minPrice > total.value) {
|
||||
uToast.value.show({
|
||||
message: '本店外卖起送价为¥' + store.value.min_price,
|
||||
message: '本店外卖起送价为¥' + store.value.minPrice,
|
||||
type: 'error'
|
||||
});
|
||||
return
|
||||
|
||||
@@ -113,7 +113,7 @@ const dialogVisible = ref(false) // 弹窗的是否展示
|
||||
const dialogTitle = ref('') // 弹窗的标题
|
||||
const formLoading = ref(false) // 表单的加载中:1)修改时的数据加载;2)提交的按钮禁用
|
||||
const formType = ref('') // 表单的类型:create - 新增;update - 修改
|
||||
const formData = ref({
|
||||
const formData = ref<any>({
|
||||
id: undefined,
|
||||
name: undefined,
|
||||
mobile: undefined,
|
||||
@@ -193,7 +193,21 @@ const submitForm = async () => {
|
||||
// 提交请求
|
||||
formLoading.value = true
|
||||
try {
|
||||
const data = formData.value as unknown as ShopApi.ShopVO
|
||||
const isBlank = (value) => value === undefined || value === null || value === ''
|
||||
const deliveryRules = (formData.value.deliveryRules || []).filter((rule) => {
|
||||
return !isBlank(rule.minKm) || !isBlank(rule.maxKm) || !isBlank(rule.price)
|
||||
})
|
||||
for (const rule of deliveryRules) {
|
||||
if (isBlank(rule.minKm) || isBlank(rule.maxKm) || isBlank(rule.price)) {
|
||||
message.error('配送规则请填写完整')
|
||||
return
|
||||
}
|
||||
if (Number(rule.maxKm) <= Number(rule.minKm)) {
|
||||
message.error('配送规则最大km必须大于最小km')
|
||||
return
|
||||
}
|
||||
}
|
||||
const data = { ...formData.value, deliveryRules } as ShopApi.ShopVO
|
||||
if (formType.value === 'create') {
|
||||
await ShopApi.createShop(data)
|
||||
message.success(t('common.createSuccess'))
|
||||
|
||||
Reference in new issue
Block a user