上海中远重工组织架构图开发

上海中远重工组织架构图
Chengliang 1 year ago
parent 6154ece836
commit fca321abeb

@ -52,6 +52,12 @@ public class ChartPO {
// 编制数
private int staffNum;
//人员所属当前部门
private String localDeptName;
//岗位名称
private String jobTitle;
public String getId() {
if (StringUtils.isNotBlank(ftype)) {
switch (ftype) {

@ -0,0 +1,25 @@
package com.engine.organization.entity.chart.params;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @Author liang.cheng
* @Date 2024/4/24 2:04 PM
* @Description: TODO
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class ModeHrmResourceParam {
private String departmentId;
}

@ -32,6 +32,8 @@ public class ResourceChartPO {
private Integer jobTitle;
private String jobBrowser;
private Integer status;
private String mobile;

@ -91,4 +91,13 @@ public interface ChartService {
* @return: java.util.Map<java.lang.String,java.lang.Object>
*/
Map<String, Object> recordStatistics(StatisticsParam param);
/**
* @Description:
* @Author: liang.cheng
* @Date: 2024/4/24 11:41 AM
* @param: [request2Map]
* @return: java.util.Map<java.lang.String,java.lang.Object>
*/
Map<String, Object> getDepartmentNewDetail(Map<String, Object> request2Map);
}

@ -0,0 +1,36 @@
package com.engine.organization.service;
import com.engine.organization.entity.chart.params.ModeHrmResourceParam;
import java.util.Map;
/**
* @Author liang.cheng
* @Date 2024/4/24 2:00 PM
* @Description:
* @Version 1.0
*/
public interface ModeHrmResourceService {
/**
* @Description:
* @Author: liang.cheng
* @Date: 2024/4/24 2:05 PM
* @param: [modeHrmResourceParam]
* @return: java.util.Map<java.lang.String,java.lang.Object>
*/
Map<String, Object> chartResourceList(ModeHrmResourceParam modeHrmResourceParam);
/**
* @Description:
* @Author: liang.cheng
* @Date: 2024/4/24 2:06 PM
* @param: [modeHrmResourceParam]
* @return: java.util.Map<java.lang.String,java.lang.Object>
*/
Map<String, Object> chartResourceChart(ModeHrmResourceParam modeHrmResourceParam);
}

@ -4,10 +4,12 @@ import cn.hutool.core.thread.ThreadUtil;
import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service;
import com.engine.organization.entity.chart.*;
import com.engine.organization.entity.chart.params.ModeHrmResourceParam;
import com.engine.organization.entity.chart.params.StatisticsParam;
import com.engine.organization.enums.ModuleTypeEnum;
import com.engine.organization.mapper.hrmresource.SystemDataMapper;
import com.engine.organization.service.ChartService;
import com.engine.organization.service.ModeHrmResourceService;
import com.engine.organization.service.OrgChartService;
import com.engine.organization.util.HasRightUtil;
import com.engine.organization.util.OrganizationAssert;
@ -86,8 +88,7 @@ public class ChartServiceImpl extends Service implements ChartService {
}
// 根结点
String root = Util.null2String(params.get("root"));
root = StringUtils.isBlank(root) ? "0" : root;
String root = new BaseBean().getPropValue("hrmOrganization", "subCompanyId");
// 维度
String dimension = Util.null2String(params.get("fclass"));
@ -104,6 +105,13 @@ public class ChartServiceImpl extends Service implements ChartService {
boolean hideDepartment = "1".equals(Util.null2String(params.get("hidedept")));
//一级部门节点
String department = Util.null2String(params.get("department"));
//隐藏班组
boolean showClass = "1".equals(Util.null2String(params.get("showClass")));
// 初始化表名
initTableNameByClass(dimension, id);
@ -139,7 +147,7 @@ public class ChartServiceImpl extends Service implements ChartService {
// 向下查询数据
if (null != topChartPO) {
findChildData(topChartPO, dataList, Integer.parseInt(depth), id, hideDepartment);
findChildData(topChartPO, dataList, Integer.parseInt(depth), id, hideDepartment,department,showClass);
}
result.put("api_status", true);
@ -162,6 +170,12 @@ public class ChartServiceImpl extends Service implements ChartService {
String versionId = Util.null2String(params.get("id"));
boolean hideDepartment = "1".equals(Util.null2String(params.get("hidedept")));
//一级部门节点
String department = Util.null2String(params.get("department"));
//显示班组
boolean showClass = "1".equals(Util.null2String(params.get("showClass")));
// 初始化表名
initTableNameByClass(dimension, versionId);
@ -176,14 +190,14 @@ public class ChartServiceImpl extends Service implements ChartService {
String fObjId = s.split("_")[1];
if (s.startsWith("s")) {
if (isRealTime) {
rs.executeQuery(getRealTimeChildSql("", "1", fObjId));
rs.executeQuery(getRealTimeChildSql("", "1", fObjId,department,showClass));
} else {
rs.executeQuery(getLastTimeChildSql("", "1", fObjId, versionId));
}
} else if (s.startsWith("d")) {
if (isRealTime) {
rs.executeQuery(getRealTimeChildSql("", "2", fObjId));
rs.executeQuery(getRealTimeChildSql("", "2", fObjId,department,showClass));
} else {
rs.executeQuery(getLastTimeChildSql("", "2", fObjId, versionId));
}
@ -347,6 +361,29 @@ public class ChartServiceImpl extends Service implements ChartService {
return result;
}
@Override
public Map<String, Object> getDepartmentNewDetail(Map<String, Object> params) {
String rootId = Util.null2String(params.get("rootId"));
String departmentId = rootId.split("_")[1];
ModeHrmResourceParam build = ModeHrmResourceParam.builder().departmentId(departmentId).build();
String detauleType = Util.null2String(params.get("detauleType"));
if (!"chart".equals(detauleType)) {
// 展示列表模块
return ServiceUtil.getService(ModeHrmResourceServiceImpl.class, user).chartResourceList(build);
}else {
return ServiceUtil.getService(ModeHrmResourceServiceImpl.class, user).chartResourceChart(build
);
}
}
@Override
public String selectVersionDate(String id) {
RecordSet rs = new RecordSet();
@ -470,22 +507,60 @@ public class ChartServiceImpl extends Service implements ChartService {
RecordSet rs = new RecordSet();
List<CompanyTreePO> departmentTree = new ArrayList<>();
List<CompanyTreePO> topDepartmentTree = new ArrayList<>();
String subCompany = Util.null2String(params.get("subcompany"));
String dimension = Util.null2String(params.get("fclass"));
String versionId = Util.null2String(params.get("id"));
if (StringUtils.isBlank(subCompany)) {
subCompany = "0";
}
String sql = getDepartmentTreeSql(versionId, dimension, subCompany);
DBType dbType = DBType.get(new RecordSet().getDBType());
// 根据分部查询顶级部门
String sql = "select id as id, id as value, departmentname as title, subcompanyid1 as pId from hrmdepartment where (canceled is null or canceled != '1') and (supdepid is null or supdepid =0) and" + dbType.ifNull("subcompanyid1", "0") + " = " + subCompany;
rs.executeQuery(sql);
while (rs.next()) {
departmentTree.add(CompanyTreePO.builder().id(rs.getString("id")).pId(rs.getString("pId")).disabled(!rs.getString("id").startsWith("d")).value(rs.getString("value")).title(rs.getString("title")).isLeaf(judgeTreeLeaf(versionId, dimension, rs.getString("id"))).build());
topDepartmentTree.add(
CompanyTreePO.builder()
.id(rs.getString("id"))
.pId(rs.getString("pId"))
.disabled(false)
.value(rs.getString("value"))
.title(rs.getString("title"))
.isLeaf(true)
.build()
);
}
result.put("departmentTree", departmentTree);
//只查询一级部门
// if (CollectionUtils.isNotEmpty(topDepartmentTree)) {
// sql = "select id as id, id as value, departmentname as title, supdepid as pId from hrmdepartment where (canceled is null or canceled != '1') and " + dbType.ifNull("supdepid", "0") + " = ?";
// for (CompanyTreePO department : topDepartmentTree) {
// getChildDepartment(department, sql, departmentTree);
// }
// }
result.put("departmentTree", topDepartmentTree);
result.put("api_status", true);
return result;
}
private void getChildDepartment(CompanyTreePO parentDepartment, String sql, List<CompanyTreePO> departmentTree) {
RecordSet rs = new RecordSet();
rs.executeQuery(sql, parentDepartment.getId());
while (rs.next()) {
CompanyTreePO build = CompanyTreePO.builder()
.id(rs.getString("id"))
.pId(rs.getString("pId"))
.disabled(false)
.value(rs.getString("value"))
.title(rs.getString("title"))
.isLeaf(true)
.build();
getChildDepartment(build, sql, departmentTree);
parentDepartment.setLeaf(false);
}
departmentTree.add(parentDepartment);
}
@Override
public Map<String, Object> getMovingTree(Map<String, Object> params) {
RecordSet rs = new RecordSet();
@ -625,6 +700,8 @@ public class ChartServiceImpl extends Service implements ChartService {
return result;
}
/**
*
* @param stp
@ -1262,26 +1339,13 @@ public class ChartServiceImpl extends Service implements ChartService {
* @return SQL
*/
private String getRealTimeTopSql(String root, String dimension) {
if ("0".equals(root)) {
// 查询集团数据
if (isRealDimension) {
// 查询实际集团表
return "select id,companyname as name,'0' as type from " + COMPANY_TABLE;
} else {
// 查询其他维度集团信息
return "select id,companyname as name,'0' as type from " + COMPANY_TABLE + " where id = '" + dimension + "'";
}
// 查询集团数据
if (isRealDimension) {
// 查询实际集团表
return "select id,companyname as name,'0' as type from " + COMPANY_TABLE;
} else {
if (hasVirtualFields) {
if (showVirtual) {
return "select a.id,a.subcompanyname as name,'1' as type ,b.fblx as isvitual,c.on_job_num,c.staff_num from " + SUB_COMPANY_TABLE + " a left join " + SUB_COMPANY_DEFINED_TABLE + " b on a.id = b.subcomid left join jcl_org_onjob c on a.id=c.data_id and c.type=1 where a.id = '" + root + "' order by showorder,id";
} else {
return "select a.id,a.subcompanyname as name,'1' as type ,b.fblx as isvitual,c.on_job_num,c.staff_num from " + SUB_COMPANY_TABLE + " a left join " + SUB_COMPANY_DEFINED_TABLE + " b on a.id = b.subcomid left join jcl_org_onjob c on a.id=c.data_id and c.type=1 where a.id = '" + root + "' and (b.fblx is null or b.fblx!='1') order by showorder,id";
}
} else {
return "select a.id,a.subcompanyname as name,'1' as type,b.on_job_num,b.staff_num from " + SUB_COMPANY_TABLE + " a left join jcl_org_onjob b on a.id=b.data_id and b.type=1 where a.id = '" + root + "' order by a.showorder,a.id";
}
// 查询其他维度集团信息
return "select id,companyname as name,'0' as type from " + COMPANY_TABLE + " where id = '" + dimension + "'";
}
}
@ -1293,7 +1357,7 @@ public class ChartServiceImpl extends Service implements ChartService {
* @param fObjId ID
* @return SQL
*/
private String getRealTimeChildSql(String sql, String fType, String fObjId) {
private String getRealTimeChildSql(String sql, String fType, String fObjId,String department,boolean showClass) {
if (StringUtils.isNotBlank(fType)) {
switch (fType) {
case "0":
@ -1307,6 +1371,10 @@ public class ChartServiceImpl extends Service implements ChartService {
sql = "select a.id,a.subcompanyname as name,'1' as type,b.on_job_num,b.staff_num from " + SUB_COMPANY_TABLE + " a left join jcl_org_onjob b on a.id=b.data_id and b.type=1 where (a.canceled is null or a.canceled != '1') and (a.supsubcomid is null or a.supsubcomid = '0') and a.companyid = '" + fObjId + "'";
}
//中远重工二开 只能查看某一分部(非标分权无效)
String subCompanyId = new BaseBean().getPropValue("hrmOrganization", "subCompanyId");
sql = sql + " and a.id = "+subCompanyId;
// 一级分部数据分权处理
if (isRealTime && user.getUID() != 1 && isRealDimension) {
DetachUtil detachUtil = new DetachUtil(user);
@ -1315,6 +1383,7 @@ public class ChartServiceImpl extends Service implements ChartService {
sql = sql + " and a.id in (" + ids + ")";
}
}
break;
case "1":
if (hasVirtualFields) {
@ -1329,7 +1398,13 @@ public class ChartServiceImpl extends Service implements ChartService {
sql = "select a.id,a.subcompanyname as name,'1' as type,showorder,b.on_job_num,b.staff_num from " + SUB_COMPANY_TABLE + " a left join jcl_org_onjob b on a.id=b.data_id and b.type=1 where (canceled is null or canceled != '1') and supsubcomid = '" + fObjId + "'" +
" union select a.id,a.departmentname as name,'2' as type,showorder,b.on_job_num,b.staff_num from " + DEPARTMENT_TABLE + " a left join jcl_org_onjob b on a.id=b.data_id and b.type=2 where (canceled is null or canceled != '1') and (supdepid is null or supdepid = '0') and subcompanyid1 = '" + fObjId + "'";
}
break;
//指定筛选一级部门节点数据
if (StringUtils.isNotEmpty(department)) {
sql += " and a.id = "+department;
}
break;
case "2":
if (hasVirtualFields) {
if (showVirtual) {
@ -1340,6 +1415,12 @@ public class ChartServiceImpl extends Service implements ChartService {
} else {
sql = "select a.id,a.departmentname as name,'2' as type,b.on_job_num,b.staff_num from " + DEPARTMENT_TABLE + " a left join jcl_org_onjob b on a.id=b.data_id and b.type=2 where (canceled is null or canceled != '1') and supdepid = '" + fObjId + "'";
}
//隐藏班组数据
if (!showClass) {
sql += " and (b.sfbz is null or b.sfbz != '1')";
}
break;
default:
break;
@ -1414,12 +1495,12 @@ public class ChartServiceImpl extends Service implements ChartService {
* @param selectDepth
* @param hideDepartment
*/
private void findChildData(ChartPO topChartPO, List<ChartPO> dataList, Integer selectDepth, String versionId, boolean hideDepartment) {
private void findChildData(ChartPO topChartPO, List<ChartPO> dataList, Integer selectDepth, String versionId, boolean hideDepartment,String department,boolean showClass) {
String fType = topChartPO.getFtype();
String fObjId = topChartPO.getFobjid();
String sql = "";
if (isRealTime) {
sql = getRealTimeChildSql(sql, fType, fObjId);
sql = getRealTimeChildSql(sql, fType, fObjId,department,showClass);
} else {
sql = getLastTimeChildSql(sql, fType, fObjId, versionId);
}
@ -1448,7 +1529,7 @@ public class ChartServiceImpl extends Service implements ChartService {
for (ChartPO chartPO : currentList) {
if (inDepth(selectDepth, chartPO.getDepartmentDepth())) {
findChildData(chartPO, dataList, selectDepth, versionId, hideDepartment);
findChildData(chartPO, dataList, selectDepth, versionId, hideDepartment,department,showClass);
}
}

@ -0,0 +1,277 @@
package com.engine.organization.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.engine.core.impl.Service;
import com.engine.organization.entity.chart.ChartPO;
import com.engine.organization.entity.chart.ResourceListColumns;
import com.engine.organization.entity.chart.params.ModeHrmResourceParam;
import com.engine.organization.entity.hrmresource.po.ResourceChartPO;
import com.engine.organization.entity.hrmresource.vo.ResourceChartVO;
import com.engine.organization.mapper.hrmresource.SystemDataMapper;
import com.engine.organization.service.ModeHrmResourceService;
import com.engine.organization.util.db.MapperProxyFactory;
import lombok.SneakyThrows;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.general.Util;
import weaver.hrm.company.DepartmentComInfo;
import weaver.hrm.company.SubCompanyComInfo;
import weaver.hrm.resource.ResourceComInfo;
import java.util.*;
/**
* @Author liang.cheng
* @Date 2024/4/24 2:01 PM
* @Description: uf_zsygrzbdd uf_qlwbrydngljmb
* @Version 1.0
*/
public class ModeHrmResourceServiceImpl extends Service implements ModeHrmResourceService {
@Override
public Map<String, Object> chartResourceList(ModeHrmResourceParam param) {
Map<String, Object> dataMap = new HashMap<>(4);
List<ResourceListColumns> resourceListColumns = getTableColumns();
List<Integer> allSupDepartment = getAllSupDepartment(param.getDepartmentId());
List<ResourceChartPO> resourceChartPOS = new ArrayList<>();
resourceChartPOS.addAll(selectNbPerson(allSupDepartment));
resourceChartPOS.addAll(selectWbPerson(allSupDepartment));
List<ResourceChartVO> resourceChartVOS = convertToVO(resourceChartPOS);
dataMap.put("columns", resourceListColumns);
dataMap.put("dataSource", resourceChartVOS);
return dataMap;
}
@Override
public Map<String, Object> chartResourceChart(ModeHrmResourceParam param) {
List<ChartPO> dataList = new ArrayList<>();
String departmentId = param.getDepartmentId();
RecordSet rs = new RecordSet();
rs.executeQuery("select a.id,a.departmentname as name,b.bmfzr\n" +
"from hrmdepartment a left join hrmdepartmentdefined b on a.id = b.deptid \n" +
"where a.id = ?",param.getDepartmentId());
//部门
ChartPO departmentChartPO = new ChartPO();
if (rs.next()) {
String fLeader = Util.null2String(rs.getString("bmfzr"));
departmentChartPO.setFtype("2");
departmentChartPO.setFobjid(departmentId);
departmentChartPO.setExpand("1");
departmentChartPO.setId("d_"+departmentId);
departmentChartPO.setFname(rs.getString("name"));
departmentChartPO.setFleader(getDepartmentLeader(fLeader));
try {
departmentChartPO.setFleaderimg(new ResourceComInfo().getMessagerUrls(fLeader));
} catch (Exception e) {
throw new RuntimeException(e);
}
}
//人员
List<Integer> allSupDepartment = getAllSupDepartment(param.getDepartmentId());
List<ResourceChartPO> resourceChartPOS = new ArrayList<>();
resourceChartPOS.addAll(selectNbPerson(allSupDepartment));
resourceChartPOS.addAll(selectWbPerson(allSupDepartment));
List<ResourceChartVO> resourceChartVOS = convertToVO(resourceChartPOS);
resourceChartVOS.forEach(item -> {
ChartPO chartPO = getResourceChartPO(item,departmentChartPO.getId());
dataList.add(chartPO);
});
departmentChartPO.setFonjob(resourceChartVOS.size());
dataList.add(departmentChartPO);
Map<String, Object> result = new HashMap<>(4);
result.put("api_status", true);
result.put("data", dataList);
return result;
}
/**
*
* @param allSupDepartment
* @return
*/
private List<ResourceChartPO> selectNbPerson(Collection<Integer> allSupDepartment) {
RecordSet rs = new RecordSet();
List<ResourceChartPO> resourceChartPOS = new ArrayList<>();
String join = CollectionUtil.join(allSupDepartment, ",");
rs.executeQuery("select id, gh,xm,xb,bm,gw,sjhm from uf_zsygrzbdd where bm in ("+join+")");
while (rs.next()) {
ResourceChartPO build = ResourceChartPO.builder()
.id((long) Util.getIntValue(rs.getString("id")))
.workCode(Util.null2String(rs.getString("gh")))
.lastName(Util.null2String(rs.getString("xm")))
.sex(Util.null2String(rs.getString("xb")))
.departmentId(Util.getIntValue(rs.getString("bm")))
.jobBrowser(Util.null2String(rs.getString("gw")))
.mobile(Util.null2String(rs.getString("sjhm")))
.build();
resourceChartPOS.add(build);
}
return resourceChartPOS;
}
/**
*
* @param allSupDepartment
* @return
*/
private List<ResourceChartPO> selectWbPerson(Collection<Integer> allSupDepartment) {
RecordSet rs = new RecordSet();
List<ResourceChartPO> resourceChartPOS = new ArrayList<>();
String join = CollectionUtil.join(allSupDepartment, ",");
rs.executeQuery("select id, gh,xm,xb,bmbz,gw,lxfs from uf_qlwbrydngljmb where bmbz in ("+join+")");
while (rs.next()) {
ResourceChartPO build = ResourceChartPO.builder()
.id((long) Util.getIntValue(rs.getString("id")))
.workCode(Util.null2String(rs.getString("gh")))
.lastName(Util.null2String(rs.getString("xm")))
.sex(Util.null2String(rs.getString("xb")))
.departmentId(Util.getIntValue(rs.getString("bmbz")))
.jobBrowser(Util.null2String(rs.getString("gw")))
.mobile(Util.null2String(rs.getString("lxfs")))
.build();
resourceChartPOS.add(build);
}
return resourceChartPOS;
}
/**
*
* @return
*/
private List<ResourceListColumns> getTableColumns() {
List<ResourceListColumns> list = new ArrayList<>();
list.add(ResourceListColumns.builder().title("序号").dataIndex("id").key("id").build());
list.add(ResourceListColumns.builder().title("工号").dataIndex("workCode").key("workCode").build());
list.add(ResourceListColumns.builder().title("姓名").dataIndex("lastName").key("lastName").build());
list.add(ResourceListColumns.builder().title("性别").dataIndex("sex").key("sex").build());
list.add(ResourceListColumns.builder().title("部门").dataIndex("departmentName").key("departmentName").build());
list.add(ResourceListColumns.builder().title("分部").dataIndex("subcompanyName").key("subcompanyName").build());
list.add(ResourceListColumns.builder().title("岗位").dataIndex("jobTitle").key("jobTitle").build());
list.add(ResourceListColumns.builder().title("手机号").dataIndex("mobile").key("mobile").build());
return list;
}
/**
*
* @param departmentId
* @return
*/
@SneakyThrows
private List<Integer> getAllSupDepartment(String departmentId){
DepartmentComInfo departmentComInfo = new DepartmentComInfo();
ArrayList subList = new ArrayList();
departmentComInfo.getAllChildDeptByDepId(subList, departmentId);
subList.add(departmentId);
return subList;
}
/**
*
* @param resourceChartPOS
* @return
*/
@SneakyThrows
private List<ResourceChartVO> convertToVO(List<ResourceChartPO> resourceChartPOS) {
List<ResourceChartVO> resourceChartVOS = new ArrayList<>();
DepartmentComInfo departmentComInfo = new DepartmentComInfo();
SubCompanyComInfo subCompanyComInfo = new SubCompanyComInfo();
for (ResourceChartPO item : resourceChartPOS) {
ResourceChartVO resourceChartVO = new ResourceChartVO();
String departmentId =String.valueOf(item.getDepartmentId());
String subCompanyname = subCompanyComInfo.getSubCompanyname(departmentComInfo.getSubcompanyid1(departmentId));
resourceChartVO.setId(item.getId());
resourceChartVO.setWorkCode(item.getWorkCode());
resourceChartVO.setLastName(item.getLastName());
resourceChartVO.setSex("1".equals(item.getSex()) ? "女" : "男");
resourceChartVO.setDepartmentName(departmentComInfo.getDepartmentName(departmentId));
resourceChartVO.setSubcompanyName(subCompanyname);
resourceChartVO.setJobTitle(getJobBrowserName(item.getJobBrowser()));
resourceChartVO.setStatus(item.getStatus());
resourceChartVO.setMobile(item.getMobile());
resourceChartVOS.add(resourceChartVO);
}
return resourceChartVOS;
}
/**
*
* @param code
* @return
*/
private String getJobBrowserName(String code){
RecordSet rs = new RecordSet();
rs.executeQuery("select gwmc from uf_gwmc where gwbm = ?",code);
rs.next();
return Util.null2String(rs.getString("gwmc"));
}
/**
*
*
* @param ids ID
* @return
*/
private String getDepartmentLeader(String ids) {
if (StringUtils.isBlank(ids)) {
return "";
}
List<String> leaderList = new ArrayList<>();
String[] split = ids.split(",");
for (String s : split) {
String lastName = MapperProxyFactory.getProxy(SystemDataMapper.class).getScHrmResourceNameById(s);
if (StringUtils.isNotBlank(lastName)) {
leaderList.add(lastName);
}
}
return StringUtils.join(leaderList, ",");
}
/**
*
* @param item
* @return
*/
private ChartPO getResourceChartPO(ResourceChartVO item,String parentId) {
ChartPO chartPO = new ChartPO();
chartPO.setFtype("4");
chartPO.setFobjid(String.valueOf(item.getId()));
chartPO.setId(chartPO.getFobjid());
chartPO.setFname(item.getLastName());
chartPO.setParentId(parentId);
chartPO.setLocalDeptName(item.getDepartmentName());
chartPO.setJobTitle(item.getJobTitle());
chartPO.setExpand("1");
chartPO.setHasChildren("0");
try {
chartPO.setFleaderimg(new ResourceComInfo().getMessagerUrls(chartPO.getId()));
} catch (Exception e) {
throw new RuntimeException(e);
}
return chartPO;
}
}

@ -19,6 +19,7 @@ import com.engine.organization.util.db.MapperProxyFactory;
import com.engine.organization.util.detach.DetachUtil;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.general.BaseBean;
import weaver.general.Util;
import weaver.hrm.User;
@ -79,7 +80,11 @@ public class OrgChartServiceImpl extends Service implements OrgChartService {
while (rs.next()) {
companyTree.add(CompanyTreePO.builder().id(rs.getString("id")).pId(rs.getString("pId")).value(rs.getString("value")).title(rs.getString("title")).isLeaf(judgeTreeLeaf("select id from hrmsubcompany where (canceled is null or canceled != '1') and supsubcomid = ?", rs.getString("id"))).build());
}
String root = new BaseBean().getPropValue("hrmOrganization", "subCompanyId");
result.put("api_status", true);
result.put("root",root);
result.put("fclasslist", fclasslist);
result.put("companyTree", companyTree);
return result;

@ -63,7 +63,9 @@ public class OrgChartWrapper extends Service {
}
public Map<String, Object> getDepartmentDetail(Map<String, Object> request2Map, User user) {
return getChartService(user).getDepartmentDetail(request2Map);
//上海中远重工项目二开
return getChartService(user).getDepartmentNewDetail(request2Map);
//return getChartService(user).getDepartmentDetail(request2Map);
}
public Map<String, Object> versionRecord(Map<String, Object> request2Map, User user) {

Loading…
Cancel
Save