mac пре 2 година
родитељ
комит
3f15c3d2e2

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

@@ -1,6 +1,7 @@
 package com.kxs.system.api.dto.admin.camp;
 
 import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotNull;
 import lombok.Data;
 
 import java.time.LocalDateTime;
@@ -24,6 +25,7 @@ public class CampPageLogDTO {
      * 训练营ID
      */
     @Schema(description = "训练营ID")
+    @NotNull(message = "训练营ID不能为空")
     private Integer campId;
 
     /**

+ 16 - 4
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/controller/admin/SysCampController.java

@@ -15,6 +15,7 @@ import com.kxs.system.api.vo.admin.camp.ReportCampPageVO;
 import com.kxs.system.biz.constant.enums.CampStatusEnum;
 import com.kxs.system.biz.service.*;
 import com.pig4cloud.plugin.excel.annotation.RequestExcel;
+import com.pig4cloud.plugin.excel.annotation.ResponseExcel;
 import jakarta.validation.Valid;
 import lombok.RequiredArgsConstructor;
 import org.springdoc.core.annotations.ParameterObject;
@@ -160,14 +161,25 @@ public class SysCampController {
      */
     @GetMapping("/pageLog")
 //    @PreAuthorize("@pms.hasPermission('sys_camp_change_list')")
-    public R pageLog(Page<CampBonusLogVO> page, @ParameterObject CampPageLogDTO param) {
+    public R pageLog(Page<CampBonusLogVO> page, @Valid @ParameterObject CampPageLogDTO param) {
 
-        if(param.getCampId() == null){
-            return R.failed("训练营ID不能为空");
-        }
         return R.ok(kxsCampBonusLogService.getSysPage(page, param));
     }
 
+    /**
+     * 训练营-日志列表
+     *
+     * @param param 查询实体
+     * @return 训练营-扣除记录
+     */
+    @ResponseExcel
+    @GetMapping("/exportLog")
+//    @PreAuthorize("@pms.hasPermission('sys_camp_change_list')")
+    public List<CampBonusLogVO> exportLog(@Valid @ParameterObject CampPageLogDTO param) {
+
+        return kxsCampBonusLogService.exportLog(param);
+    }
+
     /**
      * 训练营-报备列表
      *

+ 10 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/mapper/KxsCampBonusLogMapper.java

@@ -9,6 +9,8 @@ import com.kxs.system.api.vo.admin.camp.CampBonusLogVO;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * 训练营奖金池日志表(KxsCampBonusLog)表数据库访问层
  *
@@ -26,5 +28,13 @@ public interface KxsCampBonusLogMapper extends BaseMapper<KxsCampBonusLog> {
      * @return {@link IPage}
      */
     IPage<CampBonusLogVO> getSysPage(Page<CampBonusLogVO> page, @Param("param") CampPageLogDTO param);
+
+    /**
+     * 导出日志
+     *
+     * @param param 参数
+     * @return {@link IPage}<{@link CampBonusLogVO}>
+     */
+    List<CampBonusLogVO> exportLog(@Param("param") CampPageLogDTO param);
 }
 

+ 10 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/KxsCampBonusLogService.java

@@ -7,6 +7,8 @@ import com.kxs.system.api.dto.admin.camp.CampPageLogDTO;
 import com.kxs.system.api.model.KxsCampBonusLog;
 import com.kxs.system.api.vo.admin.camp.CampBonusLogVO;
 
+import java.util.List;
+
 /**
  * 训练营奖金池日志表(KxsCampBonusLog)表服务接口
  *
@@ -23,5 +25,13 @@ public interface KxsCampBonusLogService extends IService<KxsCampBonusLog> {
      * @return {@link IPage}
      */
     IPage<CampBonusLogVO> getSysPage(Page<CampBonusLogVO> page, CampPageLogDTO param);
+
+    /**
+     * 导出日志
+     *
+     * @param param 参数
+     * @return {@link List}<{@link CampBonusLogVO}>
+     */
+    List<CampBonusLogVO> exportLog(CampPageLogDTO param);
 }
 

+ 8 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/impl/KxsCampBonusLogServiceImpl.java

@@ -11,6 +11,8 @@ import com.kxs.system.biz.service.KxsCampBonusLogService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
  * 训练营奖金池日志表(KxsCampBonusLog)表服务实现类
  *
@@ -27,5 +29,11 @@ public class KxsCampBonusLogServiceImpl extends ServiceImpl<KxsCampBonusLogMappe
 
         return baseMapper.getSysPage(page, param);
     }
+
+    @Override
+    public List<CampBonusLogVO> exportLog(CampPageLogDTO param) {
+
+        return baseMapper.exportLog(param);
+    }
 }
 

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

@@ -39,7 +39,30 @@
             <if test="param.sourceType != null">
                 AND cbl.source_type = #{param.sourceType}
             </if>
-            <if test="param.createTime != null and  param.createTime.size() == 2">
+            <if test="param.createTime != null and  param.createTime.length == 2">
+                AND cbl.create_time between #{param.createTime[0]} and #{param.createTime[1]}
+            </if>
+        </where>
+    </select>
+    <select id="exportLog" resultType="com.kxs.system.api.vo.admin.camp.CampBonusLogVO">
+        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,
+        c.title
+        FROM  kxs_camp_bonus_log cbl
+        LEFT JOIN kxs_camp_user cu ON cbl.camp_user_id = cu.user_id
+        LEFT JOIN kxs_camp c ON cbl.camp_id = c.id
+        <where>
+            AND cbl.del_flag = 0
+            <if test="param.campId != null">
+                AND cbl.camp_id = #{param.campId}
+            </if>
+            <if test="param.userCode != null">
+                AND cu.user_code = #{param.userCode}
+            </if>
+            <if test="param.sourceType != null">
+                AND cbl.source_type = #{param.sourceType}
+            </if>
+            <if test="param.createTime != null and  param.createTime.length == 2">
                 AND cbl.create_time between #{param.createTime[0]} and #{param.createTime[1]}
             </if>
         </where>