|
@@ -974,18 +974,11 @@ public class ApiController {
|
|
|
}
|
|
|
|
|
|
// 签署协议信息
|
|
|
- mapOne.put("signHonestAgreement", false);
|
|
|
- if (StrUtil.isNotBlank(sysU.getSignAgreement())) {
|
|
|
- JSONArray agreements = JSONUtil.parseArray(sysU.getSignAgreement());
|
|
|
- for (Object agreement : agreements) {
|
|
|
- SignAgreementDTO signAgreementDTO = BeanUtil.toBean(agreement, SignAgreementDTO.class);
|
|
|
- if (SignAgreementDTO.SignAgreementType.HONEST_AGREEMENT.equals(signAgreementDTO.getAgreementType())) {
|
|
|
- // 廉洁协议是否签署
|
|
|
- mapOne.put("signHonestAgreement", true);
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ int honestAgreementCount = sysUserService.count(Wrappers.<SysUser>lambdaQuery()
|
|
|
+ .eq(SysUser::getUsername, sysU.getUsername())
|
|
|
+ .eq(SysUser::getDelFlag, DelEnum.NOT_DEL.val())
|
|
|
+ .like(SysUser::getSignAgreement, "HONEST_AGREEMENT"));
|
|
|
+ mapOne.put("signHonestAgreement", honestAgreementCount > 0);
|
|
|
|
|
|
// 超60周岁是否提醒
|
|
|
Map<String, String> checkResult = sysUserService.checkSixtyYearsOld(sysU);
|
|
@@ -4110,32 +4103,36 @@ public class ApiController {
|
|
|
public R<Boolean> signAgreement(@Validated @RequestBody SignAgreementDTO signAgreementDTO) {
|
|
|
log.info("小程序签署协议请求:{}", signAgreementDTO);
|
|
|
|
|
|
- Integer userId = SecurityUtils.getUser().getId();
|
|
|
- SysUser queryUser = sysUserService.getById(userId);
|
|
|
+ String username = SecurityUtils.getUser().getUsername();
|
|
|
+ List<SysUser> userList = sysUserService.list(Wrappers.<SysUser>lambdaQuery()
|
|
|
+ .eq(SysUser::getUsername, username)
|
|
|
+ .eq(SysUser::getDelFlag, DelEnum.NOT_DEL.val()));
|
|
|
|
|
|
- List<Object> signAgreementDTOList = new ArrayList<>();
|
|
|
- if (StrUtil.isBlank(queryUser.getSignAgreement())) {
|
|
|
- signAgreementDTOList.add(signAgreementDTO);
|
|
|
- } else {
|
|
|
- JSONArray agreements = JSONUtil.parseArray(queryUser.getSignAgreement());
|
|
|
- signAgreementDTOList.addAll(agreements);
|
|
|
- // 如果已存在该协议,则不再重复保存
|
|
|
- boolean anyMatch = agreements.stream()
|
|
|
- .map(o -> BeanUtil.toBean(o, SignAgreementDTO.class))
|
|
|
- .anyMatch(dto -> SignAgreementDTO.SignAgreementType.HONEST_AGREEMENT.equals(dto.getAgreementType()));
|
|
|
- if (anyMatch) {
|
|
|
- return R.ok();
|
|
|
+
|
|
|
+ for (SysUser user : userList) {
|
|
|
+ List<Object> signAgreementDTOList = new ArrayList<>();
|
|
|
+ if (StrUtil.isBlank(user.getSignAgreement())) {
|
|
|
+ signAgreementDTOList.add(signAgreementDTO);
|
|
|
+ } else {
|
|
|
+ JSONArray agreements = JSONUtil.parseArray(user.getSignAgreement());
|
|
|
+ signAgreementDTOList.addAll(agreements);
|
|
|
+ // 如果已存在该协议,则不再重复保存
|
|
|
+ boolean anyMatch = agreements.stream()
|
|
|
+ .map(o -> BeanUtil.toBean(o, SignAgreementDTO.class))
|
|
|
+ .anyMatch(dto -> SignAgreementDTO.SignAgreementType.HONEST_AGREEMENT.equals(dto.getAgreementType()));
|
|
|
+ if (anyMatch) {
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+ signAgreementDTOList.add(signAgreementDTO);
|
|
|
}
|
|
|
- signAgreementDTOList.add(signAgreementDTO);
|
|
|
+ sysUserService.update(Wrappers.<SysUser>lambdaUpdate()
|
|
|
+ .eq(SysUser::getUserId, user.getUserId())
|
|
|
+ .set(SysUser::getSignAgreement, JSONUtil.toJsonStr(signAgreementDTOList))
|
|
|
+ .set(SysUser::getUpdateTime, LocalDateTime.now()));
|
|
|
}
|
|
|
|
|
|
|
|
|
- boolean update = sysUserService.update(Wrappers.<SysUser>lambdaUpdate()
|
|
|
- .eq(SysUser::getUsername, queryUser.getUsername())
|
|
|
- .set(SysUser::getSignAgreement, JSONUtil.toJsonStr(signAgreementDTOList))
|
|
|
- .set(SysUser::getUpdateTime, LocalDateTime.now()));
|
|
|
-
|
|
|
- return R.ok(update);
|
|
|
+ return R.ok(Boolean.TRUE);
|
|
|
}
|
|
|
|
|
|
/**
|