盛世科技: #1

Merged
howec merged 1 commits from dev-lh into dev 1 year ago

@ -5,7 +5,7 @@ import com.alibaba.fastjson.JSONObject;
import com.engine.common.biz.AbstractCommonCommand; import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext; import com.engine.common.entity.BizLogContext;
import com.engine.core.interceptor.CommandContext; import com.engine.core.interceptor.CommandContext;
import com.engine.kq.biz.*; import com.engine.kq.biz.KQReportBiz;
import com.engine.kq.cmd.shiftmanagement.toolkit.ShiftManagementToolKit; import com.engine.kq.cmd.shiftmanagement.toolkit.ShiftManagementToolKit;
import com.engine.kq.util.ExcelUtil; import com.engine.kq.util.ExcelUtil;
import com.engine.kq.util.KQDurationCalculatorUtil; import com.engine.kq.util.KQDurationCalculatorUtil;
@ -170,6 +170,14 @@ public class ExportDailyExcelCmd extends AbstractCommonCommand<Map<String, Objec
} }
titleList.add(title); titleList.add(title);
} }
//刘浩 导出新增列[夜班天数]-begin
title = new HashMap<>();
title.put("title","夜班天数");
title.put("width",30*256);
title.put("rowSpan", 3);
titleList.add(title);
//刘浩 导出新增列[夜班天数]-end
sheet.put("titleList", titleList); sheet.put("titleList", titleList);
String forgotBeginWorkCheck_field = " b.forgotbeginworkcheck "; String forgotBeginWorkCheck_field = " b.forgotbeginworkcheck ";
@ -241,6 +249,12 @@ public class ExportDailyExcelCmd extends AbstractCommonCommand<Map<String, Objec
String tmpkey = id+"|"+kqdate+"|"; String tmpkey = id+"|"+kqdate+"|";
// Map<String,Object> signDetailInfo = this.getSignDetailInfo(id,kqdate); // Map<String,Object> signDetailInfo = this.getSignDetailInfo(id,kqdate);
//刘浩--begin--
String serialidx = "";
String signintime1x = "";
String signouttime1x= "";
//刘浩--end--
for (int fieldDataKeyIdx =0;fieldDataKeyIdx<lsFieldDataKey.size();fieldDataKeyIdx++) { for (int fieldDataKeyIdx =0;fieldDataKeyIdx<lsFieldDataKey.size();fieldDataKeyIdx++) {
String fieldName = lsFieldDataKey.get(fieldDataKeyIdx); String fieldName = lsFieldDataKey.get(fieldDataKeyIdx);
String fieldid = KQReportFieldComInfo.field2Id.get(fieldName); String fieldid = KQReportFieldComInfo.field2Id.get(fieldName);
@ -285,10 +299,15 @@ public class ExportDailyExcelCmd extends AbstractCommonCommand<Map<String, Objec
fieldValue = tmpserialname; fieldValue = tmpserialname;
serialdata.put(serialid,tmpserialname); serialdata.put(serialid,tmpserialname);
} }
//liuhao
serialidx = fieldValue;
} }
} else if(fieldName.equals("signin1")){ } else if(fieldName.equals("signin1")){
fieldValue = Util.null2String(flowData.get(tmpkey+"signintime1")); fieldValue = Util.null2String(flowData.get(tmpkey+"signintime1"));
data.add(fieldValue); data.add(fieldValue);
//liuhao
signintime1x = fieldValue;
fieldValue = Util.null2String(flowData.get(tmpkey+"signinstatus1")); fieldValue = Util.null2String(flowData.get(tmpkey+"signinstatus1"));
data.add(fieldValue); data.add(fieldValue);
continue; continue;
@ -307,6 +326,9 @@ public class ExportDailyExcelCmd extends AbstractCommonCommand<Map<String, Objec
} else if(fieldName.equals("signout1")){ } else if(fieldName.equals("signout1")){
fieldValue = Util.null2String(flowData.get(tmpkey+"signouttime1")); fieldValue = Util.null2String(flowData.get(tmpkey+"signouttime1"));
data.add(fieldValue); data.add(fieldValue);
//liuhao
signouttime1x = fieldValue;
fieldValue = Util.null2String(flowData.get(tmpkey+"signoutstatus1")); fieldValue = Util.null2String(flowData.get(tmpkey+"signoutstatus1"));
data.add(fieldValue); data.add(fieldValue);
continue; continue;
@ -422,10 +444,6 @@ public class ExportDailyExcelCmd extends AbstractCommonCommand<Map<String, Objec
fieldValue = KQDurationCalculatorUtil.getDurationRound(businessLeave); fieldValue = KQDurationCalculatorUtil.getDurationRound(businessLeave);
}else if(fieldName.equals("kqdate")){ }else if(fieldName.equals("kqdate")){
fieldValue=kqdate+" "+com.engine.portal.util.DateUtil.getDayWeekOfDate1(DateUtil.parseToDate(kqdate)); fieldValue=kqdate+" "+com.engine.portal.util.DateUtil.getDayWeekOfDate1(DateUtil.parseToDate(kqdate));
}else if (fieldName.equals("reissuecard")) {
double reissueCard = Util.getDoubleValue(Util.null2String(flowData.get(id + "|" + kqdate + "|reissueCard" )));
reissueCard = reissueCard < 0 ? 0 : reissueCard;
data.add(reissueCard);
} else { } else {
fieldValue = Util.null2String(rs.getString(fieldName)); fieldValue = Util.null2String(rs.getString(fieldName));
fieldValue = getFieldValueByUnitType(fieldValue,kqReportFieldComInfo.getUnittype(fieldid)); fieldValue = getFieldValueByUnitType(fieldValue,kqReportFieldComInfo.getUnittype(fieldid));
@ -436,8 +454,24 @@ public class ExportDailyExcelCmd extends AbstractCommonCommand<Map<String, Objec
data.add(fieldValue); data.add(fieldValue);
} }
} }
//刘浩 夜班天数 -- begin
writeLog("howec-serialidx:::::::::"+serialidx);
writeLog("howec-signintime1x:::::::::"+signintime1x);
writeLog("howec-signouttime1x:::::::::"+signouttime1x);
if(serialidx.contains("夜班")) {
if((!"未打卡".equals(signintime1x)) && (!"未打卡".equals(signouttime1x))) {
data.add("1");
}else {
data.add("0");
}
}else {
data.add("0");
}
//刘浩 夜班天数 -- end
dataList.add(data); dataList.add(data);
} }
sheet.put("dataList", dataList); sheet.put("dataList", dataList);
sheet.put("constraintList",constraintList); sheet.put("constraintList",constraintList);
sheet.put("createFile", "1"); sheet.put("createFile", "1");

