Browse Source

ext接口加上userId返参

dev_shibei_match
wangchao 5 years ago
parent
commit
2c92c49c23
  1. 1
      epmet-module/epmet-ext/epmet-ext-server/src/main/java/com/epmet/controller/OpenUpController.java
  2. 44
      epmet-module/epmet-ext/epmet-ext-server/src/main/java/com/epmet/controller/OpenUpUserController.java
  3. 4
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/ExtStaffInfoResultDTO.java
  4. 82
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/ExtUserInfoResultDTO.java
  5. 10
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java
  6. 5
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java
  7. 12
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerAgencyController.java
  8. 9
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerAgencyService.java
  9. 30
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java
  10. 22
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/CommonUserIdFormDTO.java
  11. 12
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java
  12. 5
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java
  13. 15
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserBaseInfoController.java
  14. 11
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserBaseInfoService.java
  15. 1
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java
  16. 69
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserBaseInfoServiceImpl.java

1
epmet-module/epmet-ext/epmet-ext-server/src/main/java/com/epmet/controller/OpenUpController.java

@ -102,3 +102,4 @@ public class OpenUpController {
}
}

44
epmet-module/epmet-ext/epmet-ext-server/src/main/java/com/epmet/controller/OpenUpUserController.java

@ -0,0 +1,44 @@
package com.epmet.controller;
import com.epmet.commons.extappauth.annotation.ExternalAppRequestAuth;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.form.CommonUserIdFormDTO;
import com.epmet.dto.result.ExtUserInfoResultDTO;
import com.epmet.feign.EpmetUserOpenFeignClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Description
* @ClassName OpenUpUserController
* @Auth wangc
* @Date 2020-08-21 17:56
*/
@RestController
@RequestMapping("user")
public class OpenUpUserController {
@Autowired
private EpmetUserOpenFeignClient epmetUserOpenFeignClient;
/**
* @Description 查找当前用户的信息
* @param
* @return
* @author wangc
* @date 2020.08.17 10:30
**/
@ExternalAppRequestAuth
@PostMapping("userinfo")
Result<ExtUserInfoResultDTO> userInfo(@LoginUser TokenDto token){
CommonUserIdFormDTO userParam = new CommonUserIdFormDTO();
userParam.setUserId(token.getUserId());
ValidatorUtils.validateEntity(userParam, CommonUserIdFormDTO.CommonUserIdGroup.class);
return epmetUserOpenFeignClient.extUserInfo(userParam);
}
}

4
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/ExtStaffInfoResultDTO.java

@ -15,6 +15,10 @@ import java.util.List;
public class ExtStaffInfoResultDTO implements Serializable {
private static final long serialVersionUID = 3874334777882476292L;
/**
* 当前用户id
* */
private String userId;
/**
* 工作人员昵称
* */

82
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/ExtUserInfoResultDTO.java

@ -0,0 +1,82 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
* @Description
* @ClassName ExtUserInfoResultDTO
* @Auth wangc
* @Date 2020-08-21 17:09
*/
@Data
public class ExtUserInfoResultDTO implements Serializable {
private static final long serialVersionUID = 5888986115026957874L;
/**
* 当前用户id
* */
private String userId = "";
/**
* 工作人员昵称
* */
private String nickname = "";
/**
* 工作人员头像
* */
private String profile = "";
/**
*
* */
private String realName = "";
/**
* 客户Id
* */
private String customerId = "";
/**
* 客户名称
* */
private String customerName = "";
/**
* 机关Id
* */
private String agencyId = "";
/**
* 机关名称
* */
private String agencyName = "";
/**
* 机关路径Id
* */
private String agencyIdPath = "";
/**
* 机关路径名称
* */
private String agencyNamePath = "";
/**
* 网格Id
* */
private String gridId = "";
/**
* 网格名称
* */
private String gridName = "";
/**
* 用户角色列表
* */
private List<ExtRoleMapResultDTO> roleList = new ArrayList<>();
}

10
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java

@ -240,4 +240,14 @@ public interface GovOrgOpenFeignClient {
**/
@PostMapping("/gov/org/customeragency/permissionext/{staffId}")
Result<ExtStaffPermissionResultDTO> staffPermissionExt(@PathVariable(value = "staffId") String staffId);
/**
* @Description User模块调用gov-org查询用户所在机关的信息以及客户信息
* @param result ExtStaffInfoResultDTO.class
* @return Result<ExtStaffInfoResultDTO>
* @author wangc
* @date 2020.08.17 13:52
**/
@PostMapping("/gov/org/customeragency/userinfoext")
Result<ExtUserInfoResultDTO> userInfoExt(@RequestBody ExtUserInfoResultDTO result);
}

5
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java

@ -141,4 +141,9 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient {
public Result<ExtStaffPermissionResultDTO> staffPermissionExt(String staffId) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "staffPermissionExt", staffId);
}
@Override
public Result<ExtUserInfoResultDTO> userInfoExt(ExtUserInfoResultDTO result) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "userInfoExt", result);
}
}

