|
@@ -37,6 +37,7 @@ const state = {
|
|
|
maxPointsTime: '', // 积分最大兑换时长
|
|
|
pointsTime: '', // 已兑换的积分时间
|
|
|
unitAmount: 0,
|
|
|
+ unlimitUsePoints: 'LIMIT',
|
|
|
// 停车优惠:会员等级和消费减免
|
|
|
memberLevelDiscount: false, // 是否开启会员等级
|
|
|
enableConsume: false, // 是否开启消费减免
|
|
@@ -128,6 +129,9 @@ const mutations = {
|
|
|
setUnitAmount(state, payload) {
|
|
|
state.unitAmount = payload;
|
|
|
},
|
|
|
+ setUnlimitUsePoints(state, payload) {
|
|
|
+ state.unlimitUsePoints = payload;
|
|
|
+ },
|
|
|
setMaxDiscountFee(state, payload) {
|
|
|
state.maxDiscountFee = payload;
|
|
|
},
|
|
@@ -160,6 +164,7 @@ const mutations = {
|
|
|
state.maxPointsTime = ''; // 积分最大兑换时长
|
|
|
state.pointsTime = ''; // 已兑换的积分时间
|
|
|
state.unitAmount = 0;
|
|
|
+ state.unlimitUsePoints = 'LIMIT';
|
|
|
// 停车优惠:会员等级和消费减免
|
|
|
state.memberLevelDiscount = false; // 是否开启会员等级
|
|
|
state.enableConsume = false; // 是否开启消费减免
|
|
@@ -190,8 +195,8 @@ const actions = {
|
|
|
// console.log('无牌车扫码出场', endlessLoop);
|
|
|
// 场内缴费,调 check-out 接口,
|
|
|
const method = unlicensed && endlessLoop || !vehicleNo ? unlicensedCarCheckout : checkOut
|
|
|
- const res = await method(vehicleNo, unlicensed, gateId);
|
|
|
- // const res = checkOutQHResponse
|
|
|
+ // const res = await method(vehicleNo, unlicensed, gateId);
|
|
|
+ const res = checkOutQHResponse
|
|
|
if (res?.parkingRecord?.totalFee <= 0) {
|
|
|
callback && callback({
|
|
|
unlicensed,
|
|
@@ -308,6 +313,7 @@ const actions = {
|
|
|
pointsPerUnit = 0, // 500积分对应的价值
|
|
|
discountFee,
|
|
|
label,
|
|
|
+ unlimitUsePoints
|
|
|
},
|
|
|
] = points;
|
|
|
commit('setAvailableDiscountFee', availableDiscountFee);
|
|
@@ -321,6 +327,7 @@ const actions = {
|
|
|
commit('setMaxOneDayDiscountFee', maxOneDayDiscountFee);
|
|
|
commit('setPointsPerHour', pointsPerUnit);
|
|
|
commit('setUnitAmount', unitAmount);
|
|
|
+ commit('setUnlimitUsePoints', unlimitUsePoints);
|
|
|
commit('setIntegralDesc', discountFee ? `已选择兑换${discountFee}元` : available > pointsPerUnit ? `${available}积分可减免` : `${pointsPerUnit}积分可停车1小时`); // 积分优惠处的描述
|
|
|
},
|
|
|
// 当前最大可选优惠时间
|
|
@@ -379,22 +386,24 @@ const actions = {
|
|
|
if (maxPointsTime > state.availableDiscountFee) {
|
|
|
maxPointsTime = state.availableDiscountFee
|
|
|
}
|
|
|
- if (type === 'add' && state.pointsTime >= maxPointsTime) {
|
|
|
- // 以下是深圳积分上限规则
|
|
|
- // 超出抵扣上限,每日最高可抵扣${this.parkFee.parkInfoEntity.maxOneDayHour}元 '优惠金额' >= '每日最高可抵扣'
|
|
|
- if (state.usingTotalDiscount >= state.maxOneDayDiscountFee && !msg) {
|
|
|
+ if ( state.unlimitUsePoints === 'LIMIT' ) {
|
|
|
+ if (type === 'add' && state.pointsTime >= maxPointsTime) {
|
|
|
+ // 以下是深圳积分上限规则
|
|
|
+ // 超出抵扣上限,每日最高可抵扣${this.parkFee.parkInfoEntity.maxOneDayHour}元 '优惠金额' >= '每日最高可抵扣'
|
|
|
+ if (state.usingTotalDiscount >= state.maxOneDayDiscountFee && !msg) {
|
|
|
msg = `超出抵扣上限,每日最高可抵扣${state.maxOneDayDiscountFee}元`
|
|
|
+ }
|
|
|
+ // 超出抵扣上限,每次最高可抵扣${this.integralMaxMoney}元 '积分兑换时长' >= '深圳前海停车积分上限'q
|
|
|
+ if (state.pointsTime >= maxPointsTime && !msg) {
|
|
|
+ msg = `超出抵扣上限,每次最高可抵扣${state.maxDiscountFee}元`
|
|
|
+ }
|
|
|
+ callback({
|
|
|
+ message: msg
|
|
|
+ });
|
|
|
+ return
|
|
|
}
|
|
|
- // 超出抵扣上限,每次最高可抵扣${this.integralMaxMoney}元 '积分兑换时长' >= '深圳前海停车积分上限'q
|
|
|
- if (state.pointsTime >= maxPointsTime && !msg) {
|
|
|
- msg = `超出抵扣上限,每次最高可抵扣${state.maxDiscountFee}元`
|
|
|
- }
|
|
|
- callback({
|
|
|
- message: msg
|
|
|
- });
|
|
|
- return
|
|
|
}
|
|
|
- if (type === 'add' && state.pointsTime < maxPointsTime) {
|
|
|
+ if (type === 'add' && (state.pointsTime < maxPointsTime || state.unlimitUsePoints === 'UN_LIMIT')) {
|
|
|
const pointsTime = state.pointsTime + state.unitAmount;
|
|
|
const available = state.available - state.pointsPerUnit;
|
|
|
const usingTotalDiscount = state.usingTotalDiscount + state.unitAmount; // 重新计算已经使用的优惠逻辑
|