瀏覽代碼

95:红德堂APP调试 会员关联项目代码同步

Long 4 天之前
父節點
當前提交
2851f903ec

+ 2 - 1
fs-company-app/src/main/java/com/fs/app/controller/FsUserController.java

@@ -113,8 +113,9 @@ public class FsUserController extends AppBaseController {
     @GetMapping("/details")
     @ApiOperation("用户会员详情")
     public ResponseResult<UserDetailsVO> getUserDetails(@ApiParam(value = "用户id", required = true) @RequestParam Long userId,
+                                                        @ApiParam(value = "用户项目关联id", required = true) @RequestParam Long userCompanyId,
                                                         @ApiParam(value = "时间tab,不传表示查询全部,分别是:今天、昨天、前天、近七天", required = true) @RequestParam(required = false) String dateTag) {
-        UserDetailsVO userDetails = fsUserService.getUserDetails(Long.parseLong(getUserId()), userId, dateTag);
+        UserDetailsVO userDetails = fsUserService.getUserDetails(Long.parseLong(getUserId()), userId, dateTag,userCompanyId);
         return ResponseResult.ok(userDetails);
     }
 

+ 26 - 1
fs-service/src/main/java/com/fs/company/service/impl/CompanyUserChangeApplyUserServiceImpl.java

@@ -5,13 +5,21 @@ import com.fs.company.domain.CompanyUserChangeApplyUser;
 import com.fs.company.mapper.CompanyUserChangeApplyUserMapper;
 import com.fs.company.service.ICompanyUserChangeApplyUserService;
 import com.fs.company.vo.CompanyUserChangeApplyUserVO;
+import com.fs.system.mapper.SysDictDataMapper;
+import com.fs.system.vo.DictVO;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 @Service
 public class CompanyUserChangeApplyUserServiceImpl extends ServiceImpl<CompanyUserChangeApplyUserMapper, CompanyUserChangeApplyUser> implements ICompanyUserChangeApplyUserService {
 
+    @Autowired
+    private SysDictDataMapper sysDictDataMapper;
+
     /**
      * 查询申请记录关联用户
      * @param applyId   申请记录ID
@@ -19,7 +27,24 @@ public class CompanyUserChangeApplyUserServiceImpl extends ServiceImpl<CompanyUs
      */
     @Override
     public List<CompanyUserChangeApplyUserVO> getApplyUsers(Long applyId) {
-        return baseMapper.getApplyUsers(applyId);
+        List<CompanyUserChangeApplyUserVO> list = baseMapper.getApplyUsers(applyId);
+        List<DictVO> dictVOS = sysDictDataMapper.selectDictDataListByType("sys_course_project");
+
+        // Create a map for faster lookup (dictValue -> dictVO)
+        Map<String, String> projectMap = dictVOS.stream()
+                .collect(Collectors.toMap(DictVO::getDictValue, DictVO::getDictLabel));
+
+        // Iterate through the list and set projectName where projectId matches dictValue
+        for (CompanyUserChangeApplyUserVO vo : list) {
+            if (vo.getProjectId() != null) {
+                String projectName = projectMap.get(vo.getProjectId().toString());
+                if (projectName != null) {
+                    vo.setProjectName(projectName);
+                }
+            }
+        }
+
+        return list;
     }
 
     /**

+ 9 - 0
fs-service/src/main/java/com/fs/company/vo/CompanyUserChangeApplyUserVO.java

@@ -8,6 +8,15 @@ public class CompanyUserChangeApplyUserVO {
      * 用户ID
      */
     private Long userId;
+    /**
+     * 项目ID
+     */
+    private Long projectId;
+
+    /**
+     * 项目名称
+     */
+    private String projectName;
     /**
      * 用户名称
      */

+ 1 - 1
fs-service/src/main/java/com/fs/his/mapper/FsUserMapper.java

@@ -312,7 +312,7 @@ public interface FsUserMapper
 
     int getRepeatUserNumber(@Param("userId") Long userId);
 
-    UserDetailsVO getCountWatchCourse(@Param("userId") Long userId, @Param("fsUserId") Long fsUserId, @Param("dateTag") String dateTag);
+    UserDetailsVO getCountWatchCourse (@Param("userId") Long userId, @Param("fsUserId") Long fsUserId, @Param("dateTag") String dateTag,@Param("userCompanyId")  Long userCompanyId);
 
     UserDetailsVO getCountAnswer(@Param("userId") Long userId, @Param("fsUserId") Long fsUserId, @Param("dateTag") String dateTag);
 

+ 1 - 1
fs-service/src/main/java/com/fs/his/service/IFsUserService.java

@@ -150,7 +150,7 @@ public interface IFsUserService
 
     UserListPageVO getUserNumber(Long l);
 
-    UserDetailsVO getUserDetails(Long l, Long userId, String dateTag);
+    UserDetailsVO getUserDetails(Long userId, Long fsUserId, String dateTag, Long userCompanyId);
 
     Integer selectFsUserByUserIds(String[] ids, Long companyUserId);
 

+ 10 - 6
fs-service/src/main/java/com/fs/his/service/impl/FsUserServiceImpl.java

@@ -671,24 +671,28 @@ public class FsUserServiceImpl implements IFsUserService
         }
         List<UserListCountVO> list = fsUserMapper.getUserNumber(userId, companyId);
         Map<String, Integer> map = list.stream()
-                .collect(Collectors.toMap(UserListCountVO::getStatus, UserListCountVO::getNum, (v1, v2) -> v1));
+                .collect(Collectors.toMap(UserListCountVO::getStatus, UserListCountVO::getNum, (v1, v2) -> v1 + v2));
         UserListPageVO pageVO = new UserListPageVO();
         Integer normalNum = map.getOrDefault("1", 0);
-        Integer blackNum = map.getOrDefault("0", 0);
+        Integer smallBlackNum = map.getOrDefault("0", 0);
+        Integer blackNum = map.getOrDefault("2", 0);
 
         // 黑名单人数加上重粉的数量,正常人数去掉重粉数量
         int repeatUserNumber = fsUserMapper.getRepeatUserNumber(userId);
         pageVO.setNumber(normalNum - repeatUserNumber);
         pageVO.setBlackNum(blackNum + repeatUserNumber);
+        pageVO.setSmallBlackNum(smallBlackNum + repeatUserNumber);
 
         return pageVO;
     }
 
     @Override
