Commit 11bedae8 authored by 赵啸非's avatar 赵啸非

修改考勤汇总

parent 607a63da
package com.mortals.xhx.module.attendance.web;
import com.mortals.framework.annotation.UnAuth;
import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException;
......@@ -19,8 +20,10 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
......@@ -28,20 +31,22 @@ import com.mortals.framework.util.StringUtils;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/**
*
* 考勤打卡记录异常信息
*
* @author zxfei
* @date 2023-04-08
*/
* 考勤打卡记录异常信息
*
* @author zxfei
* @date 2023-04-08
*/
@RestController
@RequestMapping("attendance/record/error")
public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingController<AttendanceRecordErrorService,AttendanceRecordErrorEntity,Long> {
public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingController<AttendanceRecordErrorService, AttendanceRecordErrorEntity, Long> {
@Autowired
private ParamService paramService;
......@@ -67,17 +72,17 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
@Autowired
private AttendanceRecordErrorService errorService;
public AttendanceRecordErrorController(){
super.setModuleDesc( "考勤打卡记录异常信息");
public AttendanceRecordErrorController() {
super.setModuleDesc("考勤打卡记录异常信息");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "errorStatus", ErrorStatusEnum.getEnumMap());
this.addDict(model, "processStatus", paramService.getParamBySecondOrganize("AttendanceRecordError","processStatus"));
this.addDict(model,"deptId",deptService.find(new DeptQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getDeptName())));
this.addDict(model,"groupId",attendanceGroupService.find(new AttendanceGroupQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getGroupName())));
this.addDict(model,"classId",attendanceClassService.find(new AttendanceClassQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getClassName())));
this.addDict(model, "processStatus", paramService.getParamBySecondOrganize("AttendanceRecordError", "processStatus"));
this.addDict(model, "deptId", deptService.find(new DeptQuery()).stream().collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getDeptName())));
this.addDict(model, "groupId", attendanceGroupService.find(new AttendanceGroupQuery()).stream().collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getGroupName())));
this.addDict(model, "classId", attendanceClassService.find(new AttendanceClassQuery()).stream().collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getClassName())));
super.init(model, context);
}
......@@ -92,11 +97,11 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
query.setProcessResult("已撤销处理");
errorService.update(query);
DateUtils.convertTime2Str(query.getErrorDateTime().getTime(),DateUtils.P_yyyy_MM_dd);
DateUtils.convertTime2Str(query.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd);
AttendanceRecordQuery attendanceRecordQuery = new AttendanceRecordQuery();
attendanceRecordQuery.setStaffId(query.getStaffId());
attendanceRecordQuery.setAttendanceDateStart(DateUtils.convertTime2Str(query.getErrorDateTime().getTime(),DateUtils.P_yyyy_MM_dd));
attendanceRecordQuery.setAttendanceDateEnd(DateUtils.convertTime2Str(query.getErrorDateTime().getTime(),DateUtils.P_yyyy_MM_dd));
attendanceRecordQuery.setAttendanceDateStart(DateUtils.convertTime2Str(query.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd));
attendanceRecordQuery.setAttendanceDateEnd(DateUtils.convertTime2Str(query.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd));
AttendanceRecordEntity attendanceRecordEntity = attendanceRecordService.selectOne(attendanceRecordQuery);
AttendanceRecordDetailQuery detailQuery = new AttendanceRecordDetailQuery();
detailQuery.setRecordId(attendanceRecordEntity.getId());
......@@ -104,25 +109,25 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
List<AttendanceRecordDetailEntity> attendanceRecordDetailEntity = attendanceRecordDetailService.find(detailQuery);
for (AttendanceRecordDetailEntity recordDetailEntity : attendanceRecordDetailEntity) {
if (query.getGoOrOff().equals("上班")){
if (query.getErrorStatus()==0){
if (query.getGoOrOff().equals("上班")) {
if (query.getErrorStatus() == 0) {
recordDetailEntity.setGoWorkResult(3);
}
if (query.getErrorStatus()==2){
if (query.getErrorStatus() == 2) {
recordDetailEntity.setGoWorkResult(4);
}
}
if (query.getGoOrOff().equals("下班")){
if (query.getErrorStatus()==0){
if (query.getGoOrOff().equals("下班")) {
if (query.getErrorStatus() == 0) {
recordDetailEntity.setOffWorkResult(3);
}
if (query.getErrorStatus()==1){
if (query.getErrorStatus() == 1) {
recordDetailEntity.setOffWorkResult(5);
}
}
}
return Rest.ok();
return Rest.ok();
}
......@@ -139,11 +144,11 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
this.batchSave(entity.getRecordErrorEntities());
for (AttendanceRecordErrorEntity item : entity.getRecordErrorEntities()) {
DateUtils.convertTime2Str(item.getErrorDateTime().getTime(),DateUtils.P_yyyy_MM_dd);
DateUtils.convertTime2Str(item.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd);
AttendanceRecordQuery attendanceRecordQuery = new AttendanceRecordQuery();
attendanceRecordQuery.setStaffId(item.getStaffId());
attendanceRecordQuery.setAttendanceDateStart(DateUtils.convertTime2Str(item.getErrorDateTime().getTime(),DateUtils.P_yyyy_MM_dd));
attendanceRecordQuery.setAttendanceDateEnd(DateUtils.convertTime2Str(item.getErrorDateTime().getTime(),DateUtils.P_yyyy_MM_dd));
attendanceRecordQuery.setAttendanceDateStart(DateUtils.convertTime2Str(item.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd));
attendanceRecordQuery.setAttendanceDateEnd(DateUtils.convertTime2Str(item.getErrorDateTime().getTime(), DateUtils.P_yyyy_MM_dd));
AttendanceRecordEntity attendanceRecordEntity = attendanceRecordService.selectOne(attendanceRecordQuery);
AttendanceRecordDetailQuery detailQuery = new AttendanceRecordDetailQuery();
detailQuery.setRecordId(attendanceRecordEntity.getId());
......@@ -153,46 +158,46 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
for (AttendanceRecordDetailEntity recordDetailEntity : attendanceRecordDetailEntity) {
Date goWorkDate = recordDetailEntity.getGoWorkDate();
Date offWorkDate = recordDetailEntity.getOffWorkDate();
if (item.getProcessResult().contains("正常")){
if (!ObjectUtils.isEmpty(goWorkDate)){
if (goWorkDate.getTime()==item.getGoOffDateTime().getTime()){
if (item.getProcessResult().contains("正常")) {
if (!ObjectUtils.isEmpty(goWorkDate)) {
if (goWorkDate.getTime() == item.getGoOffDateTime().getTime()) {
recordDetailEntity.setGoWorkResult(1);
}
}else {
if (item.getGoOrOff().equals("上班")){
} else {
if (item.getGoOrOff().equals("上班")) {
recordDetailEntity.setGoWorkResult(1);
}
}
if (!ObjectUtils.isEmpty(offWorkDate)){
if (offWorkDate.getTime()==item.getGoOffDateTime().getTime()){
if (!ObjectUtils.isEmpty(offWorkDate)) {
if (offWorkDate.getTime() == item.getGoOffDateTime().getTime()) {
recordDetailEntity.setOffWorkResult(1);
}
}else {
if (item.getGoOrOff().equals("下班")){
} else {
if (item.getGoOrOff().equals("下班")) {
recordDetailEntity.setOffWorkResult(1);
}
}
}
if (item.getProcessResult().contains("早退")){
if (!ObjectUtils.isEmpty(offWorkDate)){
if (offWorkDate.getTime()==item.getGoOffDateTime().getTime()){
if (item.getProcessResult().contains("早退")) {
if (!ObjectUtils.isEmpty(offWorkDate)) {
if (offWorkDate.getTime() == item.getGoOffDateTime().getTime()) {
recordDetailEntity.setOffWorkResult(5);
}
}else{
if (item.getGoOrOff().equals("下班")){
} else {
if (item.getGoOrOff().equals("下班")) {
recordDetailEntity.setOffWorkResult(5);
}
}
}
if (item.getProcessResult().contains("迟到")){
if (!ObjectUtils.isEmpty(goWorkDate)){
if (goWorkDate.getTime()==item.getGoOffDateTime().getTime()){
if (item.getProcessResult().contains("迟到")) {
if (!ObjectUtils.isEmpty(goWorkDate)) {
if (goWorkDate.getTime() == item.getGoOffDateTime().getTime()) {
recordDetailEntity.setGoWorkResult(4);
}
}else {
if (item.getGoOrOff().equals("上班")){
} else {
if (item.getGoOrOff().equals("上班")) {
recordDetailEntity.setGoWorkResult(4);
}
}
......@@ -205,7 +210,7 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
@Override
protected int editAfter(Long id, Map<String, Object> model, AttendanceRecordErrorEntity entity, Context context) throws AppException {
this.addDict(model, "errorStatus", paramService.getParamBySecondOrganize("AttendanceRecordDetail","goWorkResult"));
this.addDict(model, "errorStatus", paramService.getParamBySecondOrganize("AttendanceRecordDetail", "goWorkResult"));
return super.editAfter(id, model, entity, context);
}
......@@ -214,11 +219,13 @@ public class AttendanceRecordErrorController extends BaseCRUDJsonBodyMappingCont
for (AttendanceRecordErrorEntity errorEntity : list) {
Long shiftsId = errorEntity.getShiftsId();
AttendanceClassDetailEntity attendanceClassDetailEntity = classDetailService.selectOne(new AttendanceClassDetailQuery().id(shiftsId));
if (errorEntity.getGoOffDateTime().getTime()==attendanceClassDetailEntity.getGoWorkDate().getTime()){
errorEntity.setGoOrOff("上班");
}
if (errorEntity.getGoOffDateTime().getTime()==attendanceClassDetailEntity.getOffWorkDate().getTime()){
errorEntity.setGoOrOff("下班");
if (!ObjectUtils.isEmpty(attendanceClassDetailEntity)) {
if (errorEntity.getGoOffDateTime().getTime() == attendanceClassDetailEntity.getGoWorkDate().getTime()) {
errorEntity.setGoOrOff("上班");
}
if (errorEntity.getGoOffDateTime().getTime() == attendanceClassDetailEntity.getOffWorkDate().getTime()) {
errorEntity.setGoOrOff("下班");
}
}
}
super.doListAfter(query, list, context);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment