he2802 2 жил өмнө
parent
commit
94d85d6f1a

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/domain/OrderGoods.java

@@ -92,6 +92,10 @@ private static final long serialVersionUID=1L;
     private String distributionLinkCode;
     private String distributionLinkCode;
     @ApiModelProperty("分成模式 1机构分成 2业务员分成")
     @ApiModelProperty("分成模式 1机构分成 2业务员分成")
     private Integer divideModel;
     private Integer divideModel;
+    @ApiModelProperty("分成类型1百分比 2固定成本")
+    private Integer divideType;
+    @ApiModelProperty("分成比率(固定成本为固定值)")
+    private BigDecimal divideRate;
     @ApiModelProperty("分成钱")
     @ApiModelProperty("分成钱")
     private BigDecimal divideMoney;
     private BigDecimal divideMoney;
     /** 七大员商品年份 */
     /** 七大员商品年份 */

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderServiceImpl.java

@@ -1342,6 +1342,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
                     BigDecimal goodsDecimal = goodsPrice;
                     BigDecimal goodsDecimal = goodsPrice;
                     //换算订单成本和盈亏
                     //换算订单成本和盈亏
                     TopCostTpItem topCostTpItem = tpItem;
                     TopCostTpItem topCostTpItem = tpItem;
+                    orderGoods.setDivideType(topCostTpItem.getDockType());
+                    orderGoods.setDivideRate(topCostTpItem.getDockValue());
                     if (ObjectUtil.isNotNull(topCostTpItem.getDockStatus()) && topCostTpItem.getDockStatus() == 1){
                     if (ObjectUtil.isNotNull(topCostTpItem.getDockStatus()) && topCostTpItem.getDockStatus() == 1){
                         //启用成本扣除项
                         //启用成本扣除项
                         switch (topCostTpItem.getDockType()){
                         switch (topCostTpItem.getDockType()){

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/bo/TopOldOrderGoodsAddBo.java

@@ -92,6 +92,12 @@ public class TopOldOrderGoodsAddBo {
     private String userPhone;
     private String userPhone;
     @ApiModelProperty("分成模式 1机构分成 2业务员分成")
     @ApiModelProperty("分成模式 1机构分成 2业务员分成")
     private Integer divideModel;
     private Integer divideModel;
+    @ApiModelProperty("分成类型1百分比 2固定成本")
+    private Integer divideType;
+    @ApiModelProperty("分成比率(固定成本为固定值)")
+    private BigDecimal divideRate;
     @ApiModelProperty("分成钱")
     @ApiModelProperty("分成钱")
     private BigDecimal divideMoney;
     private BigDecimal divideMoney;
+    @ApiModelProperty("补款金额")
+    private BigDecimal repairMoney;
 }
 }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/domain/TopOldOrder.java

@@ -1,6 +1,7 @@
 package com.zhongzheng.modules.top.goods.domain;
 package com.zhongzheng.modules.top.goods.domain;
 
 
 import com.baomidou.mybatisplus.annotation.*;
 import com.baomidou.mybatisplus.annotation.*;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.NoArgsConstructor;
 import lombok.experimental.Accessors;
 import lombok.experimental.Accessors;
@@ -159,4 +160,6 @@ private static final long serialVersionUID=1L;
     private BigDecimal instCost;
     private BigDecimal instCost;
     /** 运营类型:1代运营 2独立运营 */
     /** 运营类型:1代运营 2独立运营 */
     private Integer operationType;
     private Integer operationType;
+    @ApiModelProperty("补款金额")
+    private BigDecimal repairMoneyTotal;
 }
 }

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/domain/TopOldOrderGoods.java

@@ -86,7 +86,13 @@ private static final long serialVersionUID=1L;
     private Long tenantId;
     private Long tenantId;
     @ApiModelProperty("分成模式 1机构分成 2业务员分成")
     @ApiModelProperty("分成模式 1机构分成 2业务员分成")
     private Integer divideModel;
     private Integer divideModel;
+    @ApiModelProperty("分成类型1百分比 2固定成本")
+    private Integer divideType;
+    @ApiModelProperty("分成比率(固定成本为固定值)")
+    private BigDecimal divideRate;
     @ApiModelProperty("分成钱")
     @ApiModelProperty("分成钱")
     private BigDecimal divideMoney;
     private BigDecimal divideMoney;
+    @ApiModelProperty("补款金额")
+    private BigDecimal repairMoney;
 
 
 }
 }

+ 51 - 4
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/service/impl/TopOldOrderServiceImpl.java

@@ -290,6 +290,9 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
         if (ObjectUtils.isNotNull(orderVo.getOrderReceived()) && ObjectUtils.isNotNull(orderVo.getOrderRefunded())) {
         if (ObjectUtils.isNotNull(orderVo.getOrderReceived()) && ObjectUtils.isNotNull(orderVo.getOrderRefunded())) {
             orderVo.setOrderPractical(orderVo.getOrderReceived().subtract(orderVo.getOrderRefunded()));
             orderVo.setOrderPractical(orderVo.getOrderReceived().subtract(orderVo.getOrderRefunded()));
         }
         }
