zss
2 天以前 f0253bd9adf3701b343ededb91e297075dbe4e9d
人员打卡签到字段类型调整
已修改4个文件
31 ■■■■ 文件已修改
src/main/java/com/ruoyi/staff/controller/PersonalAttendanceLocationConfigController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/dto/PersonalAttendanceRecordsDto.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/pojo/PersonalAttendanceLocationConfig.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceRecordsServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/controller/PersonalAttendanceLocationConfigController.java
@@ -10,7 +10,10 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
 * <p>
@@ -34,10 +37,17 @@
        return R.ok(personalAttendanceLocationConfigService.saveOrUpdate(personalAttendanceLocationConfig));
    }
    @ApiOperation("分页查询打卡签到")
    @ApiOperation("分页查询人员打卡规则配置")
    @GetMapping("/listPage")
    public R listPage(Page page){
        return R.ok(personalAttendanceLocationConfigService.page(page));
    }
    @ApiOperation("删除人员打卡规则配置")
    @DeleteMapping("/del")
    public R del(@RequestBody List<Integer> ids) {
        return R.ok(personalAttendanceLocationConfigService.removeBatchByIds(ids));
    }
}
src/main/java/com/ruoyi/staff/dto/PersonalAttendanceRecordsDto.java
@@ -9,6 +9,7 @@
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import java.time.LocalTime;
@Data
@ExcelIgnoreUnannotated
@@ -33,10 +34,10 @@
    //标准上班时间
    @JsonFormat(pattern = "HH:mm")
    @DateTimeFormat(pattern = "HH:mm")
    private LocalDateTime startAt;
    private LocalTime startAt;
    //标准下班时间
    @JsonFormat(pattern = "HH:mm")
    @DateTimeFormat(pattern = "HH:mm")
    private LocalDateTime endAt;
    private LocalTime  endAt;
}
src/main/java/com/ruoyi/staff/pojo/PersonalAttendanceLocationConfig.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.time.LocalTime;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
@@ -50,10 +51,10 @@
    @ApiModelProperty("上班时间")
    @JsonFormat(pattern = "HH:mm")
    @DateTimeFormat(pattern = "HH:mm")
    private LocalDateTime startAt;
    private LocalTime startAt;
    @ApiModelProperty("下班时间")
    @JsonFormat(pattern = "HH:mm")
    @DateTimeFormat(pattern = "HH:mm")
    private LocalDateTime endAt;
    private LocalTime  endAt;
}
src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceRecordsServiceImpl.java
@@ -33,6 +33,7 @@
import java.math.RoundingMode;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.List;
@@ -98,7 +99,7 @@
            throw new BaseException(String.format("打卡失败:您当前位置距离考勤点%.2f米,超出允许范围(%s米)", actualDistance, allowedRadius));
        }
        /*判断打卡时间*/
        LocalDateTime  endAt = locationConfig.getEndAt(); //下班时间
        LocalTime   endAt = locationConfig.getEndAt(); //下班时间
        // 获取考勤下班时间点
        int standardHour = endAt.getHour();
        int standardMinute = endAt.getMinute();
@@ -153,9 +154,9 @@
        LocalDateTime actualTime = isStart ? attendanceRecord.getWorkStartAt() : attendanceRecord.getWorkEndAt();
        try {
            // 获取考勤时间配置
            LocalDateTime startAt = locationConfig.getStartAt();//上班时间
            LocalDateTime endAt = locationConfig.getEndAt();//下班时间
            LocalDateTime timeConfig = isStart ? startAt : endAt;
            LocalTime startAt = locationConfig.getStartAt();//上班时间
            LocalTime  endAt = locationConfig.getEndAt();//下班时间
            LocalTime  timeConfig = isStart ? startAt : endAt;
            // 解析小时和分钟
            int standardHour = timeConfig.getHour();
            int standardMinute = timeConfig.getMinute();