diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/v2/ApiAppUserV2Controller.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/v2/ApiAppUserV2Controller.java index 79b27d787..5dae71b53 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/v2/ApiAppUserV2Controller.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/v2/ApiAppUserV2Controller.java @@ -66,7 +66,6 @@ public class ApiAppUserV2Controller { return appUserService.getMaV3Token(formDto); } /** - * @param formDto * @return com.elink.esua.epdc.commons.tools.utils.Result * @Author yinzuomei * @Description 用户注册、获取Token diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/controller/EpdcAppUserController.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/controller/EpdcAppUserController.java index 789d2dc8b..93c014243 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/controller/EpdcAppUserController.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/controller/EpdcAppUserController.java @@ -4,12 +4,12 @@ import com.elink.esua.epdc.commons.tools.constant.Constant; import com.elink.esua.epdc.commons.tools.security.user.SecurityUser; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; -import com.elink.esua.epdc.user.dto.epdc.result.StandardBearerStatusResultDTO; import com.elink.esua.epdc.user.dto.CachingUserInfoDTO; import com.elink.esua.epdc.user.dto.UserActivePointsResultDTO; import com.elink.esua.epdc.user.dto.UserDTO; import com.elink.esua.epdc.user.dto.epdc.form.*; import com.elink.esua.epdc.user.dto.epdc.result.*; +import com.elink.esua.epdc.user.service.UserDjylService; import com.elink.esua.epdc.user.service.UserInvitationRecordService; import com.elink.esua.epdc.user.service.UserService; import org.springframework.beans.factory.annotation.Autowired; @@ -30,6 +30,10 @@ public class EpdcAppUserController { @Autowired private UserService userService; + + @Autowired + private UserDjylService djylService; + @Autowired private UserInvitationRecordService userInvitationRecordService; @@ -118,7 +122,7 @@ public class EpdcAppUserController { */ @PostMapping("npmRegister") public Result npmUserRegister(@RequestBody UserDTO userDto) { - return userService.npmUserRegister(userDto); + return djylService.npmUserRegister(userDto); } /** @@ -128,7 +132,7 @@ public class EpdcAppUserController { */ @PostMapping("npmUpdate") public Result npmUserUpdate(@RequestBody UserDTO userDto) { - return userService.npmUserUpdate(userDto); + return djylService.npmUserUpdate(userDto); } @@ -193,6 +197,7 @@ public class EpdcAppUserController { public Result mpmVerify(@RequestBody EpdcUserRegistFormDTO formDto) { return userService.mpmVerifyRegisterData(formDto); } + /** * 用户注册审核之后,查询用户审核结果,用于发送服务消息和短信消息 * @@ -235,7 +240,7 @@ public class EpdcAppUserController { @GetMapping("checkNamUserRegister") public Result checkNamUserRegister(@RequestBody EpdcCheckUserRegisterFromDTO fromDto) { - return userService.checkNamUserRegisterState(fromDto); + return djylService.checkNamUserRegisterState(fromDto); } /** @@ -253,7 +258,7 @@ public class EpdcAppUserController { @PostMapping("namRegisterOrBindGrid") public Result namRegisterOrBindGrid(@RequestBody EpdcUserRegisterBindGridFormDTO fromDto) { - return userService.namSaveUserOrBindGrid(fromDto); + return djylService.namSaveUserOrBindGrid(fromDto); } /** @@ -449,7 +454,7 @@ public class EpdcAppUserController { @PostMapping("npmNeedCachingUserInfo") public Result npmNeedCachingUserInfo(@RequestBody EpdcAppQueryUserInfoFormDTO formDTO) { - return userService.queryNpmCachingUserInfo(formDTO); + return djylService.queryNpmCachingUserInfo(formDTO); } /** diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/dao/UserDao.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/dao/UserDao.java index 820e9c05e..f9238a35c 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/dao/UserDao.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/dao/UserDao.java @@ -18,17 +18,18 @@ package com.elink.esua.epdc.user.dao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; -import com.elink.esua.epdc.user.dto.UserStandaeBearerPage; -import com.elink.esua.epdc.user.dto.epdc.form.*; -import com.elink.esua.epdc.user.dto.epdc.result.*; -import com.elink.esua.epdc.user.dto.epdc.result.StandardBearerStatusResultDTO; -import com.elink.esua.epdc.user.dto.epdc.result.UserPartyStandardAppltResultDTO; -import com.elink.esua.epdc.user.entity.UserEntity; import com.elink.esua.epdc.user.dto.CachingUserInfoDTO; import com.elink.esua.epdc.user.dto.UserActivePointsResultDTO; import com.elink.esua.epdc.user.dto.UserDTO; +import com.elink.esua.epdc.user.dto.UserStandaeBearerPage; +import com.elink.esua.epdc.user.dto.epdc.form.EpdcUnauthorizedAmountFromDTO; +import com.elink.esua.epdc.user.dto.epdc.form.EpdcUserGroupInviteFormDTO; +import com.elink.esua.epdc.user.dto.epdc.form.EpdcUserMatchTagFormDTO; +import com.elink.esua.epdc.user.dto.epdc.form.EpdcWorkUserFromDTO; +import com.elink.esua.epdc.user.dto.epdc.result.*; import com.elink.esua.epdc.user.dto.product.result.EpmetUserBaseInfoDTO; import com.elink.esua.epdc.user.dto.product.result.EpmetUserResiInfoDTO; +import com.elink.esua.epdc.user.entity.UserEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -192,10 +193,6 @@ public interface UserDao extends BaseDao { */ List selectListUserByWxForLogin(@Param("wxOpenId") String wxOpenId, @Param("wxUnionId") String wxUnionId); - - List selectUserByWxForLogin(@Param("wxOpenId") String wxOpenId, @Param("wxUnionId") String wxUnionId); - - /** * @param openId * @param unionId @@ -206,7 +203,6 @@ public interface UserDao extends BaseDao { **/ CachingUserInfoDTO selectCachingUserInfoDTO(@Param("openId") String openId, @Param("unionId") String unionId); - CachingUserInfoDTO selectNpmCachingUserInfoDTO(@Param("openId") String openId, @Param("unionId") String unionId); /** * @param userId @@ -463,9 +459,8 @@ public interface UserDao extends BaseDao { List brightFlagPartyMem(Map params); - /** - *查询TagId + * 查询TagId * * @param value * @return java.lang.String @@ -476,12 +471,10 @@ public interface UserDao extends BaseDao { /** * 党建引领小程序,校验身份证号是否注册 + * * @param idCard * @return */ Integer selectCountByIdentityNo(String idCard); - void updateNpmUserEntity(UserEntity entity); - - void saveEntity(UserEntity userEntity); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/dao/UserDjylDao.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/dao/UserDjylDao.java index 044f78d18..7a4a09049 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/dao/UserDjylDao.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/dao/UserDjylDao.java @@ -1,7 +1,13 @@ package com.elink.esua.epdc.user.dao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.user.dto.CachingUserInfoDTO; +import com.elink.esua.epdc.user.dto.UserDTO; import com.elink.esua.epdc.user.entity.UserDjylEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 党建引领用户信息表 @@ -11,5 +17,10 @@ import com.elink.esua.epdc.user.entity.UserDjylEntity; * @create 2023/8/8 10:06 */ +@Mapper public interface UserDjylDao extends BaseDao { + + List selectUserByWxForLogin(@Param("wxOpenId") String wxOpenId, @Param("wxUnionId") String wxUnionId); + + CachingUserInfoDTO selectNpmCachingUserInfoDTO(@Param("openId") String openId, @Param("unionId") String unionId); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/UserDjylService.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/UserDjylService.java new file mode 100644 index 000000000..8e5b41436 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/UserDjylService.java @@ -0,0 +1,60 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.user.service; + +import com.elink.esua.epdc.commons.mybatis.service.BaseService; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.user.dto.CachingUserInfoDTO; +import com.elink.esua.epdc.user.dto.UserDTO; +import com.elink.esua.epdc.user.dto.epdc.form.EpdcAppQueryUserInfoFormDTO; +import com.elink.esua.epdc.user.dto.epdc.form.EpdcCheckUserRegisterFromDTO; +import com.elink.esua.epdc.user.dto.epdc.form.EpdcUserRegisterBindGridFormDTO; +import com.elink.esua.epdc.user.dto.epdc.result.EpdcUserRegisterInfoResultDTO; +import com.elink.esua.epdc.user.entity.UserDjylEntity; + +/** + * 用户信息表 + * + * @author qu qu@gmail.com + * @since v1.0.0 2019-09-02 + */ +public interface UserDjylService extends BaseService { + + UserDTO get(String id); + + /** + * 党建小程序用户注册 + * @param userDto + * @return + */ + Result npmUserRegister(UserDTO userDto); + + /** + * 党建小程序用户个人信息修改 + * @param userDto + * @return + */ + Result npmUserUpdate(UserDTO userDto); + + + Result queryNpmCachingUserInfo(EpdcAppQueryUserInfoFormDTO formDTO); + + Result checkNamUserRegisterState(EpdcCheckUserRegisterFromDTO fromDto); + + Result namSaveUserOrBindGrid(EpdcUserRegisterBindGridFormDTO fromDto); +} diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/UserService.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/UserService.java index 3f00b37e6..386724146 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/UserService.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/UserService.java @@ -222,8 +222,6 @@ public interface UserService extends BaseService { Result checkUserRegisterState(EpdcCheckUserRegisterFromDTO fromDto); - Result checkNamUserRegisterState(EpdcCheckUserRegisterFromDTO fromDto); - /** * 保存用户信息或关联网格信息 * @@ -234,7 +232,6 @@ public interface UserService extends BaseService { */ Result saveUserOrBindGrid(EpdcUserRegisterBindGridFormDTO fromDto); - Result namSaveUserOrBindGrid(EpdcUserRegisterBindGridFormDTO fromDto); /** * 验证用户完善个人信息时提交的数据 @@ -359,7 +356,6 @@ public interface UserService extends BaseService { Result queryCachingUserInfo(EpdcAppQueryUserInfoFormDTO formDTO); - Result queryNpmCachingUserInfo(EpdcAppQueryUserInfoFormDTO formDTO); /** * @return com.elink.esua.epdc.commons.tools.utils.Result @@ -484,17 +480,5 @@ public interface UserService extends BaseService { */ Result standaedBearerExamine(StandardBearerExamineFormDTO form); - /** - * 党建小程序用户注册 - * @param userDto - * @return - */ - Result npmUserRegister(UserDTO userDto); - /** - * 党建小程序用户个人信息修改 - * @param userDto - * @return - */ - Result npmUserUpdate(UserDTO userDto); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/impl/UserDjylServiceImpl.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/impl/UserDjylServiceImpl.java new file mode 100644 index 000000000..839dbb98e --- /dev/null +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/impl/UserDjylServiceImpl.java @@ -0,0 +1,266 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.user.service.impl; + +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.elink.esua.epdc.commons.dynamic.datasource.annotation.DataSource; +import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl; +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.exception.RenException; +import com.elink.esua.epdc.commons.tools.utils.ConvertUtils; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.ParentAndAllDeptDTO; +import com.elink.esua.epdc.user.constant.UserFieldConsant; +import com.elink.esua.epdc.user.dao.UserAuthenticateHistoryDao; +import com.elink.esua.epdc.user.dao.UserDjylDao; +import com.elink.esua.epdc.user.datasources.DataSourceNames; +import com.elink.esua.epdc.user.dto.CachingUserInfoDTO; +import com.elink.esua.epdc.user.dto.UserDTO; +import com.elink.esua.epdc.user.dto.UserGridRelationDTO; +import com.elink.esua.epdc.user.dto.epdc.form.EpdcAppQueryUserInfoFormDTO; +import com.elink.esua.epdc.user.dto.epdc.form.EpdcCheckUserRegisterFromDTO; +import com.elink.esua.epdc.user.dto.epdc.form.EpdcUserRegisterBindGridFormDTO; +import com.elink.esua.epdc.user.dto.epdc.result.EpdcUserRegisterInfoResultDTO; +import com.elink.esua.epdc.user.entity.UserDjylEntity; +import com.elink.esua.epdc.user.entity.UserGridRelationEntity; +import com.elink.esua.epdc.user.entity.UserInvitationRecordEntity; +import com.elink.esua.epdc.user.feign.AdminFeignClient; +import com.elink.esua.epdc.user.service.UserDjylService; +import com.elink.esua.epdc.user.service.UserGridRelationService; +import com.elink.esua.epdc.user.service.UserInvitationRecordService; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +/** + * 用户信息表 + * + * @author qu qu@gmail.com + * @since v1.0.0 2019-09-02 + */ +@Slf4j +@Service +public class UserDjylServiceImpl extends BaseServiceImpl implements UserDjylService { + + + @Resource + private AdminFeignClient adminFeignClient; + + @Autowired + private UserGridRelationService userGridRelationService; + + @Autowired + private UserInvitationRecordService userInvitationRecordService; + + @Resource + private UserAuthenticateHistoryDao userAuthenticateHistoryDao; + + @Override + @Transactional(rollbackFor = Exception.class) + public Result npmUserRegister(UserDTO userDto) { + //修改数据库结构 + Result parentAndAllDeptDTOResult = adminFeignClient.getParentAndAllDept(userDto.getGridId().toString()); + if (!parentAndAllDeptDTOResult.success()) { + return new Result().error(parentAndAllDeptDTOResult.getMsg()); + } + + UserDjylEntity entity = ConvertUtils.sourceToTarget(userDto, UserDjylEntity.class); + insert(entity); + + UserGridRelationDTO dto = new UserGridRelationDTO(); + dto.setUserId(entity.getId()); + dto.setAllDeptNames(parentAndAllDeptDTOResult.getData().getAllDeptNames()); + dto.setAllDeptIds(parentAndAllDeptDTOResult.getData().getAllDeptIds()); + dto.setParentDeptNames(parentAndAllDeptDTOResult.getData().getParentDeptNames()); + dto.setParentDeptIds(parentAndAllDeptDTOResult.getData().getParentDeptIds()); + dto.setGridId(parentAndAllDeptDTOResult.getData().getGridId()); + dto.setGrid(parentAndAllDeptDTOResult.getData().getGrid()); + dto.setSwitchedTime(new Date()); + userGridRelationService.save(dto); + + userDto.setAllDeptIds(parentAndAllDeptDTOResult.getData().getAllDeptIds()); + return new Result().ok(userDto); + } + + @Override + public Result npmUserUpdate(UserDTO userDto) { + //修改数据库结构 + Result parentAndAllDeptDTOResult = adminFeignClient.getParentAndAllDept(userDto.getGridId().toString()); + if (!parentAndAllDeptDTOResult.success()) { + return new Result().error(parentAndAllDeptDTOResult.getMsg()); + } + + UserDjylEntity entity = ConvertUtils.sourceToTarget(userDto, UserDjylEntity.class); + entity.setId(userDto.getUserId()); + baseDao.updateById(entity); + + UserGridRelationEntity entity1 = new UserGridRelationEntity(); + entity1.setAllDeptIds(parentAndAllDeptDTOResult.getData().getAllDeptIds()); + entity1.setAllDeptNames(parentAndAllDeptDTOResult.getData().getAllDeptNames()); + entity1.setParentDeptIds(parentAndAllDeptDTOResult.getData().getParentDeptIds()); + entity1.setParentDeptNames(parentAndAllDeptDTOResult.getData().getParentDeptNames()); + entity1.setGridId(parentAndAllDeptDTOResult.getData().getGridId()); + entity1.setGrid(parentAndAllDeptDTOResult.getData().getGrid()); + LambdaUpdateWrapper updateWrapper = Wrappers.lambdaUpdate(); + updateWrapper.eq(UserGridRelationEntity::getUserId, entity.getId()); + userGridRelationService.update(entity1, updateWrapper); + + return new Result().ok("修改成功"); + } + + @Override + public Result queryNpmCachingUserInfo(EpdcAppQueryUserInfoFormDTO formDTO) { + if (StringUtils.isBlank(formDTO.getOpenId())) { + throw new RenException("openId不能为空"); + } + return new Result().ok(baseDao.selectNpmCachingUserInfoDTO(formDTO.getOpenId(), formDTO.getUnionId())); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public Result namSaveUserOrBindGrid(EpdcUserRegisterBindGridFormDTO fromDto) { + UserDTO formUserDto = fromDto.getUserDTO(); + UserGridRelationDTO userGridRel = fromDto.getGridRelationDTO(); + // 用户注册 + if (NumConstant.ZERO == fromDto.getRegisterState()) { + UserDjylEntity userEntity = ConvertUtils.sourceToTarget(formUserDto, UserDjylEntity.class); + if (baseDao.insert(userEntity) > 0) { + formUserDto.setId(userEntity.getId()); + } else { + return new Result().error("用户注册失败"); + } + } + userGridRel.setUserId(formUserDto.getId()); + //修改数据库结构 + Result parentAndAllDeptDTOResult = adminFeignClient.getParentAndAllDept(userGridRel.getGridId().toString()); + if (!parentAndAllDeptDTOResult.success()) { + return new Result().error(parentAndAllDeptDTOResult.getMsg()); + } + userGridRel.setAllDeptNames(parentAndAllDeptDTOResult.getData().getAllDeptNames()); + userGridRel.setAllDeptIds(parentAndAllDeptDTOResult.getData().getAllDeptIds()); + userGridRel.setParentDeptNames(parentAndAllDeptDTOResult.getData().getParentDeptNames()); + userGridRel.setParentDeptIds(parentAndAllDeptDTOResult.getData().getParentDeptIds()); + // 用户绑定网格 + userGridRelationService.save(userGridRel); + // 组装用户注册信息 + EpdcUserRegisterInfoResultDTO resultDto = new EpdcUserRegisterInfoResultDTO(); + resultDto.setRegisterState(NumConstant.TWO); + resultDto.setGrid(userGridRel.getGrid()); + resultDto.setGridId(userGridRel.getGridId()); + resultDto.setUserDTO(formUserDto); + + // 记录邀请记录 + if (StringUtils.isNotEmpty(fromDto.getInviteUserId())) { + UserInvitationRecordEntity entity = new UserInvitationRecordEntity(); + entity.setUserId(formUserDto.getId()); + entity.setInviteUserId(fromDto.getInviteUserId()); + // 获取用户信息 + UserDTO userDto = this.get(formUserDto.getId()); + entity.setRegisterTime(userDto.getRegisterTime()); + entity.setGrid(userGridRel.getGrid()); + entity.setGridId(userGridRel.getGridId()); + userInvitationRecordService.insert(entity); + } + + return new Result().ok(resultDto); + } + + @Override + public Result checkNamUserRegisterState(EpdcCheckUserRegisterFromDTO fromDto) { + Long gridId = fromDto.getGridId(); + UserDTO userDto = null; + String userId = null; + List gridIdList = null; + // 查询当前用户信息 + List userList = baseDao.selectUserByWxForLogin(fromDto.getOpenId(), fromDto.getWxUnionId()); + if (null != userList.get(NumConstant.ZERO)) { + userDto = userList.get(NumConstant.ZERO); + userId = userDto.getId(); + // 循环集合,确保集合中都是同一个用户的信息 + for (UserDTO oneUserDto : userList) { + if (!userId.equals(oneUserDto.getId())) { + throw new RenException("用户信息异常,无法匹配唯一用户"); + } + gridIdList.add(oneUserDto.getGridId()); + } + } + // 组装接口返回结果 + EpdcUserRegisterInfoResultDTO resultDto = new EpdcUserRegisterInfoResultDTO(); + resultDto.setGridId(gridId); + // 用户已注册 + if (null != userDto) { + resultDto.setUserDTO(userDto); + // 已绑定当前网格 + if (gridIdList.contains(gridId)) { + resultDto.setRegisterState(NumConstant.TWO); + resultDto.setGrid(userDto.getGrid()); + // 更新最后一次切换网格时间 + updateGridSwitchedTime(userId, gridId); + } else { + resultDto.setRegisterState(NumConstant.ONE); + } + } + // 未注册 + else { + resultDto.setRegisterState(NumConstant.ZERO); + } + return new Result().ok(resultDto); + } + + @Override + @DataSource(value = DataSourceNames.FIRST) + public UserDTO get(String id) { + UserDjylEntity entity = baseDao.selectById(id); + UserDTO resultDTO = ConvertUtils.sourceToTarget(entity, UserDTO.class); + Integer submitNum = userAuthenticateHistoryDao.countAuthenticateHistory(id, null); + resultDTO.setTotalSubmitNum(submitNum == null ? 0 : submitNum); + //0 未通过1通过 + Integer failNum = userAuthenticateHistoryDao.countAuthenticateHistory(id, NumConstant.ZERO_STR); + resultDTO.setTotalFailNum(failNum == null ? 0 : failNum); + Integer passSubmitNum = userAuthenticateHistoryDao.countAuthenticateHistory(id, NumConstant.ONE_STR); + resultDTO.setTotalPassSubmitNum(passSubmitNum == null ? 0 : passSubmitNum); + return resultDTO; + } + + /** + * 用户网格关系表,更新最后访问网格的时间 + * + * @param userId 用户id + * @param gridId 网格id + * @return void + * @author work@yujt.net.cn + * @date 2020/2/26 14:59 + */ + private void updateGridSwitchedTime(String userId, Long gridId) { + UpdateWrapper wrapper = new UpdateWrapper<>(); + wrapper.eq(FieldConstant.GRID_ID, gridId).eq(UserFieldConsant.USER_ID, userId); + UserGridRelationEntity entity = new UserGridRelationEntity(); + entity.setSwitchedTime(new Date()); + userGridRelationService.update(entity, wrapper); + } + +} diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/impl/UserServiceImpl.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/impl/UserServiceImpl.java index 9e9742514..42be39ae3 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/impl/UserServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/user/service/impl/UserServiceImpl.java @@ -22,10 +22,8 @@ import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.hutool.core.collection.CollUtil; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.toolkit.SqlHelper; import com.elink.esua.epdc.commons.dynamic.datasource.annotation.DataSource; import com.elink.esua.epdc.commons.mybatis.enums.EpdcDelFlagEnum; @@ -130,9 +128,6 @@ public class UserServiceImpl extends BaseServiceImpl implem @Autowired private PartyStandardBearerApplyService partyStandardBearerApplyService; - @Resource - private UserDjylDao djylDao; - @Override @DataSource(value = DataSourceNames.FIRST) public PageData page(Map params) { @@ -659,47 +654,7 @@ public class UserServiceImpl extends BaseServiceImpl implem return new Result().ok(resultDto); } - @Override - public Result checkNamUserRegisterState(EpdcCheckUserRegisterFromDTO fromDto) { - Long gridId = fromDto.getGridId(); - UserDTO userDto = null; - String userId = null; - List gridIdList = null; - // 查询当前用户信息 - List userList = baseDao.selectUserByWxForLogin(fromDto.getOpenId(), fromDto.getWxUnionId()); - if (null != userList.get(NumConstant.ZERO)) { - userDto = userList.get(NumConstant.ZERO); - userId = userDto.getId(); - // 循环集合,确保集合中都是同一个用户的信息 - for (UserDTO oneUserDto : userList) { - if (!userId.equals(oneUserDto.getId())) { - throw new RenException("用户信息异常,无法匹配唯一用户"); - } - gridIdList.add(oneUserDto.getGridId()); - } - } - // 组装接口返回结果 - EpdcUserRegisterInfoResultDTO resultDto = new EpdcUserRegisterInfoResultDTO(); - resultDto.setGridId(gridId); - // 用户已注册 - if (null != userDto) { - resultDto.setUserDTO(userDto); - // 已绑定当前网格 - if (gridIdList.contains(gridId)) { - resultDto.setRegisterState(NumConstant.TWO); - resultDto.setGrid(userDto.getGrid()); - // 更新最后一次切换网格时间 - updateGridSwitchedTime(userId, gridId); - } else { - resultDto.setRegisterState(NumConstant.ONE); - } - } - // 未注册 - else { - resultDto.setRegisterState(NumConstant.ZERO); - } - return new Result().ok(resultDto); - } + /** * 用户网格关系表,更新最后访问网格的时间 @@ -712,8 +667,7 @@ public class UserServiceImpl extends BaseServiceImpl implem */ private void updateGridSwitchedTime(String userId, Long gridId) { UpdateWrapper wrapper = new UpdateWrapper<>(); - wrapper.eq(FieldConstant.GRID_ID, gridId) - .eq(UserFieldConsant.USER_ID, userId); + wrapper.eq(FieldConstant.GRID_ID, gridId).eq(UserFieldConsant.USER_ID, userId); UserGridRelationEntity entity = new UserGridRelationEntity(); entity.setSwitchedTime(new Date()); @@ -770,54 +724,7 @@ public class UserServiceImpl extends BaseServiceImpl implem return new Result().ok(resultDto); } - @Override - @Transactional(rollbackFor = Exception.class) - public Result namSaveUserOrBindGrid(EpdcUserRegisterBindGridFormDTO fromDto) { - UserDTO formUserDto = fromDto.getUserDTO(); - UserGridRelationDTO userGridRel = fromDto.getGridRelationDTO(); - // 用户注册 - if (NumConstant.ZERO == fromDto.getRegisterState()) { - UserDjylEntity userEntity = ConvertUtils.sourceToTarget(formUserDto, UserDjylEntity.class); - if (djylDao.insert(userEntity) > 0) { - formUserDto.setId(userEntity.getId()); - } else { - return new Result().error("用户注册失败"); - } - } - userGridRel.setUserId(formUserDto.getId()); - //修改数据库结构 - Result parentAndAllDeptDTOResult = adminFeignClient.getParentAndAllDept(userGridRel.getGridId().toString()); - if (!parentAndAllDeptDTOResult.success()) { - return new Result().error(parentAndAllDeptDTOResult.getMsg()); - } - userGridRel.setAllDeptNames(parentAndAllDeptDTOResult.getData().getAllDeptNames()); - userGridRel.setAllDeptIds(parentAndAllDeptDTOResult.getData().getAllDeptIds()); - userGridRel.setParentDeptNames(parentAndAllDeptDTOResult.getData().getParentDeptNames()); - userGridRel.setParentDeptIds(parentAndAllDeptDTOResult.getData().getParentDeptIds()); - // 用户绑定网格 - userGridRelationService.save(userGridRel); - // 组装用户注册信息 - EpdcUserRegisterInfoResultDTO resultDto = new EpdcUserRegisterInfoResultDTO(); - resultDto.setRegisterState(NumConstant.TWO); - resultDto.setGrid(userGridRel.getGrid()); - resultDto.setGridId(userGridRel.getGridId()); - resultDto.setUserDTO(formUserDto); - - // 记录邀请记录 - if (StringUtils.isNotEmpty(fromDto.getInviteUserId())) { - UserInvitationRecordEntity entity = new UserInvitationRecordEntity(); - entity.setUserId(formUserDto.getId()); - entity.setInviteUserId(fromDto.getInviteUserId()); - // 获取用户信息 - UserDTO userDto = this.get(formUserDto.getId()); - entity.setRegisterTime(userDto.getRegisterTime()); - entity.setGrid(userGridRel.getGrid()); - entity.setGridId(userGridRel.getGridId()); - userInvitationRecordService.insert(entity); - } - return new Result().ok(resultDto); - } @Override @DataSource(value = DataSourceNames.FIRST) @@ -1469,13 +1376,7 @@ public class UserServiceImpl extends BaseServiceImpl implem return new Result().ok(cachingUserInfoDTO); } - @Override - public Result queryNpmCachingUserInfo(EpdcAppQueryUserInfoFormDTO formDTO) { - if (StringUtils.isBlank(formDTO.getOpenId())) { - throw new RenException("openId不能为空"); - } - return new Result().ok(baseDao.selectNpmCachingUserInfoDTO(formDTO.getOpenId(), formDTO.getUnionId())); - } + /** * @return com.elink.esua.epdc.commons.tools.utils.Result @@ -2162,56 +2063,4 @@ public class UserServiceImpl extends BaseServiceImpl implem return new Result().error("党员亮旗审核处理失败"); } - @Override - @Transactional(rollbackFor = Exception.class) - public Result npmUserRegister(UserDTO userDto) { - //修改数据库结构 - Result parentAndAllDeptDTOResult = adminFeignClient.getParentAndAllDept(userDto.getGridId().toString()); - if (!parentAndAllDeptDTOResult.success()) { - return new Result().error(parentAndAllDeptDTOResult.getMsg()); - } - - UserEntity entity = ConvertUtils.sourceToTarget(userDto, UserEntity.class); - insert(entity); - - UserGridRelationDTO dto = new UserGridRelationDTO(); - dto.setUserId(entity.getId()); - dto.setAllDeptNames(parentAndAllDeptDTOResult.getData().getAllDeptNames()); - dto.setAllDeptIds(parentAndAllDeptDTOResult.getData().getAllDeptIds()); - dto.setParentDeptNames(parentAndAllDeptDTOResult.getData().getParentDeptNames()); - dto.setParentDeptIds(parentAndAllDeptDTOResult.getData().getParentDeptIds()); - dto.setGridId(parentAndAllDeptDTOResult.getData().getGridId()); - dto.setGrid(parentAndAllDeptDTOResult.getData().getGrid()); - dto.setSwitchedTime(new Date()); - userGridRelationService.save(dto); - - userDto.setAllDeptIds(parentAndAllDeptDTOResult.getData().getAllDeptIds()); - return new Result().ok(userDto); - } - - @Override - public Result npmUserUpdate(UserDTO userDto) { - //修改数据库结构 - Result parentAndAllDeptDTOResult = adminFeignClient.getParentAndAllDept(userDto.getGridId().toString()); - if (!parentAndAllDeptDTOResult.success()) { - return new Result().error(parentAndAllDeptDTOResult.getMsg()); - } - - UserDjylEntity entity = ConvertUtils.sourceToTarget(userDto, UserDjylEntity.class); - entity.setId(userDto.getUserId()); - djylDao.updateById(entity); - - UserGridRelationEntity entity1 = new UserGridRelationEntity(); - entity1.setAllDeptIds(parentAndAllDeptDTOResult.getData().getAllDeptIds()); - entity1.setAllDeptNames(parentAndAllDeptDTOResult.getData().getAllDeptNames()); - entity1.setParentDeptIds(parentAndAllDeptDTOResult.getData().getParentDeptIds()); - entity1.setParentDeptNames(parentAndAllDeptDTOResult.getData().getParentDeptNames()); - entity1.setGridId(parentAndAllDeptDTOResult.getData().getGridId()); - entity1.setGrid(parentAndAllDeptDTOResult.getData().getGrid()); - LambdaUpdateWrapper updateWrapper = Wrappers.lambdaUpdate(); - updateWrapper.eq(UserGridRelationEntity::getUserId, entity.getId()); - userGridRelationService.update(entity1, updateWrapper); - - return new Result().ok("修改成功"); - } } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml index 730c22907..f86a39230 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml @@ -444,18 +444,7 @@ ur.SWITCHED_TIME DESC - + @@ -512,45 +501,6 @@ limit 1 - - - - UPDATE esua_epdc_user.epdc_user_djyl - SET - `NICKNAME` = '卢先生', - `MOBILE` = '16619860778', - `PASSWORD` = '', - `REGISTER_TIME` = '2023-08-04 16:06:24', - `FACE_IMG` = 'wxfile://tmp_87ba503692d82d070db90b527bbed37c.jpg', - `SEX` = '1', `BIRTHDAY` = '1986-07-22', - `EMAIL` = '', - `TELEPHONE` = '', - `ZIP_CODE` = '', - `PROFESSION` = '', - `HOBBIES` = '', - `USER_SIGN` = '', - `INVITATION_CODE` = '', - `LAST_LOGIN_TIME` = '2023-08-04 16:06:24', - `LAST_LOGIN_IP` = '122.4.65.68', - `LAST_LONGITUDE` = '', - `LAST_LATITUDE` = '', - `REAL_NAME` = '卢岩', - `IDENTITY_NO` = '370829198607222512', - `ROAD` = '', - `VILLAGE_NAME` = '小港名城', - `DWELLING_PLACE` = '', - `ADDRESS` = '小港名城', - `WX_OPEN_ID` = 'oZCeb5Zt42Zb8PlJFdhPtnGF57Kk', - `WX_UNION_ID` = '', - `PARTY_FLAG` = '1', - `REGISTER_WAY` = 'wx', - `REGISTER_SOURCE` = 'wp', - `MOBILE_PROVINCE` = '', - `MOBILE_CITY` = '', - `MOBILE_CARRIER` = '', - `POINTS` = 0, - `ACTIVE_POINTS` = 0, - `INVITE_USER_ID` = '', - `STATE` = '0', - `DEL_FLAG` = '1', - `REVISION` = 0, - `CREATED_BY` = '', - `CREATED_TIME` = '2023-07-11 18:16:51', - `UPDATED_BY` = 'APP_USER', - `UPDATED_TIME` = '2023-08-04 16:06:24', - `LAST_NAME` = '', `FIRST_NAME` = '', - `REMARK` = '', - `DEPT_ID` = 1224132056492081153, - `PARENT_DEPT_IDS` = '', - `PARENT_DEPT_NAMES` = '', - `ALL_DEPT_IDS` = '', - `ALL_DEPT_NAMES` = '', - `RENT_FLAG` = '', - `DRIVER_FLAG` = '', - `WORK_UNIT` = '亿联', - `WORK_TYPE` = '私营企业', - `WORK_INDUSTRY` = '科技创新', - `SHIBEI` = 1, - `WORK_INDUSTRY_TEXT` = '', - `COUPLING_COMMUNITY` = '1175270520603930625,1202770845325680641,1202772237662642177,1224132056492081153' - WHERE `ID` = '6a1b5f8be4432ffb21f6b795aa6ce362'; - - - - - insert into epmet_user.user - ( - ID, - CUSTOMER_ID, - FROM_APP, - FROM_CLIENT, - DEL_FLAG, - REVISION, - CREATED_BY, - CREATED_TIME, - UPDATED_BY, - UPDATED_TIME - ) - values - ( - #{userId}, - (select dct.dict_value from esua_epdc_admin.sys_dict dct where dct.del_flag = 0 and dct.dict_type = 'dcp' and dct.pid != 0), - 'resi', - 'wxmp', - '0', - 0, - 'APP_USER', - NOW(), - 'APP_USER', - NOW() - ) - - diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDjlyDao.xml b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDjlyDao.xml index 297ee76e8..12f0d6c5f 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDjlyDao.xml +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDjlyDao.xml @@ -3,4 +3,65 @@ + + + + + + + + + + + + + + + + + + +