diff --git a/service/trade-service-source/trade-service-source-core/src/test/java/com/hchbox/SettingTest.java b/service/trade-service-source/trade-service-source-core/src/test/java/com/hchbox/SettingTest.java new file mode 100644 index 0000000..df140b8 --- /dev/null +++ b/service/trade-service-source/trade-service-source-core/src/test/java/com/hchbox/SettingTest.java @@ -0,0 +1,31 @@ +package com.hchbox; + +import cn.hutool.json.JSONUtil; +import com.hchbox.entity.master.AppSetting; +import com.hchbox.repository.master.AppSettingRepository; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import javax.annotation.Resource; + +/** + * @author Enzo + * @date : 2021/11/19 + */ +@RunWith(SpringRunner.class) +@SpringBootTest(classes = TradeServiceSourceApplication.class, + webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) +public class SettingTest { + + @Resource + private AppSettingRepository appSettingRepository; + + @Test + public void getSetting(){ + AppSetting byUserIdAndType = appSettingRepository.findByUserIdAndType(12482L, 15); + + JSONUtil.toJsonStr(byUserIdAndType); + } +} diff --git a/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/repository/master/TopTradeRepository.java b/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/repository/master/TopTradeRepository.java index d605207..d6504c8 100644 --- a/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/repository/master/TopTradeRepository.java +++ b/service/trade-service-source/trade-service-source-dao/src/main/java/com/hchbox/repository/master/TopTradeRepository.java @@ -8,6 +8,8 @@ import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; import org.springframework.stereotype.Repository; +import java.util.Date; + /** * @author Enzo * @date : 2021/6/26 @@ -30,13 +32,17 @@ public interface TopTradeRepository extends JpaRepository, JpaSp Integer countByTid(Long tid); /** - * 修改订单状态 + * * @param status * @param tid + * @param date */ @Modifying - @Query(value = "update TopTrade t set t.status = ?1 where t.tid = ?2") - void updateOrderStatus(String status, Long tid); + @Query(value = "update TopTrade t set t.status = ?1,t.modified = ?3 where t.tid = ?2") + void updateOrderStatus(String status, Long tid, Date 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 7f886b7..83ec2a9 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 @@ -34,8 +34,8 @@ public class AppSettingServiceImpl implements AppSettingService { @Override public CommonResult createAppSetting(SellerAccountDTO account, AppConfigVo vo) { - if (vo.getTemplateId() == null) { - return new CommonResult().forbidden(ResponseCode.PARAMETER_ERROR.getDesc()); + if (StrUtil.isBlank(vo.getSendMessage())) { + return new CommonResult().forbidden(ResponseCode.MESSAGE_CONTENT_ERROR.getDesc()); } // 开启设置 AppSetting setting = new AppSetting(); @@ -48,8 +48,9 @@ public class AppSettingServiceImpl implements AppSettingService { @Override @CacheEvict(value = "settingCache", key = "#userId+'-'+#vo.settingType") public CommonResult updateAppSetting(Long userId, SellerAccountDTO account, AppConfigVo vo) { - if (vo.getId() == null || vo.getTemplateId() == null) { - return new CommonResult().forbidden(ResponseCode.PARAMETER_ERROR.getDesc()); + if (vo.getStatus() == DefaultNumberConstants.ONE_NUMBER && + StrUtil.isBlank(vo.getSendMessage())) { + return new CommonResult().forbidden(ResponseCode.MESSAGE_CONTENT_ERROR.getDesc()); } // 修改方法 AppSetting appSetting = new AppSetting(); 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 ef16801..1c9f820 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 @@ -18,6 +18,7 @@ import com.hchbox.constant.*; import com.hchbox.dto.SellerAccountDTO; import com.hchbox.entity.master.*; import com.hchbox.enums.AppSettingTypeEnum; +import com.hchbox.enums.RefundStatusEnum; import com.hchbox.enums.ResponseCode; import com.hchbox.enums.TradeEnum; import com.hchbox.hander.message.TaoBaoMessage; @@ -139,8 +140,9 @@ public class TopTradeServiceImpl implements TopTradeService { if (byTid == null || byTid == DefaultNumberConstants.ZERO_NUMBER) { // 设置账户 topTrade.setUserId( - sellerAccountDTO.getParentId() != DefaultNumberConstants.ZERO_NUMBER ? sellerAccountDTO.getParentId() : - sellerAccountDTO.getId()); + sellerAccountDTO.getParentId() != DefaultNumberConstants.ZERO_NUMBER + ? sellerAccountDTO.getParentId() : + sellerAccountDTO.getId()); topTrade.setId(GenerateIdUtils.generateLongId()); topTradeRepository.save(topTrade); topOrderService.bulkInsertOrder(tid, topTrade.getSellerNick(), topTrade.getId(), topOrders); @@ -156,7 +158,7 @@ public class TopTradeServiceImpl implements TopTradeService { TopTrade trade = topTradeRepository.findByTid(message.getTid()); log.info("=========== update order status the message as {} ===========", message.getStatus()); if (trade != null && message.getStatus() != null) { - topTradeRepository.updateOrderStatus(message.getStatus(), message.getTid()); + topTradeRepository.updateOrderStatus(message.getStatus(), message.getTid(), DateUtil.date()); return Boolean.TRUE; } return Boolean.FALSE; @@ -168,7 +170,8 @@ public class TopTradeServiceImpl implements TopTradeService { public Boolean updateOrderStatusByMessage(TaoBaoRefundMessage message) { TopTrade trade = topTradeRepository.findByTid(message.getTid()); if (trade != null) { - topTradeRepository.updateOrderStatus(TradeEnum.TRADE_REFUND_COMPLETED.getStateValue(), message.getTid()); + topTradeRepository.updateOrderStatus(RefundStatusEnum.SUCCESS.getStateValue(), + message.getTid(), DateUtil.date()); return Boolean.TRUE; } return Boolean.FALSE; @@ -368,9 +371,9 @@ public class TopTradeServiceImpl implements TopTradeService { private void sendMessageRemind(Integer type, String buyerNick, Long tid, String orderStatus, String template, AppSetting setting, List sendNickList, SellerAccountDTO sellerAccountDTO) { // TODO 使用本地数据 - TopTrade trade = topTradeRepository.findByTid(2148563198943032631L); + TopTrade trade = topTradeRepository.findByTid(tid); if (trade != null) { - topTradeRepository.updateOrderStatus(orderStatus, tid); + topTradeRepository.updateOrderStatus(orderStatus, tid,DateUtil.date()); // 订单支付成功 if (type.equals(AppSettingTypeEnum.PAYMENT_SUCCESSFUL.getType())) { @@ -387,7 +390,7 @@ public class TopTradeServiceImpl implements TopTradeService { topTradeRepository.updateOrderStatusSuccessfulTransaction(orderStatus, tid, DateUtil.date()); } - List orderList = topOrderRegistry.findByTid(2148563198943032631L); + List orderList = topOrderRegistry.findByTid(tid); if (!CollectionUtils.isEmpty(orderList)) { trade.setOrders(orderList); } diff --git a/trade-common/src/main/java/com/hchbox/model/entity/BaseTrade.java b/trade-common/src/main/java/com/hchbox/model/entity/BaseTrade.java index a08baf6..1484a9e 100644 --- a/trade-common/src/main/java/com/hchbox/model/entity/BaseTrade.java +++ b/trade-common/src/main/java/com/hchbox/model/entity/BaseTrade.java @@ -12,6 +12,7 @@ import org.springframework.data.jpa.domain.support.AuditingEntityListener; import javax.persistence.Column; import javax.persistence.EntityListeners; import javax.persistence.MappedSuperclass; +import java.io.Serializable; import java.util.Date; /** @@ -22,7 +23,7 @@ import java.util.Date; @Setter @MappedSuperclass @EntityListeners(AuditingEntityListener.class) -public class BaseTrade { +public class BaseTrade implements Serializable { private static final long serialVersionUID = - 4040159902592156920L; @CreationTimestamp 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 1ff65d8..783c54b 100644 --- a/trade-common/src/main/java/com/hchbox/vo/AppConfigVo.java +++ b/trade-common/src/main/java/com/hchbox/vo/AppConfigVo.java @@ -4,7 +4,6 @@ package com.hchbox.vo; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.persistence.Column; import java.util.Date; import java.util.List; diff --git a/trade-pojo/src/main/java/com/hchbox/enums/ResponseCode.java b/trade-pojo/src/main/java/com/hchbox/enums/ResponseCode.java index f2e3058..beb262f 100644 --- a/trade-pojo/src/main/java/com/hchbox/enums/ResponseCode.java +++ b/trade-pojo/src/main/java/com/hchbox/enums/ResponseCode.java @@ -27,6 +27,8 @@ public enum ResponseCode { SAVE_INFORMATION_FAILED("1004", "保存信息失败"), + MESSAGE_CONTENT_ERROR("1017", "消息内容不能为空"), + USER_INFORMATION_EXPIRED("27", "用户登录已经失效"), TEMPLATE_NAME_CANNOT_BE_EMPTY("1014", "模板不能为空"), diff --git a/trade-pojo/src/main/java/com/hchbox/enums/TradeEnum.java b/trade-pojo/src/main/java/com/hchbox/enums/TradeEnum.java index c7254b6..5b9d8d9 100644 --- a/trade-pojo/src/main/java/com/hchbox/enums/TradeEnum.java +++ b/trade-pojo/src/main/java/com/hchbox/enums/TradeEnum.java @@ -85,6 +85,11 @@ public enum TradeEnum { */ TRADE_CLOSED_BY_TAO_BAO("TRADE_CLOSED_BY_TAO_BAO"), + /** + * 同意退货 + */ + TRADE_AGREED_TO_RETURN("TRADE_AGREED_TO_RETURN"), + /** * 订单退款完成 */