@ -462,14 +462,31 @@ public class ChartServiceImpl extends Service implements ChartService {
" versionid = "+versionId+" and companyvirtualid = "+dimension;
}
}else{
if(hasVirtualFields){
if(showVirtual){
return"select "+SUB_COMPANY_ID+" as id,subcompanyname as name,'1' as type,isvirtual as isvitual,a.job_num,a.staff_num from "+SUB_COMPANY_TABLE+" a where versionid = "+versionId+" and subcompanyid = "+root;
StringnumSql=",a.job_num,a.staff_num";
if(!isRealDimension){
numSql="";
}
if(root.startsWith("d")){
root=root.replace("d","");
if(hasVirtualFields){
if(showVirtual){
return"select "+DEPARTMENT_ID+" as id,a.departmentname as name,'2' as type ,isvirtual as isvitual"+numSql+" from "+DEPARTMENT_TABLE+" a where (a.canceled is null or a.canceled != '1') and "+DEPARTMENT_ID+" = '"+root+"' and versionid = "+versionId;
}else{
return"select "+DEPARTMENT_ID+" as id,a.departmentname as name,'2' as type ,isvirtual as isvitual"+numSql+" from "+DEPARTMENT_TABLE+" a where (canceled is null or canceled != '1') and (isvirtual is null or isvirtual != '1') and "+DEPARTMENT_ID+" = '"+root+"' and versionid = "+versionId;
}
}else{
return"select "+SUB_COMPANY_ID+" as id,subcompanyname as name,'1' as type,isvirtual as isvitual,a.job_num,a.staff_num from "+SUB_COMPANY_TABLE+" a where versionid = "+versionId+" and subcompanyid = "+root+" and (isvirtual is null or isvirtual != '1')";
return"select "+DEPARTMENT_ID +" as id,a.departmentname as name,'2' as type"+numSql+" from "+DEPARTMENT_TABLE+" a where (canceled is null or canceled != '1') and "+DEPARTMENT_ID+" = '"+root+"' and versionid = "+versionId;
}
}else{
return"select "+SUB_COMPANY_ID+" as id,subcompanyname as name,'1' as type,a.job_num,a.staff_num from "+SUB_COMPANY_TABLE+" a where versionid = "+versionId+" and subcompanyid = "+root;
if(hasVirtualFields){
if(showVirtual){
return"select "+SUB_COMPANY_ID+" as id,subcompanyname as name,'1' as type,isvirtual as isvitual"+numSql+" from "+SUB_COMPANY_TABLE+" a where versionid = "+versionId+" and "+SUB_COMPANY_ID+" = "+root;
}else{
return"select "+SUB_COMPANY_ID+" as id,subcompanyname as name,'1' as type,isvirtual as isvitual"+numSql+" from "+SUB_COMPANY_TABLE+" a where versionid = "+versionId+" and "+SUB_COMPANY_ID+" = "+root+" and (isvirtual is null or isvirtual != '1')";
}
}else{
return"select "+SUB_COMPANY_ID+" as id,subcompanyname as name,'1' as type"+numSql+" from "+SUB_COMPANY_TABLE+" a where versionid = "+versionId+" and "+SUB_COMPANY_ID+" = "+root;
}
}
}
}
@ -1351,15 +1368,28 @@ public class ChartServiceImpl extends Service implements ChartService {
return"select id,companyname as name,'0' as type from "+COMPANY_TABLE+" where id = '"+dimension+"'";
}
}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";
if(root.startsWith("d")){
root=root.replace("d","");
if(hasVirtualFields){
if(showVirtual){
return"select a.id,a.departmentname as name,'2' as type ,b.bmlx as isvitual,c.on_job_num,c.staff_num from "+DEPARTMENT_TABLE+" a left join "+DEPARTMENT_DEFINED_TABLE+" b on a.id = b.deptid left join jcl_org_onjob c on a.id=c.data_id and c.type=2 where (a.canceled is null or a.canceled != '1') and a.id = '"+root+"'";
}else{
return"select a.id,a.departmentname as name,'2' as type ,b.bmlx as isvitual,c.on_job_num,c.staff_num from "+DEPARTMENT_TABLE+" a left join hrmdepartmentdefined b on a.id = b.deptid left join jcl_org_onjob c on a.id=c.data_id and c.type=2 where (canceled is null or canceled != '1') and (b.bmlx is null or b.bmlx != '1') and a.id = '"+root+"'";
}
}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";
return"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 a.id = '"+root+"'";
}
}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";
}
}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";
}
}
}
@ -1669,7 +1699,7 @@ public class ChartServiceImpl extends Service implements ChartService {
@ -1677,31 +1707,32 @@ public class ChartServiceImpl extends Service implements ChartService {
subCompany=subCompany.replace("d","");
if(isSearchCurrent){
sql="select "+dbType.concat("d","id")+"as id, id as value, departmentname as title, "+dbType.concat("d","supdepid")+" as pId from hrmdepartment where (canceled is null or canceled != '1') and "+dbType.ifNull("supdepid","0")+" = "+subCompany;
if(isCurrentDimension){
sql+=" order by showorder,id ";
if(isNotCurrentDimension){
sql="select "+dbType.concat("d","id")+"as id, id as value, departmentname as title, "+dbType.concat("d","supdepid")+" as pId from hrmdepartmentvirtual where (canceled is null or canceled != '1') and "+dbType.ifNull("supdepid","0")+" = "+subCompany;
}
sql+=" order by showorder,id ";
}else{
sql="select "+dbType.concat("d","departmentid")+"as id, departmentid as value, departmentname as title, "+dbType.concat("d","supdepartmentid")+" as pId from jcl_chart_department where (canceled is null or canceled != '1') and "+dbType.ifNull("supdepartmentid","0")+" = "+subCompany;
if(isCurrentDimension){
if(isNotCurrentDimension){
sql="select "+dbType.concat("d","departmentvirtualid")+"as id, departmentvirtualid as value, departmentname as title, "+dbType.concat("d","supdepid")+" as pId from jcl_chart_departmentvirtual where (canceled is null or canceled != '1') and "+dbType.ifNull("supdepid","0")+" = "+subCompany;
}
// 添加时间轴条件
sql+=" and versionid = "+versionId;
}
}else{
// TODO 分权
if(isSearchCurrent){
sql="select "+dbType.concat("","id")+" as id, id as value, subcompanyname as title, supsubcomid as pId, showorder from hrmsubcompany where (canceled is null or canceled != '1') and "+dbType.ifNull("supsubcomid","0")+" = "+subCompany+
" union select "+dbType.concat("d","id")+"as id, id as value, departmentname as title, subcompanyid1 as pId, showorder from hrmdepartment where (canceled is null or canceled != '1') and (supdepid is null or supdepid =0) and "+dbType.ifNull("subcompanyid1","0")+" = "+subCompany;
if(isCurrentDimension){
sql+=" order by showorder,id ";
if(isNotCurrentDimension){
sql="select id as id, id as value, subcompanyname as title, supsubcomid as pId from hrmsubcompanyvirtual where (canceled is null or canceled != '1') and "+dbType.ifNull("supsubcomid","0")+" = "+subCompany+" and companyid = '"+dimension+"' "+
" union select "+dbType.concat("d","id")+"as id, id as value, departmentname as title, subcompanyid1 as pId from hrmdepartmentvirtual where (canceled is null or canceled != '1') and (supdepid is null or supdepid =0) and"+dbType.ifNull("subcompanyid1","0")+" = "+subCompany;
}
sql+=" order by showorder,id ";
}else{
sql="select "+dbType.concat("","subcompanyid")+" as id, subcompanyid as value, subcompanyname as title, supsubcompanyid as pId from jcl_chart_subcompany where (canceled is null or canceled != '1') and "+dbType.ifNull("supsubcompanyid","0")+" = "+subCompany+
" union select "+dbType.concat("d","subcompanyid")+"as id, subcompanyid as value, departmentname as title, subcompanyid as pId from jcl_chart_department where (canceled is null or canceled != '1') and (supdepartmentid is null or supdepartmentid =0) and "+dbType.ifNull("subcompanyid","0")+" = "+subCompany;
if(isCurrentDimension){
if(isNotCurrentDimension){
sql="select "+dbType.concat("","subcompanyvirtualid")+" as id, subcompanyvirtualid as value, subcompanyname as title, supsubcompanyid as pId from jcl_chart_subcompanyvirtual where (canceled is null or canceled != '1') and "+dbType.ifNull("supsubcompanyid","0")+" = "+subCompany+" and companyid = '"+dimension+"' "+
" union select "+dbType.concat("d","departmentvirtualid")+"as id, departmentvirtualid as value, departmentname as title, subcompanyid as pId from jcl_chart_departmentvirtual where (canceled is null or canceled != '1') and (supdepid is null or supdepid =0) and"+dbType.ifNull("subcompanyid","0")+" = "+subCompany;