ソースを参照

训练营第一期功能

mac 2 年 前
コミット
0218c51cde

+ 49 - 0
kxs-system/kxs-system-api/src/main/java/com/kxs/system/api/dto/admin/camp/CampPageLogDTO.java

@@ -0,0 +1,49 @@
+package com.kxs.system.api.dto.admin.camp;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+/**
+ * 训练营日志 DTO
+ *
+ * @author 没秃顶的码农
+ * @date 2024-07-03
+ */
+@Data
+@Schema(description = "训练营-报备审核")
+public class CampPageLogDTO {
+
+    /**
+     * 创建时间区间 [开始时间,结束时间]
+     */
+    private LocalDateTime[] createTime;
+
+    /**
+     * 训练营ID
+     */
+    @Schema(description = "训练营ID")
+    private Integer campId;
+
+    /**
+     * 来源创客编号
+     */
+    @Schema(description = "来源创客编号")
+    private String userCode;
+
+
+    /**
+     * 组 ID
+     */
+    @Schema(description = "组 ID")
+    private String groupId;
+
+
+    /**
+     * 来源类型 电签券=0 大机券=1 组合包=2 小盟主=3 大盟主=4 pos开机=5 广电卡激活=6
+     */
+    @Schema(description = "来源类型 电签券=0 大机券=1 组合包=2 小盟主=3 大盟主=4 pos开机=5 广电卡激活=6 来客吧激活=7 大小盟主兑换券=8")
+    private Integer sourceType;
+
+}

+ 2 - 1
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/controller/admin/SysCampController.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.kxs.common.core.util.R;
 import com.kxs.common.core.util.R;
 import com.kxs.common.log.annotation.SysLog;
 import com.kxs.common.log.annotation.SysLog;
 import com.kxs.system.api.dto.admin.GetByBcqtPageDTO;
 import com.kxs.system.api.dto.admin.GetByBcqtPageDTO;
+import com.kxs.system.api.dto.admin.camp.CampPageLogDTO;
 import com.kxs.system.api.dto.admin.camp.CampReportAuditDTO;
 import com.kxs.system.api.dto.admin.camp.CampReportAuditDTO;
 import com.kxs.system.api.model.*;
 import com.kxs.system.api.model.*;
 import com.kxs.system.api.vo.admin.camp.CampBonusLogVO;
 import com.kxs.system.api.vo.admin.camp.CampBonusLogVO;
