generated from dxfeng/secondev-wugang-dxfeng
经理门户、HRBP门户 增加穿透地址
This commit is contained in:
parent
985711fb66
commit
3339821988
|
|
@ -2,7 +2,6 @@ package com.weaver.seconddev.portal.controller;
|
|||
|
||||
import com.weaver.common.authority.annotation.WeaPermission;
|
||||
import com.weaver.common.base.entity.result.WeaResult;
|
||||
import com.weaver.seconddev.portal.entity.po.PortalPO;
|
||||
import com.weaver.seconddev.portal.service.ManagerPortalService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
|
@ -11,7 +10,6 @@ import org.springframework.web.bind.annotation.RequestBody;
|
|||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
|
|
@ -49,7 +47,7 @@ public class ManagerPortalController {
|
|||
}
|
||||
|
||||
@PostMapping("/getEducationInfo")
|
||||
private WeaResult<List<PortalPO>> getEducationInfo(@RequestBody Map<String, String> params) {
|
||||
private WeaResult<Map<String, Object>> getEducationInfo(@RequestBody Map<String, String> params) {
|
||||
return managerPortalService.getEducationInfo(params);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,16 @@
|
|||
package com.weaver.seconddev.portal.entity.po;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author:dxfeng
|
||||
* @createTime: 2025/07/11
|
||||
* @version: 1.0
|
||||
*/
|
||||
@Data
|
||||
public class PortalUrlDetail {
|
||||
private String id;
|
||||
private String detailKey;
|
||||
private String urlAddress;
|
||||
private String detailName;
|
||||
}
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
package com.weaver.seconddev.portal.mapper;
|
||||
|
||||
import com.weaver.seconddev.portal.entity.po.PortalUrlDetail;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author:dxfeng
|
||||
* @createTime: 2025/07/11
|
||||
* @version: 1.0
|
||||
*/
|
||||
@Mapper
|
||||
public interface PortalMapper {
|
||||
List<PortalUrlDetail> getPortalUrlDetail(@Param("tenantKey") String tenantKey,@Param("portalKey") String portalKey,@Param("componentKey") String componentKey);
|
||||
}
|
||||
|
|
@ -1,9 +1,7 @@
|
|||
package com.weaver.seconddev.portal.service;
|
||||
|
||||
import com.weaver.common.base.entity.result.WeaResult;
|
||||
import com.weaver.seconddev.portal.entity.po.PortalPO;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
|
|
@ -55,7 +53,7 @@ public interface ManagerPortalService {
|
|||
* @param params
|
||||
* @return
|
||||
*/
|
||||
WeaResult<List<PortalPO>> getEducationInfo(Map<String, String> params);
|
||||
WeaResult<Map<String, Object>> getEducationInfo(Map<String, String> params);
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,9 @@ package com.weaver.seconddev.portal.service.impl;
|
|||
|
||||
import com.weaver.common.base.entity.result.WeaResult;
|
||||
import com.weaver.seconddev.portal.entity.param.HrbpParam;
|
||||
import com.weaver.seconddev.portal.entity.po.PortalUrlDetail;
|
||||
import com.weaver.seconddev.portal.mapper.HrbpPortalMapper;
|
||||
import com.weaver.seconddev.portal.mapper.PortalMapper;
|
||||
import com.weaver.seconddev.portal.service.HrbpPortalService;
|
||||
import com.weaver.teams.security.context.UserContext;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
|
@ -10,7 +12,9 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author:dxfeng
|
||||
|
|
@ -21,9 +25,14 @@ import java.util.Map;
|
|||
@Service
|
||||
public class HrbpPortalServiceImpl implements HrbpPortalService {
|
||||
|
||||
private static final String PORTAL_KEY = "hrbpPortal";
|
||||
|
||||
@Autowired
|
||||
HrbpPortalMapper hrbpPortalMapper;
|
||||
|
||||
@Autowired
|
||||
PortalMapper portalMapper;
|
||||
|
||||
@Override
|
||||
public WeaResult<Map<String, Object>> getToDo(Map<String, String> params) {
|
||||
|
||||
|
|
@ -38,21 +47,25 @@ public class HrbpPortalServiceImpl implements HrbpPortalService {
|
|||
int toLeaveCount = hrbpPortalMapper.getToLeaveCount(hrbpParam);
|
||||
int toSignCount = hrbpPortalMapper.getToSignCount(hrbpParam);
|
||||
int toProxyCount = hrbpPortalMapper.getToProxyCount(hrbpParam);
|
||||
|
||||
List<PortalUrlDetail> portalUrlDetails = portalMapper.getPortalUrlDetail(hrbpParam.getTenantKey(), PORTAL_KEY, "getToDo");
|
||||
Map<String, String> urlMap = portalUrlDetails.stream().collect(Collectors.toMap(PortalUrlDetail::getDetailKey, PortalUrlDetail::getUrlAddress));
|
||||
|
||||
// 待入职
|
||||
map.put("entry", toEntryCount);
|
||||
map.put("entryUrl", "");
|
||||
map.put("entryUrl", urlMap.get("entry"));
|
||||
// 待转正
|
||||
map.put("regular", toRegularCount);
|
||||
map.put("regularUrl", "");
|
||||
map.put("regularUrl", urlMap.get("regular"));
|
||||
// 待离职
|
||||
map.put("leave", toLeaveCount);
|
||||
map.put("leaveUrl", "");
|
||||
map.put("leaveUrl", urlMap.get("leave"));
|
||||
// 待签订
|
||||
map.put("sign", toSignCount);
|
||||
map.put("signUrl", "");
|
||||
map.put("signUrl", urlMap.get("sign"));
|
||||
// 代理期转正
|
||||
map.put("proxy", toProxyCount);
|
||||
map.put("proxyUrl", "");
|
||||
map.put("proxyUrl", urlMap.get("proxy"));
|
||||
return WeaResult.success(map);
|
||||
}
|
||||
|
||||
|
|
@ -63,35 +76,39 @@ public class HrbpPortalServiceImpl implements HrbpPortalService {
|
|||
HrbpParam hrbpParam = new HrbpParam();
|
||||
hrbpParam.setTenantKey(UserContext.getCurrentUser().getTenantKey());
|
||||
|
||||
List<PortalUrlDetail> portalUrlDetails = portalMapper.getPortalUrlDetail(hrbpParam.getTenantKey(), PORTAL_KEY, "getEmployeeData");
|
||||
Map<String, String> urlMap = portalUrlDetails.stream().collect(Collectors.toMap(PortalUrlDetail::getDetailKey, PortalUrlDetail::getUrlAddress));
|
||||
|
||||
|
||||
// 员工人数
|
||||
int allEmployeeCount = hrbpPortalMapper.getAllEmployeeCount(hrbpParam);
|
||||
map.put("allEmployee", allEmployeeCount);
|
||||
map.put("allEmployeeUrl", "");
|
||||
map.put("allEmployeeUrl", urlMap.get("allEmployee"));
|
||||
// 正式员工
|
||||
int formalEmployeeCount = hrbpPortalMapper.getFormalEmployeeCount(hrbpParam);
|
||||
map.put("formalEmployee", formalEmployeeCount);
|
||||
map.put("formalEmployeeUrl", "");
|
||||
map.put("formalEmployeeUrl", urlMap.get("formalEmployee"));
|
||||
// 实习生
|
||||
map.put("internEmployee", hrbpPortalMapper.getInternEmployeeCount(hrbpParam));
|
||||
map.put("internEmployeeUrl", "");
|
||||
map.put("internEmployeeUrl", urlMap.get("internEmployee"));
|
||||
// 外包
|
||||
map.put("outsourcing", hrbpPortalMapper.getOutsourcingCount(hrbpParam));
|
||||
map.put("outsourcingUrl", "");
|
||||
map.put("outsourcingUrl", urlMap.get("outsourcing"));
|
||||
// 劳务
|
||||
map.put("labor", hrbpPortalMapper.getLaborCount(hrbpParam));
|
||||
map.put("laborUrl", "");
|
||||
map.put("laborUrl", urlMap.get("labor"));
|
||||
// 试用
|
||||
map.put("probation", hrbpPortalMapper.getProbationCount(hrbpParam));
|
||||
map.put("probationUrl", "");
|
||||
map.put("probationUrl", urlMap.get("probation"));
|
||||
// 正式
|
||||
map.put("formal", hrbpPortalMapper.getFormalCount(hrbpParam));
|
||||
map.put("formalUrl", "");
|
||||
map.put("formalUrl", urlMap.get("formal"));
|
||||
// 实习
|
||||
map.put("intern", hrbpPortalMapper.getInternCount(hrbpParam));
|
||||
map.put("internUrl", "");
|
||||
map.put("internUrl", urlMap.get("intern"));
|
||||
// 离职
|
||||
map.put("leave", hrbpPortalMapper.getLeaveCount(hrbpParam));
|
||||
map.put("leaveUrl", "");
|
||||
map.put("leaveUrl", urlMap.get("leave"));
|
||||
return WeaResult.success(map);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,10 @@ import com.weaver.common.hrm.manage.HrmComInfoCacheHandler;
|
|||
import com.weaver.seconddev.portal.entity.param.BasicPersonnelParam;
|
||||
import com.weaver.seconddev.portal.entity.po.PieChartConfig;
|
||||
import com.weaver.seconddev.portal.entity.po.PortalPO;
|
||||
import com.weaver.seconddev.portal.entity.po.PortalUrlDetail;
|
||||
import com.weaver.seconddev.portal.mapper.LeaderCockpitMapper;
|
||||
import com.weaver.seconddev.portal.mapper.ManagerPortalMapper;
|
||||
import com.weaver.seconddev.portal.mapper.PortalMapper;
|
||||
import com.weaver.seconddev.portal.service.ManagerPortalService;
|
||||
import com.weaver.seconddev.portal.util.DateUtil;
|
||||
import com.weaver.teams.security.context.UserContext;
|
||||
|
|
@ -33,7 +36,13 @@ import java.util.stream.Collectors;
|
|||
@Slf4j
|
||||
@Service
|
||||
public class ManagerPortalServiceImpl implements ManagerPortalService {
|
||||
private static final String URL_UID = "";
|
||||
private static final String PORTAL_KEY = "managerPortal";
|
||||
|
||||
@Autowired
|
||||
LeaderCockpitMapper leaderCockpitMapper;
|
||||
|
||||
@Autowired
|
||||
PortalMapper portalMapper;
|
||||
|
||||
@Autowired
|
||||
ManagerPortalMapper managerPortalMapper;
|
||||
|
|
@ -100,16 +109,26 @@ public class ManagerPortalServiceImpl implements ManagerPortalService {
|
|||
int entryNumber = managerPortalMapper.getEntryNumber(basicPersonnelParam);
|
||||
int entryingNumber = managerPortalMapper.getEntryingNumber(basicPersonnelParam);
|
||||
|
||||
// 获取穿透地址
|
||||
List<PortalUrlDetail> portalUrlDetails = portalMapper.getPortalUrlDetail(currentUser.getTenantKey(), PORTAL_KEY, "getBasicPersonnel");
|
||||
Map<String, String> urlMap = portalUrlDetails.stream().collect(Collectors.toMap(PortalUrlDetail::getDetailKey, PortalUrlDetail::getUrlAddress));
|
||||
|
||||
// 在职人数
|
||||
returnMap.put("onJobNumber", onJobNum);
|
||||
returnMap.put("onJobNumberUrl", urlMap.get("onJobNumber"));
|
||||
// 年度离职人数
|
||||
returnMap.put("resignNumber", resignNumber);
|
||||
returnMap.put("resignNumberUrl", urlMap.get("resignNumber"));
|
||||
|
||||
// 年度入职人数
|
||||
returnMap.put("entryNumber", entryNumber);
|
||||
returnMap.put("entryNumberUrl", urlMap.get("entryNumber"));
|
||||
// 离职流程中人数
|
||||
returnMap.put("resigningNumber", resigningNumber);
|
||||
returnMap.put("resigningNumberUrl", urlMap.get("resigningNumber"));
|
||||
// 入职流程中人数
|
||||
returnMap.put("entryingNumber", entryingNumber);
|
||||
returnMap.put("entryingNumberUrl", urlMap.get("entryingNumber"));
|
||||
// TODO 测试用
|
||||
returnMap.put("basicPersonnelParam", basicPersonnelParam);
|
||||
|
||||
|
|
@ -138,13 +157,20 @@ public class ManagerPortalServiceImpl implements ManagerPortalService {
|
|||
|
||||
int employmentAnniversary = managerPortalMapper.getEmploymentAnniversary(basicPersonnelParam);
|
||||
|
||||
// 获取穿透地址
|
||||
List<PortalUrlDetail> portalUrlDetails = portalMapper.getPortalUrlDetail(currentUser.getTenantKey(), PORTAL_KEY, "getTeamMemorialDay");
|
||||
Map<String, String> urlMap = portalUrlDetails.stream().collect(Collectors.toMap(PortalUrlDetail::getDetailKey, PortalUrlDetail::getUrlAddress));
|
||||
|
||||
Map<String, Object> returnMap = new HashMap<>();
|
||||
// 生日提醒
|
||||
returnMap.put("birthdayNum", birthdayNum);
|
||||
returnMap.put("birthdayNumUrl", urlMap.get("birthdayNum"));
|
||||
// 转正日期
|
||||
returnMap.put("regularEmployeeNum", regularEmployeeNum);
|
||||
returnMap.put("regularEmployeeNumUrl", urlMap.get("regularEmployeeNum"));
|
||||
// 入职周年提醒
|
||||
returnMap.put("employmentAnniversary", employmentAnniversary);
|
||||
returnMap.put("employmentAnniversaryUrl", urlMap.get("employmentAnniversary"));
|
||||
|
||||
// TODO 测试用
|
||||
returnMap.put("basicPersonnelParam", basicPersonnelParam);
|
||||
|
|
@ -152,7 +178,7 @@ public class ManagerPortalServiceImpl implements ManagerPortalService {
|
|||
}
|
||||
|
||||
@Override
|
||||
public WeaResult<List<PortalPO>> getEducationInfo(Map<String, String> params) {
|
||||
public WeaResult<Map<String, Object>> getEducationInfo(Map<String, String> params) {
|
||||
|
||||
String type = params.get("type");
|
||||
if (StringUtils.isBlank(type)) {
|
||||
|
|
@ -166,31 +192,40 @@ public class ManagerPortalServiceImpl implements ManagerPortalService {
|
|||
// 设置部门范围ID集合
|
||||
basicPersonnelParam.setDepartmentIdList(allDepartmentIdList);
|
||||
basicPersonnelParam.setPieType(type);
|
||||
List<PortalUrlDetail> portalUrlDetails = portalMapper.getPortalUrlDetail(currentUser.getTenantKey(), PORTAL_KEY, "getEducationInfo");
|
||||
Map<String, String> urlMap = portalUrlDetails.stream().collect(Collectors.toMap(PortalUrlDetail::getDetailKey, PortalUrlDetail::getUrlAddress));
|
||||
List<PortalPO> returnList = new ArrayList<>();
|
||||
Map<String, Object> returnMap = new HashMap<>();
|
||||
switch (type) {
|
||||
case "education":
|
||||
// 学历
|
||||
dealEducationInfo(basicPersonnelParam, returnList);
|
||||
returnMap.put("url", urlMap.get("education"));
|
||||
|
||||
break;
|
||||
case "age":
|
||||
// 年龄
|
||||
dealAgeInfo(basicPersonnelParam, returnList);
|
||||
returnMap.put("url", urlMap.get("age"));
|
||||
break;
|
||||
case "grade":
|
||||
// 职级
|
||||
returnMap.put("url", urlMap.get("grade"));
|
||||
break;
|
||||
case "company":
|
||||
// 司龄
|
||||
dealCompanyInfo(basicPersonnelParam, returnList);
|
||||
returnMap.put("url", urlMap.get("company"));
|
||||
break;
|
||||
case "performance":
|
||||
// 绩效
|
||||
returnMap.put("url", urlMap.get("performance"));
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return WeaResult.success(returnList);
|
||||
returnMap.put("list", returnList);
|
||||
return WeaResult.success(returnMap);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.weaver.seconddev.portal.mapper.PortalMapper">
|
||||
|
||||
<select id="getPortalUrlDetail" resultType="com.weaver.seconddev.portal.entity.po.PortalUrlDetail">
|
||||
select t.id as id,t.jkbs as detailKey,t.ctdz as urlAddress,t.zjmc as detailName from e10_common.uf_mhctdz_mxb1 t
|
||||
inner join e10_common.uf_mhctdz t1
|
||||
on t.FORM_DATA_ID =t1.FORM_DATA_ID
|
||||
where t.delete_type = 0 and t.tenant_key = #{tenantKey}
|
||||
and t1.tenant_key = #{tenantKey} and t1.delete_type = 0
|
||||
and t1.mhmc = #{portalKey} and t1.zjjk = #{componentKey}
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue