|
|
|
package com.weaver.seconddev.cockpit.cmd;
|
|
|
|
|
|
|
|
import com.weaver.ebuilder.datasource.api.entity.SqlParamEntity;
|
|
|
|
import com.weaver.ebuilder.datasource.api.enums.SqlParamType;
|
|
|
|
import com.weaver.seconddev.cockpit.util.DatabaseUtils;
|
|
|
|
import com.weaver.seconddev.cockpit.util.JucailinCockpitUtils;
|
|
|
|
import com.weaver.teams.domain.user.SimpleEmployee;
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
import org.slf4j.Logger;
|
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
import java.util.*;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 流程、日程、协助、文档 4个类型数据
|
|
|
|
*
|
|
|
|
* @author shil
|
|
|
|
* @version 1.00版本
|
|
|
|
* @Date 2024/5/22
|
|
|
|
*/
|
|
|
|
@Component
|
|
|
|
public class CockpitUserDataCmd {
|
|
|
|
//日志
|
|
|
|
private final static Logger log = LoggerFactory.getLogger(CockpitUserDataCmd.class);
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
private JucailinCockpitUtils jucailinCockpitUtils;
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
private DatabaseUtils databaseUtils;
|
|
|
|
|
|
|
|
|
|
|
|
public Map<String, Object> getDataInfo(SimpleEmployee employee, Map<String, Object> paramMap,String tenantKey) {
|
|
|
|
|
|
|
|
Map<String, Object> recordMap = new HashMap<String, Object>();
|
|
|
|
String sourceType = "LOGIC";
|
|
|
|
try {
|
|
|
|
String subcompanynme = "";
|
|
|
|
|
|
|
|
String employeeId = String.valueOf(employee.getEmployeeId());
|
|
|
|
log.error("employeeId:"+employeeId);
|
|
|
|
String username = employee.getName();
|
|
|
|
log.error("username:"+username);
|
|
|
|
|
|
|
|
String deptname = employee.getDepartment().getName();
|
|
|
|
log.error("deptname:"+deptname);
|
|
|
|
Long deptid = employee.getDepartment().getId();
|
|
|
|
log.error("deptid:"+deptid);
|
|
|
|
// long subCompanyid = employee.getDepartment().getSubCompanyId();
|
|
|
|
|
|
|
|
String positionname = employee.getPosition().getName();
|
|
|
|
log.error("positionname:"+positionname);
|
|
|
|
String gradename = employee.getGrade().getName();
|
|
|
|
log.error("gradename:"+gradename);
|
|
|
|
|
|
|
|
String personnelstatusname = "" ;
|
|
|
|
String personnelstatus = employee.getPersonnelStatus();
|
|
|
|
log.error("personnelstatus:"+personnelstatus);
|
|
|
|
|
|
|
|
if("1".equals(personnelstatus)){
|
|
|
|
personnelstatusname = "试用员工";
|
|
|
|
}else if("2".equals(personnelstatus)){
|
|
|
|
personnelstatusname = "试用延期员工";
|
|
|
|
}else if("3".equals(personnelstatus)){
|
|
|
|
personnelstatusname = "正式员工";
|
|
|
|
}else if("4".equals(personnelstatus)){
|
|
|
|
personnelstatusname = "临时员工";
|
|
|
|
}else if("5".equals(personnelstatus)){
|
|
|
|
personnelstatusname = "实习员工";
|
|
|
|
}else if("6".equals(personnelstatus)){
|
|
|
|
personnelstatusname = "离职员工";
|
|
|
|
}else if("7".equals(personnelstatus)){
|
|
|
|
personnelstatusname = "退休员工";
|
|
|
|
}else if("9".equals(personnelstatus)){
|
|
|
|
personnelstatusname = "解聘员工";
|
|
|
|
}else if("10".equals(personnelstatus)){
|
|
|
|
personnelstatusname = "无效员工";
|
|
|
|
}
|
|
|
|
|
|
|
|
log.error("personnelstatusname:"+personnelstatusname);
|
|
|
|
|
|
|
|
String userimageurl = "/profile/" + employeeId + "/personal";
|
|
|
|
|
|
|
|
long formdata = employee.getFormdata();
|
|
|
|
log.error("formdata:"+formdata);
|
|
|
|
|
|
|
|
String pkey = "field69.groupId";
|
|
|
|
String groupId = jucailinCockpitUtils.getUfPropData(pkey,tenantKey);
|
|
|
|
log.error("groupId:"+groupId);
|
|
|
|
|
|
|
|
String jobcallname = "";
|
|
|
|
long jobcallid = employee.getJobCall();
|
|
|
|
log.error("jobcallid:"+jobcallid);
|
|
|
|
|
|
|
|
if(StringUtils.isNotBlank(deptid+"")){
|
|
|
|
String sql =" select name from eteams.department where id in( " +
|
|
|
|
" select subcompanyid from eteams.department where id = ? and delete_type=0 and tenant_key = ?" +
|
|
|
|
" ) and delete_type=0 and tenant_key = ?";
|
|
|
|
|
|
|
|
log.error("sql:"+sql);
|
|
|
|
List<SqlParamEntity> sqlparam = new ArrayList<SqlParamEntity>();
|
|
|
|
SqlParamEntity sqlParamEntity = new SqlParamEntity();
|
|
|
|
sqlParamEntity.setParamType(SqlParamType.LONG);
|
|
|
|
sqlParamEntity.setValue(deptid+"");
|
|
|
|
sqlparam.add(sqlParamEntity);
|
|
|
|
|
|
|
|
sqlParamEntity = new SqlParamEntity();
|
|
|
|
sqlParamEntity.setParamType(SqlParamType.VARCHAR);
|
|
|
|
sqlParamEntity.setValue(tenantKey);
|
|
|
|
sqlparam.add(sqlParamEntity);
|
|
|
|
|
|
|
|
sqlParamEntity = new SqlParamEntity();
|
|
|
|
sqlParamEntity.setParamType(SqlParamType.VARCHAR);
|
|
|
|
sqlParamEntity.setValue(tenantKey);
|
|
|
|
sqlparam.add(sqlParamEntity);
|
|
|
|
|
|
|
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql,sqlparam);
|
|
|
|
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
|
|
|
|
if(!recordList.isEmpty() && recordList.size()>0){
|
|
|
|
subcompanynme = String.valueOf(recordList.get(0).get("name"));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
log.error("subcompanynme:"+subcompanynme);
|
|
|
|
|
|
|
|
if(StringUtils.isNotBlank(jobcallid+"")){
|
|
|
|
String sql =" select data_name from eteams.hrm_jobcall " +
|
|
|
|
" where id = ? "+
|
|
|
|
" and delete_type = 0\n" +
|
|
|
|
" and tenant_key = ? \n" ;
|
|
|
|
log.error("sql:"+sql);
|
|
|
|
List<SqlParamEntity> sqlparam = new ArrayList<SqlParamEntity>();
|
|
|
|
SqlParamEntity sqlParamEntity = new SqlParamEntity();
|
|
|
|
sqlParamEntity.setParamType(SqlParamType.LONG);
|
|
|
|
sqlParamEntity.setValue(jobcallid+"");
|
|
|
|
sqlparam.add(sqlParamEntity);
|
|
|
|
|
|
|
|
sqlParamEntity = new SqlParamEntity();
|
|
|
|
sqlParamEntity.setParamType(SqlParamType.VARCHAR);
|
|
|
|
sqlParamEntity.setValue(tenantKey);
|
|
|
|
sqlparam.add(sqlParamEntity);
|
|
|
|
|
|
|
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql,sqlparam);
|
|
|
|
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
|
|
|
|
if(!recordList.isEmpty() && recordList.size()>0){
|
|
|
|
jobcallname = String.valueOf(recordList.get(0).get("data_name"));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
String field69 = "";
|
|
|
|
if(StringUtils.isNotBlank(formdata+"")){
|
|
|
|
String sql =" select field69 from eteams.Hrmemployeedefined where form_data_id = ?" ;
|
|
|
|
log.error("getSelfServiceData--sql:"+sql);
|
|
|
|
|
|
|
|
List<SqlParamEntity> sqlparam = new ArrayList<SqlParamEntity>();
|
|
|
|
SqlParamEntity sqlParamEntity = new SqlParamEntity();
|
|
|
|
sqlParamEntity.setParamType(SqlParamType.LONG);
|
|
|
|
sqlParamEntity.setValue(formdata+"");
|
|
|
|
sqlparam.add(sqlParamEntity);
|
|
|
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql,sqlparam);
|
|
|
|
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
|
|
|
|
if(recordList.size()>0){
|
|
|
|
field69 = String.valueOf(recordList.get(0).get("field69"));
|
|
|
|
}
|
|
|
|
|
|
|
|
if("1".equals(field69)){
|
|
|
|
field69 = "销售";
|
|
|
|
}else if("2".equals(field69)){
|
|
|
|
field69 = "项目";
|
|
|
|
}else if("3".equals(field69)){
|
|
|
|
field69 = "技术";
|
|
|
|
}else if("4".equals(field69)){
|
|
|
|
field69 = "客服";
|
|
|
|
}else if("5".equals(field69)){
|
|
|
|
field69 = "运营";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
log.error("field69:"+field69);
|
|
|
|
recordMap.put("employeeId",employeeId);
|
|
|
|
recordMap.put("username",username);
|
|
|
|
recordMap.put("deptmentnnme",subcompanynme+"-"+deptname);
|
|
|
|
recordMap.put("positionname",positionname);
|
|
|
|
recordMap.put("userimageurl",userimageurl);
|
|
|
|
recordMap.put("jobcallname",jobcallname);
|
|
|
|
recordMap.put("personnelstatusname",personnelstatusname);
|
|
|
|
recordMap.put("personnelstatus",personnelstatus);
|
|
|
|
recordMap.put("gradename",gradename);
|
|
|
|
recordMap.put("field69",field69);
|
|
|
|
String avatarUrl = "";
|
|
|
|
if(StringUtils.isBlank(avatarUrl)){
|
|
|
|
avatarUrl = "/build/hrm/static/media/male.png";
|
|
|
|
}
|
|
|
|
recordMap.put("avatarUrl",avatarUrl);
|
|
|
|
|
|
|
|
// List<Map<String,String>> customList = new ArrayList<Map<String,String>>();
|
|
|
|
// Map<String,String> customMap = new HashMap<String,String>();
|
|
|
|
// customMap.put("name","销售排名");
|
|
|
|
// customMap.put("value","TOP1");
|
|
|
|
// customList.add(customMap);
|
|
|
|
//
|
|
|
|
// customMap = new HashMap<String,String>();
|
|
|
|
// customMap.put("name","职称");
|
|
|
|
// customMap.put("value","高级工程师");
|
|
|
|
// customList.add(customMap);
|
|
|
|
//
|
|
|
|
// customMap = new HashMap<String,String>();
|
|
|
|
// customMap.put("name","熟悉领域");
|
|
|
|
// customMap.put("value","项目实施");
|
|
|
|
// customList.add(customMap);
|
|
|
|
//
|
|
|
|
// customMap = new HashMap<String,String>();
|
|
|
|
// customMap.put("name","技能证书");
|
|
|
|
// customMap.put("value","人力资源管理师");
|
|
|
|
// customList.add(customMap);
|
|
|
|
|
|
|
|
List<Map<String,Object>> customList = getCustomType(employee,tenantKey);
|
|
|
|
recordMap.put("customType",customList);
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
e.printStackTrace();
|
|
|
|
log.error("PortalPerformanceInfoCmd :" + e);
|
|
|
|
}
|
|
|
|
|
|
|
|
try{
|
|
|
|
|
|
|
|
log.error("CockpitUserDataCmd-333333");
|
|
|
|
Long avatarid = employee.getAvatarId();
|
|
|
|
log.error("CockpitUserDataCmd-avatarid:"+avatarid);
|
|
|
|
|
|
|
|
String url = employee.getAvatar().getUrl();
|
|
|
|
|
|
|
|
log.error("CockpitUserDataCmd-url:"+url);
|
|
|
|
|
|
|
|
String avatarUrl = employee.getAvatar().getPreviewUrl();
|
|
|
|
log.error("CockpitUserDataCmd-test-avatarUrl:"+avatarUrl);
|
|
|
|
|
|
|
|
Long SubCompanyId = employee.getDepartment().getSubCompanyId();
|
|
|
|
log.error("CockpitUserDataCmd-test-SubCompanyId:"+SubCompanyId);
|
|
|
|
|
|
|
|
}catch (Exception e){
|
|
|
|
|
|
|
|
}
|
|
|
|
return recordMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
/***
|
|
|
|
*
|
|
|
|
* @return
|
|
|
|
*/
|
|
|
|
public List<Map<String,Object>> getCustomType(SimpleEmployee employee,String tenantKey){
|
|
|
|
|
|
|
|
List<Map<String,Object>> recordList = new ArrayList<Map<String,Object>>();
|
|
|
|
String groupId = "weaver-ebuilder-form-service";
|
|
|
|
String sourceType = "LOGIC";
|
|
|
|
Long employeeId = employee.getEmployeeId();
|
|
|
|
try {
|
|
|
|
String sql =" select p.bqmc,p.bqnr \n" +
|
|
|
|
" from(\n" +
|
|
|
|
" select bqmc,bqnr " +
|
|
|
|
" from uf_rcbq " +
|
|
|
|
" where ry = ? \n" +
|
|
|
|
" and delete_type = 0\n" +
|
|
|
|
" and tenant_key = ? \n" +
|
|
|
|
" order by xssx desc\n" +
|
|
|
|
" ) p limit 4" ;
|
|
|
|
|
|
|
|
List<SqlParamEntity> sqlparam = new ArrayList<SqlParamEntity>();
|
|
|
|
SqlParamEntity sqlParamEntity = new SqlParamEntity();
|
|
|
|
sqlParamEntity.setParamType(SqlParamType.LONG);
|
|
|
|
sqlParamEntity.setValue(employeeId+"");
|
|
|
|
sqlparam.add(sqlParamEntity);
|
|
|
|
|
|
|
|
sqlParamEntity = new SqlParamEntity();
|
|
|
|
sqlParamEntity.setParamType(SqlParamType.VARCHAR);
|
|
|
|
sqlParamEntity.setValue(tenantKey);
|
|
|
|
sqlparam.add(sqlParamEntity);
|
|
|
|
|
|
|
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql,sqlparam);
|
|
|
|
recordList = databaseUtils.getDataSourceList(result);
|
|
|
|
if(recordList.size() < 4){
|
|
|
|
for(int i=0;i<(4-recordList.size());i++){
|
|
|
|
Map<String,Object> nullMap = new HashMap<String,Object>();
|
|
|
|
recordList.add(nullMap);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} catch (Exception e) {
|
|
|
|
e.printStackTrace();
|
|
|
|
log.error("getRightViewData:" + e);
|
|
|
|
}
|
|
|
|
return recordList;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|