-    public UserDetailsVO getUserDetails(Long userId, Long fsUserId, String dateTag) {
-        UserDetailsVO countWatchCourse = fsUserMapper.getCountWatchCourse(userId, fsUserId, dateTag);
-        UserDetailsVO countAnswer = fsUserMapper.getCountAnswer(userId, fsUserId, dateTag);
-        UserDetailsVO countRedPacket = fsUserMapper.getCountRedPacket(userId, fsUserId, dateTag);
+    public UserDetailsVO getUserDetails(Long userId, Long fsUserId, String dateTag, Long userCompanyId) {
+        UserDetailsVO countWatchCourse = fsUserMapper.getCountWatchCourse(userId, fsUserId, dateTag,userCompanyId);
+        FsUserCompanyUser fsUserCompanyUser = userCompanyUserService.selectFsUserCompanyUserById(userCompanyId);
+
+        UserDetailsVO countAnswer = fsUserMapper.getCountAnswer(fsUserCompanyUser.getCompanyUserId(), fsUserId, dateTag);
+        UserDetailsVO countRedPacket = fsUserMapper.getCountRedPacket(fsUserCompanyUser.getCompanyUserId(), fsUserId, dateTag);
         UserDetailsVO vo = new UserDetailsVO();
         if (countWatchCourse != null){
             BeanUtils.copyProperties(countWatchCourse, vo);

+ 3 - 0
fs-service/src/main/java/com/fs/store/vo/h5/UserListPageVO.java

@@ -17,4 +17,7 @@ public class UserListPageVO {
     @ApiModelProperty(value = "黑名单数量")
     private int blackNum;
 
+    @ApiModelProperty(value = "小黑屋数量")
+    private int smallBlackNum;
+
 }

+ 1 - 1
fs-service/src/main/resources/mapper/course/FsUserCourseVideoMapper.xml

@@ -263,7 +263,7 @@
         AND ccut.course_id = fcpd.course_id
         AND ccut.video_id = fcpd.video_id
         AND ccut.company_user_id = #{companyUserId}
-        where course.is_del = 0 and fcp = '0'
+        where course.is_del = 0 and fcp.del_flag = 0 and fcpd.del_flag = 0
         AND FIND_IN_SET(#{companyId}, fcp.company_id)
         <if test="periodId != null and periodId !='' ">
             AND fcpd.period_id = #{periodId}

+ 1 - 1
fs-service/src/main/resources/mapper/his/FsUserMapper.xml

@@ -688,10 +688,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                     </when>
                 </choose>
             </if>
+            and fs_user.user_id = #{fsUserId}
             <if test="userCompanyId!=null">
                 and cu.id = #{userCompanyId}
             </if>
-            and fs_user.user_id = #{fsUserId}
         </where>
         GROUP BY
         fs_user.user_id