@ -5,7 +5,7 @@ import com.alibaba.fastjson.JSONObject;
import com.engine.common.biz.AbstractCommonCommand; import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext; import com.engine.common.entity.BizLogContext;
import com.engine.core.interceptor.CommandContext; import com.engine.core.interceptor.CommandContext;
import com.engine.kq.biz.*; import com.engine.kq.biz.KQReportBiz;
import com.engine.kq.util.ExcelUtil; import com.engine.kq.util.ExcelUtil;
import com.engine.kq.util.KQDurationCalculatorUtil; import com.engine.kq.util.KQDurationCalculatorUtil;
import com.engine.kq.util.UtilKQ; import com.engine.kq.util.UtilKQ;
@ -166,12 +166,13 @@ public class ExportExcelCmd extends AbstractCommonCommand<Map<String, Object>> {
// if (DateUtil.compDate(today, toDate) > 0) {//结束如期不大于今天 // if (DateUtil.compDate(today, toDate) > 0) {//结束如期不大于今天
// toDate = today; // toDate = today;
// } // }
Map<String,String> map99 = new HashMap<>();
if(showColumns.contains("kqCalendar")) { if(showColumns.contains("kqCalendar")) {
childColumns = new ArrayList<>(); childColumns = new ArrayList<>();
for (String date = fromDate; !isEnd; ) { for (String date = fromDate; !isEnd; ) {
if (date.equals(toDate)) isEnd = true; if (date.equals(toDate)) isEnd = true;
title = new HashMap<>(); title = new HashMap<>();
map99.put(date,"22222");
title.put("title", UtilKQ.getWeekDayShort(DateUtil.getWeek(date)-1,user.getLanguage()) +"\r\n"+ DateUtil.geDayOfMonth(date)); title.put("title", UtilKQ.getWeekDayShort(DateUtil.getWeek(date)-1,user.getLanguage()) +"\r\n"+ DateUtil.geDayOfMonth(date));
title.put("width", 30 * 256); title.put("width", 30 * 256);
childColumns.add(title); childColumns.add(title);
@ -187,6 +188,12 @@ public class ExportExcelCmd extends AbstractCommonCommand<Map<String, Object>> {
} }
titleList.add(title); titleList.add(title);
} }
//刘浩 新增一列[夜班天数]
title = new HashMap();
title.put("title","夜班天数");
title.put("width", 30 * 256);
title.put("rowSpan",3);
titleList.add(title);
sheet.put("titleList", titleList); sheet.put("titleList", titleList);
String forgotBeginWorkCheck_field = " sum(b.forgotBeginWorkCheck) "; String forgotBeginWorkCheck_field = " sum(b.forgotBeginWorkCheck) ";
@ -272,6 +279,7 @@ public class ExportExcelCmd extends AbstractCommonCommand<Map<String, Object>> {
while (rs.next()) { while (rs.next()) {
data = new ArrayList<>(); data = new ArrayList<>();
String id = rs.getString("id"); String id = rs.getString("id");
for (int fieldDataKeyIdx =0;fieldDataKeyIdx<lsFieldDataKey.size();fieldDataKeyIdx++) { for (int fieldDataKeyIdx =0;fieldDataKeyIdx<lsFieldDataKey.size();fieldDataKeyIdx++) {
String fieldName = lsFieldDataKey.get(fieldDataKeyIdx); String fieldName = lsFieldDataKey.get(fieldDataKeyIdx);
String fieldid = KQReportFieldComInfo.field2Id.get(fieldName); String fieldid = KQReportFieldComInfo.field2Id.get(fieldName);
@ -425,12 +433,6 @@ public class ExportExcelCmd extends AbstractCommonCommand<Map<String, Object>> {
data.add(fieldValue); data.add(fieldValue);
} }
continue; continue;
} else if (fieldName.equals("reissuecard")) {
int reissueCard = Util.getIntValue(Util.null2String(flowData.get(id + "|reissueCard" )));
reissueCard = reissueCard < 0 ? 0 : reissueCard;
fieldValue = String.valueOf(reissueCard);
data.add(fieldValue);
continue;
}else { }else {
fieldValue = Util.formatMultiLang(Util.null2String(rs.getString(fieldName)),""+user.getLanguage()); fieldValue = Util.formatMultiLang(Util.null2String(rs.getString(fieldName)),""+user.getLanguage());
fieldValue = getFieldValueByUnitType(fieldValue,kqReportFieldComInfo.getUnittype(fieldid)); fieldValue = getFieldValueByUnitType(fieldValue,kqReportFieldComInfo.getUnittype(fieldid));
@ -457,6 +459,33 @@ public class ExportExcelCmd extends AbstractCommonCommand<Map<String, Object>> {
date = DateUtil.getDate(cal.getTime(), 1); date = DateUtil.getDate(cal.getTime(), 1);
} }
} }
//刘浩 新增夜班天数
String resourceid = id;
if(map99!=null && map99.keySet().size()>0) {
String s1 = "";
for(String s99 :map99.keySet()) {
s1 = s1+"'"+s99+"',";
}
s1 = s1.substring(0,s1.length()-1);
String sql88 = "select b.resourceid,b.signintime,b.signouttime,b.serialid from kq_format_detail b where b.resourceid = "+resourceid+" and b.signintime is not null and b.signouttime is not null " +
" and b.signintime !='' and b.signouttime !='' " +
" and b.kqdate in("+s1+") and b.serialid in (3,5,6)";
String sql99 = "select count(b.resourceid) as sums from kq_format_detail b where b.resourceid = "+resourceid+" and b.signintime is not null and b.signouttime is not null " +
" and b.signintime !='' and b.signouttime !='' " +
" and b.kqdate in("+s1+") and b.serialid in (3,5,6)";
writeLog("howec:::::sql2:"+sql88);
RecordSet rs99 = new RecordSet();
rs99.execute(sql99);
String counts99 = "0";
if (rs99.next()){
counts99 = String.valueOf(rs99.getInt("sums"));
}
data.add(counts99);
}else {
data.add("0");
}
dataList.add(data); dataList.add(data);
} }
sheet.put("dataList", dataList); sheet.put("dataList", dataList);

@ -5,7 +5,7 @@ import com.alibaba.fastjson.JSONObject;
import com.engine.common.biz.AbstractCommonCommand; import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext; import com.engine.common.entity.BizLogContext;
import com.engine.core.interceptor.CommandContext; import com.engine.core.interceptor.CommandContext;
import com.engine.kq.biz.*; import com.engine.kq.biz.KQReportBiz;
import com.engine.kq.cmd.shiftmanagement.toolkit.ShiftManagementToolKit; import com.engine.kq.cmd.shiftmanagement.toolkit.ShiftManagementToolKit;
import com.engine.kq.entity.WorkTimeEntity; import com.engine.kq.entity.WorkTimeEntity;
import com.engine.kq.log.KQLog; import com.engine.kq.log.KQLog;
@ -22,10 +22,7 @@ import weaver.hrm.resource.ResourceComInfo;
import weaver.systeminfo.SystemEnv; import weaver.systeminfo.SystemEnv;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class GetKQDailyReportCmd extends AbstractCommonCommand<Map<String, Object>> { public class GetKQDailyReportCmd extends AbstractCommonCommand<Map<String, Object>> {
@ -122,6 +119,7 @@ public class GetKQDailyReportCmd extends AbstractCommonCommand<Map<String, Objec
columns.add(column); columns.add(column);
} }
// String today = DateUtil.getCurrentDate(); // String today = DateUtil.getCurrentDate();
// if(DateUtil.compDate(today, toDate)>0){//结束如期不大于今天 // if(DateUtil.compDate(today, toDate)>0){//结束如期不大于今天
// toDate = today; // toDate = today;
@ -235,6 +233,7 @@ public class GetKQDailyReportCmd extends AbstractCommonCommand<Map<String, Objec
String isShowFullPath = Util.null2String(kqSettingsComInfo.getMain_val(fullPathMainKey),"0"); String isShowFullPath = Util.null2String(kqSettingsComInfo.getMain_val(fullPathMainKey),"0");
rs.execute(sql); rs.execute(sql);
writeLog("howec::::::::::::::::sql:"+sql);
while (rs.next()) { while (rs.next()) {
String id = rs.getString("id"); String id = rs.getString("id");
String kqdate = rs.getString("kqdate"); String kqdate = rs.getString("kqdate");
@ -329,10 +328,6 @@ public class GetKQDailyReportCmd extends AbstractCommonCommand<Map<String, Objec
data.put("serialid", tmpserialname); data.put("serialid", tmpserialname);
} }
} }
}else if (fieldName.equals("reissuecard")) {
int reissueCard = Util.getIntValue(Util.null2String(flowData.get(id + "|" + kqdate + "|reissueCard" )));
reissueCard = reissueCard < 0 ? 0 : reissueCard;
data.put(fieldName, reissueCard);
}else { }else {
fieldValue = Util.null2String(rs.getString(fieldName)); fieldValue = Util.null2String(rs.getString(fieldName));
if (kqReportFieldComInfo.getUnittype().equals("2") && fieldValue.length() > 0) { if (kqReportFieldComInfo.getUnittype().equals("2") && fieldValue.length() > 0) {

@ -5,7 +5,7 @@ import com.alibaba.fastjson.JSONObject;
import com.engine.common.biz.AbstractCommonCommand; import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext; import com.engine.common.entity.BizLogContext;
import com.engine.core.interceptor.CommandContext; import com.engine.core.interceptor.CommandContext;
import com.engine.kq.biz.*; import com.engine.kq.biz.KQReportBiz;
import com.engine.kq.util.KQDurationCalculatorUtil; import com.engine.kq.util.KQDurationCalculatorUtil;
import com.engine.kq.util.PageUidFactory; import com.engine.kq.util.PageUidFactory;
import weaver.common.DateUtil; import weaver.common.DateUtil;
@ -20,6 +20,8 @@ import weaver.hrm.resource.ResourceComInfo;
import weaver.systeminfo.SystemEnv; import weaver.systeminfo.SystemEnv;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> { public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> {
@ -118,6 +120,20 @@ public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> {
columns.addAll(this.getCascadeKeyColumnsInfo(kqReportFieldComInfo.getCascadekey(),user)); columns.addAll(this.getCascadeKeyColumnsInfo(kqReportFieldComInfo.getCascadekey(),user));
} }
//Liuhao 新增列[夜班天数] --begin
column = new HashMap();
column.put("title","夜班天数");
column.put("unit","天");
column.put("dataIndex","nightdays");
column.put("type","businessLeave");
column.put("key","nightdays");
column.put("isSystem","1");
column.put("rowSpan","3");
column.put("width",65);
column.put("showDetial","1");
columns.add(column);
//Liuhao 新增列[夜班天数] --end
boolean isEnd = false; boolean isEnd = false;
Calendar cal = DateUtil.getCalendar(); Calendar cal = DateUtil.getCalendar();
String today = DateUtil.getCurrentDate(); String today = DateUtil.getCurrentDate();
@ -411,10 +427,6 @@ public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> {
}else{ }else{
fieldValue = KQDurationCalculatorUtil.getDurationRound(Util.null2String(flowData.get(id+"|"+fieldName))); fieldValue = KQDurationCalculatorUtil.getDurationRound(Util.null2String(flowData.get(id+"|"+fieldName)));
} }
}else if (fieldName.equals("reissuecard")) {
int reissueCard = Util.getIntValue(Util.null2String(flowData.get(id + "|reissueCard" )));
reissueCard = reissueCard < 0 ? 0 : reissueCard;
fieldValue = String.valueOf(reissueCard);
} else { } else {
fieldValue = Util.null2String(rs.getString(fieldName)); fieldValue = Util.null2String(rs.getString(fieldName));
if(Util.null2String(kqReportFieldComInfo.getUnittype()).length()>0) { if(Util.null2String(kqReportFieldComInfo.getUnittype()).length()>0) {
@ -471,6 +483,8 @@ public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> {
Map<String,Object> detialDatas = kqReportBiz.getDetialDatas(id,fromDate,toDate,user,flowData,false,uintType,show_card_source); Map<String,Object> detialDatas = kqReportBiz.getDetialDatas(id,fromDate,toDate,user,flowData,false,uintType,show_card_source);
// new KQLog().info("id:"+id+":detialDatas:"+detialDatas); // new KQLog().info("id:"+id+":detialDatas:"+detialDatas);
isEnd = false; isEnd = false;
for(String date=fromDate; !isEnd;) { for(String date=fromDate; !isEnd;) {
if(date.equals(toDate)) isEnd = true; if(date.equals(toDate)) isEnd = true;
if(DateUtil.compDate(today, date)>0){ if(DateUtil.compDate(today, date)>0){
@ -482,6 +496,43 @@ public class GetKQReportCmd extends AbstractCommonCommand<Map<String, Object>> {
cal.setTime(DateUtil.parseToDate(date)); cal.setTime(DateUtil.parseToDate(date));
date = DateUtil.getDate(cal.getTime(), 1); date = DateUtil.getDate(cal.getTime(), 1);
} }
//liuhao 夜班天数
//刘浩 拿到日期 计算天数----begin
List<String>listdate = new ArrayList<>();
SimpleDateFormat sdf = new SimpleDateFormat();
sdf.applyPattern("yyyy-MM-dd");
for(String key99 : data.keySet()) {
try {
Date date = sdf.parse(key99);
listdate.add(key99);
} catch (ParseException e) {}
}
String resourceid = (String)data.get("resourceId");
if(listdate!=null && listdate.size()>0) {
String s1 = "";
for(String strdate : listdate) {
s1 = s1+"'"+strdate+"',";
}
s1 = s1.substring(0,s1.length()-1);
String sql88 = "select b.resourceid,b.signintime,b.signouttime,b.serialid from kq_format_detail b where b.resourceid = "+resourceid+" and b.signintime is not null and b.signouttime is not null " +
" and b.signintime !='' and b.signouttime !='' " +
" and b.kqdate in("+s1+") and b.serialid in (3,5,6)";
String sql99 = "select count(b.resourceid) as sums from kq_format_detail b where b.resourceid = "+resourceid+" and b.signintime is not null and b.signouttime is not null " +
" and b.signintime !='' and b.signouttime !='' " +
" and b.kqdate in("+s1+") and b.serialid in (3,5,6)";
writeLog("howec:::::sql1:"+sql88);
RecordSet rs99 = new RecordSet();
rs99.execute(sql99);
String counts99 = "0";
if (rs99.next()){
counts99 = String.valueOf(rs99.getInt("sums"));
}
data.put("nightdays",counts99);
}else {
data.put("nightdays","0");
}
datas.add(data); datas.add(data);
} }

Loading…
Cancel
Save