From 83382cf63387d5ddf80466e87da34fc11f57dc25 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 27 Apr 2022 11:46:42 +0800 Subject: [PATCH 1/5] //update --- .../com/iformall/enums/EnumMsgRecordType.java | 3 +++ .../service/impl/WxCouponServiceImpl.java | 16 ++++++++-------- .../miniApp/TtMiniAppPayAdapterService.java | 2 +- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumMsgRecordType.java b/mallinkService/src/main/java/com/iformall/enums/EnumMsgRecordType.java index fa0472022..8ac778b73 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumMsgRecordType.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumMsgRecordType.java @@ -23,6 +23,9 @@ public enum EnumMsgRecordType { INSIDE_ORDER_REFUND(107, "退款提交成功"), INSIDE_ORDER_PUSH(108, "订单同步"), INSIDE_PRODUCT_PUSH(109, "商品状态或库存同步"), + + MALL_COO_USER_PUSH(110, "猫酷同步会员"), + ORDER_SNAPSHOT_PUSH(111, "订单快照"), ; public static EnumMsgRecordType getEnum(Integer code) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java index 26bece179..1514fbee8 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java @@ -969,13 +969,13 @@ public class WxCouponServiceImpl implements WxCouponService { } private void spuStockSync(TenantEntity tenantEntity,Long id){ - new Thread(() -> { - //1秒之后同步poi - try { - Thread.currentThread().sleep(1000); - } catch (Exception e) { - logger.error("sleep error: " + e.getMessage()); - } +// new Thread(() -> { +// //1秒之后同步poi +// try { +// Thread.currentThread().sleep(1000); +// } catch (Exception e) { +// logger.error("sleep error: " + e.getMessage()); +// } List couponChannelIds = wxCouponChannelMapper.getPoiProductIdList(tenantEntity.getTenantId(),id); if(couponChannelIds != null && couponChannelIds.size() > 0){ @@ -991,7 +991,7 @@ public class WxCouponServiceImpl implements WxCouponService { } } - }).start(); +// }).start(); } diff --git a/mallinkService/src/main/java/com/iformall/service/pay/service/pay/douyin/miniApp/TtMiniAppPayAdapterService.java b/mallinkService/src/main/java/com/iformall/service/pay/service/pay/douyin/miniApp/TtMiniAppPayAdapterService.java index fa7bf01e9..f9a0a0619 100644 --- a/mallinkService/src/main/java/com/iformall/service/pay/service/pay/douyin/miniApp/TtMiniAppPayAdapterService.java +++ b/mallinkService/src/main/java/com/iformall/service/pay/service/pay/douyin/miniApp/TtMiniAppPayAdapterService.java @@ -104,7 +104,7 @@ public class TtMiniAppPayAdapterService extends BaseTtPayAdapterService implemen WxOrderCouponVo wxOrderCouponVo = batchOrder.getOrders().get(0); Map orderDetail = new HashMap<>(); - orderDetail.put("order_id",batchOrder.getId().toString()); + orderDetail.put("order_id",payOrder.getPayOrderNo()); orderDetail.put("create_time",batchOrder.getCreateDate().getTime()); orderDetail.put("status", getTtOrderStatus(wxOrderCouponVo.getOrderStatus(),wxOrderCouponVo.getCouponOrderStatus()).getMessage()); orderDetail.put("total_price",batchOrder.getPayment()); From fff652414d7dbbb9b0d196e7bcd9173f65151428 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 27 Apr 2022 14:14:02 +0800 Subject: [PATCH 2/5] //update --- .../controller/WxUserGrantController.java | 9 ++++-- .../java/com/iformall/mq/MqBaseConsumer.java | 9 ++++++ .../po/msg/FmInsideBasicUserPushMsg.java | 15 +++++++++ .../com/iformall/enums/EnumMsgRecordType.java | 1 - .../service/MallCooUserInfoService.java | 3 +- .../service/cuser/BasicCUserService.java | 8 +++-- .../impl/MallCooUserInfoServiceImpl.java | 29 ++++++++++++----- .../impl/OrderSnapshotServiceImpl.java | 1 - .../service/impl/WxOrderServiceImpl.java | 11 +++++++ .../service/impl/WxPayOrderServiceImpl.java | 5 --- .../FmInsideBasicUserPushMsgServiceImpl.java | 32 +++++++++++++++++++ 11 files changed, 103 insertions(+), 20 deletions(-) create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/msg/FmInsideBasicUserPushMsg.java create mode 100644 mallinkService/src/main/java/com/iformall/service/msg/impl/FmInsideBasicUserPushMsgServiceImpl.java diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java index d30a016f6..7474ec3c9 100755 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java @@ -696,8 +696,13 @@ public class WxUserGrantController extends BaseController { record.setUpdChild(true); wxCUserBasicInfoService.update(record); - //推送猫酷 - mallCooUserInfoService.pullByMobile(tenantEntity, record); + try{ + //推送猫酷 + mallCooUserInfoService.pullByMobileMsg(tenantEntity, record.getId()); + }catch(Exception e){ + logger.error("发送同步会员消息异常"); + } + wxScoreRulesService.addScore(tenantEntity,EnumScoreType.COMPLETE_INFO, record); //增加积分 diff --git a/mallinkMQConsumer/src/main/java/com/iformall/mq/MqBaseConsumer.java b/mallinkMQConsumer/src/main/java/com/iformall/mq/MqBaseConsumer.java index d89f7a805..28fb57791 100644 --- a/mallinkMQConsumer/src/main/java/com/iformall/mq/MqBaseConsumer.java +++ b/mallinkMQConsumer/src/main/java/com/iformall/mq/MqBaseConsumer.java @@ -55,6 +55,9 @@ public class MqBaseConsumer { @Autowired private FmInsideProductPushMsgServiceImpl fmInsideProductPushMsgServiceImpl; + + @Autowired + private FmInsideBasicUserPushMsgServiceImpl fmInsideBasicUserPushMsgServiceImpl; @@ -140,6 +143,12 @@ public class MqBaseConsumer { fmInsideProductPushMsgServiceImpl.send(msg); } + else if(EnumMsgRecordType.MALL_COO_USER_PUSH.getCode().equals(baseMsg.getMsgType())) { + // 内部消息 - 同步会员 + FmInsideBasicUserPushMsg msg = (FmInsideBasicUserPushMsg)JsonUtil.readValue(message,FmInsideBasicUserPushMsg.class); + fmInsideBasicUserPushMsgServiceImpl.send(msg); + } + }catch (Throwable e){ log.error("consum received error: ", e); /** diff --git a/mallinkService/src/main/java/com/iformall/domain/po/msg/FmInsideBasicUserPushMsg.java b/mallinkService/src/main/java/com/iformall/domain/po/msg/FmInsideBasicUserPushMsg.java new file mode 100644 index 000000000..7aeccb6e2 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/msg/FmInsideBasicUserPushMsg.java @@ -0,0 +1,15 @@ +package com.iformall.domain.po.msg; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; + +@Data +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class FmInsideBasicUserPushMsg extends BaseMsg{ + + @io.swagger.annotations.ApiModelProperty(value = "会员Id", name = "basicUserId") + private Long basicUserId; + +} diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumMsgRecordType.java b/mallinkService/src/main/java/com/iformall/enums/EnumMsgRecordType.java index 8ac778b73..0188072e3 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumMsgRecordType.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumMsgRecordType.java @@ -25,7 +25,6 @@ public enum EnumMsgRecordType { INSIDE_PRODUCT_PUSH(109, "商品状态或库存同步"), MALL_COO_USER_PUSH(110, "猫酷同步会员"), - ORDER_SNAPSHOT_PUSH(111, "订单快照"), ; public static EnumMsgRecordType getEnum(Integer code) { diff --git a/mallinkService/src/main/java/com/iformall/service/MallCooUserInfoService.java b/mallinkService/src/main/java/com/iformall/service/MallCooUserInfoService.java index e018b29d4..a824b45e8 100644 --- a/mallinkService/src/main/java/com/iformall/service/MallCooUserInfoService.java +++ b/mallinkService/src/main/java/com/iformall/service/MallCooUserInfoService.java @@ -26,7 +26,8 @@ public interface MallCooUserInfoService { MallCooUserInfo getByPhone(String phone,String finalTenantId); - void pullByMobile(TenantEntity tenantEntity, WxCUserBasicInfo basicInfo); + void pullByMobile(TenantEntity tenantEntity, Long basicUserId); + void pullByMobileMsg(TenantEntity tenantEntity, Long id); } diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/BasicCUserService.java b/mallinkService/src/main/java/com/iformall/service/cuser/BasicCUserService.java index f7b897540..21bd24c27 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/BasicCUserService.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/BasicCUserService.java @@ -159,8 +159,12 @@ public class BasicCUserService { // 外部注券 memCouponFromDspService.couponOrderFromDsp(tenantEntity, userPhone); - //推送猫酷 - mallCooUserInfoService.pullByMobile(tenantEntity, basicInfo); + try{ + //推送猫酷 + mallCooUserInfoService.pullByMobileMsg(tenantEntity, basicInfo.getId()); + }catch(Exception e){ + logger.error("发送同步会员消息异常"); + } return basicInfo.getId(); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/MallCooUserInfoServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/MallCooUserInfoServiceImpl.java index 5010edba6..6e9a1859d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/MallCooUserInfoServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/MallCooUserInfoServiceImpl.java @@ -1,21 +1,21 @@ package com.iformall.service.impl; -import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.iformall.domain.po.*; import com.iformall.domain.po.base.TenantEntity; -import com.iformall.enums.EnumThirdPartyConfigType; +import com.iformall.domain.po.msg.FmInsideBasicUserPushMsg; +import com.iformall.enums.*; import com.iformall.mallcoo.MallcooHelper; import com.iformall.mallcoo.McUserInfo; import com.iformall.mapper.*; +import com.iformall.mq.MqBaseProducer; import com.iformall.service.*; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import java.util.Date; @@ -34,6 +34,9 @@ public class MallCooUserInfoServiceImpl implements MallCooUserInfoService { @Autowired WxThirdPartyConfigMapper wxThirdPartyConfigMapper; + @Autowired + private MqBaseProducer mqBaseProducer; + @Override public PageInfo listAsPage(MallCooUserInfo record, Integer pageIndex, Integer pageSize) { @@ -54,18 +57,18 @@ public class MallCooUserInfoServiceImpl implements MallCooUserInfoService { return mallCooUserInfoMapper.selectOne(new QueryWrapper<>(userInfo)); } - @Async @Override - public void pullByMobile(TenantEntity tenantEntity, WxCUserBasicInfo basicInfo) { + public void pullByMobile(TenantEntity tenantEntity, Long basicUserId) { try{ WxThirdPartyConfig config = getThirdPartyConfig(tenantEntity); if(config == null){ logger.error("未找到猫酷配置信息"); return; } - if(StringUtils.isBlank(basicInfo.getPhone())){ - basicInfo = wxCUserBasicInfoMapper.selectById(basicInfo.getId(),basicInfo.getFinalTenantId()); - + WxCUserBasicInfo basicInfo = wxCUserBasicInfoMapper.selectById(basicUserId, tenantEntity.getFinalTenantId()); + if(null == basicInfo){ + logger.error("未找到会员信息"+basicUserId); + return; } MallCooUserInfo mallCooUserInfo = this.getByPhone(basicInfo.getPhone(), basicInfo.getFinalTenantId()); if(mallCooUserInfo == null){ @@ -109,6 +112,16 @@ public class MallCooUserInfoServiceImpl implements MallCooUserInfoService { } + @Override + public void pullByMobileMsg(TenantEntity tenantEntity, Long id) { + FmInsideBasicUserPushMsg basicUserPushMsg = new FmInsideBasicUserPushMsg(); + basicUserPushMsg.setMsgType(EnumMsgRecordType.MALL_COO_USER_PUSH.getCode()); + basicUserPushMsg.updateTenantInfo(tenantEntity); + basicUserPushMsg.setBasicUserId(id); + logger.info(">>>>>>>>>>>send pullByMobileMsg :"+basicUserPushMsg); + mqBaseProducer.sendMessage(basicUserPushMsg, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(), EnumMsgMqKey.DEFAULT.getCode()); + } + private WxThirdPartyConfig getThirdPartyConfig(TenantEntity tenantEntity){ WxThirdPartyConfig configQ = new WxThirdPartyConfig(); configQ.updateTenantInfo(tenantEntity); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/OrderSnapshotServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/OrderSnapshotServiceImpl.java index 5a5d3ab5e..0dfb5f48d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/OrderSnapshotServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/OrderSnapshotServiceImpl.java @@ -67,7 +67,6 @@ public class OrderSnapshotServiceImpl implements OrderSnapshotService { return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"未找到订单数据"); } - @Async @Override public void saveOrderSnapshot(WxOrder order) { try{ diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java index 627444e5c..5dec4d529 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -213,6 +213,9 @@ public class WxOrderServiceImpl implements WxOrderService { @Lazy @Autowired private WxMsgService wxMsgService; + + @Autowired + private OrderSnapshotService orderSnapshotService; @Override public PageInfo listAsPage(WxOrder record, Integer pageIndex, Integer pageSize) { @@ -2064,6 +2067,8 @@ public class WxOrderServiceImpl implements WxOrderService { * @param user */ public void actionAfterCouponOrderSuccess(WxOrder order, WxCoupon coupon, WxCUserBasicInfo user) { + + if(EnumCouponType.COUPON_GIFT.getCode().equals(coupon.getType())){ WxCouponOrder couponOrderQ = new WxCouponOrder(); couponOrderQ.setOrderId(order.getId()); @@ -2078,7 +2083,13 @@ public class WxOrderServiceImpl implements WxOrderService { logger.error("系统券包核销异常:" + e.getMessage(),e); } } + } + //订单快照 + try { + orderSnapshotService.saveOrderSnapshot(order); + } catch (Exception e) { + logger.error("订单快照error:" + e.getMessage(),e); } /// TODO 晚上会定时打一下tag wxCUserTagsService.triggerAssignTags(EnumAssignTagsTrigger.ASSIGN_TAGS_TRIGGER_BUY, user,order,null); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java index 4e5f2b208..48dcdb4ba 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java @@ -935,11 +935,6 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { } } - try{ - orderSnapshotService.saveOrderSnapshot(order); - }catch(Exception e){ - logger.error("订单快照 error"+e.getMessage()); - } } } diff --git a/mallinkService/src/main/java/com/iformall/service/msg/impl/FmInsideBasicUserPushMsgServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/msg/impl/FmInsideBasicUserPushMsgServiceImpl.java new file mode 100644 index 000000000..e063e6dd9 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/msg/impl/FmInsideBasicUserPushMsgServiceImpl.java @@ -0,0 +1,32 @@ +package com.iformall.service.msg.impl; + +import com.iformall.domain.po.msg.BaseMsg; +import com.iformall.domain.po.msg.FmInsideBasicUserPushMsg; +import com.iformall.service.MallCooUserInfoService; +import com.iformall.service.msg.MsgSendService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * + * @author Stormeye Wu + * @date 2019/5/10 + */ +@Service +public class FmInsideBasicUserPushMsgServiceImpl implements MsgSendService { + + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private MallCooUserInfoService mallCooUserInfoService; + + @Override + public void send(BaseMsg baseMsg) throws Exception{ + FmInsideBasicUserPushMsg msg = (FmInsideBasicUserPushMsg)baseMsg; + + mallCooUserInfoService.pullByMobile(msg.getTenantInfo(),msg.getBasicUserId()); + + } +} From baab18a4325fa844cc0a979acb1ade08575ef16f Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 27 Apr 2022 14:57:48 +0800 Subject: [PATCH 3/5] //update log --- .../iformall/douyin/web/api/TtWebGetRequestExecutor.java | 6 ++++-- .../iformall/douyin/web/api/TtWebPostRequestExecutor.java | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/douyin/web/api/TtWebGetRequestExecutor.java b/mallinkService/src/main/java/com/iformall/douyin/web/api/TtWebGetRequestExecutor.java index 17f3a6e4c..02df8bc91 100644 --- a/mallinkService/src/main/java/com/iformall/douyin/web/api/TtWebGetRequestExecutor.java +++ b/mallinkService/src/main/java/com/iformall/douyin/web/api/TtWebGetRequestExecutor.java @@ -45,8 +45,7 @@ public class TtWebGetRequestExecutor implements RequestExecutor @Override public String execute(String uri, String queryParam, WxType wxType) throws WxErrorException, IOException { - logger.info("uri{}"+uri); - logger.info("request{}"+queryParam); + String access_token = handleUrl(uri); if(StringUtils.isBlank(access_token)){ WxError wxError = WxError.fromJson("{\n" + @@ -66,6 +65,9 @@ public class TtWebGetRequestExecutor implements RequestExecutor HttpGet httpGet = new HttpGet(uri); httpGet.addHeader("Content-Type","application/json"); httpGet.addHeader("access-token",access_token); + logger.info("get请求地址uri{}"+uri); + logger.info("header-----access_token{}"+access_token); + if (requestHttp.getRequestHttpProxy() != null) { RequestConfig config = RequestConfig.custom().setProxy(requestHttp.getRequestHttpProxy()).build(); httpGet.setConfig(config); diff --git a/mallinkService/src/main/java/com/iformall/douyin/web/api/TtWebPostRequestExecutor.java b/mallinkService/src/main/java/com/iformall/douyin/web/api/TtWebPostRequestExecutor.java index a3246b981..da42b0aec 100644 --- a/mallinkService/src/main/java/com/iformall/douyin/web/api/TtWebPostRequestExecutor.java +++ b/mallinkService/src/main/java/com/iformall/douyin/web/api/TtWebPostRequestExecutor.java @@ -46,8 +46,7 @@ public class TtWebPostRequestExecutor implements RequestExecutor @Override public String execute(String uri, String postEntity, WxType wxType) throws WxErrorException, IOException { - logger.info("uri{}"+uri); - logger.info("request{}"+postEntity); + String access_token = handleUrl(uri); if(StringUtils.isBlank(access_token)){ WxError wxError = WxError.fromJson("{\n" + @@ -60,6 +59,9 @@ public class TtWebPostRequestExecutor implements RequestExecutor HttpPost httpPost = new HttpPost(uri); httpPost.addHeader("Content-Type","application/json"); httpPost.addHeader("access-token",access_token); + logger.info("post请求地址uri{}"+uri); + logger.info("header-----access_token{}"+access_token); + logger.info("请求参数{}"+postEntity); if (requestHttp.getRequestHttpProxy() != null) { RequestConfig config = RequestConfig.custom().setProxy(requestHttp.getRequestHttpProxy()).build(); From 4d71352f12a2d4ffe6a3bdea38027e10ebdefd3a Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 27 Apr 2022 15:33:11 +0800 Subject: [PATCH 4/5] //update spu --- .../main/java/com/iformall/controller/WxCouponController.java | 1 + .../src/main/java/com/iformall/domain/vo/WxCouponCVo.java | 2 ++ 2 files changed, 3 insertions(+) diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxCouponController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxCouponController.java index 796c1bf60..d928c999b 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxCouponController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxCouponController.java @@ -266,6 +266,7 @@ public class WxCouponController extends BaseController { wxcv.setBeginTime(cc.getBeginTime()); wxcv.setEndTime(cc.getEndTime()); wxcv.setQrCode(cc.getQrCode()); + wxcv.setTtSpuId(cc.getTtSpuId()); return wxcv; }else if(couponIdL > 0l){ WxCouponCVo wxcv = couponService.getVoById(couponIdL,tenantId); diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxCouponCVo.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxCouponCVo.java index a30b78ce9..9cc779710 100644 --- a/mallinkService/src/main/java/com/iformall/domain/vo/WxCouponCVo.java +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxCouponCVo.java @@ -37,6 +37,8 @@ public class WxCouponCVo extends WxCoupon implements Serializable { private String qrCode; @TableField(exist = false) private String ttQrCode; + @TableField(exist = false) + private String ttSpuId; @io.swagger.annotations.ApiModelProperty(value="券ID",name="couponId") From 284610bddc59797aca305730631d98453726db90 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 27 Apr 2022 16:36:44 +0800 Subject: [PATCH 5/5] //update spu --- .../basic/TtMerchantPoiController.java | 24 +++++++++---------- .../impl/TtMerchantPoiServiceImpl.java | 13 ++++++---- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/basic/TtMerchantPoiController.java b/mallinkAdmin/src/main/java/com/iformall/controller/basic/TtMerchantPoiController.java index 548b264b3..b87223f2b 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/basic/TtMerchantPoiController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/basic/TtMerchantPoiController.java @@ -164,18 +164,18 @@ public class TtMerchantPoiController extends BaseController { if(couponChannelId == null){ return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); } - String merchantIdStr = param.get("merchantIds"); - List merchantIds = new ArrayList<>(); - try{ - List strings = Arrays.asList(merchantIdStr.split(",")); - merchantIds = strings.stream().map(s -> Long.parseLong(s.trim())).collect(Collectors.toList()); - }catch(Exception e){ - return new ResultData(ErrorCode.SYS_PARAMETER_CAST_ERROR); - } - if(merchantIds == null || merchantIds.size() == 0){ - return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); - } - return ttMerchantPoiService.spuSync(getTenantInfo(),couponChannelId,merchantIds); +// String merchantIdStr = param.get("merchantIds"); +// List merchantIds = new ArrayList<>(); +// try{ +// List strings = Arrays.asList(merchantIdStr.split(",")); +// merchantIds = strings.stream().map(s -> Long.parseLong(s.trim())).collect(Collectors.toList()); +// }catch(Exception e){ +// return new ResultData(ErrorCode.SYS_PARAMETER_CAST_ERROR); +// } +// if(merchantIds == null || merchantIds.size() == 0){ +// return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); +// } + return ttMerchantPoiService.spuSync(getTenantInfo(),couponChannelId,null); } @ApiOperation("商品同步查询") diff --git a/mallinkService/src/main/java/com/iformall/service/impl/TtMerchantPoiServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/TtMerchantPoiServiceImpl.java index b3d9055ef..1dcedb3d0 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/TtMerchantPoiServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/TtMerchantPoiServiceImpl.java @@ -579,18 +579,23 @@ public class TtMerchantPoiServiceImpl implements TtMerchantPoiService { if(!EnumCouponType.getSpuSyncType().contains(coupon.getType())){ return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"卷类型不支持同步poi"); } + List couponMerchantIds = wxCouponMerchantMapper.findMerchantIdListByProduct(coupon.getId(), tenantInfo.getTenantId()); + if(couponMerchantIds == null || couponMerchantIds.size() == 0 ){ + return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"未查询到门店"); + } TtMerchantPoi poi = new TtMerchantPoi(); poi.updateTenantInfo(tenantInfo); - poi.setIds(merchantIds); + poi.setIds(couponMerchantIds); poi.setMatchStatus(EnumSupplierMathStatus.match_success.getCode()); poi.setSyncStatus(EnumSupplierSyncStatus.sync_success.getCode()); List poiList = ttMerchantPoiMapper.findList(poi); - if(merchantIds.size() != poiList.size()){ - return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"未查询到poi或poi不匹配"); + if(poiList == null || poiList.isEmpty()){ + return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"未查询到可用poi"); } + List collect = poiList.stream().map(p -> p.getId()).collect(Collectors.toList()); - String spuId = spuSync(coupon,couponChannel,merchantIds); + String spuId = spuSync(coupon,couponChannel,collect); if(StringUtils.isBlank(spuId)){ return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"同步失败"); }