Просмотр исходного кода

[核销模板跳转券包页面][修改]:如果核销发券直接进小程序券包界面,如果未发券,进小程序主页

release_toaliyun_real
Stormeye.Wu 7 лет назад
Родитель
Сommit
14ef471aa3
5 измененных файлов: 24 добавлений и 13 удалений
  1. +4
    -2
      mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java
  2. +2
    -2
      mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java
  3. +1
    -1
      mallinkService/src/main/java/com/iformall/service/WxCouponSendService.java
  4. +9
    -4
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java
  5. +8
    -4
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponSendServiceImpl.java

+ 4
- 2
mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java Просмотреть файл

@@ -137,10 +137,12 @@ public class WxCouponOrderController extends BaseController {
}
}

boolean bSentCoupon = false;

// 核销发券
if (couponOrder != null) {
try {
wxCouponOrderService.sendCouponAfterVerify(couponOrder, getUser());
bSentCoupon = wxCouponOrderService.sendCouponAfterVerify(couponOrder, getUser());
} catch (Exception e) {
logger.error(e.getMessage());
}
@@ -149,7 +151,7 @@ public class WxCouponOrderController extends BaseController {
// 核销发模板消息
if (couponOrder != null) {
try {
wxCouponOrderService.sendVerifyMsg(couponOrder, getUser());
wxCouponOrderService.sendVerifyMsg(couponOrder, getUser(), bSentCoupon);
} catch (Exception e) {
logger.error(e.getMessage());
}


+ 2
- 2
mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java Просмотреть файл

@@ -68,7 +68,7 @@ public interface WxCouponOrderService {
* @param couponOrder
* @param bUser
*/
void sendCouponAfterVerify(WxCouponOrder couponOrder, WxMerchantBUser bUser);
boolean sendCouponAfterVerify(WxCouponOrder couponOrder, WxMerchantBUser bUser);

/**
* 核销分账
@@ -81,7 +81,7 @@ public interface WxCouponOrderService {
* @param couponOrder
* @param bUser
*/
void sendVerifyMsg(WxCouponOrder couponOrder, WxMerchantBUser bUser);
void sendVerifyMsg(WxCouponOrder couponOrder, WxMerchantBUser bUser, boolean hadSentCoupon);

/**
* 根据日期 b用户查券list


+ 1
- 1
mallinkService/src/main/java/com/iformall/service/WxCouponSendService.java Просмотреть файл

@@ -44,7 +44,7 @@ public interface WxCouponSendService {
* @param cUserId
* @param type 2:停车发券 3:核销发券
*/
void sendCouponToUser(String tenantId, Long cUserId, EnumCouponSendSendType type);
boolean sendCouponToUser(String tenantId, Long cUserId, EnumCouponSendSendType type);

void updateStatusByCouponId(Long couponId,String tenantId,int status);


+ 9
- 4
mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java Просмотреть файл

@@ -379,16 +379,17 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
}

@Override
public void sendCouponAfterVerify(WxCouponOrder couponOrder, WxMerchantBUser bUser) {
public boolean sendCouponAfterVerify(WxCouponOrder couponOrder, WxMerchantBUser bUser) {
// 核销发券
WxOrder wxOrder = wxOrderMapper.selectByPrimaryKey(couponOrder.getOrderId());
if (wxOrder != null) {
try {
wxCouponSendService.sendCouponToUser(bUser.getTenantId(), wxOrder.getCUserId(), EnumCouponSendSendType.COUPON_VERIFY);
return wxCouponSendService.sendCouponToUser(bUser.getTenantId(), wxOrder.getCUserId(), EnumCouponSendSendType.COUPON_VERIFY);
} catch (Exception e) {
logger.error("核销发券: " + e.getMessage());
}
}
return false;
}

/**
@@ -397,7 +398,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
* @param couponOrder, bUser
*/
@Override
public void sendVerifyMsg(WxCouponOrder couponOrder, WxMerchantBUser bUser) {
public void sendVerifyMsg(WxCouponOrder couponOrder, WxMerchantBUser bUser, boolean hadSentCoupon) {
// 1. get order info
WxOrder order = wxOrderMapper.selectByPrimaryKey(couponOrder.getOrderId());
if (order == null) {
@@ -467,6 +468,10 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
logger.error("找不到模板Id");
throw new MallinkException(ErrorCode.TEMPLATE_NOT_FOUND);
}
String gotopage = "pages/index/index";
if (hadSentCoupon) {
gotopage = "pages/couponorder/index/index";
}
/**
* 核销成功
* 核销金额 {{keyword1.DATA}}
@@ -478,7 +483,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
templateMessage = WxMaTemplateMessage.builder()
.toUser(user.getOpenId())
.formId(payOrder.getPrepayId()) // 微信支付的formId是prepayId
.page("pages/index/index")
.page(gotopage)
.data(Lists.newArrayList(
new WxMaTemplateMessage.Data("keyword1", String.valueOf(coupon.getPrice() * 1.0 / 100) + "元", "#173177"),
new WxMaTemplateMessage.Data("keyword2", merchant.getName(), "#173177"),


+ 8
- 4
mallinkService/src/main/java/com/iformall/service/impl/WxCouponSendServiceImpl.java Просмотреть файл

@@ -71,7 +71,7 @@ public class WxCouponSendServiceImpl implements WxCouponSendService {

@Override
@Transactional
public void sendCouponToUser(String tenantId, Long cUserId, EnumCouponSendSendType type) {
public boolean sendCouponToUser(String tenantId, Long cUserId, EnumCouponSendSendType type) {
//查询开关是否打开
//查询停车或者核销的券 stopCarCouponSwitch verifyConponSwitch
WxCouponSend wxCouponSendQuery = new WxCouponSend();
@@ -91,7 +91,7 @@ public class WxCouponSendServiceImpl implements WxCouponSendService {
wxCouponSendQuery.setSendType(actionType);
configKey = "verifyConponSwitch";
} else {
return;
return false;
}
WxMallConfig wxMallConfigQuery = new WxMallConfig();
wxMallConfigQuery.setKey(configKey);
@@ -100,7 +100,7 @@ public class WxCouponSendServiceImpl implements WxCouponSendService {
if (page.getSize() > 0) {
WxMallConfig config = page.getList().get(0);
if (config.getValue() == EnumEnableType.Disable.getCode()) {
return;
return false;
}
}

@@ -109,9 +109,11 @@ public class WxCouponSendServiceImpl implements WxCouponSendService {
checkTime = pushLimitService.checkSendTime(tenantId);
} catch (MallinkException e) {
logger.error(e.getMessage());
return;
return false;
}

boolean bRet = false;

if (checkTime) {
List<WxCouponSend> wxCouponSends = wxCouponSendMapper.findList(wxCouponSendQuery);
for (WxCouponSend send : wxCouponSends) {
@@ -129,10 +131,12 @@ public class WxCouponSendServiceImpl implements WxCouponSendService {
WxCouponOrder couponOrder = wxOrderService.sendFreeCouponToUser(cUserId, send.getCouponId());
if (couponOrder != null) {
wxCouponActionLogService.addOne(tenantId, send.getCouponId(), couponOrder.getId(), actionType, send.getId());
bRet = true;
}
wxCouponService.reduceInventory(send.getCouponId(), 1);
}
}
return bRet;
}

@Override


Загрузка…
Отмена
Сохранить