فهرست منبع

Merge branch 'dev' into pre

tanzh 3 سال پیش
والد
کامیت
29b0c7e8e3

+ 103 - 0
zhongzheng-api/src/main/java/com/zhongzheng/controller/course/MajorController.java

@@ -0,0 +1,103 @@
+package com.zhongzheng.controller.course;
+
+import com.zhongzheng.common.annotation.Log;
+import com.zhongzheng.common.core.controller.BaseController;
+import com.zhongzheng.common.core.domain.AjaxResult;
+import com.zhongzheng.common.core.page.TableDataInfo;
+import com.zhongzheng.common.enums.BusinessType;
+import com.zhongzheng.modules.course.bo.MajorAddBo;
+import com.zhongzheng.modules.course.bo.MajorEditBo;
+import com.zhongzheng.modules.course.bo.MajorQueryBo;
+import com.zhongzheng.modules.course.service.IMajorService;
+import com.zhongzheng.modules.course.vo.MajorVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 专业Controller
+ * 
+ * @author ruoyi
+ * @date 2021-10-09
+ */
+@Api(value = "专业控制器", tags = {"专业管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/course/major")
+public class MajorController extends BaseController {
+
+    private final IMajorService iMajorService;
+
+    /**
+     * 查询专业列表
+     */
+    @ApiOperation("查询专业列表")
+    @PreAuthorize("@ss.hasPermi('course:major:list')")
+    @GetMapping("/list")
+    public TableDataInfo<MajorVo> list(MajorQueryBo bo) {
+        startPage();
+        List<MajorVo> list = iMajorService.queryList(bo);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出专业列表
+     */
+ /*   @ApiOperation("导出专业列表")
+    @PreAuthorize("@ss.hasPermi('course:major:export')")
+    @Log(title = "专业", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public AjaxResult<MajorVo> export(MajorQueryBo bo) {
+        List<MajorVo> list = iMajorService.queryList(bo);
+        ExcelUtil<MajorVo> util = new ExcelUtil<MajorVo>(MajorVo.class);
+        return util.exportExcel(list, "专业");
+    }*/
+
+    /**
+     * 获取专业详细信息
+     */
+    @ApiOperation("获取专业详细信息")
+    @PreAuthorize("@ss.hasPermi('course:major:query')")
+    @GetMapping("/{id}")
+    public AjaxResult<MajorVo> getInfo(@PathVariable("id" ) Long id) {
+        return AjaxResult.success(iMajorService.queryById(id));
+    }
+
+    /**
+     * 新增专业
+     */
+    @ApiOperation("新增专业")
+    @PreAuthorize("@ss.hasPermi('course:major:add')")
+    @Log(title = "专业", businessType = BusinessType.INSERT)
+    @PostMapping()
+    public AjaxResult<Void> add(@RequestBody MajorAddBo bo) {
+        return toAjax(iMajorService.insertByAddBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改专业
+     */
+    @ApiOperation("修改专业")
+    @PreAuthorize("@ss.hasPermi('course:major:edit')")
+    @Log(title = "专业", businessType = BusinessType.UPDATE)
+    @PostMapping("/edit")
+    public AjaxResult<Void> edit(@RequestBody MajorEditBo bo) {
+        return toAjax(iMajorService.updateByEditBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 删除专业
+     */
+/*    @ApiOperation("删除专业")
+    @PreAuthorize("@ss.hasPermi('course:major:remove')")
+    @Log(title = "专业" , businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult<Void> remove(@PathVariable Long[] ids) {
+        return toAjax(iMajorService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0);
+    }*/
+}

+ 39 - 18
zhongzheng-system/src/main/java/com/zhongzheng/modules/base/service/impl/ConsoleServiceImpl.java

@@ -11,7 +11,10 @@ import com.zhongzheng.modules.base.service.IUserProfileService;
 import com.zhongzheng.modules.grade.service.IClassGradeService;
 import com.zhongzheng.modules.grade.service.IClassGradeUserService;
 import com.zhongzheng.modules.grade.vo.ClassGradeVo;
+import com.zhongzheng.modules.order.bo.OrderInputQueryBo;
+import com.zhongzheng.modules.order.service.IOrderInputService;
 import com.zhongzheng.modules.order.service.IOrderService;
+import com.zhongzheng.modules.order.vo.OrderInputVo;
 import com.zhongzheng.modules.order.vo.OrderListVo;
 import com.zhongzheng.modules.user.domain.UserMockRecord;
 import com.zhongzheng.modules.user.domain.UserMockSubscribe;
@@ -29,6 +32,9 @@ public class ConsoleServiceImpl implements IConsoleService {
     @Autowired
     private IOrderService iOrderService;
 
+    @Autowired
+    private IOrderInputService iOrderInputService;
+
     @Autowired
     private IUserUpdateService iUserUpdateService;
 
@@ -90,8 +96,15 @@ public class ConsoleServiceImpl implements IConsoleService {
     @Override
     public Map<String, Object> getOrderData(ConsoleQueryBo bo) {
         Map<String, Object> map = new HashMap<>();
-        List<OrderListVo> allList = iOrderService.getConsoleOrder(bo);
-        countNum(map,"all",allList); //总的
+        List<OrderListVo> allList = iOrderService.getConsoleOrder(bo); //线上
+        OrderInputQueryBo bo1 = new OrderInputQueryBo();
+        bo1.setBusinessId(bo.getBusinessId());
+        bo1.setGoodsType(1);
+        Integer offVideoNum = iOrderInputService.selectList(bo1).size();
+        bo1.setGoodsType(2);
+        List<OrderInputVo> allOffBankList = iOrderInputService.selectList(bo1);
+        Integer alloffBankNum = allOffBankList.size();
+        countOnNum(map,"all",allList); //线上总的
         Integer allRebuyNum = iOrderService.getConsoleRebuyNum(bo); //冲突总数
         Calendar cal = Calendar.getInstance();
         cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
@@ -106,13 +119,25 @@ public class ConsoleServiceImpl implements IConsoleService {
         bo.setStartTime(todZero);
         bo.setEndTime(DateUtils.getNowTime());
         List<OrderListVo> todList = iOrderService.getConsoleOrder(bo);
-        countNum(map,"tod",todList); //今天
+        bo1.setStartTime(todZero);
+        bo1.setEndTime(DateUtils.getNowTime());
+        bo1.setGoodsType(1);
+        Integer todoffVideoNum = iOrderInputService.selectList(bo1).size();
+        bo1.setGoodsType(2);
+        Integer todOffBankNum = iOrderInputService.selectList(bo1).size();
+        countOnNum(map,"tod",todList); //今天
         Integer todRebuyNum = iOrderService.getConsoleRebuyNum(bo); //今天冲突
 
         bo.setStartTime(ytdZero);
         bo.setEndTime(todZero);
         List<OrderListVo> ytdList = iOrderService.getConsoleOrder(bo);
-        countNum(map,"ytd",ytdList); //昨天
+        bo1.setStartTime(ytdZero);
+        bo1.setEndTime(todZero);
+        bo1.setGoodsType(1);
+        Integer ytdOffVideoNum = iOrderInputService.selectList(bo1).size();
+        bo1.setGoodsType(2);
+        Integer ytdOffBankNum = iOrderInputService.selectList(bo1).size();
+        countOnNum(map,"ytd",ytdList); //昨天
         Integer ytdRebuyNum = iOrderService.getConsoleRebuyNum(bo); //昨天冲突
 
         bo.setEndTime(DateUtils.getNowTime());
@@ -122,6 +147,14 @@ public class ConsoleServiceImpl implements IConsoleService {
         map.put("todRebuyNum",todRebuyNum);
         map.put("ytdRebuyNum",ytdRebuyNum);
         map.put("sevenRebuyNum",sevenRebuyNum);
+
+        map.put("offVideoNum", offVideoNum);
+        map.put("alloffBankNum", alloffBankNum);
+        map.put("todoffBankNum", alloffBankNum);
+        map.put("todoffVideoNum", todoffVideoNum);
+        map.put("todOffBankNum", todOffBankNum);
+        map.put("ytdOffVideoNum", ytdOffVideoNum);
+        map.put("ytdOffBankNum", ytdOffBankNum);
         return map;
     }
 
@@ -393,22 +426,13 @@ public class ConsoleServiceImpl implements IConsoleService {
         return map;
     }
 
-    private void countNum(Map<String, Object> map,String tag,List<OrderListVo> allList){
+    private void countOnNum(Map<String, Object> map,String tag,List<OrderListVo> allList){
         Integer allNum = allList.size();
         map.put(tag+"Num",allNum);
         Integer onVideoNum = 0;
         Integer onBankNum = 0;
-        Integer offVideoNum = 0;
-        Integer offBankNum = 0;
         for(OrderListVo vo : allList){
-            if(vo.getOrderFrom()==1||vo.getOrderFrom()==5){
-                if(vo.getGoodsType()==1){
-                    offVideoNum++;
-                }
-                if(vo.getGoodsType()==2){
-                    offBankNum++;
-                }
-            }else{
+            if(vo.getOrderFrom()!=1 && vo.getOrderFrom()!=5){
                 if(vo.getGoodsType()==1){
                     onVideoNum++;
                 }
@@ -419,9 +443,6 @@ public class ConsoleServiceImpl implements IConsoleService {
         }
         map.put(tag+"OnVideoNum",onVideoNum);
         map.put(tag+"OnBankNum",onBankNum);
-        map.put(tag+"OffVideoNum",offVideoNum);
-        map.put(tag+"OffBankNum",offBankNum);
-
     }
 
     private void countGradeNum(Map<String, Object> map,String tag,List<ClassGradeVo> allList){

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/OrderInputVo.java

@@ -100,4 +100,7 @@ public class OrderInputVo {
 	private Long orderGoodsId;
 	@ApiModelProperty("已退费金额")
 	private BigDecimal goodsRefund;
+
+	@ApiModelProperty("商品类型 1视频2题库 3补考 4前培 5虚拟赠送题库 6直播")
+	private Integer goodsType;
 }

+ 1 - 0
zhongzheng-system/src/main/resources/mapper/modules/exam/ExamApplyGoodsMapper.xml

@@ -58,6 +58,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         WHERE
             eag.goods_id = #{goodsId}
             and unix_timestamp(now()) &lt; ea.apply_end_time
+            and ea.`status` = 1
         ORDER BY ea.apply_start_time
     </select>
 </mapper>

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

@@ -44,10 +44,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="orderFrom" column="order_from"/>
         <result property="orderGoodsId" column="order_goods_id"/>
         <result property="goodsRefund" column="goods_refund"/>
+        <result property="goodsType" column="goods_type"/>
     </resultMap>
 
     <select id="selectList" parameterType="com.zhongzheng.modules.order.bo.OrderInputQueryBo" resultMap="OrderInputVoResult">
         SELECT  u.input_order_sn,
+        u.order_from,
+        any_value(g.goods_type) goods_type,
         count( DISTINCT u.user_id ) user_num,
         count( DISTINCT og.goods_id ) goods_num,
         any_value ( cet.education_name ) education_name,
@@ -63,7 +66,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         o.user_id,
         sum( o.order_price ) order_price,
         sum( o.pay_price ) pay_price,
-        o.order_sn
+        o.order_sn,
+        any_value(o.order_from) order_from
         FROM
         order_input oi
         LEFT JOIN `order` o ON oi.input_order_sn = o.input_order_sn

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

@@ -400,9 +400,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         `order` o
         LEFT JOIN order_goods og ON o.order_sn = og.order_sn
         LEFT JOIN goods g ON og.goods_id = g.goods_id
-        WHERE
-        og.pay_status IN ( 2, 3, 4 )
-        AND og.refund_status != 2
+        WHERE 1 = 1
+        <!-- og.pay_status IN ( 2, 3, 4 )
+        AND og.refund_status != 2 -->
         <if test="businessId != null">
             AND g.business_id = #{businessId}
         </if>