#E10人事自助门户-优化自助服务接口,新增工作区数据接口

main
wangjie 1 year ago
parent 1a0373e680
commit e6e04647b0

@ -29,7 +29,7 @@ import java.time.temporal.TemporalAdjusters;
import java.util.*;
/**
*
*
*
* @author wangj
* @version 1.00

@ -42,16 +42,26 @@ public class SelfServiceInfoCmd {
String pkey = "uf_zzfwcsh.taby.fieldId";
String field_id = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
pkey = "uf_zzfwcsh.taby.url";
String taburl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
String groupId = "weaver-ebuilder-form-service";
String sourceType = "LOGIC";
String employeeId = request.getParameter("employeeId");
//type: 0 系统默认 1 自定义配置
String type = "0";
if(StringUtils.isBlank(employeeId)){
employeeId = String.valueOf(UserContext.getCurrentEmployeeId());
}
//返回自助服务tab信息
List<Map<String,Object>> dataList = new ArrayList<Map<String,Object>>();
//返回近期访问数据
List<Map<String,Object>> record = new ArrayList<Map<String,Object>>();
try{
String sql = " select distinct taby from uf_zzfwrkpz where ry=? and qy is not null and taby is not null and delete_type=0 and tenant_key =?";
@ -69,13 +79,20 @@ public class SelfServiceInfoCmd {
if(recordList.size()>0){
// /api/file/preview?type=redirect&imgFormat=small&fileId=977697615197618177&module=ebuilderform&authModule=ebuilderform&source=form&fieldId=977686869110833154&customParam=%7B%22dataId%22%3A%22977697666574729218%22%7D&refId=977697666574729218&folderId=8120831157448215424
dataList = getCustomeServiceData(groupId,sourceType,field_id,recordList,employeeId);
record = getCustomeServiceRecord(groupId,sourceType,employeeId);
type = "1";
}else{
dataList = getDefaultServiceData(groupId,sourceType,field_id);
record = getDefaultServiceRecord(groupId,sourceType,employeeId);
type = "0";
}
}catch (Exception e){
log.error("testSapi51-Exception:"+e.getMessage());
}
recordMap.put("list",dataList);
recordMap.put("record",record);
recordMap.put("type",type);
recordMap.put("taburl",taburl);
return recordMap;
}
@ -100,7 +117,7 @@ public class SelfServiceInfoCmd {
}
public List<Map<String,Object>> getCustomeServiceDataByType(String groupId,String sourceType,String value,String employeeId){
String sql = " select fwmc,fwdz,fwtb,taby from uf_zzfwrkpz where ry=? and qy is not null and taby is not null and taby=? and delete_type=0 and tenant_key = ?";
String sql = " select id,fwmc,fwdz,fwtb,taby from uf_zzfwrkpz where ry=? and qy is not null and taby is not null and taby=? and delete_type=0 and tenant_key = ?";
log.info("getSelfServiceData--sql:"+sql);
List<String> strlist = new ArrayList<>(100);
@ -219,4 +236,86 @@ public class SelfServiceInfoCmd {
return optionMap;
}
/**
* 访
* @param groupId
* @param sourceType
* @param employeeId
* @return
*/
public List<Map<String,Object>> getCustomeServiceRecord(String groupId,String sourceType,String employeeId){
String sql = " select id,fwmc,fwdz,fwtb,taby from uf_zzfwrkpz where ry=? and qy is not null and taby is not null and delete_type=0 and tenant_key = ? order by djcs desc limit 6";
log.info("getCustomeServiceRecord--sql:"+sql);
List<String> strlist = new ArrayList<>(100);
strlist.add(employeeId);
strlist.add(tenant_key);
List<SqlParamEntity> sqlparam = databaseUtils.getSqlParamEntity(strlist);
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql,sqlparam);
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
for(int i=0;i<recordList.size();i++){
Map<String,Object> recordMap = recordList.get(i);
String fwtb = String.valueOf(recordMap.get("fwtb"));
String fwtburl = "";
if(StringUtils.isNotBlank(fwtb)){
fwtburl = "/api/file/preview?fileId="+fwtb+"&module=ebuilderform&authModule=ebuilderform&type=imgs&source=form&fieldId="+fwtb+"&imgFormat=small";
}
recordMap.put("fwtburl",fwtburl);
}
return recordList;
}
/**
*
* @param request
* @param simpleEmployee
* @return
*/
public Map<String, Object> addSelfServiceCount(HttpServletRequest request, SimpleEmployee simpleEmployee) {
Map<String,Object> recordMap = new HashMap<String,Object>();
String id = request.getParameter("id");
if(StringUtils.isBlank(id)){
recordMap.put("status",false);
}else {
String groupId = "weaver-ebuilder-form-service";
String sourceType = "LOGIC";
String sql = "update uf_zzfwrkpz set djcs = ifnull(djcs,0) + 1 where id = ?";
List<String> strlist = new ArrayList<>(100);
strlist.add(id);
List<SqlParamEntity> sqlparam = databaseUtils.getSqlParamEntity(strlist);
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql,sqlparam);
recordMap.put("status",true);
}
return recordMap;
}
/**
* 访
* @param groupId
* @param sourceType
* @param employeeId
* @return
*/
public List<Map<String,Object>> getDefaultServiceRecord(String groupId,String sourceType,String employeeId){
String sql = "select t.taby,t.fwtb,t.fwmc,t.fwdz from uf_zzfwcsh t where t.delete_type=0 and t.tenant_key = ? limit 6";
log.info("getDefaultServiceRecord--sql:"+sql);
List<String> strlist = new ArrayList<>(100);
strlist.add(tenant_key);
List<SqlParamEntity> sqlparam = databaseUtils.getSqlParamEntity(strlist);
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql,sqlparam);
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
return recordList;
}
}