+        //业务层次
+        orderVo.setBusinessNames(baseMapper.queryBusinessBySn(orderVo.getOrderSn()));
+
         TopOldOrderCheckLog checkLog = topOldOrderCheckLogService
         TopOldOrderCheckLog checkLog = topOldOrderCheckLogService
                 .getOne(new LambdaQueryWrapper<TopOldOrderCheckLog>()
                 .getOne(new LambdaQueryWrapper<TopOldOrderCheckLog>()
                         .eq(TopOldOrderCheckLog::getOrderSn, orderSn)
                         .eq(TopOldOrderCheckLog::getOrderSn, orderSn)
@@ -407,7 +410,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
         }
         }
         if (CollectionUtils.isNotEmpty(settleList)) {
         if (CollectionUtils.isNotEmpty(settleList)) {
             BigDecimal money = settleList.stream().filter(item -> ObjectUtils.isNotNull(item.getSettleMoney()) && item.getSettleMoney().compareTo(BigDecimal.ZERO) > 0)
             BigDecimal money = settleList.stream().filter(item -> ObjectUtils.isNotNull(item.getSettleMoney()) && item.getSettleMoney().compareTo(BigDecimal.ZERO) > 0)
-                    .map(x -> x.getSettleMoney().divide(new BigDecimal(x.getOrderNum()))).reduce(BigDecimal.ZERO, BigDecimal::add);
+                    .map(x -> x.getSettleMoney().divide(new BigDecimal(x.getOrderNum()),BigDecimal.ROUND_CEILING)).reduce(BigDecimal.ZERO, BigDecimal::add);
             return money;
             return money;
         }
         }
 
 
@@ -534,6 +537,8 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                     BigDecimal goodsPriceDecimal = goodsPrice;
                     BigDecimal goodsPriceDecimal = goodsPrice;
                     //换算订单成本和盈亏
                     //换算订单成本和盈亏
                     TopCostTpItem topCostTpItem = tpItem;
                     TopCostTpItem topCostTpItem = tpItem;
+                    orderGoods.setDivideType(topCostTpItem.getDockType());
+                    orderGoods.setDivideRate(topCostTpItem.getDockValue());
                     if (ObjectUtil.isNotNull(topCostTpItem.getDockStatus()) && topCostTpItem.getDockStatus() == 1) {
                     if (ObjectUtil.isNotNull(topCostTpItem.getDockStatus()) && topCostTpItem.getDockStatus() == 1) {
                         //启用成本扣除项
                         //启用成本扣除项
                         switch (topCostTpItem.getDockType()) {
                         switch (topCostTpItem.getDockType()) {
@@ -563,6 +568,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                             break;
                             break;
                     }
                     }
                 }
                 }
+                orderGoods.setDivideMoney(cost);
                 costTotal = costTotal.add(cost);
                 costTotal = costTotal.add(cost);
             }
             }
 
 
@@ -806,6 +812,8 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                 BigDecimal goodsPriceDecimal = goodsPrice;
                 BigDecimal goodsPriceDecimal = goodsPrice;
                 //换算订单成本和盈亏
                 //换算订单成本和盈亏
                 TopCostTpItemVo topCostTpItem = tpItem;
                 TopCostTpItemVo topCostTpItem = tpItem;
+                orderGoods.setDivideType(topCostTpItem.getDockType());
+                orderGoods.setDivideRate(topCostTpItem.getDockValue());
                 if (ObjectUtil.isNotNull(topCostTpItem.getDockStatus()) && topCostTpItem.getDockStatus() == 1) {
                 if (ObjectUtil.isNotNull(topCostTpItem.getDockStatus()) && topCostTpItem.getDockStatus() == 1) {
                     //启用成本扣除项
                     //启用成本扣除项
                     switch (topCostTpItem.getDockType()) {
                     switch (topCostTpItem.getDockType()) {
@@ -835,6 +843,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                         break;
                         break;
                 }
                 }
             }
             }
+            orderGoods.setDivideMoney(cost);
             costTotal = costTotal.add(cost);
             costTotal = costTotal.add(cost);
         }
         }
         order.setOrderCost(costTotal);
         order.setOrderCost(costTotal);
@@ -896,6 +905,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
             BigDecimal brokerage = bo.getPretaxBrokerage().subtract(multiply);
             BigDecimal brokerage = bo.getPretaxBrokerage().subtract(multiply);
             order.setBrokerage(brokerage);
             order.setBrokerage(brokerage);
         }
         }
+        BigDecimal repairMoneyTotal = BigDecimal.ZERO;
         if (CollectionUtils.isNotEmpty(bo.getOrderGoodsList())) {
         if (CollectionUtils.isNotEmpty(bo.getOrderGoodsList())) {
             List<TopOldOrderGoods> add = new ArrayList<>();
             List<TopOldOrderGoods> add = new ArrayList<>();
             List<Long> signIds = new ArrayList<>();
             List<Long> signIds = new ArrayList<>();
@@ -916,6 +926,10 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                     default:
                     default:
                         break;
                         break;
                 }
                 }
