From a0186cf541d958a8b6d6edcaa13b9450630709ff Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Fri, 12 Aug 2022 17:17:21 +0800 Subject: [PATCH] 20220810 --- src/main/java/cc/mrbird/febs/pay/model/OrderStateMsgVo.java | 2 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java | 2 src/test/java/cc/mrbird/febs/ProfitTest.java | 48 ++++++++++++++++++++++- src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java | 6 +- src/main/resources/mapper/modules/MallOrderInfoMapper.xml | 6 ++- 5 files changed, 54 insertions(+), 10 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java index f9c0364..7ed29f9 100644 --- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java +++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java @@ -321,12 +321,12 @@ OrderStateDto orderStateDto = new OrderStateDto(); orderStateDto.setOrderNo(mallOrderInfo.getOrderNo()); String productNames = getProductNames(mallOrderInfo.getMemberId(), mallOrderInfo.getId()); - orderStateDto.setGoodsName(StrUtil.isEmpty(productNames)?"商品":productNames); - orderStateDto.setOrderState("已送达自提点"); + orderStateDto.setGoodsName(StrUtil.sub(StrUtil.isEmpty(productNames)?"商品":productNames,0,10)+"..."); + orderStateDto.setOrderState("已送达"); orderStateDto.setTakeCode(mallOrderInfo.getTakeCode()); String takeUniqueCode = mallOrderInfo.getTakeUniqueCode(); MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); - orderStateDto.setAddressArea(mallTeamLeader.getAddressArea()); + orderStateDto.setAddressArea(StrUtil.sub(mallTeamLeader.getAddressArea(),0,10)+"..."); orderStateDto.setOpenId(mallMemberMapper.selectById(mallOrderInfo.getMemberId()).getOpenId()); DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WX_TEMPLATE_ID_ONE.getType(), DataDictionaryEnum.WX_TEMPLATE_ID_ONE.getCode()); orderStateDto.setTemplateId(dataDictionaryCustom.getValue()); diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java index 99ecdfa..9b86be1 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java @@ -154,7 +154,7 @@ orderStateDto.setOrderNo(mallOrderInfo.getOrderNo()); String productNames = getProductNames(mallOrderInfo.getMemberId(), mallOrderInfo.getId()); orderStateDto.setGoodsName(StrUtil.isEmpty(productNames)?"商品":productNames); - orderStateDto.setOrderState("已送达自提点"); + orderStateDto.setOrderState("已送达"); orderStateDto.setTakeCode(mallOrderInfo.getTakeCode()); String takeUniqueCode = mallOrderInfo.getTakeUniqueCode(); MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); diff --git a/src/main/java/cc/mrbird/febs/pay/model/OrderStateMsgVo.java b/src/main/java/cc/mrbird/febs/pay/model/OrderStateMsgVo.java index 0866511..39ef242 100644 --- a/src/main/java/cc/mrbird/febs/pay/model/OrderStateMsgVo.java +++ b/src/main/java/cc/mrbird/febs/pay/model/OrderStateMsgVo.java @@ -14,7 +14,7 @@ private String template_id;//订阅消息模版id private String miniprogram_state="developer";//跳转小程序类型:developer为开发版;trial为体验版;formal为正式版;默认为正式版 private String lang="zh_CN";//进入小程序查看”的语言类型,支持zh_CN(简体中文)、en_US(英文)、zh_HK(繁体中文)、zh_TW(繁体中文),默认为zh_CN - private String page = "pages/index/index";//默认跳到小程序首页 + private String page;//默认跳到小程序首页 private Map<String, WxTemplateData> data;//推送文字 } diff --git a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml index ea085b4..1dc9cd3 100644 --- a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml +++ b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml @@ -54,8 +54,10 @@ order by a.created_time desc </select> - <select id="selectOrderByMemberIdAndId" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo"> - select * from mall_order_info a + <select id="selectOrderByMemberIdAndId" resultMap="OrderInfoMap"> + select + a.*, + b.goods_name from mall_order_info a inner join mall_order_item b on a.id=b.order_id where a.member_id=#{memberId} and a.id=#{id} </select> diff --git a/src/test/java/cc/mrbird/febs/ProfitTest.java b/src/test/java/cc/mrbird/febs/ProfitTest.java index 627a310..b769497 100644 --- a/src/test/java/cc/mrbird/febs/ProfitTest.java +++ b/src/test/java/cc/mrbird/febs/ProfitTest.java @@ -1,6 +1,7 @@ package cc.mrbird.febs; import cc.mrbird.febs.mall.dto.ApiLeaderOrderConfirmDto; +import cc.mrbird.febs.mall.entity.MallOrderInfo; import cc.mrbird.febs.mall.entity.MallOrderItem; import cc.mrbird.febs.mall.mapper.MallOrderInfoMapper; import cc.mrbird.febs.mall.mapper.MallOrderItemMapper; @@ -11,6 +12,7 @@ import cc.mrbird.febs.rabbit.consumer.AgentConsumer; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import org.apache.commons.collections.CollectionUtils; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; @@ -126,8 +128,48 @@ @Test public void confirm(){ - ApiLeaderOrderConfirmDto apiLeaderOrderConfirmDto = new ApiLeaderOrderConfirmDto(); - apiLeaderOrderConfirmDto.setIds("90"); - iApiMallTeamLeaderService.leaderOrderConfirm(apiLeaderOrderConfirmDto); +// ApiLeaderOrderConfirmDto apiLeaderOrderConfirmDto = new ApiLeaderOrderConfirmDto(); +// apiLeaderOrderConfirmDto.setIds("90"); +// iApiMallTeamLeaderService.leaderOrderConfirm(apiLeaderOrderConfirmDto); + String productNames = getProductNames(38L, 104L); + System.out.println(productNames); + } + + /** + * 根据用户ID和订单ID获取所购买商品名称 + * @return 所含商品名称(多个以","隔开) + */ + public String getProductNames(Long memberId, Long orderId) { + MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectOrderByMemberIdAndId(memberId, orderId); + List<MallOrderItem> details = mallOrderInfo.getItems(); + if (CollectionUtils.isEmpty(details)) { + return ""; + } + StringBuffer productNameBuffer = new StringBuffer(); + Integer maxLength = 30; + for (int i = 0; i< details.size(); i++) { + MallOrderItem mallOrderItem = details.get(i); + String goodsName = mallOrderItem.getGoodsName(); + if (goodsName == null) { + continue; + } + if (i == 0 && goodsName.length() > maxLength) { + productNameBuffer.append(goodsName.substring(0, maxLength) + "..."); + break; + } + if ((productNameBuffer.length() + goodsName.length()) > maxLength) { + productNameBuffer.append("等"); + break; + } + productNameBuffer.append(goodsName + ","); + } + String productNames = productNameBuffer.toString(); + if (productNames.endsWith(",")) { + productNames = productNames.substring(0, productNames.length() - 1); + } + if (productNames.endsWith(",等")) { + productNames = productNames.substring(0, productNames.length() - 2) + "等"; + } + return productNames; } } -- Gitblit v1.9.1