package com.engine.jucailinkq.attendance.workflow.action; import com.engine.jucailinkq.common.util.CommonUtil; import com.engine.jucailinkq.common.util.DateUtil; import com.engine.jucailinkq.common.util.Utils; import com.google.common.collect.Lists; import lombok.extern.slf4j.Slf4j; import weaver.conn.RecordSet; import weaver.interfaces.workflow.action.Action; import weaver.soa.workflow.request.RequestInfo; import java.util.*; /** * 补打卡流程归档action */ @Slf4j public class MakeUpClockArchivingAction implements Action { @Override public String execute(RequestInfo requestInfo) { log.debug("**********MakeUpClockArchivingAction import data start**********"); // 流程表单主表数据 HashMap mainTableData = CommonUtil.getMainTableInfo(requestInfo); // 流程表单明细表数据 List> detailTableData = CommonUtil.getDetailTableInfo(requestInfo,0); log.info("detailTableData : [{}]", detailTableData); //补打卡人员 String userId = mainTableData.get("bdkry"); List lists = Lists.newArrayList(); //记录需要更改出勤结果数据状态的人员、日期信息 List> empDateList = new ArrayList<>(); Map empDateItem; for (Map detailTable:detailTableData){ //收集需要更改出勤结果数据状态的人员、日期信息 empDateItem = new HashMap<>(); empDateItem.put("empId", detailTable.get("bdkr")); empDateItem.put("cqDate", detailTable.get("bdkrq")); empDateList.add(empDateItem); } //更新出勤结果中的数据状态 String sjztUpdateResult = CommonUtil.updateAttendanceResultInfoStatus(empDateList, "0"); if (!"".equals(sjztUpdateResult)) { log.error("更新出勤结果中的数据状态失败:" + sjztUpdateResult); requestInfo.getRequestManager().setMessageid("11111" + requestInfo.getRequestid() + "22222"); requestInfo.getRequestManager().setMessagecontent("更新出勤结果中的数据状态失败:" + sjztUpdateResult); return Action.FAILURE_AND_CONTINUE; } log.debug("**********MakeUpClockArchivingAction import data end**********"); return Action.SUCCESS; } }