You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hrm-attendance/test/TestGetClockInPoint.java

163 lines
5.8 KiB
Java

import com.engine.jucailinkq.attendance.attendanceanalysis.cmd.getclockInpoint.GetClockInPointCmd;
import com.engine.jucailinkq.attendance.enums.CheckBoxEnum;
import com.engine.jucailinkq.attendance.enums.ClassSegmentTypeEnum;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class TestGetClockInPoint {
public static void main(String[] args) {
List<Map<String,Object>> schedulingList = Lists.newArrayList();
schedulingList.add(new HashMap(){{
put("edsc","8");
put("bdlx","0");
put("fgsjd","15:10");
put("jsdk","0");
put("tqdkfzs","120");
put("sfxx","0");
put("edxss","3.00");
put("sfkt","0");
put("dtjssj","12:00");
put("dtsfdx","0");
put("dtzddxfz","30");
put("btgz","0");
put("zddxfz","30");
put("bcxx","1");
put("dxhs","5");
put("bcsdxx","09:00-12:00|13:00-18:00");
put("sfdx","0");
put("dtkssj","09:00");
put("dtdxhs","5");
put("zgzsc","8.00");
put("thdkfzs","");
put("ksdk","1");
put("rqlx","0");
}});
schedulingList.add(new HashMap(){{
put("edsc","8");
put("bdlx","1");
put("fgsjd","15:10");
put("jsdk","1");
put("tqdkfzs","");
put("sfxx","0");
put("edxss","3.00");
put("sfkt","0");
put("dtjssj","18:00");
put("dtsfdx","0");
put("dtzddxfz","30");
put("btgz","0");
put("zddxfz","30");
put("bcxx","1");
put("dxhs","5");
put("bcsdxx","09:00-12:00|13:00-18:00");
put("sfdx","0");
put("dtkssj","13:00");
put("dtdxhs","5");
put("zgzsc","8.00");
put("thdkfzs","240");
put("ksdk","1");
put("rqlx","0");
}});
schedulingList.add(new HashMap(){{
put("edsc","9.50");
put("bdlx","2");
put("jsdk","1");
put("tqdkfzs","60");
put("sfkt","1");
put("dtjssj","21:00");
put("zddxfz","30");
put("bcxx","25");
put("dxhs","5");
put("bcsdxx","09:00-13:00|13:00-18:30");
put("sfdx","1");
put("dtkssj","19:00");
put("thdkfzs","120");
put("ksdk","1");
put("rqlx","11");
}});
List<Map<String,Object>> dataList = Lists.newArrayList();
dataList.add(new HashMap(){{
put("signtime","09:42:00");
put("id","48");
put("userid","81");
put("signdate","2024-04-10");
}});
dataList.add(new HashMap(){{
put("signtime","20:46:00");
put("id","48");
put("userid","81");
put("signdate","2024-04-10");
}});
// dataList.add(new HashMap(){{
// put("signtime","18:29:00");
// put("id","48");
// put("userid","53");
// put("signdate","2023-11-12");
// }});
// dataList.add(new HashMap(){{
// put("signtime","19:08:00");
// put("id","48");
// put("userid","53");
// put("signdate","2023-11-12");
// }});
Map<String,Object> param = Maps.newHashMap();
List<Map<String,Object>> askForLeaveAndEvctionSchedule = Lists.newArrayList();
// askForLeaveAndEvctionSchedule.add(new HashMap(){{
// put("edsc","9.50");
// put("bdlx",ClassSegmentTypeEnum.ASK_FOR_LEAVE.getKey());
// put("jsdk","0");
// put("tqdkfzs","60");
// put("sfkt","1");
// put("dtjssj","18:00");
// put("zddxfz","30");
// put("bcxx","25");
// put("dxhs","5");
// put("bcsdxx","09:00-13:00|13:00-18:30");
// put("sfdx","1");
// put("dtkssj","11:00");
// put("thdkfzs","60");
// put("ksdk","0");
// put("rqlx","11");
// }});
param.put("analysisDate","2024-04-10");
param.put("scheduleResult",schedulingList);
param.put("clockInTimeList",dataList);
param.put("askForLeaveAndEvctionSchedule",askForLeaveAndEvctionSchedule);
List<Map<String, Object>> needClockInList = schedulingList.stream().filter(e -> {
if (!ClassSegmentTypeEnum.REST_AND_DINE.getKey().equals(e.get("bdlx")) && !ClassSegmentTypeEnum.REST_PERIOD.getKey().equals(e.get("bdlx")) &&
!ClassSegmentTypeEnum.DINING_PERIOD.getKey().equals(e.get("bdlx")) && (CheckBoxEnum.CHECKED.getKey().equals(e.get("ksdk")) || CheckBoxEnum.CHECKED.getKey().equals(e.get("jsdk")))){
return true;
}else {
return false;
}
}).collect(Collectors.toList());
Map<String, Object> firstKsdkSchedule = null;
for (int i=0;i<needClockInList.size();i++){
if (CheckBoxEnum.CHECKED.getKey().equals(needClockInList.get(i).get("ksdk"))){
firstKsdkSchedule = needClockInList.get(i);
System.out.println(firstKsdkSchedule);
break;
}
}
System.out.println(firstKsdkSchedule);
// List<Map<String, Map<String,Object>>> collect = getClockInPoint("2023-11-12",schedulingList,dataList);
List<Map<String, Map<String,Object>>> collect = (List<Map<String, Map<String, Object>>>)new GetClockInPointCmd(param).execute(null).get("clcokInTimeData");
// Map<String,Object> clock = getNeedRecordClockInTime(collect);
// System.out.println(clock);
}
}