|
@@ -22,14 +22,8 @@ import com.fs.common.utils.ParseUtils;
|
|
|
import com.fs.common.utils.StringUtils;
|
|
|
import com.fs.company.cache.ICompanyTagCacheService;
|
|
|
import com.fs.company.cache.ICompanyUserCacheService;
|
|
|
-import com.fs.company.domain.Company;
|
|
|
-import com.fs.company.domain.CompanyTag;
|
|
|
-import com.fs.company.domain.CompanyTagUser;
|
|
|
-import com.fs.company.domain.CompanyUser;
|
|
|
-import com.fs.company.mapper.CompanyMapper;
|
|
|
-import com.fs.company.mapper.CompanyTagMapper;
|
|
|
-import com.fs.company.mapper.CompanyTagUserMapper;
|
|
|
-import com.fs.company.mapper.CompanyUserMapper;
|
|
|
+import com.fs.company.domain.*;
|
|
|
+import com.fs.company.mapper.*;
|
|
|
import com.fs.company.service.ICompanyTagService;
|
|
|
import com.fs.course.domain.FsUserCompanyUser;
|
|
|
import com.fs.course.mapper.FsUserCompanyUserMapper;
|
|
@@ -127,6 +121,9 @@ public class FsUserServiceImpl implements IFsUserService
|
|
|
@Autowired
|
|
|
private IQwExternalContactCacheService qwExternalContactCacheService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private CompanyRoleMapper companyRoleMapper;
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 查询用户
|
|
@@ -512,31 +509,58 @@ public class FsUserServiceImpl implements IFsUserService
|
|
|
|
|
|
@Override
|
|
|
public PageInfo<FsUserPageListVO> selectFsUserPageList(FsUserPageListParam param) {
|
|
|
- List<FsUserPageListVO> fsUserPageListVOS = fsUserMapper.selectFsUserPageList(param);
|
|
|
+ CompanyUser companyUser = companyUserMapper.selectCompanyUserById(param.getUserId());
|
|
|
+
|
|
|
+// List<CompanyRole> companyRoles = companyRoleMapper.selectRolePermissionByUserId(param.getUserId());
|
|
|
+// List<CompanyUser> companyUsers;
|
|
|
+// CompanyUser companyUser = companyUserMapper.selectCompanyUserById(param.getUserId());
|
|
|
+// // 判断是否管理员 或者包含 1:全部数据权限
|
|
|
+// if (companyUser.isAdmin() || companyRoles.stream().anyMatch(r -> "1".equals(r.getDataScope()))) {
|
|
|
+// companyUsers = companyUserService.getCompanyUserListByCompanyIdAndDeptId(companyUser.getCompanyId(), null);
|
|
|
+// }
|
|
|
+// // 判断是否包含 3:本部门数据权限 4:本部门及以下数据权限
|
|
|
+// else if (companyRoles.stream().anyMatch(r -> "3".equals(r.getDataScope()) || "4".equals(r.getDataScope()))) {
|
|
|
+// companyUsers = companyUserService.getCompanyUserListByCompanyIdAndDeptId(companyUser.getCompanyId(), companyUser.getDeptId());
|
|
|
+// }
|
|
|
+// // 默认空 -- 判断是否包含 5:仅可查看本人
|
|
|
+// else {
|
|
|
+// companyUsers = new ArrayList<>();
|
|
|
+// }
|
|
|
+
|
|
|
+ if(ObjectUtils.isNotNull(companyUser)){
|
|
|
+ if (companyUser.isAdmin()){
|
|
|
+ param.setUserId(0L);
|
|
|
+ param.setCompanyId(companyUser.getCompanyId());
|
|
|
+ }
|
|
|
|
|
|
- // 获取当前销售所有重粉会员
|
|
|
- List<FsUserCompanyUser> fsUserCompanyUsers = fsUserCompanyUserMapper.selectRepeatUser(param.getUserId());
|
|
|
+ List<FsUserPageListVO> fsUserPageListVOS = fsUserMapper.selectFsUserPageList(param);
|
|
|
+ // 获取当前销售所有重粉会员
|
|
|
+ List<FsUserCompanyUser> fsUserCompanyUsers = fsUserCompanyUserMapper.selectRepeatUser(companyUser.getUserId());
|
|
|
|
|
|
- if(!fsUserCompanyUsers.isEmpty()){
|
|
|
- List<Long> userIds = fsUserCompanyUsers.stream().map(FsUserCompanyUser::getUserId).collect(Collectors.toList());
|
|
|
- // 获取会员所属的重粉销售
|
|
|
- List<FsUserCompanyUser> repeatCompanyUserNames = fsUserCompanyUserMapper.selectRepeatCompanyUserName(userIds);
|
|
|
- Map<Long, String> map = repeatCompanyUserNames.stream().collect(Collectors.toMap(FsUserCompanyUser::getUserId, FsUserCompanyUser::getRepeatCompanyUserName));
|
|
|
+ if(!fsUserCompanyUsers.isEmpty()){
|
|
|
+ List<Long> userIds = fsUserCompanyUsers.stream().map(FsUserCompanyUser::getUserId).collect(Collectors.toList());
|
|
|
+ // 获取会员所属的重粉销售
|
|
|
+ List<FsUserCompanyUser> repeatCompanyUserNames = fsUserCompanyUserMapper.selectRepeatCompanyUserName(userIds);
|
|
|
+ Map<Long, String> map = repeatCompanyUserNames.stream().collect(Collectors.toMap(FsUserCompanyUser::getUserId, FsUserCompanyUser::getRepeatCompanyUserName));
|
|
|
|
|
|
- for (FsUserPageListVO fsUserPageListVO : fsUserPageListVOS) {
|
|
|
- fsUserPageListVO.setRepeatCompanyUserName(map.get(fsUserPageListVO.getUserId()));
|
|
|
- if ("微信用户".equals(fsUserPageListVO.getNickname()) && StringUtils.isNotEmpty(fsUserPageListVO.getPhone())) {
|
|
|
- fsUserPageListVO.setNickname(fsUserPageListVO.getPhone());
|
|
|
- }
|
|
|
- if(StringUtils.isNotEmpty(fsUserPageListVO.getTag()) && fsUserPageListVO.getIsRepeatFans() == 0){
|
|
|
- StringBuilder newTag = removeRepeatFansTag(fsUserPageListVO);
|
|
|
- fsUserPageListVO.setTag(newTag.toString());
|
|
|
+ for (FsUserPageListVO fsUserPageListVO : fsUserPageListVOS) {
|
|
|
+ fsUserPageListVO.setRepeatCompanyUserName(map.get(fsUserPageListVO.getUserId()));
|
|
|
+ if ("微信用户".equals(fsUserPageListVO.getNickname()) && StringUtils.isNotEmpty(fsUserPageListVO.getPhone())) {
|
|
|
+ fsUserPageListVO.setNickname(fsUserPageListVO.getPhone());
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotEmpty(fsUserPageListVO.getTag()) && fsUserPageListVO.getIsRepeatFans() == 0){
|
|
|
+ StringBuilder newTag = removeRepeatFansTag(fsUserPageListVO);
|
|
|
+ fsUserPageListVO.setTag(newTag.toString());
|
|
|
+ }
|
|
|
}
|
|
|
+ return new PageInfo<>(fsUserPageListVOS);
|
|
|
+ } else {
|
|
|
+ return new PageInfo<>(fsUserPageListVOS);
|
|
|
}
|
|
|
- return new PageInfo<>(fsUserPageListVOS);
|
|
|
- } else {
|
|
|
- return new PageInfo<>(fsUserPageListVOS);
|
|
|
+ }else {
|
|
|
+ return null;
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
|
|
|
private static StringBuilder removeRepeatFansTag(FsUserPageListVO fsUserPageListVO) {
|
|
@@ -703,6 +727,8 @@ public class FsUserServiceImpl implements IFsUserService
|
|
|
if (countRedPacket != null) {
|
|
|
vo.setAnswerRedPacketTime(countRedPacket.getAnswerRedPacketTime());
|
|
|
vo.setAnswerRedPacketAmount(countRedPacket.getAnswerRedPacketAmount());
|
|
|
+ } else {
|
|
|
+ vo.setAnswerRedPacketAmount(BigDecimal.ZERO);
|
|
|
}
|
|
|
if (countAnswer != null) {
|
|
|
vo.setAnswerTime(countAnswer.getAnswerTime());
|
|
@@ -854,13 +880,18 @@ public class FsUserServiceImpl implements IFsUserService
|
|
|
return ResponseResult.fail(404,"当前用户信息不存在");
|
|
|
}
|
|
|
|
|
|
+ // 逻辑调整:如果会员已经绑定了销售,直接提示,不添加重粉数据了-2025年6月16日14点53分
|
|
|
+ if (fsUser.getCompanyUserId() != null && !param.getCompanyUserId().equals(fsUser.getCompanyUserId())){
|
|
|
+ return ResponseResult.fail(406,"该用户已成为其他销售会员");
|
|
|
+ }
|
|
|
+
|
|
|
//判断该销售是否存在
|
|
|
CompanyUser companyUser = companyUserMapper.selectCompanyUserById(param.getCompanyUserId());
|
|
|
if (Objects.isNull(companyUser)){
|
|
|
return ResponseResult.fail(405,"销售不存在");
|
|
|
}
|
|
|
|
|
|
- // 判断是否绑定了销售
|
|
|
+ // 添加关系表数据
|
|
|
FsUserCompanyUser fsUserCompanyUser = getFsUserCompanyUser(param, fsUser);
|
|
|
QueryWrapper<FsUserCompanyUser> queryWrapper = new QueryWrapper<FsUserCompanyUser>().eq("user_id", param.getUserId()).eq("company_user_id", param.getCompanyUserId());
|
|
|
Integer i = fsUserCompanyUserMapper.selectCount(queryWrapper);
|
|
@@ -901,10 +932,10 @@ public class FsUserServiceImpl implements IFsUserService
|
|
|
companyTagUserMapper.insertCompanyTagUser(companyTagUser);
|
|
|
}
|
|
|
|
|
|
- // 如果是重粉,直接打上重粉的标签
|
|
|
- if(1 == fsUserCompanyUser.getIsRepeatFans()){
|
|
|
- this.setRepeatFansTag(param);
|
|
|
- }
|
|
|
+// // 如果是重粉,直接打上重粉的标签
|
|
|
+// if(1 == fsUserCompanyUser.getIsRepeatFans()){
|
|
|
+// this.setRepeatFansTag(param);
|
|
|
+// }
|
|
|
|
|
|
//如果是设置了需要进入小黑屋,则需要返回提示,否则正常返回
|
|
|
if(isDefaultBlack == 1){
|