+                //订单补款
+                if (ObjectUtils.isNotNull(orderGoods.getRepairMoney()) && orderGoods.getRepairMoney().compareTo(BigDecimal.ZERO) > 0){
+
+                }
             }
             }
             if (CollectionUtils.isNotEmpty(add)) {
             if (CollectionUtils.isNotEmpty(add)) {
                 topOrderGoodsService.saveBatch(add);
                 topOrderGoodsService.saveBatch(add);
@@ -1018,6 +1032,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
             userCount = 1;
             userCount = 1;
             if (CollectionUtils.isNotEmpty(list)) {
             if (CollectionUtils.isNotEmpty(list)) {
                 list.forEach(item -> {
                 list.forEach(item -> {
+                    item.setPretaxBrokerage(BigDecimal.ZERO);
                     item.setUserCount(1);
                     item.setUserCount(1);
                     item.setCheckStatusStr(item.getCheckStr(item.getCheckStatus()));
                     item.setCheckStatusStr(item.getCheckStr(item.getCheckStatus()));
                     //专业
                     //专业
@@ -1044,6 +1059,12 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                             item.setStudyStatus("未开始");
                             item.setStudyStatus("未开始");
                         }
                         }
                     }
                     }
+                    //分成模式
+                    if (ObjectUtils.isNotNull(item.getDivideType()) && item.getDivideType() == 1){
+                        item.setDivideRateStr(item.getDivideRate().multiply(new BigDecimal("100.00"))+"%");
+                    }else {
+                        item.setDivideRateStr(item.getDivideRate().toString());
+                    }
                 });
                 });
             }
             }
         } else {
         } else {
@@ -1060,6 +1081,10 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                 if (query.getOrderFrom() != 4){
                 if (query.getOrderFrom() != 4){
                     // 老系统查询学习状态
                     // 老系统查询学习状态
                     TopOldOrder order = getOne(new LambdaQueryWrapper<TopOldOrder>().eq(TopOldOrder::getOrderSn, query.getOrderSn()));
                     TopOldOrder order = getOne(new LambdaQueryWrapper<TopOldOrder>().eq(TopOldOrder::getOrderSn, query.getOrderSn()));
+                    BigDecimal bonus = BigDecimal.ZERO;
+                    if (ObjectUtils.isNotNull(order.getPretaxBrokerage()) && order.getPretaxBrokerage().compareTo(BigDecimal.ZERO) > 0){
+                        bonus = order.getPretaxBrokerage().divide(new BigDecimal(list.size()),BigDecimal.ROUND_CEILING);
+                    }
                     Map<String, String> params = new HashMap<>();
                     Map<String, String> params = new HashMap<>();
                     Long nowTime = DateUtils.getNowTime();
                     Long nowTime = DateUtils.getNowTime();
                     String sign = ToolsUtils.EncoderByMd5(query.getOrderSn() + nowTime.toString() + "pubilc2022");
                     String sign = ToolsUtils.EncoderByMd5(query.getOrderSn() + nowTime.toString() + "pubilc2022");
@@ -1077,10 +1102,20 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                         Object data = jsonObject.get("Data");
                         Object data = jsonObject.get("Data");
                         if (ObjectUtils.isNull(data)) {
                         if (ObjectUtils.isNull(data)) {
                             //data 为空
                             //data 为空
-                            list.forEach(x -> x.setStudyStatus("未开始"));
+                            for (TopOldOrderGoodsListVo x : list) {
+                                x.setPretaxBrokerage(bonus);
+                                x.setStudyStatus("未开始");
+                                //分成模式
+                                if (ObjectUtils.isNotNull(x.getDivideType()) && x.getDivideType() == 1){
+                                    x.setDivideRateStr(x.getDivideRate().multiply(new BigDecimal("100.00"))+"%");
+                                }else {
+                                    x.setDivideRateStr(x.getDivideRate().toString());
+                                }
+                            }
                         } else {
                         } else {
                             List<TopOldOrderStudyVo> studyVos = JSONArray.parseArray(JSONObject.toJSONString(data), TopOldOrderStudyVo.class);
                             List<TopOldOrderStudyVo> studyVos = JSONArray.parseArray(JSONObject.toJSONString(data), TopOldOrderStudyVo.class);
-                            list.forEach(item -> {
+                            for (TopOldOrderGoodsListVo item : list) {
+                                item.setPretaxBrokerage(bonus);
                                 item.setStudyStatus("未开始");
                                 item.setStudyStatus("未开始");
                                 TopOldOrderStudyVo studyVo = studyVos.stream().filter(x -> x.getUnderOrdeEnrollItemId().equals(item.getSignId())
                                 TopOldOrderStudyVo studyVo = studyVos.stream().filter(x -> x.getUnderOrdeEnrollItemId().equals(item.getSignId())
                                         && x.getIdNum().equals(item.getUserCard())).findFirst().orElse(null);
                                         && x.getIdNum().equals(item.getUserCard())).findFirst().orElse(null);
@@ -1093,7 +1128,13 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                                         item.setStudyStatus("已结束");
                                         item.setStudyStatus("已结束");
                                     }
                                     }
                                 }
                                 }
-                            });
+                                //分成模式
+                                if (ObjectUtils.isNotNull(item.getDivideType()) && item.getDivideType() == 1){
+                                    item.setDivideRateStr(item.getDivideRate().multiply(new BigDecimal("100.00"))+"%");
+                                }else {
+                                    item.setDivideRateStr(item.getDivideRate().toString());
+                                }
+                            }
                         }
                         }
                     } catch (IOException e) {
                     } catch (IOException e) {
                         log.error("旧系统订单学员学习情况接口请求错误" + respone);
                         log.error("旧系统订单学员学习情况接口请求错误" + respone);
@@ -3259,6 +3300,8 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                         BigDecimal goodsPriceDecimal = goodsPrice;
                         BigDecimal goodsPriceDecimal = goodsPrice;
                         //换算订单成本和盈亏
                         //换算订单成本和盈亏
                         TopCostTpItemVo topCostTpItem = tpItem;
                         TopCostTpItemVo topCostTpItem = tpItem;
+                        orderGoods.setDivideType(topCostTpItem.getDockType());
+                        orderGoods.setDivideRate(topCostTpItem.getDockValue());
                         if (ObjectUtil.isNotNull(topCostTpItem.getDockStatus()) && topCostTpItem.getDockStatus() == 1) {
                         if (ObjectUtil.isNotNull(topCostTpItem.getDockStatus()) && topCostTpItem.getDockStatus() == 1) {
                             //启用成本扣除项
                             //启用成本扣除项
                             switch (topCostTpItem.getDockType()) {
                             switch (topCostTpItem.getDockType()) {
@@ -3288,6 +3331,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                                 break;
                                 break;
                         }
                         }
                     }
                     }
+                    orderGoods.setDivideMoney(cost);
                     costTotal = costTotal.add(cost);
                     costTotal = costTotal.add(cost);
                 }
                 }
 
 
