|
@ -31,6 +31,7 @@ import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl; |
|
|
import com.elink.esua.epdc.commons.mybatis.utils.DeptEntityUtils; |
|
|
import com.elink.esua.epdc.commons.mybatis.utils.DeptEntityUtils; |
|
|
import com.elink.esua.epdc.commons.tools.constant.FieldConstant; |
|
|
import com.elink.esua.epdc.commons.tools.constant.FieldConstant; |
|
|
import com.elink.esua.epdc.commons.tools.constant.NumConstant; |
|
|
import com.elink.esua.epdc.commons.tools.constant.NumConstant; |
|
|
|
|
|
import com.elink.esua.epdc.commons.tools.constant.OrganizationTypeConstant; |
|
|
import com.elink.esua.epdc.commons.tools.constant.StrConstant; |
|
|
import com.elink.esua.epdc.commons.tools.constant.StrConstant; |
|
|
import com.elink.esua.epdc.commons.tools.enums.UserAuthTypeEnum; |
|
|
import com.elink.esua.epdc.commons.tools.enums.UserAuthTypeEnum; |
|
|
import com.elink.esua.epdc.commons.tools.enums.UserSexEnum; |
|
|
import com.elink.esua.epdc.commons.tools.enums.UserSexEnum; |
|
@ -1074,11 +1075,11 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem |
|
|
// 已认证待审核列表
|
|
|
// 已认证待审核列表
|
|
|
workUserFromDto.setAuthenticatedFlag(AppUserStatesEnum.STATE_COMPLETED_INFORMATION_PENDING_REVIEW.value()); |
|
|
workUserFromDto.setAuthenticatedFlag(AppUserStatesEnum.STATE_COMPLETED_INFORMATION_PENDING_REVIEW.value()); |
|
|
// 党员认证失败(用户状态为待认证)
|
|
|
// 党员认证失败(用户状态为待认证)
|
|
|
if(YesOrNoEnum.YES.value().equals(partyFlag)){ |
|
|
if (YesOrNoEnum.YES.value().equals(partyFlag)) { |
|
|
// 用户认证状态 实为 居民
|
|
|
// 用户认证状态 实为 居民
|
|
|
workUserFromDto.setPartyFlag(YesOrNoEnum.NO.value()); |
|
|
workUserFromDto.setPartyFlag(YesOrNoEnum.NO.value()); |
|
|
return new Result().ok(baseDao.selectPartyAuthenticationFailedList(workUserFromDto)); |
|
|
return new Result().ok(baseDao.selectPartyAuthenticationFailedList(workUserFromDto)); |
|
|
}else { |
|
|
} else { |
|
|
// 已认证居民待审核 列表
|
|
|
// 已认证居民待审核 列表
|
|
|
return new Result().ok(baseDao.selectListAuthenticatedUserForWork(workUserFromDto)); |
|
|
return new Result().ok(baseDao.selectListAuthenticatedUserForWork(workUserFromDto)); |
|
|
} |
|
|
} |
|
@ -1582,6 +1583,136 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public PageData<UserPointsDTO> pageForPoints(Map<String, Object> params) { |
|
|
|
|
|
// 查询当前用户所具有的的数据权限
|
|
|
|
|
|
List<Long> deptIdList = SecurityUser.getUser().getDeptIdList(); |
|
|
|
|
|
params.put("deptIdList", deptIdList); |
|
|
|
|
|
IPage<UserPointsDTO> page = getPage(params); |
|
|
|
|
|
List<UserPointsDTO> list = baseDao.selectListUserPoints(params); |
|
|
|
|
|
return new PageData<>(list, page.getTotal()); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public EpdcAppUserRankingResultDTO listUserPointsRanking(EpdcAppUserRankingFormDTO formDto) { |
|
|
|
|
|
int pageIndex = (formDto.getPageIndex() - NumConstant.ONE) * formDto.getPageSize(); |
|
|
|
|
|
formDto.setPageIndex(pageIndex); |
|
|
|
|
|
|
|
|
|
|
|
// 获取 用户网格关系表 中的 用户id,做网格/街道 积分排行的源用户数据
|
|
|
|
|
|
List<String> listUser = this.getActRankingUserId(formDto); |
|
|
|
|
|
formDto.setAllUserIdByDept(listUser); |
|
|
|
|
|
|
|
|
|
|
|
// 积分相同,排名相同
|
|
|
|
|
|
EpdcAppUserRankingResultDTO rangking = new EpdcAppUserRankingResultDTO(); |
|
|
|
|
|
// 获取排好序的 排行榜数据数据
|
|
|
|
|
|
rangking.setRank(this.sortListUsersRank(formDto)); |
|
|
|
|
|
// 查询当前用户积分记录
|
|
|
|
|
|
EpdcAppRankingUserDTO currentUserDTO = baseDao.selectCurrentUserRanking(formDto); |
|
|
|
|
|
// 返回当前登录用户积分排名
|
|
|
|
|
|
if (null != currentUserDTO) { |
|
|
|
|
|
currentUserDTO.setUserId(formDto.getUserId()); |
|
|
|
|
|
currentUserDTO.setRealName(formDto.getRealName()); |
|
|
|
|
|
rangking.setCurrentUser(currentUserDTO); |
|
|
|
|
|
} |
|
|
|
|
|
return rangking; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public Result<EpdcAppUserGradeRankingResultDTO> listUsersGradeRanking(EpdcAppUserGradeRankingFormDTO formDto) { |
|
|
|
|
|
int pageIndex = (formDto.getPageIndex() - NumConstant.ONE) * formDto.getPageSize(); |
|
|
|
|
|
formDto.setPageIndex(pageIndex); |
|
|
|
|
|
// 等级相同,排名相同
|
|
|
|
|
|
EpdcAppUserGradeRankingResultDTO rangking = new EpdcAppUserGradeRankingResultDTO(); |
|
|
|
|
|
// 获取排好序的 排行榜数据数据
|
|
|
|
|
|
rangking.setRank(this.sortListUsersGradeRank(formDto)); |
|
|
|
|
|
|
|
|
|
|
|
// 查询当前用户的排名
|
|
|
|
|
|
UsersGradeRankingDTO userRang = baseDao.selectCurrentUserGradeRanking(formDto); |
|
|
|
|
|
// 用户产生过积分记录,返回积分排名
|
|
|
|
|
|
if (userRang != null) { |
|
|
|
|
|
userRang.setUserId(formDto.getUserId()); |
|
|
|
|
|
userRang.setNickName(formDto.getNickName()); |
|
|
|
|
|
rangking.setCurrentUser(userRang); |
|
|
|
|
|
} |
|
|
|
|
|
return new Result<EpdcAppUserGradeRankingResultDTO>().ok(rangking); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
* 获取【排好序】的 用户等级排行榜数据 |
|
|
|
|
|
* |
|
|
|
|
|
* @param formDto |
|
|
|
|
|
* @return java.util.List<com.elink.esua.epdc.dto.epdc.result.UsersGradeRankingDTO> |
|
|
|
|
|
* @Author zhangyong |
|
|
|
|
|
* @Date 13:50 2020-06-24 |
|
|
|
|
|
**/ |
|
|
|
|
|
private List<UsersGradeRankingDTO> sortListUsersGradeRank(EpdcAppUserGradeRankingFormDTO formDto) { |
|
|
|
|
|
List<UsersGradeRankingDTO> listPointsRank; |
|
|
|
|
|
listPointsRank = baseDao.selectListUsersGradeRanking(formDto); |
|
|
|
|
|
int sortNumber = NumConstant.ONE; |
|
|
|
|
|
if (listPointsRank != null) { |
|
|
|
|
|
for (int i = NumConstant.ONE; i < listPointsRank.size(); i++) { |
|
|
|
|
|
listPointsRank.get(0).setRank(NumConstant.ONE); |
|
|
|
|
|
if (listPointsRank.get(i - NumConstant.ONE).getGrade().intValue() == listPointsRank.get(i).getGrade().intValue()) { |
|
|
|
|
|
listPointsRank.get(i).setRank(sortNumber); |
|
|
|
|
|
} else { |
|
|
|
|
|
sortNumber = sortNumber + NumConstant.ONE; |
|
|
|
|
|
listPointsRank.get(i).setRank(sortNumber); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
return listPointsRank; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
* 获取【排好序】的排行榜数据 |
|
|
|
|
|
* |
|
|
|
|
|
* @param formDto |
|
|
|
|
|
* @return java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcAppRankingUserDTO> |
|
|
|
|
|
* @Author zhangyong |
|
|
|
|
|
* @Date 13:50 2020-06-01 |
|
|
|
|
|
**/ |
|
|
|
|
|
private List<EpdcAppRankingUserDTO> sortListUsersRank(EpdcAppUserRankingFormDTO formDto) { |
|
|
|
|
|
List<EpdcAppRankingUserDTO> listPointsRank; |
|
|
|
|
|
listPointsRank = baseDao.selectListUsersRanking(formDto); |
|
|
|
|
|
int sortNumber = 1; |
|
|
|
|
|
if (listPointsRank != null) { |
|
|
|
|
|
for (int i = 1; i < listPointsRank.size(); i++) { |
|
|
|
|
|
listPointsRank.get(0).setRank(NumConstant.ONE); |
|
|
|
|
|
if (listPointsRank.get(i - NumConstant.ONE).getPoints().intValue() == listPointsRank.get(i).getPoints().intValue()) { |
|
|
|
|
|
listPointsRank.get(i).setRank(sortNumber); |
|
|
|
|
|
} else { |
|
|
|
|
|
sortNumber = sortNumber + NumConstant.ONE; |
|
|
|
|
|
listPointsRank.get(i).setRank(sortNumber); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
return listPointsRank; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
* 返回本次 积分排行 用户网格关系表中的用户id |
|
|
|
|
|
* |
|
|
|
|
|
* @param formDto |
|
|
|
|
|
* @return java.util.List<java.lang.String> |
|
|
|
|
|
* @Author zhangyong |
|
|
|
|
|
* @Date 17:25 2020-06-04 |
|
|
|
|
|
**/ |
|
|
|
|
|
private List<String> getActRankingUserId(EpdcAppUserRankingFormDTO formDto) { |
|
|
|
|
|
if (NumConstant.ZERO == formDto.getRankingType()) { |
|
|
|
|
|
// 根据网格查询排行榜
|
|
|
|
|
|
formDto.setDeptId(formDto.getDeptId()); |
|
|
|
|
|
} else if (NumConstant.ONE == formDto.getRankingType()) { |
|
|
|
|
|
// 根据街道查询排行榜
|
|
|
|
|
|
Result<List<Long>> deptDto = adminFeignClient.listParentIdByDeptId(formDto.getDeptId(), OrganizationTypeConstant.ORG_TYPE_STREET_PARTY); |
|
|
|
|
|
if (deptDto.success()) { |
|
|
|
|
|
formDto.setDeptId(deptDto.getData().get(NumConstant.ZERO)); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
// 根据从 用户网格关系表中查询到的用户id,做积分排名比较
|
|
|
|
|
|
List<String> listUser = userGridRelationService.listUserIdByDeptId(formDto.getDeptId()); |
|
|
|
|
|
return listUser; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 用户信息校验 |
|
|
* 用户信息校验 |
|
|
* |
|
|
* |
|
|