12
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerAgencyController.java

@ -217,4 +217,16 @@ public class CustomerAgencyController {
Result<ExtStaffPermissionResultDTO> staffPermissionExt(@PathVariable(value = "staffId") String staffId){
return new Result<ExtStaffPermissionResultDTO>().ok(customerAgencyService.staffPermissionExt(staffId));
}
/**
* @Description 对外接口 获用户员基本信息
* @param result ExtUserInfoResultDTO.class
* @return Result<ExtUserInfoResultDTO>
* @author wangc
* @date 2020.08.17 13:52
**/
@PostMapping("userinfoext")
Result<ExtUserInfoResultDTO> userInfoExt(@RequestBody ExtUserInfoResultDTO result){
return new Result<ExtUserInfoResultDTO>().ok(customerAgencyService.extUserInfo(result));
}
}

9
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerAgencyService.java

@ -196,4 +196,13 @@ public interface CustomerAgencyService extends BaseService<CustomerAgencyEntity>
* @date 2020.08.17 17:30
**/
ExtStaffPermissionResultDTO staffPermissionExt(String staffId);
/**
* @Description 查询当前用户的信息多客户/单客户epmet-plugin对外开放调用
* @param result
* @return
* @author wangc
* @date 2020.08.21 17:31
**/
ExtUserInfoResultDTO extUserInfo(ExtUserInfoResultDTO result);
}

30
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java

@ -899,6 +899,36 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl<CustomerAgencyDao
}
/**
* @Description 查询当前用户的信息多客户/单客户epmet-plugin对外开放调用
* @param result
* @return
* @author wangc
* @date 2020.08.21 17:31
**/
@Override
public ExtUserInfoResultDTO extUserInfo(ExtUserInfoResultDTO result) {
//1.查找对应的所属关系,通过最近一次登陆的网格,通过网格查找对应的机关和客户
ExtStaffInfoResultDTO orgInfo =
baseDao.selectAgencyAndGridInfoExt(result.getGridId());
if(null != orgInfo){
result.setAgencyId(orgInfo.getAgencyId());
result.setAgencyIdPath(orgInfo.getAgencyIdPath());
result.setAgencyName(orgInfo.getAgencyName());
result.setAgencyNamePath(orgInfo.getAgencyNamePath());
result.setGridName(orgInfo.getGridName());
}
//2.查找客户名称
CustomerDTO customerParam = new CustomerDTO();
customerParam.setId(orgInfo.getCustomerId());
Result<CustomerDTO> customerResult =
operCrmFeignClient.getCustomerInfo(customerParam);
if(customerResult.success() && null != customerResult.getData()){
result.setCustomerName(customerResult.getData().getCustomerName());
}
return result;
}
public <T> void mergeObject(T origin, T destination) {
if (origin == null || destination == null)

22
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/CommonUserIdFormDTO.java

@ -0,0 +1,22 @@
package com.epmet.dto.form;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* @Description userId
* @ClassName CommonUserIdFormDTO
* @Auth wangc
* @Date 2020-08-21 17:14
*/
@Data
public class CommonUserIdFormDTO implements Serializable {
private static final long serialVersionUID = 3934409262981136977L;
public interface CommonUserIdGroup extends CustomerClientShowGroup{}
@NotBlank(message = "用户Id不可为空", groups = CommonUserIdGroup.class)
private String userId;
}

12
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java

@ -1,6 +1,6 @@
package com.epmet.feign;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
@ -298,4 +298,14 @@ public interface EpmetUserOpenFeignClient {
**/
@PostMapping("epmetuser/customerstaff/extstaffinfo")
Result<ExtStaffInfoResultDTO> extStaffInfo(@RequestBody CommonStaffIdFormDTO staffParam);
/**
* @Description 查询当前用户信息 - 对外接口
* @param param
* @return
* @author wangc
* @date 2020.08.21 17:16
**/
@PostMapping("/epmetuser/userbaseinfo/extuserinfo")
Result<ExtUserInfoResultDTO> extUserInfo( @RequestBody CommonUserIdFormDTO param);
}

5
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java

@ -203,4 +203,9 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien
public Result<ExtStaffInfoResultDTO> extStaffInfo(CommonStaffIdFormDTO staffParam) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "extStaffInfo", staffParam);
}
@Override
public Result<ExtUserInfoResultDTO> extUserInfo(CommonUserIdFormDTO param) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "extUserInfo", param);
}
}

