Merge branch 'ymf' of https://newgitea.sxczgkj.cn/czg_team/cashier-web into gyq
This commit is contained in:
commit
89f0a8d87e
|
|
@ -199,8 +199,8 @@ export const useCartsStore = defineStore("carts", () => {
|
||||||
goods.value = res.records.map(item => {
|
goods.value = res.records.map(item => {
|
||||||
return {
|
return {
|
||||||
...item,
|
...item,
|
||||||
isLimitDiscount: limitDiscountRes.value !== null && canUseLimitTimeDiscount(item, limitDiscountRes.value, shopInfo, shopUser.userInfo),
|
isLimitDiscount: limitDiscountRes.value !== null && canUseLimitTimeDiscount(item, limitDiscountRes.value, shopInfo, vipUser.value),
|
||||||
limitDiscountPrice: limitDiscountRes.value !== null && returnPrice({ goods: { ...item, memberPrice: item.lowMemberPrice, salePrice: item.lowPrice }, shopInfo: shopInfo, limitTimeDiscountRes: limitDiscountRes.value, shopUserInfo: shopUser.userInfo, idKey: 'id' })
|
limitDiscountPrice: limitDiscountRes.value !== null && returnPrice({ goods: { ...item, memberPrice: item.lowMemberPrice, salePrice: item.lowPrice }, shopInfo: shopInfo, limitTimeDiscountRes: limitDiscountRes.value, shopUserInfo: vipUser.value, idKey: 'id' })
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -315,7 +315,7 @@ export const useCartsStore = defineStore("carts", () => {
|
||||||
fullReductionActivities: [fullReductionActivities.value],
|
fullReductionActivities: [fullReductionActivities.value],
|
||||||
currentDinnerType: dinnerType.value,
|
currentDinnerType: dinnerType.value,
|
||||||
limitTimeDiscount: limitDiscountRes.value,
|
limitTimeDiscount: limitDiscountRes.value,
|
||||||
shopUserInfo: shopUser.userInfo,
|
shopUserInfo: vipUser.value,
|
||||||
newUserDiscount: newUserDiscount.value
|
newUserDiscount: newUserDiscount.value
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,30 @@ const service = axios.create({
|
||||||
paramsSerializer: (params) => qs.stringify(params),
|
paramsSerializer: (params) => qs.stringify(params),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 格式化错误信息msg
|
||||||
|
*/
|
||||||
|
function formatErrorMsg(error: string) {
|
||||||
|
// 1. 获取原始提示文本(兜底空字符串避免报错)
|
||||||
|
const originMsg = error
|
||||||
|
// 2. 定义要匹配的前缀
|
||||||
|
const exceptionPrefix = "Exception:";
|
||||||
|
// 3. 判断是否包含目标前缀
|
||||||
|
if (originMsg.includes(exceptionPrefix)) {
|
||||||
|
// 截取前缀后的内容 → 去除首尾空格 → 限制最大20个字符
|
||||||
|
return originMsg
|
||||||
|
.slice(
|
||||||
|
originMsg.indexOf(exceptionPrefix) +
|
||||||
|
exceptionPrefix.length
|
||||||
|
)
|
||||||
|
.trim()
|
||||||
|
.slice(0, 20);
|
||||||
|
} else {
|
||||||
|
// 不包含则按原逻辑截取前20个字符
|
||||||
|
return originMsg.slice(0, 20);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 请求拦截器
|
// 请求拦截器
|
||||||
service.interceptors.request.use(
|
service.interceptors.request.use(
|
||||||
(config: InternalAxiosRequestConfig) => {
|
(config: InternalAxiosRequestConfig) => {
|
||||||
|
|
@ -66,10 +90,11 @@ service.interceptors.response.use(
|
||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
ElMessage.error(msg || "系统出错");
|
ElMessage.error(formatErrorMsg(msg || "Error"));
|
||||||
return Promise.reject(new Error(msg || "Error"));
|
return Promise.reject(new Error(formatErrorMsg(msg || "Error")));
|
||||||
},
|
},
|
||||||
async (error: any) => {
|
async (error: any) => {
|
||||||
|
|
||||||
// 非 2xx 状态码处理 401、403、500 等
|
// 非 2xx 状态码处理 401、403、500 等
|
||||||
const { config, response } = error;
|
const { config, response } = error;
|
||||||
if (response) {
|
if (response) {
|
||||||
|
|
|
||||||
|
|
@ -128,7 +128,7 @@ export function returnIsSeatFee(item) {
|
||||||
/**
|
/**
|
||||||
* 计算购物车会员优惠价格
|
* 计算购物车会员优惠价格
|
||||||
*/
|
*/
|
||||||
export function returnVipDiscountPrice() {}
|
export function returnVipDiscountPrice() { }
|
||||||
|
|
||||||
//计算商品券优惠价格
|
//计算商品券优惠价格
|
||||||
export function returnProductCouponPrice(coup, goodsArr, vipUser) {
|
export function returnProductCouponPrice(coup, goodsArr, vipUser) {
|
||||||
|
|
@ -243,6 +243,9 @@ export function returnCartPrice(goods, vipUser) {
|
||||||
|
|
||||||
// 价格保留两位小数不四舍五入
|
// 价格保留两位小数不四舍五入
|
||||||
export function customTruncateToTwoDecimals(number) {
|
export function customTruncateToTwoDecimals(number) {
|
||||||
|
if (!number) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
let stringNumber = number.toString();
|
let stringNumber = number.toString();
|
||||||
let dotIndex = stringNumber.indexOf(".");
|
let dotIndex = stringNumber.indexOf(".");
|
||||||
if (dotIndex === -1) {
|
if (dotIndex === -1) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue