Merge remote-tracking branch 'origin/main'

zm_dev
sy 8 months ago
commit 5d3b9aefbe

@ -114,7 +114,7 @@ public class SaveWorkOverTimeCmd extends AbstractCommonCommand<Map<String,Object
if ("2".equals(ccclfs) && workOverTimeResults == null){ if ("2".equals(ccclfs) && workOverTimeResults == null){
String startDate = analysisDate.split("-")[0]+"-"+ analysisDate.split("-")[1]+"-01"; String startDate = analysisDate.split("-")[0]+"-"+ analysisDate.split("-")[1]+"-01";
String endDate = analysisDate.split("-")[0]+"-"+ analysisDate.split("-")[1]+"-"+diffdays; String endDate = analysisDate.split("-")[0]+"-"+ analysisDate.split("-")[1]+"-"+diffdays;
workOverTimeResults =getWorkOverTimeResults(startDate,endDate,userId); workOverTimeResults =getWorkOverTimeResults(DateUtil.beforeDay(startDate,7),DateUtil.AfterDay(endDate,7),userId);
} }
if ("2".equals(ccclfs) && !"".equals(rzdjbxss) && (DateTypeEnum.WORK_DAY.getKey().equals(rqlx) || DateTypeEnum.CHANGECLASS.getKey().equals(rqlx))){ if ("2".equals(ccclfs) && !"".equals(rzdjbxss) && (DateTypeEnum.WORK_DAY.getKey().equals(rqlx) || DateTypeEnum.CHANGECLASS.getKey().equals(rqlx))){
@ -267,7 +267,7 @@ public class SaveWorkOverTimeCmd extends AbstractCommonCommand<Map<String,Object
} }
public List<Map<String, Object>> getWorkOverTimeResults(String startDate,String endDate,String userId){ public List<Map<String, Object>> getWorkOverTimeResults(String startDate,String endDate,String userId){
String sql = "select sjjbsc,sjksrq,sjjsrq from uf_jcl_kq_jbjg where jbry=? and sjksrq>? and sjjsrq<?"; String sql = "select a.sjjbsc,a.sjksrq,a.sjjsrq,a.jblx,b.hsl,b.hsdw from uf_jcl_kq_jbjg a left join uf_jcl_kq_kqxm b on a.jblx=b.id where jbry=? and sjksrq>=? and sjjsrq<=?";
List<Map<String, Object>> dataList = DbTools.getSqlToList(sql,userId,startDate,endDate); List<Map<String, Object>> dataList = DbTools.getSqlToList(sql,userId,startDate,endDate);
return dataList; return dataList;
} }
@ -286,7 +286,7 @@ public class SaveWorkOverTimeCmd extends AbstractCommonCommand<Map<String,Object
* @param dataList * @param dataList
* @return * @return
*/ */
public int getWeekTime(List<Map<String, Object>> dataList,String date){ public double getWeekTime(List<Map<String, Object>> dataList,String date){
int day = TimeUtil.getDayOfWeek(date); int day = TimeUtil.getDayOfWeek(date);
if (day ==0){ if (day ==0){
day = 7; day = 7;
@ -303,18 +303,31 @@ public class SaveWorkOverTimeCmd extends AbstractCommonCommand<Map<String,Object
return false; return false;
} }
}).collect(Collectors.toList()); }).collect(Collectors.toList());
int totalHour = list.stream().mapToInt(e->Integer.valueOf(e.get("sjjbsc").toString())).sum(); double totalMinute = 0;
return totalHour; for (Map<String, Object> data:list){
String hsdw = data.get("hsdw").toString();
totalMinute += Utils.getItemduration(1,AccountingUnitEnum.MINUTES.getKey(), Double.valueOf(data.get("sjjbsc").toString()),AccountingUnitEnum.getEnum(hsdw),8);
}
return totalMinute;
} }
/** /**
* *
* @param dataList * @param dataList
* @return * @return
*/ */
public int getMonthTime(List<Map<String, Object>> dataList,String date){ public double getMonthTime(List<Map<String, Object>> dataList,String date){
List<Map<String, Object>> list = dataList.stream().filter(e->DateUtil.getTime(e.get("sjksrq").toString()).compareTo(DateUtil.getTime(date)) !=0).collect(Collectors.toList()); String startDate = date.split("-")[0]+"-"+ date.split("-")[1]+"-01";
int totalHour = list.stream().mapToInt(e->Integer.valueOf(e.get("sjjbsc").toString())).sum(); String endDate = date.split("-")[0]+"-"+ date.split("-")[1]+"-"+Util.null2String(params.get("diffdays"));
return totalHour; List<Map<String, Object>> list = dataList.stream().filter(e->DateUtil.getTime(e.get("sjksrq").toString()).compareTo(DateUtil.getTime(startDate))>=0 &&
DateUtil.getTime(e.get("sjjsrq").toString()).compareTo(DateUtil.getTime(endDate))<=0).collect(Collectors.toList());
double totalMinute = 0;
for (Map<String, Object> data:list){
String hsdw = data.get("hsdw").toString();
totalMinute += Utils.getItemduration(1,AccountingUnitEnum.MINUTES.getKey(), Double.valueOf(data.get("sjjbsc").toString()),AccountingUnitEnum.getEnum(hsdw),8);
}
return totalMinute;
} }
/** /**

@ -37,7 +37,7 @@ public class PersonGroupServiceImpl extends Service implements PersonGroupServic
Map<String, Object> data = Maps.newHashMap(); Map<String, Object> data = Maps.newHashMap();
String sql = "select * from (select t1.fieldid,t2.fieldname,t1.fieldlable,t1.ismand,t2.fielddbtype,t2.fieldhtmltype,t2.type, t1.dmlurl, t1.fieldorder, t1.isuse, t1.isModify,'1' as allowModify, t1.groupid, 1 as allowhide from cus_formfield t1, cus_formdict t2 where t1.fieldid=t2.id and t1.scope='HrmCustomFieldByInfoType' and (t1.scopeid='1' or t1.scopeid='-1' or t1.scopeid='3' ) " + String sql = "select * from (select t1.fieldid,t2.fieldname,t1.fieldlable,t1.ismand,t2.fielddbtype,t2.fieldhtmltype,t2.type, t1.dmlurl, t1.fieldorder, t1.isuse, t1.isModify,'1' as allowModify, t1.groupid, 1 as allowhide from cus_formfield t1, cus_formdict t2 where t1.fieldid=t2.id and t1.scope='HrmCustomFieldByInfoType' and (t1.scopeid='1' or t1.scopeid='-1' or t1.scopeid='3' ) " +
" UNION all " + " UNION all " +
" select fieldid, fieldname, fieldlabel ,ismand ,fielddbtype ,fieldhtmltype ,type , dmlurl,fieldorder ,isuse ,isModify ,allowModify, groupid, allowhide from hrm_formfield) hrmallfield where groupid in (select id from hrm_fieldgroup where (grouptype = '1' or grouptype = '-1' or grouptype = '3')) "; " select fieldid, fieldname, fieldlabel ,ismand ,fielddbtype ,fieldhtmltype ,type , dmlurl,fieldorder ,isuse ,isModify ,allowModify, groupid, allowhide from hrm_formfield) hrmallfield where groupid in (select id from hrm_fieldgroup where (grouptype = '1' or grouptype = '-1' or grouptype = '3')) or fieldname='subcompanyid1'";
sql = sql +condition+" order by hrmallfield.groupid, hrmallfield.fieldorder "; sql = sql +condition+" order by hrmallfield.groupid, hrmallfield.fieldorder ";
log.debug("sql :[{}]",sql); log.debug("sql :[{}]",sql);

@ -26,4 +26,12 @@ public enum AccountingUnitEnum implements BaseEnum {
public String getValue() { public String getValue() {
return this.value; return this.value;
} }
public static AccountingUnitEnum getEnum(String hsdw){
for (AccountingUnitEnum unitEnum :AccountingUnitEnum.values()){
if (unitEnum.getKey().equals(hsdw)){
return unitEnum;
}
}
return null;
}
} }

Loading…
Cancel
Save