Browse Source

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

release_toaliyun_real
Stormeye.Wu 7 years ago
parent
commit
14ef471aa3
5 changed files with 24 additions and 13 deletions
  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 View File

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


boolean bSentCoupon = false;

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


+ 2
- 2
mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java View File

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


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


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


+ 1
- 1
mallinkService/src/main/java/com/iformall/service/WxCouponSendService.java View File

@@ -44,7 +44,7 @@ public interface WxCouponSendService {
* @param cUserId * @param cUserId
* @param type 2:停车发券 3:核销发券 * @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); void updateStatusByCouponId(Long couponId,String tenantId,int status);


+ 9
- 4
mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java View File

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


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


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


+ 8
- 4
mallinkService/src/main/java/com/iformall/service/impl/WxCouponSendServiceImpl.java View File

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


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


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


boolean bRet = false;

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


@Override @Override


Loading…
Cancel
Save