@ -235,4 +235,54 @@ public class UserInfoCmd {
}
}
/**
*
* @param simpleEmployee
* @return
*/
public Map<String, Object> getUserType(SimpleEmployee simpleEmployee) {
Map<String, Object> map = new HashMap<>(100);
String type = "3";
SimpleEmployee employee = UserContext.getCurrentUser();
log.error("employee:"+employee.getEmployeeId());
long formdata = employee.getFormdata();
String groupId = "weaver-ebuilder-form-service";
String sourceType = "LOGIC";
String sql =" select field69,field69_obj from eteams.Hrmemployeedefined where form_data_id='"+formdata+"'" ;
log.error("getSelfServiceData--sql:"+sql);
String field69 = "";
Map<String, Object> result = databaseUtils.execute(sourceType, groupId, sql);
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
if(recordList.size()>0){
// 销售 0项目 1,技术 2其它 3
field69 = String.valueOf(recordList.get(0).get("field69"));
}
type = getfield69Type(field69);
map.put("type",type);
return map;
}
private String getfield69Type(String key){
String type = "3";
switch (key){
case "1":
type = "0";
break;
case "2":
type = "1";
break;
case "3":
type = "2";
break;
default:
type = "3";
}
return type;
}
}

@ -0,0 +1,946 @@
package com.weaver.seconddev.jcldoor.cmd;
import com.weaver.common.base.entity.result.WeaResult;
import com.weaver.ebuilder.datasource.api.entity.SqlParamEntity;
import com.weaver.framework.rpc.annotation.RpcReference;
import com.weaver.seconddev.jcldoor.util.CommonUtils;
import com.weaver.seconddev.jcldoor.util.DatabaseUtils;
import com.weaver.seconddev.jcldoor.util.JucailinPortalUtils;
import com.weaver.teams.domain.user.SimpleEmployee;
import com.weaver.teams.security.context.UserContext;
import com.weaver.workflow.common.constant.list.api.DateTimeConditionEnum;
import com.weaver.workflow.common.constant.list.listdimension.RequestListInitDimensionTabEnum;
import com.weaver.workflow.common.entity.list.api.RequestListConditionApiEntity;
import com.weaver.workflow.common.entity.list.api.publicapi.RequestCountInfoPAEntity;
import com.weaver.workflow.list.api.rest.publicapi.WflRequestListRest;
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 org.springframework.util.CollectionUtils;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.util.*;
/**
*
*
* @author wangj
* @version 1.00
* @Date 2024/3/25
*/
@Component
public class WorkDataCmd {
private final static Logger log = LoggerFactory.getLogger(WorkDataCmd.class);
@Autowired
private DatabaseUtils databaseUtils;
public String tenant_key = "t7akvdnf84";
@RpcReference(group = "workflow")
WflRequestListRest wflRequestListRest;
@Autowired
private JucailinPortalUtils jucailinPortalUtils;
public Map<String, Object> getInfo(HttpServletRequest request, SimpleEmployee simpleEmployee) {
Map<String, Object> recordMap = new HashMap<String, Object>();
List<Map<String,String>> list = new ArrayList<>(100);
Map<String,String> oneMap = new HashMap<>(100);
Map<String,String> twoMap = new HashMap<>(100);
Map<String,String> threeMap = new HashMap<>(100);
Map<String,String> fourMap = new HashMap<>(100);
Map<String,Object> typeMap = getUserType(simpleEmployee);
//销售 0项目 1,技术 2其它 3
String znlx = (String) typeMap.get("type");
String startday = request.getParameter("startday");
String endday = request.getParameter("endday");
String employeeId = request.getParameter("employeeId");
String one = "0";
String oneword = "";
String oneurl = "";
String two = "0";
String twoword = "";
String twourl = "";
String three = "0";
String threeword = "";
String threeurl = "";
String four = "0";
String fourword = "";
String foururl = "";
//销售 0项目 1,技术 2其它 3
if("2".equals(znlx)){
Map<String, Object> wtMap = getQuestInfo(startday, endday, employeeId);
one = (String) wtMap.get("count");
oneword = "本年问题处理数量";
String pkey = "workdata.technology.wtclsl";
oneurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String, Object> rtMap = getDaysInfo(startday, endday, employeeId);
two = (String) rtMap.get("count");
twoword = "本年开发人天";
pkey = "workdata.technology.kfrt";
twourl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String, Object> gtxzMap = getInteractInfo(startday, endday, employeeId);
three = (int) gtxzMap.get("count")+"";
threeword = "本年沟通协作数";
pkey = "workdata.technology.gtxz";
threeurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String, Object> wfMap = getWfInfo();
four = (Long) wfMap.get("count")+"";
fourword = "本年处理流程数";
pkey = "workdata.technology.cllc";
foururl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
}else if("1".equals(znlx)){
one = "0.00";
oneword = "本年验收指标";
String pkey = "workdata.project.yszb";
oneurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
//项目验收信息
Map<String,Object> ysMap = getYsInfo(employeeId,startday,endday);
Map<String,Object> ysdata = (Map<String, Object>) ysMap.get("datas");
two = (String) ysdata.get("htzje");
twoword = "本年验收金额";
pkey = "workdata.project.ysje";
twourl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
three = "0.00";
threeword = "本年指标达成率";
pkey = "workdata.project.zbdcl";
threeurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
//项目收款信息
Map<String,Object> skMap = getSkInfo(employeeId,startday,endday);
Map<String,Object> skdata = (Map<String, Object>) skMap.get("datas");
four = (String) skdata.get("skje");
fourword = "本年收款金额";
pkey = "workdata.project.skje";
foururl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
}else if("3".equals(znlx)){
Map<String,Object> wfMap = getWfInfo();
one = (Long) wfMap.get("count")+"";
oneword = "本年处理流程数";
String pkey = "workdata.other.cllc";
oneurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> wdMap = getDocInfo(startday,endday,employeeId);
two = (int) wdMap.get("count")+"";
twoword = "本年文档贡献数";
pkey = "workdata.other.wdgx";
twourl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> wbMap = getDailyInfo(startday,endday,employeeId);
three = (int) wbMap.get("count")+"";
threeword = "本年微博填写数";
pkey = "workdata.other.wbtx";
threeurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> gtxzMap = getInteractInfo(startday,endday,employeeId);
four = (int) gtxzMap.get("count")+"";
fourword = "本年沟通协作数";
pkey = "workdata.other.gtxz";
foururl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
}else{
Map<String,Object> wfMap = getWfInfo();
one = (Long) wfMap.get("count")+"";
oneword = "本年处理流程数";
String pkey = "workdata.other.cllc";
oneurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> wdMap = getDocInfo(startday,endday,employeeId);
two = (int) wdMap.get("count")+"";
twoword = "本年文档贡献数";
pkey = "workdata.other.wdgx";
twourl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> wbMap = getDailyInfo(startday,endday,employeeId);
three = (int) wbMap.get("count")+"";
threeword = "本年微博填写数";
pkey = "workdata.other.wbtx";
threeurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> gtxzMap = getInteractInfo(startday,endday,employeeId);
four = (int) gtxzMap.get("count")+"";
fourword = "本年沟通协作数";
pkey = "workdata.other.gtxz";
foururl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
}
oneMap.put("name",oneword);
oneMap.put("value",one);
oneMap.put("url",oneurl);
twoMap.put("name",twoword);
twoMap.put("value",two);
twoMap.put("url",twourl);
threeMap.put("name",threeword);
threeMap.put("value",three);
threeMap.put("url",threeurl);
fourMap.put("name",fourword);
fourMap.put("value",four);
fourMap.put("url",foururl);
list.add(oneMap);
list.add(twoMap);
list.add(threeMap);
list.add(fourMap);
recordMap.put("list",list);
return recordMap;
}
public Map<String, Object> getInfoByType(HttpServletRequest request, SimpleEmployee simpleEmployee) {
Map<String, Object> recordMap = new HashMap<String, Object>();
String znlx = CommonUtils.null2String(request.getParameter("type"));
List<Map<String,String>> list = new ArrayList<>(100);
Map<String,String> oneMap = new HashMap<>(100);
Map<String,String> twoMap = new HashMap<>(100);
Map<String,String> threeMap = new HashMap<>(100);
Map<String,String> fourMap = new HashMap<>(100);
String startday = request.getParameter("startday");
String endday = request.getParameter("endday");
String employeeId = request.getParameter("employeeId");
String one = "0";
String oneword = "";
String oneurl = "";
String two = "0";
String twoword = "";
String twourl = "";
String three = "0";
String threeword = "";
String threeurl = "";
String four = "0";
String fourword = "";
String foururl = "";
//销售 0项目 1,技术 2其它 3
if("2".equals(znlx)){
Map<String, Object> wtMap = getQuestInfo(startday, endday, employeeId);
one = (String) wtMap.get("count");
oneword = "本年问题处理数量";
String pkey = "workdata.technology.wtclsl";
oneurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String, Object> rtMap = getDaysInfo(startday, endday, employeeId);
two = (String) rtMap.get("count");
twoword = "本年开发人天";
pkey = "workdata.technology.kfrt";
twourl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String, Object> gtxzMap = getInteractInfo(startday, endday, employeeId);
three = (int) gtxzMap.get("count")+"";
threeword = "本年沟通协作数";
pkey = "workdata.technology.gtxz";
threeurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String, Object> wfMap = getWfInfo();
four = (Long) wfMap.get("count")+"";
fourword = "本年处理流程数";
pkey = "workdata.technology.cllc";
foururl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
}else if("1".equals(znlx)){
one = "0.00";
oneword = "本年验收指标";
String pkey = "workdata.project.cllc";
oneurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
//项目验收信息
Map<String,Object> ysMap = getYsInfo(employeeId,startday,endday);
Map<String,Object> ysdata = (Map<String, Object>) ysMap.get("datas");
two = (String) ysdata.get("htzje");
twoword = "本年验收金额";
pkey = "workdata.project.ysje";
twourl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
three = "0.00";
threeword = "本年指标达成率";
pkey = "workdata.project.zbdcl";
threeurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
//项目收款信息
Map<String,Object> skMap = getSkInfo(employeeId,startday,endday);
Map<String,Object> skdata = (Map<String, Object>) skMap.get("datas");
four = (String) skdata.get("skje");
fourword = "本年收款金额";
pkey = "workdata.project.skje";
foururl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
}else if("3".equals(znlx)){
Map<String,Object> wfMap = getWfInfo();
one = (Long) wfMap.get("count")+"";
oneword = "本年处理流程数";
String pkey = "workdata.other.cllc";
oneurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> wdMap = getDocInfo(startday,endday,employeeId);
two = (int) wdMap.get("count")+"";
twoword = "本年文档贡献数";
pkey = "workdata.other.wdgx";
twourl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> wbMap = getDailyInfo(startday,endday,employeeId);
three = (int) wbMap.get("count")+"";
threeword = "本年微博填写数";
pkey = "workdata.other.wbtx";
threeurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> gtxzMap = getInteractInfo(startday,endday,employeeId);
four = (int) gtxzMap.get("count")+"";
fourword = "本年沟通协作数";
pkey = "workdata.other.gtxz";
foururl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
}else{
Map<String,Object> wfMap = getWfInfo();
one = (Long) wfMap.get("count")+"";
oneword = "本年处理流程数";
String pkey = "workdata.other.cllc";
oneurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> wdMap = getDocInfo(startday,endday,employeeId);
two = (int) wdMap.get("count")+"";
twoword = "本年文档贡献数";
pkey = "workdata.other.wdgx";
twourl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> wbMap = getDailyInfo(startday,endday,employeeId);
three = (int) wbMap.get("count")+"";
threeword = "本年微博填写数";
pkey = "workdata.other.wbtx";
threeurl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
Map<String,Object> gtxzMap = getInteractInfo(startday,endday,employeeId);
four = (int) gtxzMap.get("count")+"";
fourword = "本年沟通协作数";
pkey = "workdata.other.gtxz";
foururl = jucailinPortalUtils.getUfPropData(pkey,tenant_key);
}
oneMap.put("name",oneword);
oneMap.put("value",one);
oneMap.put("url",oneurl);
twoMap.put("name",twoword);
twoMap.put("value",two);
twoMap.put("url",twourl);
threeMap.put("name",threeword);
threeMap.put("value",three);
threeMap.put("url",threeurl);
fourMap.put("name",fourword);
fourMap.put("value",four);
fourMap.put("url",foururl);
list.add(oneMap);
list.add(twoMap);
list.add(threeMap);
list.add(fourMap);
recordMap.put("list",list);
return recordMap;
}
public Map<String, Object> getDaysInfo(String startday, String endday, String employeeId) {
log.error("DevDaysCountCmd");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String groupId = "weaver-workflow-report-serviceworkflowreport";
String sourceType = "LOGIC";
Map<String, Object> dataMap = new HashMap<String, Object>();
String devcou = "0";
try {
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
if (StringUtils.isBlank(startday)) {
startday = year + "-01-01";
}
if (StringUtils.isBlank(endday)) {
endday = sdf.format(new Date());
}
if (StringUtils.isBlank(employeeId)) {
employeeId = String.valueOf(UserContext.getCurrentEmployeeId());
}
if (StringUtils.isNotBlank(employeeId)) {
String dataSql = " select count(1) as devcou \n" +
" from wfc_form_data l\n" +
" inner join fto_83 d on d.id = l.dataid\n" +
" inner join wfc_requestbase p on p.requestid = l.requestid\n" +
" where d.mutiresource= ?\n" +
" and d.xsjfrq >= ?" +
" and d.xsjfrq <= ?" +
" and d.tenant_key= ?\n" +
" and d.is_delete='0'\n" +
" and l.tenant_key=?\n" +
" and l.delete_type=0\n" +
" and p.tenant_key=?\n" +
" and p.delete_type=0\n" +
" order by d.id desc ";
List<String> strlist = new ArrayList<>(100);
strlist.add(employeeId);
strlist.add(startday);
strlist.add(endday);
strlist.add(tenant_key);
strlist.add(tenant_key);
strlist.add(tenant_key);
List<SqlParamEntity> sqlparam = databaseUtils.getSqlParamEntity(strlist);
log.info("DevDaysCountCmd sql:" + dataSql);
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql,sqlparam);
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
if(recordList.size()>0){
devcou = String.valueOf(recordList.get(0).get("devcou"));
}
}
dataMap.put("count", devcou);
} catch (Exception e) {
log.error("DevDaysCountCmd-Exception:" + e);
}
return dataMap;
}
public Map<String, Object> getQuestInfo(String startday, String endday, String employeeId) {
log.error("DevQuestCountCmd");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String groupId = "weaver-workflow-report-serviceworkflowreport";
String sourceType = "LOGIC";
Map<String, Object> dataMap = new HashMap<String, Object>();
String devcou = "0";
try {
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
if (StringUtils.isBlank(startday)) {
startday = year + "-01-01";
}
if (StringUtils.isBlank(endday)) {
endday = sdf.format(new Date());
}
if (StringUtils.isBlank(employeeId)) {
employeeId = String.valueOf(UserContext.getCurrentEmployeeId());
}
if (StringUtils.isNotBlank(employeeId)) {
String dataSql = " select ifnull(sum(d.integer2),0) as devcou \n" +
" from wfc_form_data l\n" +
" inner join fto_62 d on d.id = l.dataid\n" +
" inner join wfc_requestbase p on p.requestid = l.requestid\n" +
" where d.multiresource5=?\n" +
" and d.date2 >=?" +
" and d.date2 <=?" +
" and d.tenant_key=?\n" +
" and d.is_delete='0'\n" +
" and l.tenant_key=?\n" +
" and l.delete_type=0\n" +
" and p.tenant_key=?\n" +
" and p.delete_type=0\n" +
" order by d.id desc ";
log.info("DevQuestCountCmd dataSql:" + dataSql);
List<String> strlist = new ArrayList<>(100);
strlist.add(employeeId);
strlist.add(startday);
strlist.add(endday);
strlist.add(tenant_key);
strlist.add(tenant_key);
strlist.add(tenant_key);
List<SqlParamEntity> sqlparam = databaseUtils.getSqlParamEntity(strlist);
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql,sqlparam);
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
if(recordList.size()>0){
devcou = String.valueOf(recordList.get(0).get("devcou"));
}
}
dataMap.put("count", devcou);
} catch (Exception e) {
log.error("DevQuestCountCmd-Exception:" + e);
}
return dataMap;
}
/**
*
*
* @param
* @return
*/
public Map<String, Object> getInteractInfo(String startday, String endday, String employeeId) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String groupId = "weaver-cowork-service";
String sourceType = "LOGIC";
Map<String,Object> dataMap = new HashMap<String,Object>();
try {
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
if (StringUtils.isBlank(startday)) {
startday = year + "-01-01";
}
if (StringUtils.isBlank(endday)) {
endday = sdf.format(new Date());
}
if (StringUtils.isBlank(employeeId)) {
employeeId = String.valueOf(UserContext.getCurrentEmployeeId());
}
String sql = " select count(1) as count from cw_content " +
" where CREATOR=?\n" +
" and left(CREATE_TIME,10)>=? and left(CREATE_TIME,10) <= ?";
log.error("getInteractInfo sql:" + sql);
List<String> strlist = new ArrayList<>(100);
strlist.add(employeeId);
strlist.add(startday);
strlist.add(endday);
List<SqlParamEntity> sqlparam = databaseUtils.getSqlParamEntity(strlist);
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql, sqlparam);
List<Map<String, Object>> recordList = databaseUtils.getDataSourceList(result);
if (recordList.size() > 0) {
dataMap = recordList.get(0);
}
}catch (Exception e){
log.error("getInteractInfo-Exception:"+e.getMessage());
}
return dataMap;
}
/**
*
*
* @param
* @return
*/
public Map<String, Object> getWfInfo() {
Map<String, Object> data = new HashMap<>(100);
Long count = 0L ;
try{
RequestListConditionApiEntity conditionEntity = new RequestListConditionApiEntity();
SimpleEmployee employee = UserContext.getCurrentUser();
conditionEntity.setOperatedate(DateTimeConditionEnum.CURRENT_YEAR);
WeaResult<RequestCountInfoPAEntity> requestCountInfo = wflRequestListRest.getRequestCountByTabId(employee, RequestListInitDimensionTabEnum.DONE_FLOWALL.getTabid(), conditionEntity);
int code = requestCountInfo.getCode();
if(code == 200){
RequestCountInfoPAEntity requestCountInfoPAEntity = requestCountInfo.getData();
count = requestCountInfoPAEntity.getCount();
}
} catch (Exception e) {
log.error("getWfInfo-Exception:" + e);
}
data.put("count", count);
return data;
}
public Map<String, Object> getDailyInfo(String startday,String endday,String employeeId) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String groupId = "weaver-blog-service";
String sourceType = "LOGIC";
Map<String,Object> dataMap = new HashMap<String,Object>();
try{
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
if(StringUtils.isBlank(startday)){
startday = year+"-01-01";
}
if(StringUtils.isBlank(endday)){
endday = sdf.format(new Date());
}
if(StringUtils.isBlank(employeeId)){
employeeId = String.valueOf(UserContext.getCurrentEmployeeId());
}
String sql =" select count(1) as count\n" +
" from blog " +
" where creator=?\n" +
" and left(BLOG_TIME,10) >=?\n" +
" and left(BLOG_TIME,10) <=?\n" +
" and type='blog'\n" +
" and TENANT_KEY = ?\n" +
" and MODULE = 'blog'\n" +
" and DELETE_TYPE = 0\n" +
" and CONTENT is not null" ;
List<String> strlist = new ArrayList<>(100);
strlist.add(employeeId);
strlist.add(startday);
strlist.add(endday);
strlist.add(tenant_key);
List<SqlParamEntity> sqlparam = databaseUtils.getSqlParamEntity(strlist);
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql,sqlparam);
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
if(recordList.size()>0){
dataMap = recordList.get(0);
}
}catch (Exception e){
dataMap.put("count",0);
}
return dataMap;
}
/**
*
* @param
* @return
*/
public Map<String, Object> getDocInfo(String startday,String endday,String employeeId) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String groupId = "weaver-doc-service";
String sourceType = "LOGIC";
Map<String,Object> dataMap = new HashMap<String,Object>();
try{
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
if(StringUtils.isBlank(startday)){
startday = year+"-01-01";
}
if(StringUtils.isBlank(endday)){
endday = sdf.format(new Date());
}
if(StringUtils.isBlank(employeeId)){
employeeId = String.valueOf(UserContext.getCurrentEmployeeId());
}
String sql = " select count(1) as count from document " +
" where CREATOR=?\n" +
" and left(create_time,10)>=? and left(create_time,10) <= ?" ;
log.error("PortalDocCreateCountCmd sql:"+sql);
List<String> strlist = new ArrayList<>(100);
strlist.add(employeeId);
strlist.add(startday);
strlist.add(endday);
List<SqlParamEntity> sqlparam = databaseUtils.getSqlParamEntity(strlist);
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql,sqlparam);
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
if(recordList.size()>0){
dataMap = recordList.get(0);
}
}catch (Exception e){
dataMap.put("count",0);
}
return dataMap;
}
private Map<String,Object> getYsInfo(String employeeId,String startday,String endday){
Map<String,Object> dataMap = new HashMap<String,Object>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
if(StringUtils.isBlank(startday)){
startday = year+"-01-01";
}
if(StringUtils.isBlank(endday)){
endday = sdf.format(new Date());
}
if(StringUtils.isBlank(employeeId)){
employeeId = String.valueOf(UserContext.getCurrentEmployeeId());
}
dataMap.put("employeeId",employeeId);
dataMap.put("startday",startday);
dataMap.put("endday",endday);
String groupId = "weaver-ebuilder-form-service";
String sourceType = "LOGIC";
String sql =" select CONVERT(ifnull(sum(cast(t1.htzje as decimal(18,2))),0),CHAR) as htzje," +
" CONVERT(ifnull(sum(cast(t1.htyxje as decimal(18,2))),0),CHAR) as htyxje," +
" CONVERT(ifnull(sum(cast(t1.sumsk as decimal(18,2))),0),CHAR) as sumsk " +
" from uf_jxhs_xmys t1 \n" +
" where t1.ysrq>=? and t1.ysrq<=? " +
" and ( t1.qyjl = ? "+
" or t1.qyjl in (select cid from eteams.EMP_LINK where RELATION in ('othersenior','senior') and pid= ?)\n" +
" or t1.ysry = ?\n" +
" or t1.ysry in (select cid from eteams.EMP_LINK where RELATION in ('othersenior','senior') and pid= ?)\n" +
" or t1.dqfzr = ?\n" +
" or t1.dqfzr in (select cid from eteams.EMP_LINK where RELATION in ('othersenior','senior') and pid= ?)\n" +
" or t1.tdjl = ?\n" +
" or t1.tdjl in (select cid from eteams.EMP_LINK where RELATION in ('othersenior','senior') and pid= ?)\n" +
" or t1.tdfzr = ?\n" +
" or t1.tdfzr in (select cid from eteams.EMP_LINK where RELATION in ('othersenior','senior') and pid= ?)\n" +
" or t1.jgfzr = ?\n" +
" or t1.jgfzr in (select cid from eteams.EMP_LINK where RELATION in ('othersenior','senior') and pid= ?)\n" +
" or t1.dqzj = ?\n" +
" or t1.dqzj in (select cid from eteams.EMP_LINK where RELATION in ('othersenior','senior') and pid= ?) " +
" ) " ;
List<String> strlist = new ArrayList<>(100);
strlist.add(startday);
strlist.add(endday);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
List<SqlParamEntity> sqlparam = databaseUtils.getSqlParamEntity(strlist);
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql,sqlparam);
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
dataMap.put("datas",recordList.get(0));
} catch (Exception e) {
e.printStackTrace();
log.error("PorojectAcceptanceInfoCmd:"+e.getMessage());
}
return dataMap;
}
public Map<String, Object> getSkInfo(String employeeId,String startday,String endday) {
Map<String,Object> dataMap = new HashMap<String,Object>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
if(StringUtils.isBlank(startday)){
startday = year+"-01-01";
}
if(StringUtils.isBlank(endday)){
endday = sdf.format(new Date());
}
if(StringUtils.isBlank(employeeId)){
employeeId = String.valueOf(UserContext.getCurrentEmployeeId());
}
dataMap.put("employeeId",employeeId);
dataMap.put("startday",startday);
dataMap.put("endday",endday);
String groupId = "weaver-ebuilder-form-service";
String sourceType = "LOGIC";
String sql =" SELECT \n" +
" CONVERT(ifnull(sum(cast(t1.skje as decimal(18,2))),0),CHAR) as skje,\n" + //收款金额
" CONVERT(ifnull(sum(cast(t1.xmskje as decimal(18,2))),0),CHAR) as xmskje,\n" + // 项目收款金额
" CONVERT(ifnull(sum(cast(t1.xsyxje as decimal(18,2))),0),CHAR) as xsyxje," + // 销售有效金额
" CONVERT(ifnull(sum(cast(t1.xsje as decimal(18,2))),0),CHAR) as xsje," + // 销售金额
" CONVERT(ifnull(sum(cast(t1.xmyxje as decimal(18,2))),0),CHAR) as xmyxje," + //项目有效金额
" CONVERT(ifnull(sum(cast(t1.xsjxhk as decimal(18,2))),0),CHAR) as xsjxhk," + //有效绩效回款
" CONVERT(ifnull(sum(cast(t1.sumsk as decimal(18,2))),0),CHAR) as sumsk," + //总收款金额
" CONVERT(ifnull(sum(cast(t1.sjjsk as decimal(18,2))),0),CHAR) as sjjsk," + //实际结算款
" CONVERT(ifnull(sum(cast(t1.skjs as decimal(18,2))),0),CHAR) as skjs " + //收款结算
" FROM uf_jxhs_skmx t1\n" +
" LEFT JOIN uf_jxhs_zxhtzb t2 ON t1.hth = t2.hth AND t2.hth != '' AND t2.hth IS NOT NULL \n" +
" LEFT JOIN ebdf_physical_data epd on t1.id = epd.form_data_id and epd.delete_type = 0 \n" +
" WHERE t1.skje != 0 \n" +
" and t1.skje IS NOT NULL " +
" and t1.xshsny >= ? and t1.xshsny <=? "+
" and (" +
" ? IN ( 2, 27, 166, 10285, 11661, 300, 876, 3593, 1416, 1647, 1844,3044480226941419013,794508876297846787 ) \n" +
" or cast(t1.xsjl AS decimal(25,0)) in( \n" +
" SELECT cid AS id FROM eteams.emp_link WHERE pid = ? and RELATION in ('othersenior','senior') \n" +
" UNION " +
" SELECT id FROM eteams.employee WHERE id = ? " +
" )\n" +
" or cast(t1.kfry AS decimal(25,0)) in(\n" +
" SELECT cid AS id FROM eteams.emp_link WHERE pid = ? and RELATION in ('othersenior','senior') \n" +
" UNION " +
" SELECT id FROM eteams.employee WHERE id = ? " +
" )\n" +
" or cast(t1.qdjl AS decimal(25,0)) in(\n" +
" SELECT cid AS id FROM eteams.emp_link WHERE pid = ? and RELATION in ('othersenior','senior') \n" +
" UNION " +
" SELECT id FROM eteams.employee WHERE id = ? " +
" )\n" +
" or cast(t1.xmjl AS decimal(25,0)) in(\n" +
" SELECT cid AS id FROM eteams.emp_link WHERE pid = ? and RELATION in ('othersenior','senior') \n" +
" UNION " +
" SELECT id FROM eteams.employee WHERE id = ? " +
" )\n" +
" )\n" +
" order by t1.id " ;
log.error("PorojectReceiptsInfoCmd sql:"+sql);
List<String> strlist = new ArrayList<>(100);
strlist.add(startday);
strlist.add(endday);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
strlist.add(employeeId);
;
List<SqlParamEntity> sqlparam = databaseUtils.getSqlParamEntity(strlist);
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, sql,sqlparam);
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
if(!CollectionUtils.isEmpty(recordList)){
dataMap.put("datas",recordList.get(0));
}
} catch (Exception e) {
e.printStackTrace();
log.error("PorojectReceiptsInfoCmd Exception:"+e);
}
return dataMap;
}
/**
*
* @param simpleEmployee
* @return
*/
public Map<String, Object> getUserType(SimpleEmployee simpleEmployee) {
Map<String, Object> map = new HashMap<>(100);
String type = "3";
SimpleEmployee employee = UserContext.getCurrentUser();
log.error("employee:"+employee.getEmployeeId());
long formdata = employee.getFormdata();
String groupId = "weaver-ebuilder-form-service";
String sourceType = "LOGIC";
String sql =" select field69,field69_obj from eteams.Hrmemployeedefined where form_data_id='"+formdata+"'" ;
log.error("getSelfServiceData--sql:"+sql);
String field69 = "";
Map<String, Object> result = databaseUtils.execute(sourceType, groupId, sql);
List<Map<String,Object>> recordList = databaseUtils.getDataSourceList(result);
if(recordList.size()>0){
// 销售 0项目 1,技术 2其它 3
field69 = String.valueOf(recordList.get(0).get("field69"));
}
type = getfield69Type(field69);
map.put("type",type);
return map;
}
private String getfield69Type(String key){
String type = "3";
switch (key){
case "1":
type = "0";
break;
case "2":
type = "1";
break;
case "3":
type = "2";
break;
default:
type = "3";
}
return type;
}
}