@@ -159,7 +160,7 @@ public class SysCampController {
      */
      */
     @GetMapping("/pageLog")
     @GetMapping("/pageLog")
 //    @PreAuthorize("@pms.hasPermission('sys_camp_change_list')")
 //    @PreAuthorize("@pms.hasPermission('sys_camp_change_list')")
-    public R pageLog(Page<CampBonusLogVO> page, @ParameterObject KxsCampBonusLog param) {
+    public R pageLog(Page<CampBonusLogVO> page, @ParameterObject CampPageLogDTO param) {
 
 
         if(param.getCampId() == null){
         if(param.getCampId() == null){
             return R.failed("训练营ID不能为空");
             return R.failed("训练营ID不能为空");

+ 2 - 1
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/mapper/KxsCampBonusLogMapper.java

@@ -3,6 +3,7 @@ package com.kxs.system.biz.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.system.api.dto.admin.camp.CampPageLogDTO;
 import com.kxs.system.api.model.KxsCampBonusLog;
 import com.kxs.system.api.model.KxsCampBonusLog;
 import com.kxs.system.api.vo.admin.camp.CampBonusLogVO;
 import com.kxs.system.api.vo.admin.camp.CampBonusLogVO;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Mapper;
@@ -24,6 +25,6 @@ public interface KxsCampBonusLogMapper extends BaseMapper<KxsCampBonusLog> {
      * @param param 参数
      * @param param 参数
      * @return {@link IPage}
      * @return {@link IPage}
      */
      */
-    IPage<CampBonusLogVO> getSysPage(Page<CampBonusLogVO> page, @Param("param") KxsCampBonusLog param);
+    IPage<CampBonusLogVO> getSysPage(Page<CampBonusLogVO> page, @Param("param") CampPageLogDTO param);
 }
 }
 
 

+ 2 - 1
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/KxsCampBonusLogService.java

@@ -3,6 +3,7 @@ package com.kxs.system.biz.service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.system.api.dto.admin.camp.CampPageLogDTO;
 import com.kxs.system.api.model.KxsCampBonusLog;
 import com.kxs.system.api.model.KxsCampBonusLog;
 import com.kxs.system.api.vo.admin.camp.CampBonusLogVO;
 import com.kxs.system.api.vo.admin.camp.CampBonusLogVO;
 
 
@@ -21,6 +22,6 @@ public interface KxsCampBonusLogService extends IService<KxsCampBonusLog> {
      * @param param 参数
      * @param param 参数
      * @return {@link IPage}
      * @return {@link IPage}
      */
      */
-    IPage<CampBonusLogVO> getSysPage(Page<CampBonusLogVO> page, KxsCampBonusLog param);
+    IPage<CampBonusLogVO> getSysPage(Page<CampBonusLogVO> page, CampPageLogDTO param);
 }
 }
 
 

+ 2 - 1
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/impl/KxsCampBonusLogServiceImpl.java

@@ -3,6 +3,7 @@ package com.kxs.system.biz.service.impl;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.system.api.dto.admin.camp.CampPageLogDTO;
 import com.kxs.system.api.model.KxsCampBonusLog;
 import com.kxs.system.api.model.KxsCampBonusLog;
 import com.kxs.system.api.vo.admin.camp.CampBonusLogVO;
 import com.kxs.system.api.vo.admin.camp.CampBonusLogVO;
 import com.kxs.system.biz.mapper.KxsCampBonusLogMapper;
 import com.kxs.system.biz.mapper.KxsCampBonusLogMapper;
@@ -22,7 +23,7 @@ public class KxsCampBonusLogServiceImpl extends ServiceImpl<KxsCampBonusLogMappe
 
 
 
 
     @Override
     @Override
-    public IPage<CampBonusLogVO> getSysPage(Page<CampBonusLogVO> page, KxsCampBonusLog param) {
+    public IPage<CampBonusLogVO> getSysPage(Page<CampBonusLogVO> page, CampPageLogDTO param) {
 
 
         return baseMapper.getSysPage(page, param);
         return baseMapper.getSysPage(page, param);
     }
     }

+ 35 - 31
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/impl/KxsCampReportServiceImpl.java

@@ -76,7 +76,9 @@ public class KxsCampReportServiceImpl extends ServiceImpl<KxsCampReportMapper, K
 
 
         KxsCampReport campReport = getById(param.getId());
         KxsCampReport campReport = getById(param.getId());
         Optional.ofNullable(campReport).orElseThrow(() -> new GlobalCustomerException("训练营报备不存在"));
         Optional.ofNullable(campReport).orElseThrow(() -> new GlobalCustomerException("训练营报备不存在"));
-
+        if(campReport.getStatus() == 1 || campReport.getStatus() == -1){
+            throw new GlobalCustomerException("该报备已审核");
+        }
         //审核拒绝
         //审核拒绝
         if(param.getStatus() == -1) {
         if(param.getStatus() == -1) {
             campReport.setStatus(param.getStatus());
             campReport.setStatus(param.getStatus());
@@ -87,37 +89,39 @@ public class KxsCampReportServiceImpl extends ServiceImpl<KxsCampReportMapper, K
             campReport.setStatus(param.getStatus());
             campReport.setStatus(param.getStatus());
             //查询此用户数否参加训练营
             //查询此用户数否参加训练营
             KxsCamp kxsCamp = kxsCampMapper.selectUserCamp(campReport.getUserId().intValue());
             KxsCamp kxsCamp = kxsCampMapper.selectUserCamp(campReport.getUserId().intValue());
-            if (kxsCamp != null) {
-                kxsCamp.setOrderNum(kxsCamp.getOrderNum() + 1);
-
-                KxsCampUser kxsCampUser = kxsCampUserMapper.selectOne(Wrappers.<KxsCampUser>lambdaQuery()
-                        .eq(KxsCampUser::getCampId, kxsCamp.getId())
-                        .eq(KxsCampUser::getUserId, param.getUserId()));
-
-                switch (param.getSourceType()) {
-                    case 0, 1, 2, 8 ->
-                            kxsCampUser.setTeamOrderNum(kxsCampUser.getTeamOrderNum() + param.getSourceNum()); //电签券/组合包/盟主兑换券
-                    case 3, 4 -> kxsCampUser.setTeamLeaderNum(kxsCampUser.getTeamLeaderNum() + param.getSourceNum());
-                    case 5 -> kxsCampUser.setTeamPosNum(kxsCampUser.getTeamPosNum() + param.getSourceNum());
-                    case 6 -> kxsCampUser.setTeamGdNum(kxsCampUser.getTeamGdNum() + param.getSourceNum());
-                    case 7 -> kxsCampUser.setTeamLkbNum(kxsCampUser.getTeamLkbNum() + param.getSourceNum());
-                }
-                kxsCampUserMapper.updateById(kxsCampUser);
-
-                //添加日志
-                KxsCampBonusLog kxsCampBonusLog = new KxsCampBonusLog();
-                kxsCampBonusLog.setCampId(kxsCamp.getId());
-                kxsCampBonusLog.setCampUserId(kxsCampUser.getUserId());
-                kxsCampBonusLog.setGroupId(kxsCampUser.getGroupId());
-                kxsCampBonusLog.setSourceId(kxsCampUser.getUserId());
-                kxsCampBonusLog.setUsername(kxsCampUser.getUsername());
-                kxsCampBonusLog.setUserCode(kxsCampUser.getUserCode());
-                kxsCampBonusLog.setRemark("系统添加");
-                kxsCampBonusLog.setKind(KindTypeEnum.ADD.getType());
-                kxsCampBonusLog.setSourceNum(param.getSourceNum());
-                kxsCampBonusLog.setSourceType(param.getSourceType());
-                kxsCampBonusLogMapper.insert(kxsCampBonusLog);
+            if (kxsCamp == null) {
+                throw new GlobalCustomerException("用户未报名训练营");
+            }
+            kxsCamp.setOrderNum(kxsCamp.getOrderNum() + param.getSourceNum());
+            kxsCampMapper.updateById(kxsCamp);
+
+            KxsCampUser kxsCampUser = kxsCampUserMapper.selectOne(Wrappers.<KxsCampUser>lambdaQuery()
+                    .eq(KxsCampUser::getCampId, kxsCamp.getId())
+                    .eq(KxsCampUser::getUserId, campReport.getUserId()));
+
+            switch (param.getSourceType()) {
+                case 0, 1, 2, 8 ->
+                        kxsCampUser.setTeamOrderNum(kxsCampUser.getTeamOrderNum() + param.getSourceNum()); //电签券/组合包/盟主兑换券
+                case 3, 4 -> kxsCampUser.setTeamLeaderNum(kxsCampUser.getTeamLeaderNum() + param.getSourceNum()); //盟主订单
+                case 5 -> kxsCampUser.setTeamPosNum(kxsCampUser.getTeamPosNum() + param.getSourceNum()); //pos激活
+                case 6 -> kxsCampUser.setTeamGdNum(kxsCampUser.getTeamGdNum() + param.getSourceNum()); //广电激活
+                case 7 -> kxsCampUser.setTeamLkbNum(kxsCampUser.getTeamLkbNum() + param.getSourceNum()); //来客吧激活
             }
             }
+            kxsCampUserMapper.updateById(kxsCampUser);
+
+            //添加日志
+            KxsCampBonusLog kxsCampBonusLog = new KxsCampBonusLog();
+            kxsCampBonusLog.setCampId(kxsCamp.getId());
+            kxsCampBonusLog.setCampUserId(kxsCampUser.getUserId());
+            kxsCampBonusLog.setGroupId(kxsCampUser.getGroupId());
+            kxsCampBonusLog.setSourceId(kxsCampUser.getUserId());
+            kxsCampBonusLog.setUsername(kxsCampUser.getUsername());
+            kxsCampBonusLog.setUserCode(kxsCampUser.getUserCode());
+            kxsCampBonusLog.setRemark("系统添加");
+            kxsCampBonusLog.setKind(KindTypeEnum.ADD.getType());
+            kxsCampBonusLog.setSourceNum(param.getSourceNum());
+            kxsCampBonusLog.setSourceType(param.getSourceType());
+            kxsCampBonusLogMapper.insert(kxsCampBonusLog);
         }
         }
         baseMapper.updateById(campReport);
         baseMapper.updateById(campReport);
         return Boolean.TRUE;
         return Boolean.TRUE;

+ 1 - 1
kxs-system/kxs-system-biz/src/main/resources/mapper/KxsCampBonusLogMapper.xml

@@ -22,7 +22,7 @@
 
 
     </resultMap>
     </resultMap>
     <select id="getSysPage" resultType="com.kxs.system.api.vo.admin.camp.CampBonusLogVO">
     <select id="getSysPage" resultType="com.kxs.system.api.vo.admin.camp.CampBonusLogVO">
-        SELECT cbl.id, cbl.source_num, cbl.username, cbl.user_code, cbl.source_type, cbl.remark, cbl.create_time,
+        SELECT cbl.id, cbl.source_num, cbl.username as sourceName, cbl.source_id, cbl.user_code as sourceCode, cbl.source_type, cbl.remark, cbl.create_time, cbl.group_id, cbl.kind,
                cu.username, cu.user_code,
                cu.username, cu.user_code,
                c.title
                c.title
         FROM  kxs_camp_bonus_log cbl
         FROM  kxs_camp_bonus_log cbl