gc-order/src/main/java/com/xzx/gc/order/controller/ApiJhyOrderController.java | ●●●●● patch | view | raw | blame | history | |
gc-order/src/main/java/com/xzx/gc/order/mapper/JhyOrderMapper.java | ●●●●● patch | view | raw | blame | history | |
gc-order/src/main/java/com/xzx/gc/order/service/JhyOrderService.java | ●●●●● patch | view | raw | blame | history | |
gc-order/src/main/java/com/xzx/gc/order/vo/JhyStatusCountVo.java | ●●●●● patch | view | raw | blame | history | |
gc-order/src/main/resources/mapper/order/JhyOrderMapper.xml | ●●●●● patch | view | raw | blame | history |
gc-order/src/main/java/com/xzx/gc/order/controller/ApiJhyOrderController.java
@@ -23,6 +23,7 @@ import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; import java.util.Map; @Slf4j @RestController @@ -82,4 +83,10 @@ return Result.success(); } @ApiOperation("订单状态数量") @PostMapping(value = "/orderStatusCnt") public JsonResult<Map<Integer, Integer>> orderStatusCnt(HttpServletRequest request) { return JsonResult.success(jhyOrderService.orderStatusCount(getUserId(request))); } } gc-order/src/main/java/com/xzx/gc/order/mapper/JhyOrderMapper.java
@@ -3,6 +3,7 @@ import com.xzx.gc.entity.JhyOrder; import com.xzx.gc.order.dto.JhyOrderListDto; import com.xzx.gc.order.vo.JhyOrderListVo; import com.xzx.gc.order.vo.JhyStatusCountVo; import com.xzx.gc.util.GcMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -13,4 +14,6 @@ public interface JhyOrderMapper extends GcMapper<JhyOrder> { List<JhyOrderListVo> selectJhyOrderList(@Param("record") JhyOrderListDto jhyOrderListDto); List<JhyStatusCountVo> selectOrderStatusCount(@Param("userId") String userId); } gc-order/src/main/java/com/xzx/gc/order/service/JhyOrderService.java
@@ -18,6 +18,7 @@ import com.xzx.gc.order.mapper.*; import com.xzx.gc.order.vo.JhyOrderDetailsVo; import com.xzx.gc.order.vo.JhyOrderListVo; import com.xzx.gc.order.vo.JhyStatusCountVo; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -25,9 +26,7 @@ import javax.servlet.http.HttpServletRequest; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.*; @Slf4j @Service @@ -172,6 +171,7 @@ order.setStatus(JhyOrder.ORDER_STATUS_CANCEL); } order.setJhyId(null); jhyOrderMapper.updateByPrimaryKey(order); } @@ -236,4 +236,30 @@ distribService.distribRecord(order.getId(), order.getUserId()); } public Map<Integer, Integer> orderStatusCount(String userId) { List<JhyStatusCountVo> count = jhyOrderMapper.selectOrderStatusCount(userId); Map<Integer, Integer> map = new HashMap<>(); for (int i = 1; i < 6; i++) { if (CollUtil.isNotEmpty(count)) { boolean flag = false; for (JhyStatusCountVo jhyStatusCountVo : count) { if (i == jhyStatusCountVo.getStatus()) { map.put(i, jhyStatusCountVo.getCnt()); flag = true; break; } } if (flag) { continue; } } map.put(i, 0); } return map; } } gc-order/src/main/java/com/xzx/gc/order/vo/JhyStatusCountVo.java
New file @@ -0,0 +1,13 @@ package com.xzx.gc.order.vo; import io.swagger.annotations.ApiModel; import lombok.Data; @Data @ApiModel(value = "JhyStatucCountVo", description = "") public class JhyStatusCountVo { private Integer status; private Integer cnt; } gc-order/src/main/resources/mapper/order/JhyOrderMapper.xml
@@ -43,4 +43,18 @@ group by a.id order by a.receiving_time desc, a.id desc </select> <select id="selectOrderStatusCount" resultType="com.xzx.gc.order.vo.JhyStatusCountVo"> select status, count(1) cnt from xzx_jhy_order where status=1 union all select status, count(1) cnt from xzx_jhy_order where user_id=#{userId} group by status </select> </mapper>