|
@@ -68,6 +68,7 @@ import com.qunzhixinxi.hnqz.admin.enums.PackageTypeEnum;
|
|
|
import com.qunzhixinxi.hnqz.admin.enums.SubjectLocation;
|
|
|
import com.qunzhixinxi.hnqz.admin.enums.SubjectTypeEnum;
|
|
|
import com.qunzhixinxi.hnqz.admin.enums.UserSignResultEnum;
|
|
|
+import com.qunzhixinxi.hnqz.admin.mapper.WmScoreTaskTypeMapper;
|
|
|
import com.qunzhixinxi.hnqz.admin.service.MedicalEquipmentService;
|
|
|
import com.qunzhixinxi.hnqz.admin.service.SysDeptCsmService;
|
|
|
import com.qunzhixinxi.hnqz.admin.service.SysDeptService;
|
|
@@ -161,6 +162,7 @@ import java.time.ZoneId;
|
|
|
import java.time.temporal.TemporalAdjusters;
|
|
|
import java.util.*;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
+import java.util.function.Function;
|
|
|
import java.util.stream.Collectors;
|
|
|
import java.util.stream.Stream;
|
|
|
|
|
@@ -190,6 +192,7 @@ public class ApiController {
|
|
|
private final WmWkArticleShareService wmWkArticleShareService;
|
|
|
private final WmScorePackageService wmScorePackageService;
|
|
|
private final WmScoreTaskTypeService wmScoreTaskTypeService;
|
|
|
+ private final WmScoreTaskTypeMapper wmScoreTaskTypeMapper;
|
|
|
private final WmScorePackageStatusService wmScorePackageStatusService;
|
|
|
private final WmTaskService wmTaskService;
|
|
|
private final WmDaDistributionService wmDaDistributionService;
|
|
@@ -338,17 +341,28 @@ public class ApiController {
|
|
|
if (null == SecurityUtils.getUser()) {
|
|
|
|
|
|
} else {
|
|
|
- UserVO userVO = sysUserService.selectUserVoById(SecurityUtils.getUser().getId());
|
|
|
+// UserVO userVO = sysUserService.selectUserVoById(SecurityUtils.getUser().getId());
|
|
|
WmScorePackageStatus query = new WmScorePackageStatus();
|
|
|
- query.setUserId(userVO.getUserId() + "");
|
|
|
+ query.setUserId(String.valueOf(SecurityUtils.getUser().getId()));
|
|
|
query.setStatus("2");
|
|
|
query.setTaskAddFlag("1");
|
|
|
query.setDelFlag("0");
|
|
|
query.setEnableFlag("0");
|
|
|
|
|
|
List<WmScorePackageStatus> statusList = wmScorePackageStatusService.list(Wrappers.lambdaQuery(query));
|
|
|
+ Set<String> scoreIds = statusList.stream()
|
|
|
+ .map(WmScorePackageStatus::getPackageId).collect(Collectors.toSet());
|
|
|
+ // 批量查询积分包
|
|
|
+ List<WmScorePackage> wmScorePackages = wmScorePackageService.listByIds(scoreIds);
|
|
|
+ Map<String, WmScorePackage> scorePackageMap = wmScorePackages.stream()
|
|
|
+ .collect(Collectors.toMap(WmScorePackage::getId, Function.identity()));
|
|
|
+ // 批量查询scoreTaskType
|
|
|
+ List<Map<String, Object>> scoreTaskTypeCountList = wmScoreTaskTypeMapper.countByScoreId(taskTypeId, scoreIds);
|
|
|
+ Map<String, Integer> scoreTaskTypeCountMap = scoreTaskTypeCountList.stream()
|
|
|
+ .collect(Collectors.toMap(o -> String.valueOf(o.get("score_id")), o -> Integer.parseInt(String.valueOf(o.get("count")))));
|
|
|
+
|
|
|
for (WmScorePackageStatus item : statusList) {
|
|
|
- WmScorePackage wmScorePackage = wmScorePackageService.getById(item.getPackageId());
|
|
|
+ WmScorePackage wmScorePackage = scorePackageMap.get(item.getPackageId());
|
|
|
if (null != wmScorePackage) {
|
|
|
if ("0".equals(wmScorePackage.getTaskAddFlag())) {
|
|
|
continue;
|
|
@@ -382,7 +396,7 @@ public class ApiController {
|
|
|
taskType.setTaskTypeId(taskTypeId);
|
|
|
taskType.setScoreId(wmScorePackage.getId());
|
|
|
|
|
|
- int total = wmScoreTaskTypeService.count(Wrappers.query(taskType));
|
|
|
+ int total = scoreTaskTypeCountMap.getOrDefault(wmScorePackage.getId(), 0);
|
|
|
|
|
|
if (total != 0) {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
@@ -627,17 +641,25 @@ public class ApiController {
|
|
|
return R.failed("账号信息异常,请联系管理员");
|
|
|
}
|
|
|
|
|
|
- //获取小程序openid
|
|
|
SysUser u = sysUserService.getById(hnqzUser.getId());
|
|
|
if (StrUtil.isBlank(u.getWxOpenid()) || StrUtil.isBlank(u.getAvatar())) {
|
|
|
- Map<String, Object> opemMap = GetOpenIDUtil.oauth2GetOpenid(code, upmsConfig.getWechatEnv());
|
|
|
- log.info("opemMap: {}", opemMap);
|
|
|
- if (MapUtil.isNotEmpty(opemMap)) {
|
|
|
- String openid = (String) opemMap.get("openid");
|
|
|
- u.setWxOpenid(openid);
|
|
|
- u.setAvatar(avatar);
|
|
|
- sysUserService.saveOrUpdate(u);
|
|
|
+ SysUser updateU = new SysUser();
|
|
|
+ // 获取小程序openid
|
|
|
+ updateU.setUserId(u.getUserId());
|
|
|
+ if (StrUtil.isBlank(u.getWxOpenid())) {
|
|
|
+ Map<String, Object> opemMap = GetOpenIDUtil.oauth2GetOpenid(code, upmsConfig.getWechatEnv());
|
|
|
+ log.info("opemMap: {}", opemMap);
|
|
|
+ if (MapUtil.isNotEmpty(opemMap)) {
|
|
|
+ String openid = (String) opemMap.get("openid");
|
|
|
+ updateU.setWxOpenid(openid);
|
|
|
+ }
|
|
|
}
|
|
|
+ // avatar头像
|
|
|
+ if (StrUtil.isBlank(u.getAvatar())) {
|
|
|
+ updateU.setAvatar(avatar);
|
|
|
+ }
|
|
|
+ updateU.setUpdateTime(LocalDateTime.now());
|
|
|
+ sysUserService.updateById(updateU);
|
|
|
}
|
|
|
|
|
|
List<Integer> roleList = new ArrayList<>();
|
|
@@ -659,7 +681,9 @@ public class ApiController {
|
|
|
mapOne.put("bankPhone", sysU.getBankPhone());
|
|
|
|
|
|
// 获取会员已结算信息和和待结算信息
|
|
|
- List<WmScorePackageStatus> packageStatuses = wmScorePackageStatusService.list(Wrappers.<WmScorePackageStatus>lambdaQuery().eq(WmScorePackageStatus::getUserId, sysU.getUserId()).eq(WmScorePackageStatus::getStatus, "2"));
|
|
|
+ List<WmScorePackageStatus> packageStatuses = wmScorePackageStatusService.list(Wrappers.<WmScorePackageStatus>lambdaQuery()
|
|
|
+ .eq(WmScorePackageStatus::getUserId, sysU.getUserId())
|
|
|
+ .eq(WmScorePackageStatus::getStatus, "2"));
|
|
|
|
|
|
List<String> ids = packageStatuses.stream().map(WmScorePackageStatus::getPackageId).collect(Collectors.toList());
|
|
|
|
|
@@ -797,8 +821,7 @@ public class ApiController {
|
|
|
mapOne.put("hasTaskTypeTemplate", wmDeptTaskTypeTemplateService.listTaskTypeByDeptId(sysU.getDeptId()));
|
|
|
|
|
|
// 税源地和channel对应关系
|
|
|
- Map<String, Integer> collect = sysDeptSubService.list(Wrappers.<SysDeptSub>lambdaQuery().eq(SysDeptSub::getDeptId, sysU.getDeptId()))
|
|
|
- .stream()
|
|
|
+ Map<String, Integer> collect = subList.stream()
|
|
|
.collect(Collectors.toMap(sysDeptSub -> sysDeptSub.getSubjectLocation().name(), SysDeptSub::getSubjectChannel));
|
|
|
mapOne.put("subjectTypeAndChannel", collect);
|
|
|
|
|
@@ -807,16 +830,19 @@ public class ApiController {
|
|
|
List<SysUserSubVO> userSignCertList = sysUserSignCertService.listUserSignCertForApi(sysU.getUserId(), sysU.getDeptId());
|
|
|
mapOne.put("certList", userSignCertList);
|
|
|
|
|
|
- // 查询是否已认证过E证通
|
|
|
- mapOne.put("existEidResult", sysUserExtRecordService.existUserExtRecord());
|
|
|
+ // 查询E证通数据
|
|
|
SysUserExtRecord userExtRecord = sysUserExtRecordService.getOne(Wrappers.<SysUserExtRecord>lambdaQuery()
|
|
|
.eq(SysUserExtRecord::getUserId, sysU.getUserId())
|
|
|
.eq(SysUserExtRecord::getDelFlag, DelEnum.NOT_DEL.val()));
|
|
|
if (userExtRecord != null) {
|
|
|
+ mapOne.put("existEidResult", true);
|
|
|
+ // E证通照片
|
|
|
Map<String, Object> eidResultMap = new HashMap<>();
|
|
|
eidResultMap.put("idCardFrontUrl", userExtRecord.getIdCardFrontUrl());
|
|
|
eidResultMap.put("idCardBackUrl", userExtRecord.getIdCardBackUrl());
|
|
|
mapOne.put("eidResult", eidResultMap);
|
|
|
+ } else {
|
|
|
+ mapOne.put("existEidResult", false);
|
|
|
}
|
|
|
|
|
|
// 获取发起认证的令牌
|