15
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserBaseInfoController.java

@ -28,9 +28,11 @@ import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.UserBaseInfoDTO;
import com.epmet.dto.form.CommonUserIdFormDTO;
import com.epmet.dto.form.IssueInitiatorFormDTO;
import com.epmet.dto.form.ResiVolunteerAuthenticateFormDTO;
import com.epmet.dto.result.CustomerUserDetailResultDTO;
import com.epmet.dto.result.ExtUserInfoResultDTO;
import com.epmet.dto.result.ResiUserBaseInfoResultDTO;
import com.epmet.dto.result.UserBaseInfoResultDTO;
import com.epmet.entity.UserBaseInfoEntity;
@ -188,5 +190,18 @@ public class UserBaseInfoController {
userBaseInfoService.clearUserCache(userIds);
return new Result();
}
/**
* @Description 查询当前用户信息 - 对外接口
* @param param
* @return
* @author wangc
* @date 2020.08.21 17:16
**/
@PostMapping("extuserinfo")
Result<ExtUserInfoResultDTO> extUserInfo( @RequestBody CommonUserIdFormDTO param){
ValidatorUtils.validateEntity(param, CommonUserIdFormDTO.CommonUserIdGroup.class);
return new Result<ExtUserInfoResultDTO>().ok(userBaseInfoService.extUserInfo(param));
}
}

11
epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserBaseInfoService.java

@ -21,8 +21,10 @@ import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.UserBaseInfoDTO;
import com.epmet.dto.form.CommonUserIdFormDTO;
import com.epmet.dto.form.ResiVolunteerAuthenticateFormDTO;
import com.epmet.dto.result.CustomerUserDetailResultDTO;
import com.epmet.dto.result.ExtUserInfoResultDTO;
import com.epmet.dto.result.ResiUserBaseInfoResultDTO;
import com.epmet.dto.result.UserBaseInfoResultDTO;
import com.epmet.entity.UserBaseInfoEntity;
@ -161,4 +163,13 @@ public interface UserBaseInfoService extends BaseService<UserBaseInfoEntity> {
* @date 2020.08.06 14:38
**/
void clearUserCache(List<String> ids);
/**
* @Description 查询当前用户信息 - 对外接口
* @param param
* @return
* @author wangc
* @date 2020.08.21 17:16
**/
ExtUserInfoResultDTO extUserInfo(CommonUserIdFormDTO param);
}

1
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java

