组织架构图完善
This commit is contained in:
parent
0bbde26f6f
commit
2b8e3dbb85
|
|
@ -130,7 +130,7 @@ public class JobBrowserService extends BrowserService {
|
|||
// 分权
|
||||
DetachUtil detachUtil = new DetachUtil(user);
|
||||
if (detachUtil.isDETACH()) {
|
||||
sqlWhere += " AND t.parent_comp in (" + detachUtil.getJclRoleLevels() + ")";
|
||||
sqlWhere += " AND t.ec_company in (" + detachUtil.getJclRoleLevels() + ")";
|
||||
}
|
||||
return sqlWhere;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,9 @@
|
|||
package com.engine.organization.entity.danikor.param;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @author:dxfeng
|
||||
|
|
@ -8,6 +11,9 @@ import lombok.Data;
|
|||
* @version: 1.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class ChartParam {
|
||||
private String id;
|
||||
private String pid;
|
||||
|
|
|
|||
|
|
@ -52,6 +52,8 @@ public interface DanikorResourceBackService {
|
|||
*/
|
||||
String getOrgChartData(HttpServletRequest request, Map<String, Object> params);
|
||||
|
||||
List<ChartParam> getOrgChartData(Map<String, Object> params);
|
||||
|
||||
/**
|
||||
* 人员架构图
|
||||
*
|
||||
|
|
|
|||
|
|
@ -244,6 +244,77 @@ public class DanikorResourceBackServiceImpl extends Service implements DanikorRe
|
|||
"]";
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ChartParam> getOrgChartData(Map<String, Object> params) {
|
||||
String syncDate = Util.null2String(params.get("date"));
|
||||
List<ChartParam> chartParamList = new ArrayList<>();
|
||||
String sorgid = Util.null2String((params.get("arg0")));
|
||||
String defaultHref = weaver.general.GCONST.getContextPath() + "/spa/hrm/index_mobx.html#/main/hrm/orgStaff?_fromURL=HrmResourceSearchResult&from=hrmorg&virtualtype=" + sorgid;
|
||||
CompanyComInfo CompanyComInfo = new CompanyComInfo();
|
||||
|
||||
if (CompanyComInfo.next()) {
|
||||
chartParamList.add(ChartParam.builder().id("0").pid("").type("company").name(CompanyComInfo.getCompanyname()).title(CompanyComInfo.getCompanyname()).num("0").nTitle("").oDisplay("none").subRCount("0").subTitle("").cOnclick(defaultHref).sOnclick("").build());
|
||||
}
|
||||
|
||||
String subCompanySql;
|
||||
String departmentSql;
|
||||
if (StringUtils.isNotBlank(syncDate) && !DateUtil.getDate(new Date()).equals(syncDate)) {
|
||||
subCompanySql = "select t.id, t.subcompanyname, t.supsubcomid, ( select distinct 1 as hasnext from hrmsubcompany_back s where (s.supsubcomid = t.id and (s.CANCELED IS NULL OR s.CANCELED != '1') and s.sync_date = '" + syncDate + "') ) as hassubnext, ( select distinct 1 as hasnext from HrmDepartment_back d where (d.subcompanyid1 = t.id and (d.CANCELED IS NULL OR d.CANCELED != '1') and d.sync_date = '" + syncDate + "')) as hasdeptnext, t.tlevel from hrmsubcompany_back t where (t.canceled IS NULL OR t.canceled != '1') and t.id != t.supsubcomid and tlevel <= 10000 and sync_date = '" + syncDate + "' order by t.supsubcomid, t.showorder, t.subcompanyname";
|
||||
departmentSql = "select t.id, t.departmentname, t.subcompanyid1, isnull(t.supdepid,0) as supdepid, (case when t.supdepid != 0 and ( select COUNT(id) from hrmdepartment_back where id = t.supdepid and sync_date = '" + syncDate + "')= 0 then 0 else 1 end) as isExist, ( select distinct 1 as hasnext from hrmdepartment_back d where d.supdepid = t.id and (CANCELED IS NULL OR CANCELED != '1') and sync_date = '" + syncDate + "') as hasnext, t.tlevel from hrmdepartment_back t where t.id != ISNULL(t.supdepid, 0) and tlevel <= 10000 and (t.canceled IS NULL OR t.canceled != '1') and (t.canceled IS NULL OR t.canceled != '1') and sync_date = '" + syncDate + "' order by t.subcompanyid1 asc , t.supdepid asc , t.showorder asc, t.departmentname asc";
|
||||
} else {
|
||||
subCompanySql = "select t.id,t.subcompanyname,t.supsubcomid,(select distinct 1 as hasnext from hrmsubcompany s where (s.supsubcomid=t.id and (s.CANCELED IS NULL OR s.CANCELED !='1')) ) as hassubnext,(select distinct 1 as hasnext from HrmDepartment d where (d.subcompanyid1=t.id and (d.CANCELED IS NULL OR d.CANCELED !='1')) ) as hasdeptnext,t.tlevel from hrmsubcompany t where (t.canceled IS NULL OR t.canceled !='1') and t.id != t.supsubcomid and tlevel <= 10000 order by t.supsubcomid,t.showorder,t.subcompanyname";
|
||||
departmentSql = "select t.id,t.departmentname,t.subcompanyid1,isnull(t.supdepid,0) as supdepid,(case when t.supdepid != 0 and (select COUNT(id) from hrmdepartment where id = t.supdepid)=0 then 0 else 1 end) as isExist,(select distinct 1 as hasnext from hrmdepartment d where d.supdepid=t.id and (CANCELED IS NULL OR CANCELED !='1')) as hasnext,t.tlevel from hrmdepartment t where t.id != ISNULL(t.supdepid,0) and tlevel <= 10000 and (t.canceled IS NULL OR t.canceled !='1') order by t.subcompanyid1 asc , t.supdepid asc , t.showorder asc, t.departmentname asc";
|
||||
}
|
||||
|
||||
RecordSet rs = new RecordSet();
|
||||
//rs.execute(subCompanySql);
|
||||
//while (rs.next()) {
|
||||
// int subHasNext = rs.getInt("hassubnext");
|
||||
// int deptHasNext = rs.getInt("hasdeptnext");
|
||||
// ChartParam chartParam = new ChartParam();
|
||||
// chartParam.setId(rs.getString("id"));
|
||||
// chartParam.setPid(rs.getString("supsubcomid"));
|
||||
// chartParam.setType("subcompany");
|
||||
// chartParam.setName(rs.getString("subcompanyname"));
|
||||
// chartParam.setTitle(chartParam.getName());
|
||||
// chartParam.setNum("0");
|
||||
// chartParam.setNTitle("");
|
||||
// chartParam.setODisplay("none");
|
||||
// chartParam.setSubRCount("0");
|
||||
// chartParam.setSubTitle("");
|
||||
// chartParam.setHasChild(subHasNext == 1 || deptHasNext == 1 ? "true" : "false");
|
||||
// chartParam.setNeedPlus("false");
|
||||
// chartParam.setCOnclick("");
|
||||
// chartParam.setSOnclick("");
|
||||
// chartParamList.add(chartParam);
|
||||
//}
|
||||
|
||||
// 处理部门数据
|
||||
rs.execute(departmentSql);
|
||||
while (rs.next()) {
|
||||
int hasNext = rs.getInt("hasnext");
|
||||
ChartParam chartParam = new ChartParam();
|
||||
chartParam.setId(rs.getString("id"));
|
||||
chartParam.setPid(rs.getString("supdepid"));
|
||||
chartParam.setType("dept");
|
||||
chartParam.setName(rs.getString("departmentname"));
|
||||
chartParam.setTitle(chartParam.getName());
|
||||
chartParam.setNum("0");
|
||||
chartParam.setNTitle("");
|
||||
chartParam.setODisplay("none");
|
||||
chartParam.setSubRCount("0");
|
||||
chartParam.setSubTitle("");
|
||||
chartParam.setHasChild(hasNext == 1 ? "true" : "false");
|
||||
chartParam.setNeedPlus("false");
|
||||
chartParam.setCOnclick("");
|
||||
chartParam.setSOnclick("");
|
||||
chartParamList.add(chartParam);
|
||||
}
|
||||
|
||||
return chartParamList;
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ChartParam> getResourceChartData(Map<String, Object> params) {
|
||||
String syncDate = Util.null2String(params.get("date"));
|
||||
|
|
|
|||
|
|
@ -98,7 +98,7 @@ public class DanikorResourceBackController {
|
|||
try {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
Map<String, Object> map = ParamUtil.request2Map(request);
|
||||
String orgChartData = getDanikorResourceBackWrapper(user).getOrgChartData(request, map);
|
||||
String orgChartData = getDanikorResourceBackWrapper(user).getOrgChartData(map);
|
||||
returnMap.put("data", orgChartData);
|
||||
returnMap.put("status", "1");
|
||||
} catch (Exception e) {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.engine.organization.wrapper;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.organization.entity.danikor.param.ChartParam;
|
||||
import com.engine.organization.service.DanikorResourceBackService;
|
||||
|
|
@ -8,7 +9,6 @@ import com.engine.organization.util.MenuBtn;
|
|||
import com.engine.organization.util.OrganizationWrapper;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -39,8 +39,8 @@ public class DanikorResourceBackWrapper extends OrganizationWrapper {
|
|||
return getDanikorResourceBackService(user).getSummaryData(params);
|
||||
}
|
||||
|
||||
public String getOrgChartData(HttpServletRequest request, Map<String, Object> params) {
|
||||
return getDanikorResourceBackService(user).getOrgChartData(request, params);
|
||||
public String getOrgChartData(Map<String, Object> params) {
|
||||
return JSON.toJSONString(getDanikorResourceBackService(user).getOrgChartData(params));
|
||||
}
|
||||
|
||||
public List<ChartParam> getResourceChartData(Map<String, Object> params) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue