yangdamao il y a 1 mois
Parent
commit
da82ca95d5

+ 13 - 4
zhongzheng-admin/src/main/java/com/zhongzheng/controller/common/CommonController.java

@@ -66,13 +66,11 @@ import com.zhongzheng.modules.grade.vo.SyncGoodsExport;
 import com.zhongzheng.modules.order.bo.*;
 import com.zhongzheng.modules.order.domain.Order;
 import com.zhongzheng.modules.order.domain.OrderGoods;
+import com.zhongzheng.modules.order.service.IOrderBusinessConfigService;
 import com.zhongzheng.modules.order.service.IOrderGoodsRefundService;
 import com.zhongzheng.modules.order.service.IOrderGoodsService;
 import com.zhongzheng.modules.order.service.IOrderService;
-import com.zhongzheng.modules.order.vo.CommonGradeVo;
-import com.zhongzheng.modules.order.vo.CommonOrderInfoVo;
-import com.zhongzheng.modules.order.vo.OrderGoodsVo;
-import com.zhongzheng.modules.order.vo.UserStudyConditionVo;
+import com.zhongzheng.modules.order.vo.*;
 import com.zhongzheng.modules.sdk.service.IZsBankService;
 import com.zhongzheng.modules.system.bo.SysTenantAdminBo;
 import com.zhongzheng.modules.system.bo.SysTenantAdminOldBo;
@@ -187,6 +185,9 @@ public class CommonController extends BaseController {
     private IMajorService iMajorService;
     @Autowired
     private  IFaceOcrService iFaceService;
+
+    @Autowired
+    private IOrderBusinessConfigService iOrderBusinessConfigService;
     /**
      * 通用下载请求
      *
@@ -1002,4 +1003,12 @@ public class CommonController extends BaseController {
         return AjaxResult.success();
     }
 
+    @ApiOperation("查询录单配置列表")
+    @PostMapping("/common/free/business/config")
+    public TableDataInfo<OrderBusinessConfigVo> getBusinessConfigList(@RequestBody OrderBusinessConfigQueryBo bo) {
+        startPage();
+        List<OrderBusinessConfigVo> list = iOrderBusinessConfigService.getBusinessConfigList(bo);
+        return getDataTable(list);
+    }
+
 }

+ 1 - 1
zhongzheng-admin/src/main/java/com/zhongzheng/controller/order/OrderBusinessConfigGoodsController.java

@@ -50,7 +50,7 @@ public class OrderBusinessConfigGoodsController extends BaseController {
     @GetMapping("/list")
     public TableDataInfo<OrderBusinessConfigGoodsVo> list(OrderBusinessConfigGoodsQueryBo bo) {
         startPage();
-        List<OrderBusinessConfigGoodsVo> list = iOrderBusinessConfigGoodsService.selectList(bo);
+        List<OrderBusinessConfigGoodsVo> list = iOrderBusinessConfigGoodsService.selectListVo(bo);
         return getDataTable(list);
     }
 

+ 1 - 1
zhongzheng-api/src/main/java/com/zhongzheng/controller/order/OrderController.java

@@ -268,7 +268,7 @@ public class OrderController extends BaseController {
     @GetMapping("/business/goods/list")
     public TableDataInfo<OrderBusinessConfigGoodsVo> list(OrderBusinessConfigGoodsQueryBo bo) {
         startPage();
-        List<OrderBusinessConfigGoodsVo> list = iOrderBusinessConfigGoodsService.selectList(bo);
+        List<OrderBusinessConfigGoodsVo> list = iOrderBusinessConfigGoodsService.selectListVo(bo);
         return getDataTable(list);
     }
 

+ 29 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/vo/GoodsBusinessVo.java

@@ -0,0 +1,29 @@
+package com.zhongzheng.modules.goods.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+@Data
+public class GoodsBusinessVo implements Serializable {
+
+    @ApiModelProperty("商品ID")
+    private Long goodsId;
+
+    @ApiModelProperty("商品类型 1视频2题库 3补考 4前培 ")
+    private Integer goodsType;
+
+    @ApiModelProperty("所属专业ID")
+    private Long majorId;
+
+    @ApiModelProperty("所属专业")
+    private String majorName;
+
+    @ApiModelProperty("商品名称")
+    private String goodsName;
+
+    @ApiModelProperty("标准价格")
+    private BigDecimal standPrice;
+}

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/mapper/OrderBusinessConfigGoodsMapper.java

@@ -17,7 +17,7 @@ import java.util.List;
  * @date 2022-04-01
  */
 public interface OrderBusinessConfigGoodsMapper extends BaseMapper<OrderBusinessConfigGoods> {
-    List<OrderBusinessConfigGoodsVo> selectList(OrderBusinessConfigGoodsQueryBo bo);
+    List<OrderBusinessConfigGoodsVo> selectListVo(OrderBusinessConfigGoodsQueryBo bo);
 
     List<OrderBusinessConfigGoodsVo> selectMergeList(OrderBusinessConfigGoodsQueryBo bo);
 }

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/IOrderBusinessConfigGoodsService.java

@@ -50,7 +50,7 @@ public interface IOrderBusinessConfigGoodsService extends IService<OrderBusiness
 	 */
 	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
 
-	List<OrderBusinessConfigGoodsVo> selectList(OrderBusinessConfigGoodsQueryBo bo);
+	List<OrderBusinessConfigGoodsVo> selectListVo(OrderBusinessConfigGoodsQueryBo bo);
 
 	List<OrderBusinessConfigGoodsVo> selectMergeList(OrderBusinessConfigGoodsQueryBo bo);
 }

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

@@ -55,4 +55,6 @@ public interface IOrderBusinessConfigService extends IService<OrderBusinessConfi
 	 * @return
 	 */
 	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+
+    List<OrderBusinessConfigVo> getBusinessConfigList(OrderBusinessConfigQueryBo bo);
 }

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

@@ -110,8 +110,8 @@ public class OrderBusinessConfigGoodsServiceImpl extends ServiceImpl<OrderBusine
     }
 
     @Override
-    public List<OrderBusinessConfigGoodsVo> selectList(OrderBusinessConfigGoodsQueryBo bo) {
-        return this.baseMapper.selectList(bo);
+    public List<OrderBusinessConfigGoodsVo> selectListVo(OrderBusinessConfigGoodsQueryBo bo) {
+        return this.baseMapper.selectListVo(bo);
     }
 
     @Override

+ 54 - 3
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderBusinessConfigServiceImpl.java

@@ -4,13 +4,22 @@ import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.lang.Validator;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.zhongzheng.common.exception.CustomException;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.modules.course.domain.CourseChapter;
+import com.zhongzheng.modules.course.domain.Major;
+import com.zhongzheng.modules.course.service.IMajorService;
+import com.zhongzheng.modules.goods.domain.Goods;
+import com.zhongzheng.modules.goods.service.IGoodsService;
+import com.zhongzheng.modules.goods.vo.GoodsBusinessVo;
 import com.zhongzheng.modules.order.bo.OrderBusinessConfigAddBo;
 import com.zhongzheng.modules.order.bo.OrderBusinessConfigEditBo;
 import com.zhongzheng.modules.order.bo.OrderBusinessConfigQueryBo;
 import com.zhongzheng.modules.order.domain.OrderBusinessConfig;
+import com.zhongzheng.modules.order.domain.OrderBusinessConfigGoods;
 import com.zhongzheng.modules.order.mapper.OrderBusinessConfigMapper;
 import com.zhongzheng.modules.order.service.IOrderBusinessConfigGoodsService;
 import com.zhongzheng.modules.order.service.IOrderBusinessConfigService;
@@ -23,9 +32,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.pagehelper.Page;
 
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -40,6 +47,12 @@ public class OrderBusinessConfigServiceImpl extends ServiceImpl<OrderBusinessCon
     @Autowired
     private IOrderBusinessConfigGoodsService iOrderBusinessConfigGoodsService;
 
+    @Autowired
+    private IGoodsService iGoodsService;
+
+    @Autowired
+    private IMajorService iMajorService;
+
 
     @Override
     public OrderBusinessConfigVo queryById(Long id){
@@ -136,6 +149,44 @@ public class OrderBusinessConfigServiceImpl extends ServiceImpl<OrderBusinessCon
         return this.removeByIds(ids);
     }
 
+    @Override
+    public List<OrderBusinessConfigVo> getBusinessConfigList(OrderBusinessConfigQueryBo bo) {
+        List<OrderBusinessConfigVo> configVos = baseMapper.getList(bo);
+        if (CollectionUtils.isNotEmpty(configVos)){
+            configVos.forEach(configVo -> {
+                List<OrderBusinessConfigGoods> configGoods = iOrderBusinessConfigGoodsService
+                        .list(new LambdaQueryWrapper<OrderBusinessConfigGoods>()
+                                .eq(OrderBusinessConfigGoods::getConfigId, configVo.getId())
+                                .eq(OrderBusinessConfigGoods::getStatus, 1));
+                if (CollectionUtils.isNotEmpty(configGoods)){
+                    List<GoodsBusinessVo> voList = new ArrayList<>();
+                    configGoods.forEach(item -> {
+                        if (StringUtils.isNotBlank(item.getGoodsIds())){
+                            List<String> ids = Arrays.stream(item.getGoodsIds().split(",")).collect(Collectors.toList());
+                            List<Goods> goodsList = iGoodsService.listByIds(ids);
+                            List<GoodsBusinessVo> businessVos = goodsList.stream().map(x -> {
+                                GoodsBusinessVo goodsBusinessVo = new GoodsBusinessVo();
+                                goodsBusinessVo.setGoodsId(x.getGoodsId());
+                                goodsBusinessVo.setGoodsName(x.getGoodsName());
+                                goodsBusinessVo.setGoodsType(x.getGoodsType());
+                                goodsBusinessVo.setStandPrice(x.getStandPrice());
+                                if (ObjectUtils.isNotNull(x.getMajorId())) {
+                                    Major major = iMajorService.getById(x.getMajorId());
+                                    goodsBusinessVo.setMajorId(x.getMajorId());
+                                    goodsBusinessVo.setMajorName(major.getCategoryName());
+                                }
+                                return goodsBusinessVo;
+                            }).collect(Collectors.toList());
+                            voList.addAll(businessVos);
+                        }
+                    });
+                    configVo.setGoodsBusinessVos(voList);
+                }
+            });
+        }
+        return configVos;
+    }
+
     private boolean checkNameUnique(OrderBusinessConfig entity) {
         OrderBusinessConfig info = getOne(new LambdaQueryWrapper<OrderBusinessConfig>()
                 .eq(OrderBusinessConfig::getConfigName,entity.getConfigName()).eq(OrderBusinessConfig::getBusinessId,entity.getBusinessId()).ne(OrderBusinessConfig::getStatus,-1).last("limit 1"));

+ 7 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/OrderBusinessConfigVo.java

@@ -2,11 +2,14 @@ package com.zhongzheng.modules.order.vo;
 
 import com.zhongzheng.common.annotation.Excel;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.zhongzheng.modules.goods.vo.GoodsBusinessVo;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-import java.util.Date;
 
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
 
 
 /**
@@ -17,7 +20,7 @@ import java.util.Date;
  */
 @Data
 @ApiModel("录单配置视图对象")
-public class OrderBusinessConfigVo {
+public class OrderBusinessConfigVo implements Serializable {
 	private static final long serialVersionUID = 1L;
 
 	/** $pkColumn.columnComment */
@@ -54,4 +57,6 @@ public class OrderBusinessConfigVo {
 	/** 上传主图 */
 	@ApiModelProperty("上传主图")
 	private String mainImg;
+	@ApiModelProperty("录单配置商品列表")
+	private List<GoodsBusinessVo> goodsBusinessVos;
 }

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

@@ -63,7 +63,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
 
 
-    <select id="selectList" parameterType="com.zhongzheng.modules.order.bo.OrderBusinessConfigGoodsQueryBo" resultMap="OrderBusinessConfigGoodsVoResult">
+    <select id="selectListVo" parameterType="com.zhongzheng.modules.order.bo.OrderBusinessConfigGoodsQueryBo" resultMap="OrderBusinessConfigGoodsVoResult">
         SELECT
         bcg.*,
         cs.subject_name,