@ -589,6 +589,7 @@ public class CustomerStaffServiceImpl extends BaseServiceImpl<CustomerStaffDao,
//查找工作人员信息
//最近一次登陆的而网格、人员信息、权限
ExtStaffInfoResultDTO result = baseDao.selectStaffInfoExt(staffParam.getStaffId());
result.setUserId(staffParam.getStaffId());
if(null != result) {
Result<ExtStaffInfoResultDTO> govOrgResult =
govOrgOpenFeignClient.staffInfoExt(result);

69
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserBaseInfoServiceImpl.java

@ -25,23 +25,24 @@ import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dao.UserBaseInfoDao;
import com.epmet.dao.UserResiInfoDao;
import com.epmet.dao.UserWechatDao;
import com.epmet.dao.*;
import com.epmet.dto.UserBaseInfoDTO;
import com.epmet.dto.UserResiInfoDTO;
import com.epmet.dto.UserWechatDTO;
import com.epmet.dto.form.CommonUserIdFormDTO;
import com.epmet.dto.form.ResiVolunteerAuthenticateFormDTO;
import com.epmet.dto.result.CustomerUserDetailResultDTO;
import com.epmet.dto.result.ResiUserBaseInfoResultDTO;
import com.epmet.dto.result.UserBaseInfoResultDTO;
import com.epmet.dto.form.UserRoleFormDTO;
import com.epmet.dto.result.*;
import com.epmet.entity.UserBaseInfoEntity;
import com.epmet.feign.GovOrgOpenFeignClient;
import com.epmet.redis.UserBaseInfoRedis;
import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO;
import com.epmet.resi.partymember.feign.ResiPartyMemberOpenFeignClient;
import com.epmet.service.UserBaseInfoService;
import com.epmet.util.ModuleConstant;
import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -57,6 +58,8 @@ import java.util.*;
@Service
public class UserBaseInfoServiceImpl extends BaseServiceImpl<UserBaseInfoDao, UserBaseInfoEntity> implements UserBaseInfoService {
private Logger logger = LogManager.getLogger(getClass());
@Autowired
private UserBaseInfoRedis userBaseInfoRedis;
@Autowired
@ -65,6 +68,12 @@ public class UserBaseInfoServiceImpl extends BaseServiceImpl<UserBaseInfoDao, Us
private UserResiInfoDao userResiInfoDao;
@Autowired
private ResiPartyMemberOpenFeignClient resiPartyMemberOpenFeignClient;
@Autowired
private UserRoleDao userRoleDao;
@Autowired
private GridLatestDao gridLatestDao;
@Autowired
private GovOrgOpenFeignClient govOrgOpenFeignClient;
@Override
public PageData<UserBaseInfoDTO> page(Map<String, Object> params) {
@ -296,4 +305,52 @@ public class UserBaseInfoServiceImpl extends BaseServiceImpl<UserBaseInfoDao, Us
if(null == ids || ids.isEmpty()) return;
userBaseInfoRedis.clearUserCache(ids);
}
/**
* @Description 查询当前用户信息 - 对外接口
* @param param
* @return
* @author wangc
* @date 2020.08.21 17:16
**/
@Override
public ExtUserInfoResultDTO extUserInfo(CommonUserIdFormDTO param) {
LatestGridInfoResultDTO currentGrid =
gridLatestDao.selectLatestGridInfoByUserId(param.getUserId());
ExtUserInfoResultDTO result = new ExtUserInfoResultDTO();
result.setUserId(param.getUserId());
UserBaseInfoResultDTO userMsg = userBaseInfoRedis.getUserInfo(param.getUserId());
if(null != userMsg) {
result.setProfile(userMsg.getHeadImgUrl());
result.setNickname(userMsg.getNickname());
result.setRealName(userMsg.getRealName());
}else{
logger.error("com.epmet.service.impl.UserBaseInfoServiceImpl.extUserInfo,查询不到用户信息,用户Id:{}",param.getUserId());
return result;
}
if(null == currentGrid || StringUtils.isBlank(currentGrid.getGridId())){
logger.error("com.epmet.service.impl.UserBaseInfoServiceImpl.extUserInfo,查询不到用户最近访问的网格,用户Id:{}",param.getUserId());
return result;
}
result.setGridId(currentGrid.getGridId());
UserRoleFormDTO roleParam = new UserRoleFormDTO();
roleParam.setGridId(currentGrid.getGridId());
roleParam.setUserId(param.getUserId());
List<UserRoleResultDTO> roleList = userRoleDao.getUserRoleInfo(roleParam);
List<ExtRoleMapResultDTO> roleListFormat = new LinkedList<>();
if(null != roleList && !roleList.isEmpty()){
roleList.forEach(role -> {
ExtRoleMapResultDTO object = ConvertUtils.sourceToTarget(role,ExtRoleMapResultDTO.class);
roleListFormat.add(object);
});
result.setRoleList(roleListFormat);
}
Result<ExtUserInfoResultDTO> govOrgResult =
govOrgOpenFeignClient.userInfoExt(result);
if(govOrgResult.success() && null != govOrgResult.getData()){
return govOrgResult.getData();}
return result;
}
}

Loading…
Cancel
Save