diff --git a/README.md b/README.md index 9bf6809..8d86789 100644 --- a/README.md +++ b/README.md @@ -59,4 +59,6 @@ eyJhbGciOiJIUzUxMiJ9.eyJhdWQiOiJCRDg0REQ0MkE3MjM0QjA1QjBDNUQxMTYxNjEzMkFDNCIsImp 18、[Quartz定时任务2.3版本数据库表字段说明](https://blog.csdn.net/qq_30859353/article/details/120533838) -19、[Quartz定时器可视化管理功能的简单实现](https://www.cnblogs.com/pypua/articles/9945487.html) \ No newline at end of file +19、[Quartz定时器可视化管理功能的简单实现](https://www.cnblogs.com/pypua/articles/9945487.html) + +20、[Java中的Set](https://blog.csdn.net/qq_46209845/article/details/120220136) \ No newline at end of file diff --git a/src/main/java/cn/chjyj/szwh/controller/admin/AdminOrderController.java b/src/main/java/cn/chjyj/szwh/controller/admin/AdminOrderController.java index 4b9d074..d5c92d4 100644 --- a/src/main/java/cn/chjyj/szwh/controller/admin/AdminOrderController.java +++ b/src/main/java/cn/chjyj/szwh/controller/admin/AdminOrderController.java @@ -90,8 +90,14 @@ public class AdminOrderController extends BaseController { return jsonObject; } + /** + * 订单信息 + * @param batchcode + * @return + */ @PostMapping("/orderInfo") public JSONObject orderInfo(String batchcode){ + // Order order = orderService.getOrderByBatchcode(batchcode); jsonObject.put("code",200); jsonObject.put("data",order); diff --git a/src/main/java/cn/chjyj/szwh/mapper/OrderGoodsDetailMapper.java b/src/main/java/cn/chjyj/szwh/mapper/OrderGoodsDetailMapper.java index 8510f5e..fa6fa27 100644 --- a/src/main/java/cn/chjyj/szwh/mapper/OrderGoodsDetailMapper.java +++ b/src/main/java/cn/chjyj/szwh/mapper/OrderGoodsDetailMapper.java @@ -4,6 +4,8 @@ import cn.chjyj.szwh.bean.OrderGoodsDetail; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Component; +import java.util.List; + /** * 交易快照(订单产品) */ @@ -16,6 +18,14 @@ public interface OrderGoodsDetailMapper { */ OrderGoodsDetail getOrderGoodsDetailById(Integer id); + /** + * 根据订单编号查找订单商品详情 + * 存在多条记录? + * @param batchCode + * @return + */ + List getOrderGoodsDetailByBatchCode(String batchCode); + /** * 删除订单商品 * soft delete diff --git a/src/main/java/cn/chjyj/szwh/service/impl/OrderServiceImpl.java b/src/main/java/cn/chjyj/szwh/service/impl/OrderServiceImpl.java index 99cd213..473df94 100644 --- a/src/main/java/cn/chjyj/szwh/service/impl/OrderServiceImpl.java +++ b/src/main/java/cn/chjyj/szwh/service/impl/OrderServiceImpl.java @@ -1,17 +1,19 @@ package cn.chjyj.szwh.service.impl; import cn.chjyj.szwh.bean.Order; +import cn.chjyj.szwh.bean.OrderGoodsDetail; +import cn.chjyj.szwh.bean.OrderUser; import cn.chjyj.szwh.constant.ChConstant; +import cn.chjyj.szwh.mapper.OrderGoodsDetailMapper; import cn.chjyj.szwh.mapper.OrderMapper; +import cn.chjyj.szwh.mapper.OrderUserMapper; import cn.chjyj.szwh.service.OrderService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** * 订单服务实现 @@ -20,6 +22,13 @@ import java.util.Map; public class OrderServiceImpl implements OrderService { @Autowired private OrderMapper orderMapper; + @Autowired + private OrderUserMapper orderUserMapper; + /** + * 订单商品信息,取出商品名称,委托编号 + */ + @Autowired + private OrderGoodsDetailMapper orderGoodsDetailMapper; @Override public List getAllOrderList(int page) { @@ -40,16 +49,71 @@ public class OrderServiceImpl implements OrderService { @Override public Map getOrderList(Map qumap, int page, int limit) { + SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Map retmap =new HashMap(); int starrs = page>1?(page-1)*limit:0; List orderList=orderMapper.getOrderList(qumap,starrs,limit); + // 封装后的结果对象 + Map tomap =new HashMap(); + //拼装对象 + for(Order od:orderList){ + + //订单编号 + tomap.put("batchcode",od.getBatchcode()); + // 购买者 + OrderUser oduser = orderUserMapper.getUserOrder(od.getBatchcode(),od.getBuyIslicode()); + tomap.put("buy_username",oduser.getName()); + //下单时间 + tomap.put("createtime",sdf.format(od.getCreatetime())); + //entrust_name 委托人信息, + String entrustName=""; + String entrustType="";//委托类型 + String goodsName=""; //商品名称 + + Set enset = new HashSet<>();// 存放商品的授权方式 + + List ogdlist = orderGoodsDetailMapper.getOrderGoodsDetailByBatchCode(od.getBatchcode()); + // 遍历 + for(OrderGoodsDetail ogd:ogdlist){ + // 取订单商品的人 + OrderUser ogdu=orderUserMapper.getUserOrder(ogd.getBatchcode().toString(),ogd.getEntrustIslicode()); + // 如果已经有记录了 + if(StringUtils.isNotBlank(entrustName)){ + entrustName+=","+ogdu.getName(); + }else{ + entrustName = ogdu.getName(); + } + + //商品名称 + if(StringUtils.isNotBlank(goodsName)){ + goodsName+=","+ogd.getGoodsName(); + }else{ + goodsName= ogd.getGoodsName(); + } + + //委托方式 + String tmptype=ogd.getGoodsEntrust()==1?"转让":"授权"; + enset.add(tmptype); + } + // set集合 转为字符串 + entrustType = String.join(",",enset); + // 存放在map 中 + tomap.put("entrust_name",entrustName); + tomap.put("entrust_type",entrustType); + tomap.put("goods_name",goodsName); + //订单金额 + tomap.put("total_money",od.getTotalMoney()); + tomap.put("type",od.getType()); + tomap.put("status",od.getStatus()); + tomap.put("id",od.getId()); + } retmap.put("start",starrs+1); retmap.put("cur_page",page); retmap.put("end",page*limit); retmap.put("id",starrs); retmap.put("per_page",limit); - retmap.put("data",orderList); + retmap.put("data",tomap); return retmap; } diff --git a/src/main/resources/mapper/szwh/OrderGoodsDetailMapper.xml b/src/main/resources/mapper/szwh/OrderGoodsDetailMapper.xml index 034b3ef..1d8a0f5 100644 --- a/src/main/resources/mapper/szwh/OrderGoodsDetailMapper.xml +++ b/src/main/resources/mapper/szwh/OrderGoodsDetailMapper.xml @@ -36,6 +36,13 @@ where id=#{id} + + +