diff --git a/.gitignore b/.gitignore index d79d677..379dea6 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ log/ logs/ + ### JetBrains template .idea *.iml diff --git a/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.0.log.gz b/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.0.log.gz deleted file mode 100644 index 858c443..0000000 Binary files a/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.0.log.gz and /dev/null differ diff --git a/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.1.log.gz b/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.1.log.gz deleted file mode 100644 index d98b778..0000000 Binary files a/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.1.log.gz and /dev/null differ diff --git a/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.2.log.gz b/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.2.log.gz deleted file mode 100644 index c26e431..0000000 Binary files a/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.2.log.gz and /dev/null differ diff --git a/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.3.log.gz b/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.3.log.gz deleted file mode 100644 index 0f95084..0000000 Binary files a/logs/spring.application.name_IS_UNDEFINED/2021-10/debug.2021-10-08.3.log.gz and /dev/null differ diff --git a/logs/trade-service-wwsend-task/2021-09/debug.2021-09-29.0.log.gz b/logs/trade-service-wwsend-task/2021-09/debug.2021-09-29.0.log.gz deleted file mode 100644 index aa33adc..0000000 Binary files a/logs/trade-service-wwsend-task/2021-09/debug.2021-09-29.0.log.gz and /dev/null differ diff --git a/logs/trade-service-wwsend-task/2021-09/debug.2021-09-30.0.log.gz b/logs/trade-service-wwsend-task/2021-09/debug.2021-09-30.0.log.gz deleted file mode 100644 index 49ec9dc..0000000 Binary files a/logs/trade-service-wwsend-task/2021-09/debug.2021-09-30.0.log.gz and /dev/null differ diff --git a/logs/trade-service-wwsend-task/2021-09/error.2021-09-30.0.log.gz b/logs/trade-service-wwsend-task/2021-09/error.2021-09-30.0.log.gz deleted file mode 100644 index 6edcc84..0000000 Binary files a/logs/trade-service-wwsend-task/2021-09/error.2021-09-30.0.log.gz and /dev/null differ diff --git a/logs/trade-service-wwsend-task/2021-10/debug.2021-10-08.0.log.gz b/logs/trade-service-wwsend-task/2021-10/debug.2021-10-08.0.log.gz deleted file mode 100644 index 3e7b180..0000000 Binary files a/logs/trade-service-wwsend-task/2021-10/debug.2021-10-08.0.log.gz and /dev/null differ diff --git a/logs/trade-service-wwsend-task/2021-10/debug.2021-10-14.0.log.gz b/logs/trade-service-wwsend-task/2021-10/debug.2021-10-14.0.log.gz deleted file mode 100644 index f153633..0000000 Binary files a/logs/trade-service-wwsend-task/2021-10/debug.2021-10-14.0.log.gz and /dev/null differ diff --git a/logs/trade-service-wwsend-task/2021-10/debug.2021-10-15.0.log.gz b/logs/trade-service-wwsend-task/2021-10/debug.2021-10-15.0.log.gz deleted file mode 100644 index 3e415aa..0000000 Binary files a/logs/trade-service-wwsend-task/2021-10/debug.2021-10-15.0.log.gz and /dev/null differ diff --git a/service/trade-service-source/trade-service-source-core/src/main/java/com/hchbox/controller/SellerAccountController.java b/service/trade-service-source/trade-service-source-core/src/main/java/com/hchbox/controller/SellerAccountController.java index 76a5bf8..02b1bf7 100644 --- a/service/trade-service-source/trade-service-source-core/src/main/java/com/hchbox/controller/SellerAccountController.java +++ b/service/trade-service-source/trade-service-source-core/src/main/java/com/hchbox/controller/SellerAccountController.java @@ -75,6 +75,11 @@ public class SellerAccountController { } + /** + * 远程调用子账号id + * @param accountId + * @return + */ @GetMapping("/subAccount") @ApiOperation("父类查找子类集合") public CommonResult> getSubAccount(@RequestParam Long accountId) { @@ -109,4 +114,14 @@ public class SellerAccountController { return sellerAccountService.marketOrderTime(sellerAccountDTO); } + @GetMapping("/getSubAccount") + @ApiOperation("获取子账号列表") + public CommonResult getSubAccount(@SellerUser SellerAccountDTO sellerAccountDTO) { + if (sellerAccountDTO == null) { + return new CommonResult().accountException(); + } + return new CommonResult().success + (sellerAccountService.queryAccountByParentIdAndStatus(sellerAccountDTO.getParentId())); + } + } diff --git a/service/trade-service-source/trade-service-source-core/src/main/java/com/hchbox/controller/TestController.java b/service/trade-service-source/trade-service-source-core/src/main/java/com/hchbox/controller/TestController.java index 5da79c2..5a6e2a5 100644 --- a/service/trade-service-source/trade-service-source-core/src/main/java/com/hchbox/controller/TestController.java +++ b/service/trade-service-source/trade-service-source-core/src/main/java/com/hchbox/controller/TestController.java @@ -2,10 +2,8 @@ package com.hchbox.controller; import cn.hutool.core.date.DateUtil; import com.hchbox.entity.slaver.JdpTrade; -import com.hchbox.hander.TaoBaoHandler; import com.hchbox.service.JdpTradeService; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -13,7 +11,6 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.util.List; -import java.util.Map; /** * @author Enzo diff --git a/service/trade-service-source/trade-service-source-core/src/test/java/com/hchbox/SlaverTest.java b/service/trade-service-source/trade-service-source-core/src/test/java/com/hchbox/SlaverTest.java index 6c38ce3..6935afc 100644 --- a/service/trade-service-source/trade-service-source-core/src/test/java/com/hchbox/SlaverTest.java +++ b/service/trade-service-source/trade-service-source-core/src/test/java/com/hchbox/SlaverTest.java @@ -3,6 +3,7 @@ package com.hchbox; import cn.hutool.core.date.DateUtil; import cn.hutool.json.JSONUtil; import com.google.common.collect.Lists; +import com.hchbox.api.TaoBaoApiClient; import com.hchbox.config.MiProperties; import com.hchbox.constant.TaoBaoDataMethodConstants; import com.hchbox.entity.slaver.JdpTrade; @@ -13,8 +14,12 @@ import com.hchbox.uitl.TaoBaoEncryption; import com.hchbox.util.CacheManagerUtil; import com.taobao.api.ApiException; import com.taobao.api.SecretException; +import com.taobao.api.TaobaoClient; import com.taobao.api.domain.Trade; import com.taobao.api.internal.util.TaobaoUtils; +import com.taobao.api.request.JushitaJdpUsersGetRequest; +import com.taobao.api.response.JushitaJdpUsersGetResponse; +import com.taobao.api.response.ShopSellerGetResponse; import com.taobao.api.response.TradeFullinfoGetResponse; import org.junit.Test; import org.junit.runner.RunWith; @@ -117,7 +122,9 @@ public class SlaverTest { @Test public void getAccount() { - topTradeRepository.countByTid(2148563198943032631L); + JushitaJdpUsersGetRequest req = new JushitaJdpUsersGetRequest(); + JushitaJdpUsersGetResponse taoBaoResponse = TaoBaoApiClient.createTaoBaoResponse(req, miProperties, "50008100e30jK5wbSc8ckukKQhTQE6Ejt6l0WCiFQi1c897360XhQXFHMzjyzzpSep"); + taoBaoResponse.getTotalResults(); } @@ -144,7 +151,7 @@ public class SlaverTest { @Test public void findUserList() { - taoBaoRdsPushService.turnOnPushService("50008400241xjDTcDePNGtjMCsvtS9byhUEIpESqjccFrgkxXi6Fe16809637nng5v",30L); + taoBaoRdsPushService.turnOnPushService("50008501339rkqzU1HKxcsSCZgfw9kvVEFHtLWmTvAj5BrpAWqq11d46634A7sUO8u",2L); } @Test diff --git a/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/entity/master/SendTemplate.java b/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/entity/master/SendTemplate.java index d6d1e83..3e89348 100644 --- a/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/entity/master/SendTemplate.java +++ b/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/entity/master/SendTemplate.java @@ -31,6 +31,10 @@ public class SendTemplate implements Serializable { @ApiModelProperty(value = "用户id") private Long userId; + @Column(name = "template_name") + @ApiModelProperty(value = "模板名称") + private String templateName; + @CreationTimestamp @Column(name = "create_time") @ApiModelProperty(value = "创建时间") diff --git a/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/repository/master/SellerAccountRepository.java b/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/repository/master/SellerAccountRepository.java index 2a349d1..590a937 100644 --- a/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/repository/master/SellerAccountRepository.java +++ b/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/repository/master/SellerAccountRepository.java @@ -39,9 +39,10 @@ public interface SellerAccountRepository extends JpaRepository, Jp */ @Query(value = "select j from JdpTrade j where j.sellerNick = ?1 and j.jdpModified between ?2 and ?3") List findJdpTradeByTimeAndNickname(String nickname, Date startTime, DateTime endTime); + + /** + * 昵称查找数量 + * @param nickname + * @return + */ + @Query(value = "select count(j) from JdpTrade j where j.sellerNick = ?1") + Integer countSizeBySellerNick(String nickname); + + + /** + * 昵称时间查找数量 + * @param nickname + * @param created + * @return + */ + @Query(value = "select count(j) from JdpTrade j where j.sellerNick = ?1 and j.created > ?2") + Integer countSizeBySellerNickAndTime(String nickname,Date created); } diff --git a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/JdpTradeService.java b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/JdpTradeService.java index 7aa7843..52e31e8 100644 --- a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/JdpTradeService.java +++ b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/JdpTradeService.java @@ -28,4 +28,19 @@ public interface JdpTradeService { */ List findJdpOrderByTimeAndNickName(String nickname, Date startTime, DateTime endTime); + + /** + * 查询数量 + * @param nickname + * @return + */ + Integer numberQueriesBySellerNick(String nickname); + + /** + * 七彩之谜旗舰店 + * @param nickname + * @param parse + * @return + */ + Integer numberQueriesBySellerNick(String nickname, DateTime parse); } diff --git a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/SellerAccountService.java b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/SellerAccountService.java index a345929..031d64d 100644 --- a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/SellerAccountService.java +++ b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/SellerAccountService.java @@ -92,10 +92,10 @@ public interface SellerAccountService { /** * 根据父类id查询账号 - * + * @param parentId * @return */ - List queryAccountByParentId(); + List queryAccountByParentIdAndStatus(Long parentId); /** * 根据父类id查询账号 @@ -180,4 +180,5 @@ public interface SellerAccountService { * @return */ Boolean updateAccountStatusAndExpiration(Long id, int status, DateTime date); + } diff --git a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/AppSettingServiceImpl.java b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/AppSettingServiceImpl.java index 83ec2a9..22a47f8 100644 --- a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/AppSettingServiceImpl.java +++ b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/AppSettingServiceImpl.java @@ -76,6 +76,9 @@ public class AppSettingServiceImpl implements AppSettingService { appSetting.setIsDeliveryRemind(vo.getDeliverRemind()); appSetting.setIsDistribution(vo.getEnableDistribution()); appSetting.setMemoContent(EmojiUtil.toAlias(vo.getSendMessage())); + if (!CollectionUtils.isEmpty(vo.getSendAccountId())) { + appSetting.setSendAccountIds(Joiner.on(StrUtil.COMMA).skipNulls().join(vo.getSendAccountId())); + } if (!CollectionUtils.isEmpty(vo.getNotSendProduct())) { appSetting.setNotSendMerchandise(Joiner.on(StrUtil.COMMA).skipNulls().join(vo.getNotSendProduct())); } @@ -107,6 +110,9 @@ public class AppSettingServiceImpl implements AppSettingService { if (byUserIdAndType.getNotSendMerchandise() != null) { appConfigVo.setNotSendProduct(Convert.toList(Long.class, byUserIdAndType.getNotSendMerchandise().split(StrUtil.COMMA))); } + if (byUserIdAndType.getSendAccountIds() != null) { + appConfigVo.setSendAccountId(Convert.toList(Long.class, byUserIdAndType.getSendAccountIds().split(StrUtil.COMMA))); + } if (byUserIdAndType.getNotSendFlagStr() != null) { appConfigVo.setNotSendFlag(Convert.toList(Integer.class, byUserIdAndType.getNotSendFlagStr().split(StrUtil.COMMA))); } diff --git a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/JdpTradeServiceImpl.java b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/JdpTradeServiceImpl.java index 4375e82..5f6d71c 100644 --- a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/JdpTradeServiceImpl.java +++ b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/JdpTradeServiceImpl.java @@ -28,7 +28,18 @@ public class JdpTradeServiceImpl implements JdpTradeService { } @Override - public List findJdpOrderByTimeAndNickName(String nickname, Date startTime, DateTime endTime) { + public List findJdpOrderByTimeAndNickName(String nickname, Date startTime, DateTime endTime) { return jdpTradeRepository.findJdpTradeByTimeAndNickname(nickname, startTime, endTime); } + + @Override + public Integer numberQueriesBySellerNick(String nickname) { + return jdpTradeRepository.countSizeBySellerNick(nickname); + } + + @Override + public Integer numberQueriesBySellerNick(String nickname, DateTime parse) { + return jdpTradeRepository.countSizeBySellerNickAndTime(nickname, parse); + } + } diff --git a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/SellerAccountServiceImpl.java b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/SellerAccountServiceImpl.java index c046c8e..13114ee 100644 --- a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/SellerAccountServiceImpl.java +++ b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/SellerAccountServiceImpl.java @@ -14,6 +14,7 @@ import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; +import com.google.common.collect.Lists; import com.hchbox.config.MiProperties; import com.hchbox.constant.AuthConstants; import com.hchbox.constant.DefaultNumberConstants; @@ -242,6 +243,7 @@ public class SellerAccountServiceImpl implements SellerAccountService { account.setIsSubAccount(Boolean.TRUE); return getSaveMapCommonResult(request, account); } + subAccount.setShopTitle(shop.getTitle()); subAccount.setIsSubAccount(Boolean.TRUE); subAccount.setLastLoginTime(DateUtil.date()); subAccount.setSessionKey(loginVo.getAccessToken()); @@ -312,9 +314,12 @@ public class SellerAccountServiceImpl implements SellerAccountService { } @Override - public List queryAccountByParentId() { - return sellerAccountRepository.findByParentIdAndStatus(DefaultNumberConstants.ONE_NUMBER, - (long) DefaultNumberConstants.ZERO_NUMBER); + public List queryAccountByParentIdAndStatus(Long parentId) { + List byParentIdAndStatus = sellerAccountRepository.findByParentIdAndStatus(DefaultNumberConstants.ONE_NUMBER, parentId); + if (!CollectionUtils.isEmpty(byParentIdAndStatus)){ + return Convert.toList(SellerAccount.class, byParentIdAndStatus); + } + return Lists.newArrayList(); } @Override diff --git a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/SendTemplateServiceImpl.java b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/SendTemplateServiceImpl.java index 7a3e4ed..569515a 100644 --- a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/SendTemplateServiceImpl.java +++ b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/SendTemplateServiceImpl.java @@ -1,16 +1,14 @@ package com.hchbox.service.impl; import cn.hutool.extra.emoji.EmojiUtil; +import cn.hutool.json.JSONUtil; import com.hchbox.constant.DefaultNumberConstants; import com.hchbox.dto.SellerAccountDTO; -import com.hchbox.entity.master.Blacklist; import com.hchbox.entity.master.SendTemplate; import com.hchbox.model.param.CommonResult; import com.hchbox.repository.master.SendTemplateRepository; import com.hchbox.service.SendTemplateService; import com.hchbox.util.PageUtil; -import com.hchbox.util.QueryHelp; -import com.hchbox.vo.taobao.TemplateSearchVo; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.data.domain.Page; @@ -30,6 +28,7 @@ public class SendTemplateServiceImpl implements SendTemplateService { @Override public boolean saveTemplate(SellerAccountDTO sellerAccountDTO, SendTemplate sendTemplate) { + log.info("============= the template as {} ============", JSONUtil.toJsonStr(sendTemplate)); sendTemplate.setUserId(sellerAccountDTO.getParentId() != DefaultNumberConstants.ZERO_NUMBER ? sellerAccountDTO.getParentId() : diff --git a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/TaskMessageServiceImpl.java b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/TaskMessageServiceImpl.java index cf1a01c..289bcb8 100644 --- a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/TaskMessageServiceImpl.java +++ b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/TaskMessageServiceImpl.java @@ -60,11 +60,11 @@ public class TaskMessageServiceImpl implements TaskMessageService { private final BlacklistService blacklistService; - @Override @Transactional(rollbackFor = Exception.class) public CommonResult createTaskSendMessage(SubmitSendMessageVo submitSendMessageVo, SellerAccountDTO sellerAccount) { - + List list = new ArrayList<>(); + HashMap hashMap = new HashMap<>(DefaultNumberConstants.SIXTEEN_NUMBER); // Validated 已做校验 int sendSize = submitSendMessageVo.getBuyerInfoList().size(); // 超出时间范围 @@ -113,7 +113,18 @@ public class TaskMessageServiceImpl implements TaskMessageService { message, submitSendMessageVo.getBuyerInfoList(), submitSendMessageVo.getOrderTidList()); }); - return new CommonResult().success(submitSendMessageVo.getBuyerInfoList()); + submitSendMessageVo.getBuyerInfoList().forEach(info -> { + if (submitSendMessageVo.getMessageInfo().contains(RemindTemplates.BUYER_NICK)) { + list.add(RemindTemplates.prepareMsg(submitSendMessageVo.getMessageInfo(), info)); + } + if (submitSendMessageVo.getMessageInfo().contains(RemindTemplates.SHOP_NAME)) { + list.add(RemindTemplates.prepareMsg(submitSendMessageVo.getMessageInfo(), sellerAccount.getShopTitle())); + } + }); + + hashMap.put("sendList", list); + hashMap.put("buyerInfoList", submitSendMessageVo.getBuyerInfoList()); + return new CommonResult().success(hashMap); } return new CommonResult(). forbidden(ResponseCode.SAVE_INFORMATION_FAILED.getDesc()); @@ -198,11 +209,11 @@ public class TaskMessageServiceImpl implements TaskMessageService { // 拼接参数 String concat = sellerAccountDTO.getId().toString() .concat(StrUtil.DASHED) - .concat(format + .concat(format .concat(StrUtil.DASHED) - .concat(String.valueOf(minuteInt))); + .concat(String.valueOf(minuteInt))); - Map sendMessageCache = cacheManagerUtil.getCache(MessageConstants.SEND_MESSAGE_KEY, concat); + Map sendMessageCache = cacheManagerUtil.getCache(MessageConstants.SEND_MESSAGE_KEY, concat); // 删除缓存 if (!CollectionUtils.isEmpty(sendMessageCache)) { cacheManagerUtil.evictCache(MessageConstants.SEND_MESSAGE_KEY, concat); diff --git a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/TopTradeServiceImpl.java b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/TopTradeServiceImpl.java index 984ac6d..f399c30 100644 --- a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/TopTradeServiceImpl.java +++ b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/service/impl/TopTradeServiceImpl.java @@ -6,6 +6,7 @@ import cn.hutool.core.convert.Convert; import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.RandomUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.extra.emoji.EmojiUtil; import com.baomidou.dynamic.datasource.annotation.DS; @@ -349,7 +350,7 @@ public class TopTradeServiceImpl implements TopTradeService { } // 2. 查询可发送子账号 List subNickList = sellerAccountService.findSubAccountBySellerNick(sellerAccount.getId()); - if (CollectionUtils.isEmpty(subNickList)) { + if (CollectionUtils.isEmpty(subNickList) || StrUtil.isBlank(setting.getSendAccountIds())) { log.error("================= the sub-account collection is empty ================="); return Boolean.TRUE; } @@ -380,12 +381,12 @@ public class TopTradeServiceImpl implements TopTradeService { private void sendMessageRemind(Integer type, String buyerNick, Long tid, String orderStatus, String template, AppSetting setting, List sendNickList, SellerAccountDTO sellerAccountDTO) { - TopTrade trade = topTradeRepository.findByTid(1434820972683809364L); + TopTrade trade = topTradeRepository.findByTid(tid); if (trade != null) { // 修改订单状态 updateOrderStatus(type, buyerNick, orderStatus, trade); - List orderList = topOrderRegistry.findByTid(1434820972683809364L); + List orderList = topOrderRegistry.findByTid(tid); if (!CollectionUtils.isEmpty(orderList)) { trade.setOrders(orderList); } @@ -428,8 +429,12 @@ public class TopTradeServiceImpl implements TopTradeService { // 创建任务详情信息 createTaskMessageInfo(prepareMsg, setting, sendNickList, trade, taskMessageId); + + + List longs = Convert.toList(Long.class, setting.getSendAccountIds().split(StrUtil.COMMA)); + // 放入缓存 - String timeFormat = sellerAccountDTO.getId() + String timeFormat = RandomUtil.randomEle(longs) .toString() .concat(StrUtil.DASHED) .concat(TimeUtil.timeFormat()); diff --git a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/task/AccountTask.java b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/task/AccountTask.java index e41413e..b72078c 100644 --- a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/task/AccountTask.java +++ b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/task/AccountTask.java @@ -2,8 +2,10 @@ package com.hchbox.task; import cn.hutool.core.date.DateUtil; import com.hchbox.constant.DefaultNumberConstants; +import com.hchbox.constant.TimeConstants; import com.hchbox.entity.master.SellerAccount; import com.hchbox.repository.master.SellerAccountRepository; +import com.hchbox.service.JdpTradeService; import com.hchbox.service.SellerAccountService; import com.hchbox.service.TaoBaoRdsPushService; import lombok.RequiredArgsConstructor; @@ -14,6 +16,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.Date; import java.util.List; +import java.util.Objects; /** * @author Enzo @@ -30,10 +33,13 @@ public class AccountTask { private final TaoBaoRdsPushService taoBaoRdsPushService; + private final JdpTradeService jdpTradeService; + + /** * 定时检测授权时间 */ - @Scheduled(cron = " 0 1 0 * * ?") + @Scheduled(cron = "0 1 0 * * ?") @Transactional(rollbackFor = Exception.class) public void deleteAccountAfterExpirationTime() { List sellerAccounts = @@ -62,4 +68,31 @@ public class AccountTask { } } + + @Scheduled(cron = "0 0 1 * * ?") + public void updateAccountMassNum() { + List sellerAccounts = + sellerAccountRepository.findAllByParentId((long) DefaultNumberConstants.ZERO_NUMBER); + for (SellerAccount account : sellerAccounts) { + Integer countNum = jdpTradeService.numberQueriesBySellerNick(account.getNickname()); + if (account.getId().equals(DefaultNumberConstants.COLORFUL_PUZZLE_NUMBER)) { + countNum = jdpTradeService.numberQueriesBySellerNick(account.getNickname(), + DateUtil.parse(TimeConstants.COLORFUL_PUZZLE_DATE)); + } + + if (countNum > DefaultNumberConstants.ZERO_NUMBER) { + sellerAccountService.updateMessageCount(account.getId(), countNum); + if (account.getMassNum() != null + && account.getMassNum() > DefaultNumberConstants.ZERO_NUMBER + && countNum > account.getMassNum()) { + // 删除数据推送 + taoBaoRdsPushService.deletePushUser(account.getNickname()); + // 修改账号状态 + sellerAccountService.updateAccountStatusAndExpiration + (account.getId(), DefaultNumberConstants.MINUS_ONE_NUMBER, DateUtil.date()); + } + } + } + } + } diff --git a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/task/SyncTask.java b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/task/SyncTask.java index 2f378b5..4afedc0 100644 --- a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/task/SyncTask.java +++ b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/task/SyncTask.java @@ -24,6 +24,7 @@ import lombok.Getter; import lombok.RequiredArgsConstructor; import lombok.Setter; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.annotation.Scheduled; @@ -67,6 +68,10 @@ public class SyncTask { private Date lastUpdateTime; + @Value("${system.flag}") + private Boolean flag; + + /** * 10分钟定时拉取订单 */ @@ -74,21 +79,23 @@ public class SyncTask { @Scheduled(cron = "0 0/10 * * * *") // @Scheduled(cron = "0 0/1 * * * *") public void pullOrdersRegularly() throws ApiException, SecretException, NoSuchFieldException, IllegalAccessException { - long startTime = System.currentTimeMillis(); - log.info("====== [ the pull order start the time as {} ] ======", startTime); - DateTime date = DateUtil.date(); - if (count.get() > DefaultNumberConstants.ZERO_NUMBER) { - // 超时判断时间 - if (lastUpdateTime != null && DateUtil.offsetMinute - (date, -DefaultNumberConstants.FIFTEEN_NUMBER).before(lastUpdateTime)) { - return; + if (flag != null && flag) { + long startTime = System.currentTimeMillis(); + log.info("====== [ the pull order start the time as {} ] ======", startTime); + DateTime date = DateUtil.date(); + if (count.get() > DefaultNumberConstants.ZERO_NUMBER) { + // 超时判断时间 + if (lastUpdateTime != null && DateUtil.offsetMinute + (date, -DefaultNumberConstants.FIFTEEN_NUMBER).before(lastUpdateTime)) { + return; + } + // 初始化参数 + count.addAndGet(DefaultNumberConstants.ZERO_NUMBER); } - // 初始化参数 - count.addAndGet(DefaultNumberConstants.ZERO_NUMBER); + syncOrder(date); + long endTime = System.currentTimeMillis(); + log.info("====== [ the pull order end time consuming as {} ] ======", endTime - startTime); } - syncOrder(date); - long endTime = System.currentTimeMillis(); - log.info("====== [ the pull order end time consuming as {} ] ======", endTime - startTime); } @@ -145,22 +152,6 @@ public class SyncTask { memberService.synMemberByTrade(syncTask); } } - // 修改同步数量 - int messageCount = sellerAccount.getMessageCount() != null ? - sellerAccount.getMessageCount() : DefaultNumberConstants.ZERO_NUMBER; - int totalAmount = messageCount + trades.size(); - sellerAccountService.updateMessageCount(sellerAccount.getId(), totalAmount); - if (sellerAccount.getMassNum() != null - && sellerAccount.getMassNum() > DefaultNumberConstants.ZERO_NUMBER - && totalAmount > sellerAccount.getMassNum()) { - log.info("======================== the massNum as {} trades size as {} ==================", - sellerAccount.getMassNum(), trades.size()); - // 删除数据推送 - taoBaoRdsPushService.deletePushUser(sellerNick); - // 修改账号状态 - sellerAccountService.updateAccountStatusAndExpiration - (sellerAccount.getId(), DefaultNumberConstants.MINUS_ONE_NUMBER, DateUtil.date()); - } } } } diff --git a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/uitl/RemindTemplates.java b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/uitl/RemindTemplates.java index 47929c3..2942276 100644 --- a/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/uitl/RemindTemplates.java +++ b/service/trade-service-source/trade-service-source-taobao/src/main/java/com/hchbox/uitl/RemindTemplates.java @@ -127,4 +127,24 @@ public class RemindTemplates { } + /** + * 使用订单替换提醒模板中的变量 + * + * @param template template + * @return 转换后信息 + */ + public static String prepareMsg(String template, String replaceString) { + + if (StringUtils.isBlank(template)) { + return template; + } + // 订单预付款 + template = template.replace(RemindTemplates.BUYER_NICK, replaceString); + + + // 订单预付款 + template = template.replace(RemindTemplates.SHOP_NAME, replaceString); + return template; + } + } diff --git a/service/trade-service-wwsend/trade-service-wwsend-task/src/main/java/com/hchbox/module/entity/TopTrade.java b/service/trade-service-wwsend/trade-service-wwsend-task/src/main/java/com/hchbox/module/entity/TopTrade.java index 73f8f2f..9979b42 100644 --- a/service/trade-service-wwsend/trade-service-wwsend-task/src/main/java/com/hchbox/module/entity/TopTrade.java +++ b/service/trade-service-wwsend/trade-service-wwsend-task/src/main/java/com/hchbox/module/entity/TopTrade.java @@ -2,11 +2,13 @@ package com.hchbox.module.entity; import com.hchbox.model.entity.BaseTrade; import io.swagger.annotations.ApiModelProperty; -import lombok.Data; import lombok.Getter; import lombok.Setter; -import javax.persistence.*; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; import java.io.Serializable; /** diff --git a/trade-common/src/main/java/com/hchbox/constant/DefaultNumberConstants.java b/trade-common/src/main/java/com/hchbox/constant/DefaultNumberConstants.java index a70346b..40362ab 100644 --- a/trade-common/src/main/java/com/hchbox/constant/DefaultNumberConstants.java +++ b/trade-common/src/main/java/com/hchbox/constant/DefaultNumberConstants.java @@ -117,4 +117,11 @@ public class DefaultNumberConstants { public static final String NAT_DELIM = "%"; + /** + * 七彩之谜 + */ + public static final Long COLORFUL_PUZZLE_NUMBER = 12576L; + + + } diff --git a/trade-common/src/main/java/com/hchbox/constant/TimeConstants.java b/trade-common/src/main/java/com/hchbox/constant/TimeConstants.java index df9fdbc..7a190f8 100644 --- a/trade-common/src/main/java/com/hchbox/constant/TimeConstants.java +++ b/trade-common/src/main/java/com/hchbox/constant/TimeConstants.java @@ -22,5 +22,14 @@ public class TimeConstants { public static final String YYYY_MM_DD_HH = "yyyy-MM-dd HH"; + /** + * + */ + public static final String COLORFUL_PUZZLE_DATE = "2021-11-23 00:00:00"; + + + + + } diff --git a/trade-common/src/main/java/com/hchbox/model/entity/BaseAppSetting.java b/trade-common/src/main/java/com/hchbox/model/entity/BaseAppSetting.java index 3e4f8db..dd45d42 100644 --- a/trade-common/src/main/java/com/hchbox/model/entity/BaseAppSetting.java +++ b/trade-common/src/main/java/com/hchbox/model/entity/BaseAppSetting.java @@ -218,9 +218,9 @@ public class BaseAppSetting implements Serializable { @ApiModelProperty("好评订单不发送") private Boolean enableGoodOrder; - @Column(name = "send_account_id") + @Column(name = "send_account_ids") @ApiModelProperty("发送账号信息") - private Long sendAccountId; + private String sendAccountIds; } diff --git a/trade-common/src/main/java/com/hchbox/vo/AccountLoginVO.java b/trade-common/src/main/java/com/hchbox/vo/AccountLoginVO.java index 571b774..93c2155 100644 --- a/trade-common/src/main/java/com/hchbox/vo/AccountLoginVO.java +++ b/trade-common/src/main/java/com/hchbox/vo/AccountLoginVO.java @@ -4,7 +4,6 @@ package com.hchbox.vo; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.persistence.Column; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; diff --git a/trade-common/src/main/java/com/hchbox/vo/AppConfigVo.java b/trade-common/src/main/java/com/hchbox/vo/AppConfigVo.java index 783c54b..ebc0f7d 100644 --- a/trade-common/src/main/java/com/hchbox/vo/AppConfigVo.java +++ b/trade-common/src/main/java/com/hchbox/vo/AppConfigVo.java @@ -113,7 +113,7 @@ public class AppConfigVo { private List notSendFlag; @ApiModelProperty("发送账号id") - private Long sendAccountId; + private List sendAccountId; @ApiModelProperty(value = "发送开始时间小时") private Integer sendHourStart; diff --git a/trade-common/src/main/java/com/hchbox/vo/SubAccountsVo.java b/trade-common/src/main/java/com/hchbox/vo/SubAccountsVo.java index 2d2df8e..a8d6167 100644 --- a/trade-common/src/main/java/com/hchbox/vo/SubAccountsVo.java +++ b/trade-common/src/main/java/com/hchbox/vo/SubAccountsVo.java @@ -13,6 +13,7 @@ import java.util.Date; @Data public class SubAccountsVo { + private Long id; private Long parentId; private String nickname; private Integer status; diff --git a/trade-gateway/src/main/resources/application.yml b/trade-gateway/src/main/resources/application.yml index 778dfd1..ba350c5 100644 --- a/trade-gateway/src/main/resources/application.yml +++ b/trade-gateway/src/main/resources/application.yml @@ -33,7 +33,7 @@ spring: nacos: discovery: server-addr: ${NACOS_HOST:172.26.59.86}:${NACOS_PORT:8848} -# server-addr: ${NACOS_HOST:118.178.137.129}:${NACOS_PORT:8848} + #server-addr: ${NACOS_HOST:172.26.59.87}:${NACOS_PORT:8848} gateway: #网关动态路由