Browse Source

【书记在线 - 获取工作端和数据端openId 】-【功能添加】-(魏凯)-2020/05/26

feature/dangjian
weikai 6 years ago
parent
commit
65976f9d69
  1. 26
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/UserWorkAndAnalyOpenIdDTO.java
  2. 12
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java
  3. 9
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysUserDao.java
  4. 25
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/feign/UserRelationFeignClient.java
  5. 15
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserRelationClientFallback.java
  6. 10
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysUserService.java
  7. 29
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysUserServiceImpl.java
  8. 26
      esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysUserDao.xml

26
esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/UserWorkAndAnalyOpenIdDTO.java

@ -0,0 +1,26 @@
package com.elink.esua.epdc.dto.epdc.result;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @Description: 书记在线 - 用户id获取工作和数据端openId返回类
* @Param:
* @return:
* @Author: wk
* @Date: 2020/5/26
*/
@Data
public class UserWorkAndAnalyOpenIdDTO implements Serializable {
private static final long serialVersionUID = -1L;
/**
* 工作端openId集合
*/
private List<String>workOpenIds;
/**
* 数据端openId集合
*/
private List<String>analyOpenIds;
}

12
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java

@ -26,6 +26,7 @@ import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.dto.*;
import com.elink.esua.epdc.dto.epdc.GridLeaderRegisterDTO;
import com.elink.esua.epdc.dto.epdc.result.UserWorkAndAnalyOpenIdDTO;
import com.elink.esua.epdc.excel.SysUserExcel;
import com.elink.esua.epdc.service.*;
import io.swagger.annotations.Api;
@ -476,5 +477,16 @@ public class SysUserController {
ValidatorUtils.validateEntity(dto);
return sysUserService.modifyPwd(dto);
}
/**
* @Description: 根据userId查询 工作端和数据端userId
* @Param: []
* @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.Map<java.lang.String,java.util.List<java.lang.String>>>
* @Author: wk
* @Date: 2020/5/26
*/
@GetMapping("userRelationWorkAndAnalyOpenId")
public Result<UserWorkAndAnalyOpenIdDTO> userRelationWorkAndAnalyOpenId(){
return sysUserService.selectOpenId();
}
}

9
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysUserDao.java

@ -105,4 +105,13 @@ public interface SysUserDao extends BaseDao<SysUserEntity> {
* @Date: 2020-01-09
*/
List<String> getSysGridLeaderPhone(Long deptId);
/**
* @Description: 根据userId集合查询openId
* @Param: [userIds, type] userId集合,openId类型 1 工作端 2 数据端
* @return: java.util.List<java.lang.String>
* @Author: wk
* @Date: 2020/5/26
*/
List<String>selectListOpenIds(@Param("userIds") List<String> userIds,
@Param("type")String type);
}

25
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/feign/UserRelationFeignClient.java

@ -0,0 +1,25 @@
package com.elink.esua.epdc.feign;
import com.elink.esua.epdc.commons.tools.utils.Result;
import org.springframework.web.bind.annotation.GetMapping;
import java.util.List;
/**
* @Description: 调用数据分析模块 - 书记在线的用户id
* @Param:
* @return:
* @Author: wk
* @Date: 2020/5/26
*/
public interface UserRelationFeignClient {
/**
* @Description: 调用数据分析 - 书记在线的用户名单
* @Param: []
* @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<java.lang.String>>
* @Author: wk
* @Date: 2020/5/26
*/
@GetMapping(value = "/cloudAnalysis/masterGroup/getUserRelationList")
Result<List<String>> selectUserId();
}

15
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserRelationClientFallback.java

@ -0,0 +1,15 @@
package com.elink.esua.epdc.feign.fallback;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.feign.UserRelationFeignClient;
import java.util.List;
public class UserRelationClientFallback implements UserRelationFeignClient {
@Override
public Result<List<String>> selectUserId() {
return ModuleUtils.feignConError(ServiceConstant.EPDC_ANALYSIS_SERVER, "selectUserId");
}
}

10
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysUserService.java

