浏览代码

add 审核退款

he2802 3 年之前
父节点
当前提交
1a546e0769

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/CourseBusinessAddBo.java

@@ -63,4 +63,10 @@ public class CourseBusinessAddBo {
     /** 学时确认审核用户ID拼接 */
     @ApiModelProperty("学时确认审核用户ID拼接")
     private String periodConfirmUserIds;
+    /** 退款初审用户ID拼接 */
+    @ApiModelProperty("退款初审用户ID拼接")
+    private String refundUserIds;
+    /** 退款确认审核用户ID拼接 */
+    @ApiModelProperty("退款确认审核用户ID拼接")
+    private String refundConfirmUserIds;
 }

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/CourseBusinessEditBo.java

@@ -75,4 +75,10 @@ public class CourseBusinessEditBo {
     /** 学时确认审核用户ID拼接 */
     @ApiModelProperty("学时确认审核用户ID拼接")
     private String periodConfirmUserIds;
+    /** 退款初审用户ID拼接 */
+    @ApiModelProperty("退款初审用户ID拼接")
+    private String refundUserIds;
+    /** 退款确认审核用户ID拼接 */
+    @ApiModelProperty("退款确认审核用户ID拼接")
+    private String refundConfirmUserIds;
 }

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/domain/CourseBusiness.java

@@ -58,4 +58,8 @@ private static final long serialVersionUID=1L;
     private String periodUserIds;
     /** 学时确认审核用户ID拼接 */
     private String periodConfirmUserIds;
+    /** 退款初审用户ID拼接 */
+    private String refundUserIds;
+    /** 退款确认审核用户ID拼接 */
+    private String refundConfirmUserIds;
 }

+ 8 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/vo/CourseBusinessVo.java

@@ -104,4 +104,12 @@ public class CourseBusinessVo {
 	@Excel(name = "学时确认审核用户ID拼接")
 	@ApiModelProperty("学时确认审核用户ID拼接")
 	private String periodConfirmUserIds;
+	/** 退款初审用户ID拼接 */
+	@Excel(name = "退款初审用户ID拼接")
+	@ApiModelProperty("退款初审用户ID拼接")
+	private String refundUserIds;
+	/** 退款确认审核用户ID拼接 */
+	@Excel(name = "退款确认审核用户ID拼接")
+	@ApiModelProperty("退款确认审核用户ID拼接")
+	private String refundConfirmUserIds;
 }

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/bo/OrderQueryBo.java

@@ -6,6 +6,7 @@ import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 import java.util.Date;
+import java.util.List;
 import java.util.Map;
 import java.util.HashMap;
 
@@ -119,4 +120,7 @@ public class OrderQueryBo extends BaseEntity {
 
 	@ApiModelProperty("搜索关键词")
 	private String searchKey;
+
+	@ApiModelProperty("订单商品ID数组")
+	private List<Long> orderGoodsIds;
 }

+ 9 - 6
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderGoodsRefundServiceImpl.java

