团单统计
This commit is contained in:
@@ -1,8 +1,6 @@
|
||||
package com.czg.controller.admin;
|
||||
|
||||
import com.czg.annotation.Debounce;
|
||||
import com.czg.annotation.SaStaffCheckPermission;
|
||||
import com.czg.config.RabbitPublisher;
|
||||
import com.czg.order.dto.*;
|
||||
import com.czg.order.entity.OrderInfo;
|
||||
import com.czg.order.service.OrderInfoCustomService;
|
||||
@@ -11,7 +9,6 @@ import com.czg.order.vo.HistoryOrderVo;
|
||||
import com.czg.order.vo.OrderInfoVo;
|
||||
import com.czg.resp.CzgResult;
|
||||
import com.czg.sa.StpKit;
|
||||
import com.czg.service.order.enums.OrderStatusEnums;
|
||||
import com.czg.service.order.service.PayService;
|
||||
import com.czg.utils.AssertUtil;
|
||||
import com.czg.utils.ServletUtil;
|
||||
@@ -35,8 +32,6 @@ public class AdminOrderController {
|
||||
private OrderInfoCustomService orderInfoService;
|
||||
@Resource
|
||||
private PayService payService;
|
||||
@Resource
|
||||
private RabbitPublisher rabbitPublisher;
|
||||
|
||||
/**
|
||||
* 订单列表
|
||||
|
||||
@@ -5,7 +5,9 @@ import com.czg.market.dto.GbWareDTO;
|
||||
import com.czg.market.dto.GbWareQueryParamDTO;
|
||||
import com.czg.market.entity.GbWare;
|
||||
import com.czg.market.service.GbWareService;
|
||||
import com.czg.order.dto.GbOrderQueryParam;
|
||||
import com.czg.order.service.GbOrderService;
|
||||
import com.czg.order.vo.GbOrderCountVO;
|
||||
import com.czg.resp.CzgResult;
|
||||
import com.czg.sa.StpKit;
|
||||
import com.czg.utils.AssertUtil;
|
||||
@@ -37,10 +39,26 @@ public class GbWareController {
|
||||
return CzgResult.success(gbOrderService.upShopConfig(param.getOnlineStatus(), StpKit.USER.getShopId()));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 拼团商品统计
|
||||
*/
|
||||
@GetMapping("/ware/count")
|
||||
@SaAdminCheckPermission(parentName = "拼团商品", value = "ware:info:list", name = "拼团商品-列表")
|
||||
public CzgResult<GbOrderCountVO> getWareCount(GbOrderQueryParam param) {
|
||||
if (param.getShopId() == null) {
|
||||
param.setShopId(StpKit.USER.getShopId());
|
||||
}
|
||||
return CzgResult.success(gbOrderService.countOrder(param));
|
||||
}
|
||||
|
||||
@GetMapping("/getGbWarePage")
|
||||
@SaAdminCheckPermission(parentName = "拼团商品", value = "ware:info:list", name = "拼团商品-列表")
|
||||
public CzgResult<Page<GbWare>> getGbWarePage(GbWareQueryParamDTO param) {
|
||||
return CzgResult.success(wareService.getGbWarePage(param, StpKit.USER.getShopId()));
|
||||
if (param.getShopId() == null) {
|
||||
param.setShopId(StpKit.USER.getShopId());
|
||||
}
|
||||
return CzgResult.success(wareService.getGbWarePage(param, param.getShopId()));
|
||||
}
|
||||
|
||||
@PostMapping("/addGbWare")
|
||||
|
||||
@@ -14,6 +14,10 @@ import lombok.EqualsAndHashCode;
|
||||
public class GbWareQueryParamDTO extends TimeQueryParam {
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private Long shopId;
|
||||
/**
|
||||
* 商品名称 模糊查询
|
||||
*/
|
||||
|
||||
@@ -4,6 +4,7 @@ import com.czg.order.dto.CommonRefundDTO;
|
||||
import com.czg.order.dto.GbOrderQueryParam;
|
||||
import com.czg.order.dto.GroupJoinDTO;
|
||||
import com.czg.order.entity.GbOrder;
|
||||
import com.czg.order.vo.GbOrderCountVO;
|
||||
import com.czg.order.vo.GbOrderDetailVO;
|
||||
import com.czg.order.vo.GbWareVO;
|
||||
import com.czg.resp.CzgResult;
|
||||
@@ -22,6 +23,9 @@ public interface GbOrderService extends IService<GbOrder> {
|
||||
|
||||
boolean upShopConfig(Integer status, Long shopId);
|
||||
|
||||
//统计
|
||||
GbOrderCountVO countOrder(GbOrderQueryParam param);
|
||||
|
||||
//列表 详细列表 detail的
|
||||
Page<GbOrderDetailVO> getGbOrderPage(GbOrderQueryParam param);
|
||||
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.czg.order.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 拼团订单统计
|
||||
*
|
||||
* @author ww
|
||||
*/
|
||||
@Data
|
||||
public class GbOrderCountVO implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 总交易笔数
|
||||
*/
|
||||
private Long countNum;
|
||||
/**
|
||||
* 已支付金额
|
||||
*/
|
||||
private BigDecimal paidAmountTotal;
|
||||
/**
|
||||
* 已退款金额
|
||||
*/
|
||||
private BigDecimal refundAmount;
|
||||
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.czg.service.order.mapper;
|
||||
|
||||
import com.czg.order.dto.GbOrderQueryParam;
|
||||
import com.czg.order.vo.GbOrderCountVO;
|
||||
import com.czg.order.vo.GbOrderDetailVO;
|
||||
import com.czg.order.vo.GbOrderUserVO;
|
||||
import com.mybatisflex.core.BaseMapper;
|
||||
@@ -16,6 +17,8 @@ import java.util.List;
|
||||
*/
|
||||
public interface GbOrderMapper extends BaseMapper<GbOrder> {
|
||||
|
||||
GbOrderCountVO countOrder(GbOrderQueryParam param);
|
||||
|
||||
List<GbOrderDetailVO> getGbOrderPage(GbOrderQueryParam param, Long shopId, Long mainShopId);
|
||||
|
||||
GbOrderDetailVO getDetailByDetailId(Long mainShopId, Long shopId, Long detailId);
|
||||
|
||||
@@ -22,10 +22,7 @@ import com.czg.order.entity.GbOrderDetail;
|
||||
import com.czg.order.enums.PaymentPayTypeEnum;
|
||||
import com.czg.order.service.GbOrderDetailService;
|
||||
import com.czg.order.service.GbOrderService;
|
||||
import com.czg.order.vo.GbOrderDetailVO;
|
||||
import com.czg.order.vo.GbOrderUserVO;
|
||||
import com.czg.order.vo.GbWareOrderVO;
|
||||
import com.czg.order.vo.GbWareVO;
|
||||
import com.czg.order.vo.*;
|
||||
import com.czg.resp.CzgResult;
|
||||
import com.czg.sa.StpKit;
|
||||
import com.czg.service.order.mapper.GbOrderMapper;
|
||||
@@ -90,6 +87,11 @@ public class GbOrderServiceImpl extends ServiceImpl<GbOrderMapper, GbOrder> impl
|
||||
return update;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GbOrderCountVO countOrder(GbOrderQueryParam param) {
|
||||
return mapper.countOrder(param);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<GbOrderDetailVO> getGbOrderPage(GbOrderQueryParam param) {
|
||||
Long mainIdByShopId = shopInfoService.getMainIdByShopId(param.getShopId());
|
||||
|
||||
@@ -4,6 +4,42 @@
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.czg.service.order.mapper.GbOrderMapper">
|
||||
|
||||
<select id="countOrder" resultType="com.czg.order.vo.GbOrderCountVO">
|
||||
SELECT
|
||||
sum(CASE WHEN status !='已退款' THEN detail.pay_amount ELSE 0 END) AS paidAmountTotal,
|
||||
sum(CASE WHEN status ='已退款' THEN detail.pay_amount ELSE 0 END) AS refundAmount,
|
||||
count(detail.id) as countNum
|
||||
FROM
|
||||
`gb_order_detail` detail
|
||||
WHERE
|
||||
detail.shop_id = #{shopId}
|
||||
and detail.is_del = 0
|
||||
<if test="param.orderNo != null">
|
||||
and detail.order_no = #{param.orderNo}
|
||||
</if>
|
||||
<if test="param.groupOrderNo != null">
|
||||
AND detail.group_order_no = #{param.groupOrderNo}
|
||||
</if>
|
||||
<if test="param.status != null">
|
||||
<if test="param.status == '退款'">
|
||||
AND (detail.STATUS = '退款中' or detail.STATUS = '已退款')
|
||||
</if>
|
||||
<if test="param.status != '退款'">
|
||||
AND detail.STATUS = #{param.status}
|
||||
</if>
|
||||
</if>
|
||||
<if test="param.userId != null">
|
||||
AND detail.user_id = #{param.userId}
|
||||
</if>
|
||||
<if test="param.orderStartTime != null and param.orderEndTime != null ">
|
||||
and detail.pay_time BETWEEN #{param.orderStartTime} and #{param.orderEndTime}
|
||||
</if>
|
||||
<if test="param.verifyStartTime != null and param.verifyEndTime != null ">
|
||||
and detail.verify_time BETWEEN #{param.verifyStartTime} and #{param.verifyEndTime}
|
||||
</if>
|
||||
order by detail.create_time desc
|
||||
</select>
|
||||
|
||||
<select id="getGbOrderPage" resultType="com.czg.order.vo.GbOrderDetailVO">
|
||||
SELECT
|
||||
detail.* ,`order`.ware_json as wareJson,`order`.group_end_time as groupEndTime,`order`.group_people_num as groupPeopleNum,`order`.ware_group_price as wareGroupPrice,
|
||||
|
||||
Reference in New Issue
Block a user