@@ -3404,6 +3448,8 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                         BigDecimal goodsPriceDecimal = goodsPrice;
                         BigDecimal goodsPriceDecimal = goodsPrice;
                         //换算订单成本和盈亏
                         //换算订单成本和盈亏
                         TopCostTpItemVo topCostTpItem = tpItem;
                         TopCostTpItemVo topCostTpItem = tpItem;
+                        orderGoods.setDivideType(topCostTpItem.getDockType());
+                        orderGoods.setDivideRate(topCostTpItem.getDockValue());
                         if (ObjectUtil.isNotNull(topCostTpItem.getDockStatus()) && topCostTpItem.getDockStatus() == 1) {
                         if (ObjectUtil.isNotNull(topCostTpItem.getDockStatus()) && topCostTpItem.getDockStatus() == 1) {
                             //启用成本扣除项
                             //启用成本扣除项
                             switch (topCostTpItem.getDockType()) {
                             switch (topCostTpItem.getDockType()) {
@@ -3433,6 +3479,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                                 break;
                                 break;
                         }
                         }
                     }
                     }
+                    orderGoods.setDivideMoney(cost);
                     costTotal = costTotal.add(cost);
                     costTotal = costTotal.add(cost);
                 }
                 }
                 BigDecimal cost = costTotal.add(brokerage);
                 BigDecimal cost = costTotal.add(brokerage);

+ 10 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/vo/TopOldOrderGoodsListVo.java

@@ -82,6 +82,16 @@ public class TopOldOrderGoodsListVo {
 	private String refundReason;
 	private String refundReason;
 	@ApiModelProperty("审核意见")
 	@ApiModelProperty("审核意见")
 	private String checkReason;
 	private String checkReason;
+	@ApiModelProperty("分成类型1百分比 2固定成本")
+	private Integer divideType;
+	@ApiModelProperty("分成比率(固定成本为固定值)")
+	private BigDecimal divideRate;
+	@ApiModelProperty("分成比率(固定成本为固定值)")
+	private String divideRateStr;
+	@ApiModelProperty("分成钱")
+	private BigDecimal divideMoney;
+	@ApiModelProperty("税前奖金")
+	private BigDecimal pretaxBrokerage;
 
 
 	private Long signId;
 	private Long signId;
 
 

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/wx/service/impl/WxPayServiceImpl.java

@@ -711,6 +711,8 @@ public class WxPayServiceImpl implements IWxPayService {
             }
             }
             //换算订单成本和盈亏
             //换算订单成本和盈亏
             TopCostTpItemVo topCostTpItem = tpItems.stream().findFirst().get();
             TopCostTpItemVo topCostTpItem = tpItems.stream().findFirst().get();