@ -519,12 +519,15 @@ public class JucailinPortalController {
}
/**
*
* @param request
* @return
*/
@GetMapping("/selfServiceInfo")
@WeaPermission(publicPermission = true)
public WeaResult<Object> selfServiceInfo(HttpServletRequest request){
log.error("selfServiceInfo");
Map<String, Object> dataList = new HashMap<String, Object>();
SimpleEmployee simpleEmployee = UserContext.getCurrentUser();
try{
@ -536,6 +539,91 @@ public class JucailinPortalController {
}
/**
* ()
* @param request
* @return
*/
@GetMapping("/addSelfServiceCount")
@WeaPermission(publicPermission = true)
public WeaResult<Object> addSelfServiceCount(HttpServletRequest request){
log.error("addSelfServiceCount");
Map<String, Object> dataList = new HashMap<String, Object>();
SimpleEmployee simpleEmployee = UserContext.getCurrentUser();
try{
dataList = jucailinPortalService.addSelfServiceCount(request,simpleEmployee);
}catch (Exception e){
log.error("addSelfServiceCount-Exception:"+e.getMessage());
}
return WeaResult.success(dataList);
}
/**
*
* @param request
* @return
*/
@GetMapping("/getWorkData")
@WeaPermission(publicPermission = true)
public WeaResult<Object> getWorkData(HttpServletRequest request){
log.error("getWorkData");
Map<String, Object> dataList = new HashMap<String, Object>();
SimpleEmployee simpleEmployee = UserContext.getCurrentUser();
try{
dataList = jucailinPortalService.getWorkData(request,simpleEmployee);
}catch (Exception e){
log.error("getWorkData-Exception:"+e.getMessage());
}
return WeaResult.success(dataList);
}
/**
*
* @param request
* @return
*/
@GetMapping("/getWorkDataByType")
@WeaPermission(publicPermission = true)
public WeaResult<Object> getWorkDataByType(HttpServletRequest request){
log.error("getWorkDataByType");
Map<String, Object> dataList = new HashMap<String, Object>();
SimpleEmployee simpleEmployee = UserContext.getCurrentUser();
try{
dataList = jucailinPortalService.getWorkDataByType(request,simpleEmployee);
}catch (Exception e){
log.error("getWorkDataByType-Exception:"+e.getMessage());
}
return WeaResult.success(dataList);
}
/**
*
* @param request
* @return
*/
@GetMapping("/getUserType")
@WeaPermission(publicPermission = true)
public WeaResult<Object> getUserType(HttpServletRequest request){
log.error("getUserType");
Map<String, Object> dataList = new HashMap<String, Object>();
SimpleEmployee simpleEmployee = UserContext.getCurrentUser();
try{
dataList = jucailinPortalService.getUserType(request,simpleEmployee);
}catch (Exception e){
log.error("getUserType-Exception:"+e.getMessage());
}
return WeaResult.success(dataList);
}

@ -46,5 +46,12 @@ public interface JucailinPortalService {
public Map<String, Object> getSelfServiceInfo(HttpServletRequest request,SimpleEmployee simpleEmployee);
public Map<String, Object> addSelfServiceCount(HttpServletRequest request,SimpleEmployee simpleEmployee);
public Map<String, Object> getWorkData(HttpServletRequest request,SimpleEmployee simpleEmployee);
public Map<String, Object> getWorkDataByType(HttpServletRequest request,SimpleEmployee simpleEmployee);
public Map<String, Object> getUserType(HttpServletRequest request,SimpleEmployee simpleEmployee);
}

@ -74,6 +74,10 @@ public class JucailinPortalServiceImpl implements JucailinPortalService {
private SelfServiceInfoCmd selfServiceInfoCmd;
@Autowired
private WorkDataCmd workDataCmd;
@Override
@ -303,4 +307,28 @@ public class JucailinPortalServiceImpl implements JucailinPortalService {
return dataMap;
}
@Override
public Map<String, Object> addSelfServiceCount(HttpServletRequest request, SimpleEmployee simpleEmployee) {
Map<String,Object> dataMap = selfServiceInfoCmd.addSelfServiceCount(request,simpleEmployee);
return dataMap;
}
@Override
public Map<String, Object> getWorkData(HttpServletRequest request, SimpleEmployee simpleEmployee) {
Map<String,Object> dataMap = workDataCmd.getInfo(request,simpleEmployee);
return dataMap;
}
@Override
public Map<String, Object> getWorkDataByType(HttpServletRequest request, SimpleEmployee simpleEmployee) {
Map<String,Object> dataMap = workDataCmd.getInfoByType(request,simpleEmployee);
return dataMap;
}
@Override
public Map<String, Object> getUserType(HttpServletRequest request, SimpleEmployee simpleEmployee) {
Map<String,Object> dataMap = userInfoCmd.getUserType(simpleEmployee);
return dataMap;
}
}

Loading…
Cancel
Save