瀏覽代碼

sup 资料审核

he2802 3 年之前
父節點
當前提交
36a2484f2d

+ 1 - 1
zhongzheng-admin/src/main/java/com/zhongzheng/controller/grade/ClassStudentController.java

@@ -75,7 +75,7 @@ public class ClassStudentController extends BaseController {
     public AjaxResult<UserExportVo> listStudentExport(UserQueryBo bo) {
         List<UserExportVo> list = iUserService.selectListExport(bo);
         ExcelUtil<UserExportVo> util = new ExcelUtil<>(UserExportVo.class);
-        return util.exportExcel(list,"导出學員用户列表");
+        return util.exportExcel(list,"导出学员用户列表");
     }
 
 

+ 12 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/user/UserController.java

@@ -65,6 +65,18 @@ public class UserController extends BaseController {
         return AjaxResult.success(list);
     }
 
+    /**
+     * 查询客户端用户列表
+     */
+    @ApiOperation("导出统计查询客户端用户列表")
+    @PreAuthorize("@ss.hasPermi('app:user:list')")
+    @GetMapping("/stats_list_export")
+    public AjaxResult<UserStatstVo> statsListExport(UserQueryBo bo) {
+        List<UserStatstVo> list = iUserService.statsList(bo);
+        ExcelUtil<UserStatstVo> util = new ExcelUtil<>(UserStatstVo.class);
+        return util.exportExcel(list,"导出学员统计列表");
+    }
+
     /**
      * 查询客户端用户列表
      */

+ 1 - 1
zhongzheng-api/src/main/java/com/zhongzheng/controller/base/ProfileTpController.java

@@ -82,8 +82,8 @@ public class ProfileTpController extends BaseController {
         if(value!=null){
             return toAjax(0);
         }
+        redisCache.setCacheObject(key,1L,5, TimeUnit.SECONDS);//10秒
         if(iUserProfileService.insertByAddBo(bo)){
-            redisCache.setCacheObject(key,1L,5, TimeUnit.SECONDS);//10秒
             return toAjax(1);
         }
         return toAjax(0);

+ 9 - 7
zhongzheng-framework/src/main/java/com/zhongzheng/framework/web/service/UserServiceImpl.java

@@ -194,7 +194,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
     @Override
     public List<UserStatstVo> statsList(UserQueryBo bo) {
         List<UserStatstVo> list = new ArrayList<>();
-        if(Validator.isNotEmpty(bo.getStatsStartTime())&&Validator.isNotEmpty(bo.getStatsEndTime())){
+        if(Validator.isNotEmpty(bo.getStatsStartTime())&&Validator.isNotEmpty(bo.getStatsEndTime())&&bo.getStatsEndTime().longValue()>=bo.getStatsStartTime().longValue()&&bo.getStatsStartTime().longValue()<9999999999L){
             Long time = bo.getStatsStartTime();
             Long endTime = bo.getStatsEndTime()+24*3600;
             Integer peopleNum = count(new LambdaQueryWrapper<User>()
@@ -207,15 +207,15 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
                 statstVo.setAllNum(peopleNum);
                 statstVo.setAddNum(count(new LambdaQueryWrapper<User>()
                         .eq(User::getStatus,1).between(User::getCreateTime,time1,time2)));
-                statstVo.setVisitAllNum(iUserVisitLogService.count(new LambdaQueryWrapper<UserVisitLog>().between(UserVisitLog::getCreateTime,time1,time2)));
-                statstVo.setVisitSmallNum(iUserVisitLogService.count(new LambdaQueryWrapper<UserVisitLog>()
+                statstVo.setVisitAllNum(iUserVisitLogService.count(new QueryWrapper<UserVisitLog>().select("distinct user_id").lambda().between(UserVisitLog::getCreateTime,time1,time2)));
+                statstVo.setVisitSmallNum(iUserVisitLogService.count(new QueryWrapper<UserVisitLog>().select("distinct user_id").lambda()
                         .eq(UserVisitLog::getFromPlat,1).between(UserVisitLog::getCreateTime,time1,time2)));
-                statstVo.setVisitPcNum(iUserVisitLogService.count(new LambdaQueryWrapper<UserVisitLog>()
+                statstVo.setVisitPcNum(iUserVisitLogService.count(new QueryWrapper<UserVisitLog>().select("distinct user_id").lambda()
                         .eq(UserVisitLog::getFromPlat,2).between(UserVisitLog::getCreateTime,time1,time2)));
-                statstVo.setStudyAllNum(iUserStudyLogService.count(new LambdaQueryWrapper<UserStudyLog>().between(UserStudyLog::getCreateTime,time1,time2)));
-                statstVo.setStudySmallNum(iUserStudyLogService.count(new LambdaQueryWrapper<UserStudyLog>()
+                statstVo.setStudyAllNum(iUserStudyLogService.count(new QueryWrapper<UserStudyLog>().select("distinct user_id").lambda().between(UserStudyLog::getCreateTime,time1,time2)));
+                statstVo.setStudySmallNum(iUserStudyLogService.count(new QueryWrapper<UserStudyLog>().select("distinct user_id").lambda()
                         .eq(UserStudyLog::getFromPlat,1).between(UserStudyLog::getCreateTime,time1,time2)));
-                statstVo.setStudyPcNum(iUserStudyLogService.count(new LambdaQueryWrapper<UserStudyLog>()
+                statstVo.setStudyPcNum(iUserStudyLogService.count(new QueryWrapper<UserStudyLog>().select("distinct user_id").lambda()
                         .eq(UserStudyLog::getFromPlat,2).between(UserStudyLog::getCreateTime,time1,time2)));
                 list.add(statstVo);
                 time+=24*3600;
@@ -225,6 +225,8 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
         return list;
     }
 
+
+
     @Override
     public List<UserExportVo> selectListExport(UserQueryBo bo) {
         bo.setGetOrderNum(1L);

+ 21 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/base/service/impl/UserProfileServiceImpl.java

@@ -491,9 +491,29 @@ public class UserProfileServiceImpl extends ServiceImpl<UserProfileMapper, UserP
         String keyValue = bo.getKeyValue();
         if (Validator.isNotEmpty(keyValue)) {
             Map<String, String> maps = JSONObject.parseObject(keyValue, Map.class);
-            String recent_photos, idcard_face_photo, idcard_national_photo,work_unit;
+            String recent_photos, idcard_face_photo, idcard_national_photo,work_unit,idcard,name;
             LambdaUpdateWrapper<User> objectLambdaUpdateWrapper = Wrappers.lambdaUpdate();
             objectLambdaUpdateWrapper.eq(User::getUserId, bo.getUserId());
+            if (maps.containsKey("idcard")) {
+                idcard = JSONObject.parseObject(String.valueOf(maps.get("idcard")), UserProfileFit.class).getValue();
+                if(Validator.isNotEmpty(idcard)){
+                    UserVo user = iUserService.queryById(bo.getUserId());
+                    if(Validator.isNotEmpty(user)&&Validator.isEmpty(user.getIdCard())){ //身份证为空是覆盖
+                        User user2 = iUserService.getOne(new LambdaQueryWrapper<User>()
+                                .eq(User::getIdCard,idcard).last("limit 1"));
+                        if(Validator.isNotEmpty(user2)){
+                            throw new CustomException("身份证号码已存在,创建失败");
+                        }
+                        objectLambdaUpdateWrapper.set(User::getIdCard, idcard);
+                        if (maps.containsKey("name")) {
+                            name = JSONObject.parseObject(String.valueOf(maps.get("name")), UserProfileFit.class).getValue();
+                            if(Validator.isNotEmpty(name)){
+                                objectLambdaUpdateWrapper.set(User::getRealname, name);
+                            }
+                        }
+                    }
+                }
+            }
             if (maps.containsKey("recent_photos")) {
                 recent_photos = JSONObject.parseObject(String.valueOf(maps.get("recent_photos")), UserProfileFit.class).getValue();
                 if(Validator.isNotEmpty(recent_photos)){

+ 9 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserStatstVo.java

@@ -18,31 +18,39 @@ public class UserStatstVo {
 	private static final long serialVersionUID = 1L;
 
 	/** 账号 */
-	@Excel(name = "学员编号")
+	@Excel(name = "日期")
 	@ApiModelProperty("日期")
 	private String date;
 
+	@Excel(name = "学员总数")
 	@ApiModelProperty("学员总数")
 	private Integer allNum;
 
+	@Excel(name = "新增学员数")
 	@ApiModelProperty("新增学员数")
 	private Integer addNum;
 
+	@Excel(name = "访问学员总数")
 	@ApiModelProperty("访问学员总数")
 	private Integer visitAllNum;
 
+	@Excel(name = "访问小程序学员总数")
 	@ApiModelProperty("访问小程序学员总数")
 	private Integer visitSmallNum;
 
+	@Excel(name = "访问PC学员总数")
 	@ApiModelProperty("访问PC学员总数")
 	private Integer visitPcNum;
 
+	@Excel(name = "学习学员总数")
 	@ApiModelProperty("学习学员总数")
 	private Integer studyAllNum;
 
+	@Excel(name = "学习小程序学员总数")
 	@ApiModelProperty("学习小程序学员总数")
 	private Integer studySmallNum;
 
+	@Excel(name = "学习PC学员总数")
 	@ApiModelProperty("学习PC学员总数")
 	private Integer studyPcNum;
 }