@ -15,6 +15,7 @@ import com.elink.esua.epdc.dto.ModifyPwdDTO;
import com.elink.esua.epdc.dto.SysUserDTO;
import com.elink.esua.epdc.dto.SysUserOpenIdFormDTO;
import com.elink.esua.epdc.dto.epdc.GridLeaderRegisterDTO;
import com.elink.esua.epdc.dto.epdc.result.UserWorkAndAnalyOpenIdDTO;
import com.elink.esua.epdc.entity.SysUserEntity;
import java.util.List;
@ -146,4 +147,13 @@ public interface SysUserService extends BaseService<SysUserEntity> {
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
Result modifyPwd(ModifyPwdDTO dto);
/**
* @Description: 根据userId查询 工作端和数据端userId
* @Param: []
* @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.Map<java.lang.String,java.util.List<java.lang.String>>>
* @Author: wk
* @Date: 2020/5/26
*/
Result<UserWorkAndAnalyOpenIdDTO> selectOpenId();
}

29
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysUserServiceImpl.java

@ -31,7 +31,10 @@ import com.elink.esua.epdc.dto.SysUserDTO;
import com.elink.esua.epdc.dto.SysUserOpenIdFormDTO;
import com.elink.esua.epdc.dto.epdc.GridForLeaderRegisterDTO;
import com.elink.esua.epdc.dto.epdc.GridLeaderRegisterDTO;
import com.elink.esua.epdc.dto.epdc.result.UserWorkAndAnalyOpenIdDTO;
import com.elink.esua.epdc.entity.SysUserEntity;
import com.elink.esua.epdc.feign.OssFeignClient;
import com.elink.esua.epdc.feign.UserRelationFeignClient;
import com.elink.esua.epdc.service.SysDeptService;
import com.elink.esua.epdc.service.SysRoleUserService;
import com.elink.esua.epdc.service.SysUserService;
@ -56,6 +59,8 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit
private SysRoleUserService sysRoleUserService;
@Autowired
private SysDeptService sysDeptService;
@Autowired
private UserRelationFeignClient userRelationFeignClient;
@Override
public PageData<SysUserDTO> page(Map<String, Object> params) {
@ -302,5 +307,29 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit
return new Result().ok(true);
}
/**
* @Description: 根据userId查询 工作端和数据端userId
* @Param: []
* @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.Map<java.lang.String,java.util.List<java.lang.String>>>
* @Author: wk
* @Date: 2020/5/26
*/
@Override
public Result<UserWorkAndAnalyOpenIdDTO> selectOpenId() {
UserWorkAndAnalyOpenIdDTO openIdDto = new UserWorkAndAnalyOpenIdDTO();
//1.调用数据分析端-书记在线接口获取userId集合
Result<List<String>> ResultuserIdList = userRelationFeignClient.selectUserId();
List<String> userIds = ResultuserIdList.getData();
if (null == userIds|| userIds.size()==0) {
return new Result().error("获取数据失败,请稍后再试");
}
//2.获得两项openId
List<String> workOpenIds = baseDao.selectListOpenIds(userIds,"1");
openIdDto.setWorkOpenIds(workOpenIds);
List<String> AnalysisOpenIds = baseDao.selectListOpenIds(userIds,"2");
openIdDto.setAnalyOpenIds(AnalysisOpenIds);
return new Result<UserWorkAndAnalyOpenIdDTO>().ok(openIdDto);
}
}

26
esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysUserDao.xml

@ -3,6 +3,13 @@
<mapper namespace="com.elink.esua.epdc.dao.SysUserDao">
<!-- userId 集合 -->
<sql id="foreachUserIdList">
<foreach collection="userIds" item="userId" open="(" separator="," close=")">
#{userId}
</foreach>
</sql>
<select id="getList" resultType="com.elink.esua.epdc.entity.SysUserEntity">
select t1.*, (select t2.name from sys_dept t2 where t2.id=t1.dept_id) deptName from sys_user t1
where t1.del_flag = 0 and t1.super_admin = 0
@ -152,4 +159,23 @@
AND d.dept_id = #{deptId}
) c
</select>
<select id="selectListOpenIds" resultType="java.lang.String">
SELECT
<if test="type=='1'">
work_open_id
</if>
<if test="type== '2'">
analysis_open_id
</if>
FROM
sys_user
WHERE
del_flag = 0
<if test="userIds != null and userIds.size()>0">
AND
id IN <include refid="foreachUserIdList"></include>
</if>
</select>
</mapper>

Loading…
Cancel
Save