@@ -118,6 +118,9 @@ public class OrderGoodsRefundServiceImpl extends ServiceImpl<OrderGoodsRefundMap
 
     @Override
     public Boolean placeRefundSmallOrder(OrderGoodsRefundAddBo bo) {
+        if(Validator.isEmpty(bo.getGoodsId())||Validator.isEmpty(bo.getOrderSn())){
+            throw new CustomException("参数缺失");
+        }
         OrderGoods orderGoods = iOrderGoodsService.getOne(new LambdaQueryWrapper<OrderGoods>().eq(OrderGoods::getOrderSn,bo.getOrderSn())
                 .eq(OrderGoods::getGoodsId, bo.getGoodsId()));
         if(Validator.isEmpty(orderGoods)){
@@ -193,17 +196,17 @@ public class OrderGoodsRefundServiceImpl extends ServiceImpl<OrderGoodsRefundMap
     @Transactional(rollbackFor = Exception.class)
     public Boolean placeRefundInputOrder(List<OrderGoodsRefundAddBo> bos) {
         for(OrderGoodsRefundAddBo bo : bos){
+            if(Validator.isEmpty(bo.getGoodsId())||Validator.isEmpty(bo.getOrderSn())){
+                throw new CustomException("参数缺失");
+            }
             OrderGoods orderGoods = iOrderGoodsService.getOne(new LambdaQueryWrapper<OrderGoods>().eq(OrderGoods::getOrderSn,bo.getOrderSn())
                     .eq(OrderGoods::getGoodsId, bo.getGoodsId()));
             if(Validator.isEmpty(orderGoods)){
                 throw new CustomException("订单商品数据错误");
             }
-            if(orderGoods.getPayStatus()!=3||orderGoods.getPayStatus()!=2){
+            if(orderGoods.getPayStatus()!=3&&orderGoods.getPayStatus()!=2){
                 throw new CustomException("订单商品尚未收费");
             }
-            if(orderGoods.getRefundStatus()==2){
-                throw new CustomException("订单商品已退款");
-            }
             if(orderGoods.getRefundStatus()!=0){
                 throw new CustomException("订单商品目前正在退款中");
             }
@@ -212,8 +215,8 @@ public class OrderGoodsRefundServiceImpl extends ServiceImpl<OrderGoodsRefundMap
             if(order.getStatus()==0){
                 throw new CustomException("订单无效");
             }
-            if(order.getOrderFrom()!=2){
-                throw new CustomException("不支持非小程序订单退款");
+            if(order.getOrderFrom()!=5){
+                throw new CustomException("不支持非录单订单退款");
             }
             //订单商品
             Goods goods = iGoodsService.getOne(new LambdaQueryWrapper<Goods>().eq(Goods::getGoodsId,bo.getGoodsId()));

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/OrderListVo.java

@@ -172,4 +172,10 @@ public class OrderListVo {
 	@Excel(name = "复购老订单商品ID")
 	@ApiModelProperty("复购老订单商品ID")
 	private Long rebuyOrderGoodsId;
+	@Excel(name = "订单商品支付状态")
+	@ApiModelProperty("订单商品支付状态  1未收费 2部分收费 3完全收费 4免费")
+	private Integer goodsPayStatus;
+	/** 商品类型 1视频2题库 3补考 4前培  */
+	@ApiModelProperty("商品类型 1视频2题库 3补考 4前培 ")
+	private Integer goodsType;
 }

+ 4 - 0
zhongzheng-system/src/main/resources/mapper/modules/course/CourseBusinessMapper.xml

@@ -17,6 +17,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="profileTpUserIds" column="profile_tp_user_ids"/>
         <result property="periodUserIds" column="period_user_ids"/>
         <result property="periodConfirmUserIds" column="period_confirm_user_ids"/>
+        <result property="refundUserIds" column="refund_user_ids"/>
+        <result property="refundConfirmUserIds" column="refund_confirm_user_ids"/>
     </resultMap>
 
     <resultMap type="com.zhongzheng.modules.course.vo.CourseBusinessVo" id="CourseBusinessVoResult">
@@ -35,6 +37,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="profileTpUserIds" column="profile_tp_user_ids"/>
         <result property="periodUserIds" column="period_user_ids"/>
         <result property="periodConfirmUserIds" column="period_confirm_user_ids"/>
+        <result property="refundUserIds" column="refund_user_ids"/>
+        <result property="refundConfirmUserIds" column="refund_confirm_user_ids"/>
     </resultMap>
 
 

+ 1 - 0
zhongzheng-system/src/main/resources/mapper/modules/order/OrderInputMapper.xml

@@ -79,6 +79,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </if>
         GROUP BY
             oi.input_order_sn
+        ORDER BY create_time DESC
     </select>
 
 

+ 10 - 1
zhongzheng-system/src/main/resources/mapper/modules/order/OrderMapper.xml

@@ -73,6 +73,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="payStatus" column="pay_status"/>
         <result property="orderGoodsId" column="order_goods_id"/>
         <result property="periodPlush" column="period_plush"/>
+        <result property="goodsPayStatus" column="goods_pay_status"/>
+        <result property="goodsType" column="goods_type"/>
     </resultMap>
 
     <select id="getGradePeriod" parameterType="Map" resultType="integer">
@@ -92,6 +94,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             g.year,
             g.cover_url,
             g.code,
+            g.goods_type,
             og.goods_price,
             og.rebuy_order_goods_id,
             og.order_goods_id,
@@ -107,7 +110,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             m.category_name,
             og.goods_received,
             og.refund_status,
-            og.pay_status,
+            og.pay_status as goods_pay_status,
         (select cgu.period_plush from  class_grade_user cgu where cgu.grade_id = og.grade_id and cgu.user_id = o.user_id limit 1 ) period_plush
         FROM
             `order` o
@@ -173,6 +176,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="searchKey != null and searchKey != ''">
             AND (u.realname like concat('%', #{searchKey}, '%') or o.order_sn = #{searchKey} or o.id_card = #{searchKey} or g.goods_name like concat('%', #{searchKey}, '%'))
         </if>
+        <if test="orderGoodsIds != null ">
+            AND og.order_goods_id in
+            <foreach collection="orderGoodsIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
         ORDER BY o.order_id DESC
     </select>