+            orderGoods.setDivideType(topCostTpItem.getDockType());
+            orderGoods.setDivideRate(topCostTpItem.getDockValue());
             BigDecimal divide = new BigDecimal("0.00");//分成
             BigDecimal divide = new BigDecimal("0.00");//分成
             BigDecimal bigDecimal = new BigDecimal("100");
             BigDecimal bigDecimal = new BigDecimal("100");
             if (topCostTpItem.getDockStatus() == 1){
             if (topCostTpItem.getDockStatus() == 1){

+ 2 - 2
zhongzheng-system/src/main/resources/mapper/modules/exam/ExamApplyMapper.xml

@@ -668,8 +668,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             (SELECT `name` FROM course_chapter WHERE chapter_id = usr.chapter_id) as chapter_name,
             (SELECT `name` FROM course_chapter WHERE chapter_id = usr.chapter_id) as chapter_name,
             (SELECT `name` FROM course_section WHERE section_id = usr.section_id) as section_name,
             (SELECT `name` FROM course_section WHERE section_id = usr.section_id) as section_name,
             (SELECT duration_time FROM course_section WHERE section_id = usr.section_id) as duration_time,
             (SELECT duration_time FROM course_section WHERE section_id = usr.section_id) as duration_time,
-            MIN(start_time) AS start_time,
-            MAX(end_time) AS end_time,
+            ( SELECT start_time FROM user_study_record WHERE order_goods_id = 5060 AND photo IS NOT NULL ORDER BY create_time LIMIT 1) AS start_time,
+	        ( SELECT end_time FROM user_study_record WHERE order_goods_id = 5060 AND `status` = 1 LIMIT 1) AS end_time,
             MAX(`status`) AS `status`,
             MAX(`status`) AS `status`,
             any_value(ip) AS ip
             any_value(ip) AS ip
         FROM
         FROM

+ 6 - 0
zhongzheng-system/src/main/resources/mapper/modules/order/OrderGoodsMapper.xml

@@ -814,6 +814,9 @@
         <result property="goodsRealPrice" column="goods_real_price"/>
         <result property="goodsRealPrice" column="goods_real_price"/>
         <result property="checkStatus" column="check_status"/>
         <result property="checkStatus" column="check_status"/>
         <result property="goodsYear" column="goods_year"/>
         <result property="goodsYear" column="goods_year"/>
+        <result property="divideType" column="divide_type"/>
+        <result property="divideRate" column="divide_rate"/>
+        <result property="divideMoney" column="divide_money"/>
     </resultMap>
     </resultMap>
 
 
     <select id="listByOrderSn" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderGoodsQuery" resultMap="getlist">
     <select id="listByOrderSn" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderGoodsQuery" resultMap="getlist">
@@ -831,6 +834,9 @@
             og.goods_price,
             og.goods_price,
             og.goods_real_price,
             og.goods_real_price,
             og.goods_year,
             og.goods_year,
+            og.divide_type,
+            og.divide_rate,
+            og.divide_money,
             1 as check_status
             1 as check_status
         FROM
         FROM
             order_goods og
             order_goods og

+ 6 - 0
zhongzheng-system/src/main/resources/mapper/modules/top/TopOldOrderGoodsMapper.xml

@@ -41,6 +41,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="signId" column="sign_id"/>
         <result property="signId" column="sign_id"/>
         <result property="checkStatus" column="check_status"/>
         <result property="checkStatus" column="check_status"/>
         <result property="goodsYear" column="goods_year"/>
         <result property="goodsYear" column="goods_year"/>
+        <result property="divideType" column="divide_type"/>
+        <result property="divideRate" column="divide_rate"/>
+        <result property="divideMoney" column="divide_money"/>
     </resultMap>
     </resultMap>
 
 
     <select id="getListByQuery" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderGoodsQuery" resultMap="getlist">
     <select id="getListByQuery" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderGoodsQuery" resultMap="getlist">
@@ -56,6 +59,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             goods_real_price,
             goods_real_price,
             goods_year,
             goods_year,
             sign_id,
             sign_id,
+            divide_type,
+            divide_rate,
+            divide_money,
             check_status
             check_status
         FROM
         FROM
             top_old_order_goods
             top_old_order_goods

+ 117 - 98
zhongzheng-system/src/main/resources/mapper/modules/top/TopOldOrderMapper.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper
 <!DOCTYPE mapper
-PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.zhongzheng.modules.top.goods.mapper.TopOldOrderMapper">
 <mapper namespace="com.zhongzheng.modules.top.goods.mapper.TopOldOrderMapper">
 
 
     <resultMap type="com.zhongzheng.modules.top.goods.domain.TopOldOrder" id="TopOrderResult">
     <resultMap type="com.zhongzheng.modules.top.goods.domain.TopOldOrder" id="TopOrderResult">
@@ -41,49 +41,52 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="buyTime" column="buy_time"/>
         <result property="buyTime" column="buy_time"/>
     </resultMap>
     </resultMap>
 
 
-    <select id="queryList" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo" resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
+    <select id="queryList" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo"
+            resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
         SELECT
         SELECT
-            vto.*
+        vto.*
         FROM
         FROM
-                ( SELECT DISTINCT order_sn
-                <if test="businessFullName != null and businessFullName != '' and ((userCard == null or userCard == '') and (userName == null or userName == ''))">
-                    FROM `v_top_order_business`  where INSTR( business_full_name,#{businessFullName} ) > 0
-                </if>
-                <if test="((userCard != null and userCard != '') or (userName != null and userName != '')) and (businessFullName == null or businessFullName == '')">
-                    FROM `v_top_order_card`  where 1=1
-                    <if test="userCard != null and userCard != ''">
-                        AND user_card = #{userCard,typeHandler=com.zhongzheng.common.type.EncryptHandler}
-                    </if>
-                    <if test="userName != null and userName != ''">
-                        AND user_name LIKE CONCAT( '%', #{userName}, '%' )
-                    </if>
-                </if>
-                <if test="((userCard != null and userCard != '') or (userName != null and userName != '')) and businessFullName != null and businessFullName != ''">
-                    FROM (
-                    SELECT
-                    DISTINCT order_sn
-                    FROM
-                    ( SELECT order_sn FROM v_top_order_business WHERE INSTR( business_full_name,#{businessFullName} ) > 0  UNION ALL SELECT order_sn FROM v_top_order_card
-                    WHERE 1 = 1
-                    <if test="userCard != null and userCard != ''">
-                        AND user_card = #{userCard,typeHandler=com.zhongzheng.common.type.EncryptHandler}
-                    </if>
-                    <if test="userName != null and userName != ''">
-                        AND user_name LIKE CONCAT( '%', #{userName}, '%' )
-                    </if>
-                        ) b
-                    ) m
-                </if>
-                <if test="(userCard == null or userCard == '') and (businessFullName == null or businessFullName == '') and (userName == null or userName == '')">
-                    FROM (
-                    SELECT
-                    DISTINCT order_sn
-                    FROM
-                    ( SELECT order_sn FROM v_top_order_business UNION ALL SELECT order_sn FROM v_top_order_card) b
-                    ) m
-                </if>
-                 ) a
-                    LEFT JOIN v_top_order vto ON a.order_sn = vto.order_sn
+        <if test="businessFullName != null and businessFullName != '' and ((userCard == null or userCard == '') and (userName == null or userName == ''))">
+            ( SELECT DISTINCT order_sn
+            FROM `v_top_order_business` where INSTR( business_full_name,#{businessFullName} ) > 0
+            ) a
+            LEFT JOIN v_top_order vto ON a.order_sn = vto.order_sn
+        </if>
+        <if test="((userCard != null and userCard != '') or (userName != null and userName != '')) and (businessFullName == null or businessFullName == '')">
+            ( SELECT DISTINCT order_sn
+            FROM `v_top_order_card` where 1=1
+            <if test="userCard != null and userCard != ''">
+                AND user_card = #{userCard,typeHandler=com.zhongzheng.common.type.EncryptHandler}
+            </if>
+            <if test="userName != null and userName != ''">
+                AND user_name LIKE CONCAT( '%', #{userName}, '%' )
+            </if>
+            ) a
+            LEFT JOIN v_top_order vto ON a.order_sn = vto.order_sn
+        </if>
+        <if test="((userCard != null and userCard != '') or (userName != null and userName != '')) and businessFullName != null and businessFullName != ''">
+            ( SELECT DISTINCT order_sn
+            FROM (
+            SELECT
+            DISTINCT order_sn
+            FROM
+            ( SELECT order_sn FROM v_top_order_business WHERE INSTR( business_full_name,#{businessFullName} ) > 0 UNION
+            ALL SELECT order_sn FROM v_top_order_card
+            WHERE 1 = 1
+            <if test="userCard != null and userCard != ''">
+                AND user_card = #{userCard,typeHandler=com.zhongzheng.common.type.EncryptHandler}
+            </if>
+            <if test="userName != null and userName != ''">
+                AND user_name LIKE CONCAT( '%', #{userName}, '%' )
+            </if>
+            ) b
+            ) m
+            ) a
+            LEFT JOIN v_top_order vto ON a.order_sn = vto.order_sn
+        </if>
+        <if test="(userCard == null or userCard == '') and (businessFullName == null or businessFullName == '') and (userName == null or userName == '')">
+            v_top_order vto
+        </if>
         WHERE vto.`status` in (0,1)
         WHERE vto.`status` in (0,1)
         <if test="operationType != null">
         <if test="operationType != null">
             AND vto.operation_type = #{operationType}
             AND vto.operation_type = #{operationType}
@@ -233,14 +236,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             OR ot.create_no LIKE CONCAT( '%', #{keyword}, '%' )
             OR ot.create_no LIKE CONCAT( '%', #{keyword}, '%' )
             OR ot.purchase_org LIKE CONCAT( '%', #{keyword}, '%' ))
             OR ot.purchase_org LIKE CONCAT( '%', #{keyword}, '%' ))
         </if>
         </if>
-            ) + (SELECT
+        ) + (SELECT
         COUNT( DISTINCT o.order_sn ) AS num
         COUNT( DISTINCT o.order_sn ) AS num
         FROM
         FROM
         `order` o
         `order` o
         LEFT JOIN order_goods og ON o.order_sn = og.order_sn
         LEFT JOIN order_goods og ON o.order_sn = og.order_sn
         LEFT JOIN `user` u ON o.user_id = u.user_id
         LEFT JOIN `user` u ON o.user_id = u.user_id
         WHERE
         WHERE
-        1 = 1 AND o.`status` IN  (0,1)
+        1 = 1 AND o.`status` IN (0,1)
         AND ( `o`.`order_type` != 4 )
         AND ( `o`.`order_type` != 4 )
         AND (
         AND (
         isnull( `o`.`input_order_sn` )
         isnull( `o`.`input_order_sn` )
@@ -250,7 +253,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="businessFullName != null and businessFullName != ''">
         <if test="businessFullName != null and businessFullName != ''">
             AND (
             AND (
             SELECT
             SELECT
-             COUNT(g.goods_id)
+            COUNT(g.goods_id)
             FROM
             FROM
             goods g
             goods g
             LEFT JOIN course_education_type cet ON g.education_type_id = cet.id
             LEFT JOIN course_education_type cet ON g.education_type_id = cet.id
@@ -258,7 +261,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             LEFT JOIN course_business cb ON g.business_id = cb.id
             LEFT JOIN course_business cb ON g.business_id = cb.id
             WHERE
             WHERE
             og.goods_id = g.goods_id
             og.goods_id = g.goods_id
-              AND
+            AND
             INSTR( CONCAT('学校业务', cet.education_name, cb.business_name, cpt.project_name),#{businessFullName}) > 0) > 0
             INSTR( CONCAT('学校业务', cet.education_name, cb.business_name, cpt.project_name),#{businessFullName}) > 0) > 0
         </if>
         </if>
         <if test="userCard != null and userCard != ''">
         <if test="userCard != null and userCard != ''">
@@ -330,29 +333,32 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="keyword != null and keyword != ''">
         <if test="keyword != null and keyword != ''">
             AND o.order_sn LIKE CONCAT( '%', #{keyword}, '%' )
             AND o.order_sn LIKE CONCAT( '%', #{keyword}, '%' )
         </if>
         </if>
-                )) as number
+        )) as number
     </select>
     </select>
 
 
-    <select id="queryById" parameterType="java.lang.String" resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
-        SELECT * FROM v_top_order WHERE order_sn = #{orderSn}
+    <select id="queryById" parameterType="java.lang.String"
+            resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
+        SELECT *
+        FROM v_top_order
+        WHERE order_sn = #{orderSn}
     </select>
     </select>
 
 
     <select id="queryBusinessBySn" parameterType="java.lang.String" resultType="java.lang.String">
     <select id="queryBusinessBySn" parameterType="java.lang.String" resultType="java.lang.String">
-        SELECT DISTINCT business_name FROM v_top_order_business WHERE order_sn = #{orderSn}
+        SELECT DISTINCT business_name
+        FROM v_top_order_business
+        WHERE order_sn = #{orderSn}
     </select>
     </select>
 
 
     <select id="queryBusinessFullNameBySn" parameterType="java.lang.String" resultType="java.lang.String">
     <select id="queryBusinessFullNameBySn" parameterType="java.lang.String" resultType="java.lang.String">
-        SELECT
-            DISTINCT business_full_name
-        FROM
-            top_old_order_goods
-        WHERE
-            order_sn = #{orderSn}
+        SELECT DISTINCT business_full_name
+        FROM top_old_order_goods
+        WHERE order_sn = #{orderSn}
           AND `status` = 1
           AND `status` = 1
           AND check_status = 1
           AND check_status = 1
     </select>
     </select>
 
 
-    <select id="queryByOrderSns" parameterType="java.lang.String" resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
+    <select id="queryByOrderSns" parameterType="java.lang.String"
+            resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
         SELECT * FROM v_top_order WHERE 1 =1
         SELECT * FROM v_top_order WHERE 1 =1
         <if test="orderSnList != null and orderSnList.size()!=0 ">
         <if test="orderSnList != null and orderSnList.size()!=0 ">
             AND order_sn in
             AND order_sn in
@@ -362,7 +368,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </if>
         </if>
     </select>
     </select>
 
 
-    <select id="queryReceiveUnSum" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo" resultType="long">
+    <select id="queryReceiveUnSum" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo"
+            resultType="long">
         SELECT
         SELECT
         IFNULL(sum(
         IFNULL(sum(
         too.order_uncollected),0)
         too.order_uncollected),0)
@@ -404,21 +411,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         ORDER BY too.buy_time DESC
         ORDER BY too.buy_time DESC
     </select>
     </select>
 
 
-    <select id="queryReceiveList" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo" resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
+    <select id="queryReceiveList" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo"
+            resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
         SELECT
         SELECT
-            too.*,
-            st.tenant_name,
-            rn.id as note_id,
-            rn.note_type,
-            rn.day_time,
-            rn.week_time,
-            rn.month_time,
-            rn.last_time,
-            rn.exceed_type
+        too.*,
+        st.tenant_name,
+        rn.id as note_id,
+        rn.note_type,
+        rn.day_time,
+        rn.week_time,
+        rn.month_time,
+        rn.last_time,
+        rn.exceed_type
         FROM
         FROM
-            top_old_order too
-                LEFT JOIN sys_tenant st ON too.tenant_id = st.tenant_id
-                LEFT JOIN top_order_rec_note rn ON too.tenant_id = rn.tenant_id and too.order_sn = rn.order_sn
+        top_old_order too
+        LEFT JOIN sys_tenant st ON too.tenant_id = st.tenant_id
+        LEFT JOIN top_order_rec_note rn ON too.tenant_id = rn.tenant_id and too.order_sn = rn.order_sn
         where too.check_status=1 AND too.order_uncollected >0
         where too.check_status=1 AND too.order_uncollected >0
         <if test="tenantId != null and tenantId != ''">
         <if test="tenantId != null and tenantId != ''">
             AND too.tenant_id = #{tenantId}
             AND too.tenant_id = #{tenantId}
@@ -441,7 +449,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="badBill != null and badBill == 1 and badBillList != null and badBillList.size()!=0 ">
         <if test="badBill != null and badBill == 1 and badBillList != null and badBillList.size()!=0 ">
             AND
             AND
             <foreach collection="badBillList" item="item" index="index" open="(" close=")" separator="or">
             <foreach collection="badBillList" item="item" index="index" open="(" close=")" separator="or">
-               (too.check_time BETWEEN #{item.startTime} and #{item.endTime})
+                (too.check_time BETWEEN #{item.startTime} and #{item.endTime})
             </foreach>
             </foreach>
         </if>
         </if>
         <if test="badBill != null and badBill == 2 and badBillList != null and badBillList.size()!=0 ">
         <if test="badBill != null and badBill == 2 and badBillList != null and badBillList.size()!=0 ">
@@ -454,7 +462,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
     </select>
 
 
 
 
-    <select id="queryDivSellerList" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo" resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
+    <select id="queryDivSellerList" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo"
+            resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
         SELECT
         SELECT
         too.*,
         too.*,
         st.tenant_name,
         st.tenant_name,
@@ -492,7 +501,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         ORDER BY too.order_id DESC
         ORDER BY too.order_id DESC
     </select>
     </select>
 
 
-    <select id="queryTenantList" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo" resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
+    <select id="queryTenantList" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo"
+            resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
         SELECT
         SELECT
         too.*,
         too.*,
         st.tenant_name,
         st.tenant_name,
@@ -533,42 +543,49 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         ORDER BY too.order_id DESC
         ORDER BY too.order_id DESC
     </select>
     </select>
 
 
-    <select id="tenantMoneyTotal" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo" resultType="BigDecimal">
-        SELECT
-            IFNULL( SUM( too.divide_company_money ), 0 )
-        FROM
-            v_top_order too
-        WHERE
-            too.divide_model = 1
+    <select id="tenantMoneyTotal" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo"
+            resultType="BigDecimal">
+        SELECT IFNULL(SUM(too.divide_company_money), 0)
+        FROM v_top_order too
+        WHERE too.divide_model = 1
           AND too.divide_status = 5
           AND too.divide_status = 5
     </select>
     </select>
-    <select id="tenantSellerTotal" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo" resultType="BigDecimal">
-        SELECT
-            IFNULL( SUM( too.divide_seller_money ), 0 )
-        FROM
-            v_top_order too
-        WHERE
-            too.divide_model = 2
+    <select id="tenantSellerTotal" parameterType="com.zhongzheng.modules.top.goods.bo.TopOldOrderQueryBo"
+            resultType="BigDecimal">
+        SELECT IFNULL(SUM(too.divide_seller_money), 0)
+        FROM v_top_order too
+        WHERE too.divide_model = 2
           AND too.divide_status = 5
           AND too.divide_status = 5
     </select>
     </select>
 
 
     <select id="queryListAll" resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
     <select id="queryListAll" resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderVo">
-        SELECT * FROM v_top_order
+        SELECT *
+        FROM v_top_order
     </select>
     </select>
 
 
-    <select id="getOrderBySn" parameterType="java.lang.String" resultType="com.zhongzheng.modules.top.goods.domain.TopOldOrder">
-        SELECT * FROM v_top_order WHERE order_sn = #{orderSn}
+    <select id="getOrderBySn" parameterType="java.lang.String"
+            resultType="com.zhongzheng.modules.top.goods.domain.TopOldOrder">
+        SELECT *
+        FROM v_top_order
+        WHERE order_sn = #{orderSn}
     </select>
     </select>
 
 
-    <select id="logList" parameterType="com.zhongzheng.modules.top.financial.bo.TopOrderLogQueryBo" resultType="com.zhongzheng.modules.top.financial.vo.TopOrderLogVo">
-        SELECT * FROM top_order_log WHERE order_sn = #{orderSn}
+    <select id="logList" parameterType="com.zhongzheng.modules.top.financial.bo.TopOrderLogQueryBo"
+            resultType="com.zhongzheng.modules.top.financial.vo.TopOrderLogVo">
+        SELECT *
+        FROM top_order_log
+        WHERE order_sn = #{orderSn}
     </select>
     </select>
 
 
-    <select id="getRefundOrder" parameterType="java.lang.String" resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderRefundVo">
-        SELECT * FROM v_top_order_refund WHERE order_sn = #{orderSn}
+    <select id="getRefundOrder" parameterType="java.lang.String"
+            resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderRefundVo">
+        SELECT *
+        FROM v_top_order_refund
+        WHERE order_sn = #{orderSn}
     </select>
     </select>
 
 
-    <select id="getRefundOrderByBo" parameterType="com.zhongzheng.modules.top.financial.bo.RefundOrderBo" resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderRefundVo">
+    <select id="getRefundOrderByBo" parameterType="com.zhongzheng.modules.top.financial.bo.RefundOrderBo"
+            resultType="com.zhongzheng.modules.top.goods.vo.TopOldOrderRefundVo">
         SELECT * FROM v_top_order_refund WHERE order_sn = #{orderSn} AND status = 1
         SELECT * FROM v_top_order_refund WHERE order_sn = #{orderSn} AND status = 1
         <if test="periodStatus != null and periodStatus != ''">
         <if test="periodStatus != null and periodStatus != ''">
             AND period_status = #{periodStatus}
             AND period_status = #{periodStatus}
@@ -576,7 +593,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
     </select>
 
 
     <select id="getOrderSnByBusiness" parameterType="java.lang.String" resultType="java.lang.String">
     <select id="getOrderSnByBusiness" parameterType="java.lang.String" resultType="java.lang.String">
-        SELECT DISTINCT order_sn FROM v_top_order_business WHERE INSTR(business_full_name,#{businessName}) > 0
+        SELECT DISTINCT order_sn
+        FROM v_top_order_business
+        WHERE INSTR(business_full_name, #{businessName}) > 0
     </select>
     </select>
 
 
 </mapper>
 </mapper>