he2802 1 год назад
Родитель
Сommit
279d043780

+ 0 - 1
zhongzheng-framework/src/main/java/com/zhongzheng/framework/web/service/UserServiceImpl.java

@@ -1717,7 +1717,6 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
         return null;
     }
 
-
     @Override
     public Map<String, Object> accountLogin(UserAppAccountLoginBo bo) {
         if(Validator.isEmpty(bo.getAccount())){

+ 19 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/QuestionChapterJsonBo.java

@@ -0,0 +1,19 @@
+package com.zhongzheng.modules.goods.bo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author yangdamao
+ * @date 2023年11月28日 9:22
+ */
+@Data
+public class QuestionChapterJsonBo implements Serializable {
+
+    private String 章序号;
+
+    private String 章名;
+
+    private QuestionDetailJsonBo 章内容;
+}

+ 24 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/QuestionContentJsonBo.java

@@ -0,0 +1,24 @@
+package com.zhongzheng.modules.goods.bo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author yangdamao
+ * @date 2023年11月28日 9:22
+ */
+@Data
+public class QuestionContentJsonBo implements Serializable {
+
+    private String 题目序号;
+
+    private String 标题;
+
+    private List<String> 选项;
+
+    private String 答案;
+
+    private String 解析;
+}

+ 19 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/QuestionDetailJsonBo.java

@@ -0,0 +1,19 @@
+package com.zhongzheng.modules.goods.bo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author yangdamao
+ * @date 2023年11月28日 9:22
+ */
+@Data
+public class QuestionDetailJsonBo implements Serializable {
+
+    private String 题目类型;
+
+    private String 题目类型序号;
+
+    private QuestionContentJsonBo 题目内容;
+}

+ 17 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/QuestionJsonBo.java

@@ -0,0 +1,17 @@
+package com.zhongzheng.modules.goods.bo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author yangdamao
+ * @date 2023年11月28日 9:22
+ */
+@Data
+public class QuestionJsonBo implements Serializable {
+
+    private String 书标题;
+
+    private QuestionModuleJsonBo 书内容;
+}

+ 19 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/bo/QuestionModuleJsonBo.java

@@ -0,0 +1,19 @@
+package com.zhongzheng.modules.goods.bo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author yangdamao
+ * @date 2023年11月28日 9:22
+ */
+@Data
+public class QuestionModuleJsonBo implements Serializable {
+
+    private String 模块序号;
+
+    private String 模块名;
+
+    private QuestionChapterJsonBo 模块内容;
+}

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

@@ -1588,7 +1588,15 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
         if (bo.getCheckStatus() == 1 && StringUtils.isNotBlank(oldOrder.getCostJson())) {
             recalculateCost(oldOrder.getCostJson(), oldOrder);
         }
-
+        //订单补款重置
+        List<TopOldOrderGoods> oldOrderGoods = topOrderGoodsService.
+                list(new LambdaQueryWrapper<TopOldOrderGoods>()
+                        .eq(TopOldOrderGoods::getCheckStatus, 1)
+                        .eq(TopOldOrderGoods::getOrderSn, bo.getOrderSn()));
+        if (CollectionUtils.isNotEmpty(oldOrderGoods)){
+            BigDecimal reduce = oldOrderGoods.stream().filter(x -> ObjectUtils.isNotNull(x.getRepairMoney())).map(TopOldOrderGoods::getRepairMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
+            oldOrder.setRepairMoneyTotal(reduce);
+        }
         updateById(oldOrder);
         // 订单审核通知业务系统
         List<CheckOrderStudentDetailBo> studentDetailBos = list.stream().map(item -> {
@@ -2144,47 +2152,19 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
             //底单在新系统
             orderGoodsList.forEach(item -> {
                 business.add(item.getBusinessFullName());
-                TopOrderGoodsUpVo topOrderGoodsUpVo = BeanUtil.toBean(item, TopOrderGoodsUpVo.class);
-                topOrderGoodsUpVo.setUserCard(EncryptHandler.decrypt(item.getUserCard()));
-                User user = userService.getByCardNoTenant(EncryptHandler.decrypt(item.getUserCard()));
-                if (ObjectUtils.isNotNull(user)){
-                    Order orderOne = orderService.getOne(new LambdaQueryWrapper<Order>()
-                            .eq(Order::getInputOrderSn, orderVo.getInputOrderSn())
-                            .eq(Order::getUserId,user.getUserId())
-                            .last("limit 1"));
-                    if (ObjectUtils.isNotNull(orderOne)){
-                        List<OrderGoods> goodsList = orderGoodsService.list(new LambdaQueryWrapper<OrderGoods>()
-                                .eq(OrderGoods::getOrderSn, orderOne.getOrderSn())
-                                .eq(OrderGoods::getGoodsId, item.getGoodsId())
-                                .ne(OrderGoods::getRefundStatus,2)
-                                .ne(OrderGoods::getPayStatus,1));
-                        if (CollectionUtils.isNotEmpty(goodsList)){
-                            goodsList.forEach(goods -> {
-                                Goods goodsById = goodsService.getById(goods.getGoodsId());
-                                //学习状态
-                                if (ObjectUtils.isNotNull(goodsById.getGoodsType()) && ObjectUtils.isNotNull(goods.getGradeId()) && goodsById.getGoodsType() == 1) {
-                                    int count = userPeriodService.count(new LambdaQueryWrapper<UserPeriod>()
-                                            .eq(UserPeriod::getUserId, user.getUserId())
-                                            .eq(UserPeriod::getGradeId, goods.getGradeId()));
-                                    if (count > 0) {
-                                        //学完/未学完
-                                        ClassGradeUser classGradeUser = classGradeUserService.getOne(new LambdaQueryWrapper<ClassGradeUser>()
-                                                .eq(ClassGradeUser::getUserId, user.getUserId())
-                                                .eq(ClassGradeUser::getGradeId, goods.getGradeId())
-                                                .last("limit 1"));
-                                        topOrderGoodsUpVo.setStudyStatus(
-                                                ObjectUtils.isNotNull(classGradeUser.getFinishStatus()) && classGradeUser.getFinishStatus() == 1 ? "已结束" : "学习中");
-                                    } else {
-                                        topOrderGoodsUpVo.setStudyStatus("未开始");
-                                    }
-                                }
-                            });
-
-                        }
+                goodsUpVos.add(getGoodsUpVo(item,orderVo.getInputOrderSn()));
+                //获取修改前的数据
+                List<TopOldOrderGoods> list = topOrderGoodsService.list(new LambdaQueryWrapper<TopOldOrderGoods>()
+                        .eq(TopOldOrderGoods::getOrderSn, item.getOrderSn())
+                        .eq(TopOldOrderGoods::getSignId, item.getRelSignId())
+                        .eq(TopOldOrderGoods::getCheckStatus, -1));
+                if (CollectionUtils.isNotEmpty(list)){
+                    for (TopOldOrderGoods goods : list) {
+                        business.add(item.getBusinessFullName());
+                        goodsUpVos.add(getGoodsUpVo(goods,orderVo.getInputOrderSn()));
                     }
                 }
             });
-
         }
 
         topOldOrderUpVo.setBusinessName(business.stream().collect(Collectors.joining(",")));
@@ -2192,6 +2172,49 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
         return topOldOrderUpVo;
     }
 
+    private TopOrderGoodsUpVo getGoodsUpVo(TopOldOrderGoods item,String inputOrderSn){
+        TopOrderGoodsUpVo topOrderGoodsUpVo = BeanUtil.toBean(item, TopOrderGoodsUpVo.class);
+        topOrderGoodsUpVo.setUserCard(EncryptHandler.decrypt(item.getUserCard()));
+        User user = userService.getByCardNoTenant(EncryptHandler.decrypt(item.getUserCard()));
+        if (ObjectUtils.isNotNull(user)){
+            Order orderOne = orderService.getOne(new LambdaQueryWrapper<Order>()
+                    .eq(Order::getInputOrderSn, inputOrderSn)
+                    .eq(Order::getUserId,user.getUserId())
+                    .last("limit 1"));
+            if (ObjectUtils.isNotNull(orderOne)){
+                List<OrderGoods> goodsList = orderGoodsService.list(new LambdaQueryWrapper<OrderGoods>()
+                        .eq(OrderGoods::getOrderSn, orderOne.getOrderSn())
+                        .eq(OrderGoods::getGoodsId, item.getGoodsId())
+                        .ne(OrderGoods::getRefundStatus,2)
+                        .ne(OrderGoods::getPayStatus,1));
+                if (CollectionUtils.isNotEmpty(goodsList)){
+                    goodsList.forEach(goods -> {
+                        Goods goodsById = goodsService.getById(goods.getGoodsId());
+                        //学习状态
+                        if (ObjectUtils.isNotNull(goodsById.getGoodsType()) && ObjectUtils.isNotNull(goods.getGradeId()) && goodsById.getGoodsType() == 1) {
+                            int count = userPeriodService.count(new LambdaQueryWrapper<UserPeriod>()
+                                    .eq(UserPeriod::getUserId, user.getUserId())
+                                    .eq(UserPeriod::getGradeId, goods.getGradeId()));
+                            if (count > 0) {
+                                //学完/未学完
+                                ClassGradeUser classGradeUser = classGradeUserService.getOne(new LambdaQueryWrapper<ClassGradeUser>()
+                                        .eq(ClassGradeUser::getUserId, user.getUserId())
+                                        .eq(ClassGradeUser::getGradeId, goods.getGradeId())
+                                        .last("limit 1"));
+                                topOrderGoodsUpVo.setStudyStatus(
+                                        ObjectUtils.isNotNull(classGradeUser.getFinishStatus()) && classGradeUser.getFinishStatus() == 1 ? "已结束" : "学习中");
+                            } else {
+                                topOrderGoodsUpVo.setStudyStatus("未开始");
+                            }
+                        }
+                    });
+
+                }
+            }
+        }
+        return topOrderGoodsUpVo;
+    }
+
     @Override
     public List<TopOldOrderInvoiceVo> getOrderInvoiceList(String orderSn) {
         //查询视图 v_top_order
@@ -3086,7 +3109,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                 totalVo = JSONObject.parseObject(JSONObject.toJSONString(data), TopSharedCustomerTotalVo.class);
                 totalVo.setHbDealRate(totalVo.getHbDealRate().multiply(cardinal));
                 totalVo.setTbDealRate(totalVo.getTbDealRate().multiply(cardinal));
-                totalVo.setTbPriceRate(totalVo.getOrderTotalPrice().multiply(cardinal));
+                totalVo.setTbPriceRate(totalVo.getTbPriceRate().multiply(cardinal));
                 totalVo.setConverDealRate(totalVo.getConverDealRate().multiply(cardinal));
                 totalVo.setHbPriceRate(totalVo.getHbPriceRate().multiply(cardinal));
             }
@@ -5335,8 +5358,6 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
         BigDecimal cost = vos.stream().filter(x -> ObjectUtils.isNotNull(x.getOrderCost())).map(TopOldOrderVo::getOrderCost).reduce(BigDecimal.ZERO, BigDecimal::add);
         //订单学员数
         Set<String> userCard = new HashSet<>();
-        Map<Integer,List<TopOldOrderVo>> orderMap = new HashMap<>();
-        List<TopOldOrderVo> orderSn = new ArrayList<>();
         Set<String> userCheckOrderSn = new HashSet<>();
         Integer limit = (vos.size() + 1000 - 1) / 100;
         List<List<TopOldOrderVo>> orderVoLists = Stream.iterate(0, n -> n + 1).limit(limit).parallel()
@@ -6101,6 +6122,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                 params.put("stamp", nowTime.toString());
                 params.put("sign", sign);
                 params.put("orderSn", bo.getOrderSn());
+                params.put("auditstatus", "1");
                 String respone = "";
                 try {
                     respone = HttpUtils.postFormBody(FINISH_ORDER, params);

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/vo/TopOldOrderVo.java

@@ -267,6 +267,8 @@ public class TopOldOrderVo {
 	/** 账款结清时间 */
 	private Long creditTime;
 
+	@ApiModelProperty("补款金额")
+	private BigDecimal repairMoneyTotal;
 
 	@ApiModelProperty("是否坏账")
 	private boolean badBill;

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserPeriodImportBo.java

@@ -58,6 +58,6 @@ public class UserPeriodImportBo implements Serializable {
     @Excel(name = "联系电话")
     private String unitTel;
 
-    @com.zhongzheng.common.annotation.Excel(name = "失败原因")
+    @Excel(name = "失败原因")
     private String cause;
 }