src/main/java/org/springblade/modules/attendance/controller/AttendanceController.java
@@ -79,9 +79,9 @@ @GetMapping("/page") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "传入attendance") public R<IPage<AttendanceVO>> page(AttendanceVO attendance, Query query, Long department) { IPage<Attendance> pages = attendanceService.selectAttendancePage(Condition.getPage(query), department, attendance); return R.data(AttendanceWrapper.build().pageVO(pages)); public R<IPage<AttendanceVO>> page(AttendanceVO attendance, Query query) { IPage<AttendanceVO> pages = attendanceService.selectAttendancePage(Condition.getPage(query), attendance); return R.data(pages); } // /** @@ -303,31 +303,14 @@ } /** * 导出用户 * 导出考勤数据 * @param response * @param attendance */ @GetMapping("/export-Attendance") public void exportAttendane(String name, String beginTime, String endTime, String attendancetype, HttpServletResponse response) { String beginTimes = null; String endTimes = null; String attendancetypes = null; if (beginTime.equals("undefined ") && endTime.equals("undefined")) { beginTimes=null; endTimes=null; attendancetypes=attendancetype; } else if (attendancetype.equals("undefined")){ attendancetypes=null; } else { beginTimes=beginTime; endTimes=endTime; attendancetypes=attendancetype; } List<AttendanceExcel> list = attendanceService.exportAttendane(name, beginTimes, endTimes, attendancetypes); public void exportAttendane(AttendanceVO attendance, HttpServletResponse response) { List<AttendanceExcel> list = attendanceService.exportAttendane(attendance); ExcelUtil.export(response, "考勤数据" + DateUtil.time(), "考勤数据表", list, AttendanceExcel.class); } } } src/main/java/org/springblade/modules/attendance/excel/AttendanceExcel.java
@@ -37,23 +37,13 @@ public class AttendanceExcel implements Serializable { private static final long serialVersionUID = 1L; @ColumnWidth(10) @ExcelProperty("姓名") private String name; @ColumnWidth(20) @ExcelProperty("编号") private String number; @ColumnWidth(25) @ExcelProperty("企业名称") private String deptName; @ColumnWidth(15) @ExcelProperty("部门") private String department; /** * 天气,忽略不显示 */ @ExcelIgnore private String weather; @ExcelProperty("姓名") private String realName; @ColumnWidth(20) @ExcelProperty("打卡时间") @@ -66,13 +56,5 @@ @ColumnWidth(15) @ExcelProperty("考勤类型") private String attendanceType; @ColumnWidth(15) @ExcelProperty("星期") private String week; @ColumnWidth(40) @ExcelProperty("地址") private String address; } src/main/java/org/springblade/modules/attendance/mapper/AttendanceMapper.java
@@ -18,6 +18,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.Param; import org.springblade.modules.attendance.entity.Attendance; import org.springblade.modules.attendance.excel.AttendanceExcel; import org.springblade.modules.attendance.vo.AttendanceVO; @@ -39,16 +40,16 @@ * @param attendance * @return */ List<Attendance> selectAttendancePage(IPage page, Long department, AttendanceVO attendance); List<AttendanceVO> selectAttendancePage(IPage page, @Param("attendance") AttendanceVO attendance); /** * 获取导出用户数据 * 导出考勤数据 * * @param * @param attendance * @return */ List<AttendanceExcel> exportAttendane(String name,String beginTimes,String endTimes,String attendancetypes); List<AttendanceExcel> exportAttendane(@Param("attendance") AttendanceVO attendance); /** * 查询当前考勤人员当天的考勤信息 src/main/java/org/springblade/modules/attendance/mapper/AttendanceMapper.xml
@@ -19,40 +19,72 @@ <result column="address" property="address"/> </resultMap> <select id="selectAttendancePage" resultMap="attendanceResultMap"> select * from sys_attendance where is_deleted = 0 <if test="attendance.name!=null and attendance.name != ''"> and name = #{attendance.name} <!--自定义查询考试分页数据--> <select id="selectAttendancePage" resultType="org.springblade.modules.attendance.vo.AttendanceVO"> select sa.*,bu.real_name realName from sys_attendance sa left join blade_user bu on bu.id = sa.user_id where 1=1 <if test="attendance.realName!=null and attendance.realName!=''"> and bu.real_name like concat('%',#{attendance.realName},'%') </if> <if test="attendance.department!=null and attendance.department != ''"> and department = #{department} <if test="attendance.deptId!=null"> and sa.dept_id = #{attendance.deptId} </if> <if test="attendance.attendancetype!=null and attendance.attendancetype != ''"> and attendancetype = #{attendance.attendancetype} <if test="attendance.userId!=null"> and sa.user_id = #{attendance.userId} </if> <if test="attendance.attendanceType!=null"> and sa.attendance_type = #{attendance.attendanceType} </if> <if test="attendance.clockType!=null"> and sa.clock_type = #{attendance.clockType} </if> <if test="attendance.beginTime!=null and attendance.beginTime!=''"> and clockTime>=#{attendance.beginTime} and date_format(sa.clock_time,'%Y-%m-%d')>=#{attendance.beginTime} </if> <if test="attendance.endTime!=null and attendance.endTime!=''"> and clockTime<=#{attendance.endTime} and date_format(sa.clock_time,'%Y-%m-%d')<=#{attendance.endTime} </if> order by sa.id desc </select> <select id="exportAttendane" resultType="org.springblade.modules.attendance.excel.AttendanceExcel"> SELECT id, name, number, department, weather, clockTime, clockType, attendanceType,week,address FROM sys_attendance where is_deleted = 0 <if test="name!=null and name != ''"> and name = #{name} select sa.clock_time clockTime, bu.real_name realName, bd.dept_name deptName, if(sa.clock_type=1,'上班','下班') clockType, case when sa.attendance_type=1 then '正常' when sa.attendance_type=2 then '迟到' when sa.attendance_type=3 then '早退' when sa.attendance_type=4 then '外勤' else '无效打卡' end as attendanceType from sys_attendance sa left join blade_user bu on bu.id = sa.user_id left join blade_dept bd on bd.id = sa.dept_id where 1=1 <if test="attendance.realName!=null and attendance.realName!=''"> and bu.real_name like concat('%',#{attendance.realName},'%') </if> <if test="beginTimes!=null and beginTimes!=''"> and clockTime>=#{beginTimes} <if test="attendance.deptId!=null"> and sa.dept_id = #{attendance.deptId} </if> <if test="endTimes!=null and endTimes!=''"> and clockTime<=#{endTimes} <if test="attendance.userId!=null"> and sa.user_id = #{attendance.userId} </if> <if test="attendancetypes!=null and attendancetypes!=''"> and attendancetype=#{attendancetypes} <if test="attendance.clockType!=null"> and sa.clock_type = #{attendance.clockType} </if> <if test="attendance.attendanceType!=null"> and sa.attendance_type = #{attendance.attendanceType} </if> <if test="attendance.beginTime!=null and attendance.beginTime!=''"> and sa.clock_time>=#{attendance.beginTime} </if> <if test="attendance.endTime!=null and attendance.endTime!=''"> and sa.clock_time<=#{attendance.endTime} </if> order by sa.id desc </select> <!--查询当前考勤人员当天的考勤信息--> src/main/java/org/springblade/modules/attendance/service/IAttendanceService.java
@@ -39,13 +39,15 @@ * @param attendance * @return */ IPage<Attendance> selectAttendancePage(IPage<Attendance> page, Long department, AttendanceVO attendance); IPage<AttendanceVO> selectAttendancePage(IPage<AttendanceVO> page, AttendanceVO attendance); /** * 导出用户数据 * 导出考勤数据 * * @return */ List<AttendanceExcel> exportAttendane(String name,String beginTimes,String endTimes,String attendancetypes); List<AttendanceExcel> exportAttendane(AttendanceVO attendance); /** * 查询当前考勤人员当天的考勤信息 src/main/java/org/springblade/modules/attendance/service/impl/AttendanceServiceImpl.java
@@ -42,18 +42,18 @@ public class AttendanceServiceImpl extends ServiceImpl<AttendanceMapper, Attendance> implements IAttendanceService { @Override public IPage<Attendance> selectAttendancePage(IPage<Attendance> page, Long department, AttendanceVO attendance) { return page.setRecords(baseMapper.selectAttendancePage(page,department, attendance)); public IPage<AttendanceVO> selectAttendancePage(IPage<AttendanceVO> page, AttendanceVO attendance) { return page.setRecords(baseMapper.selectAttendancePage(page, attendance)); } /** * 导出考勤数据 * @param attendance * @return */ @Override public List<AttendanceExcel> exportAttendane(String name,String beginTimes,String endTimes,String attendancetypes) { List<AttendanceExcel> userList = baseMapper.exportAttendane(name, beginTimes, endTimes,attendancetypes); userList.forEach(user -> { user.setAttendanceType(DictBizCache.getValue(DictBizEnum.TEST,user.getAttendanceType())); // user.setClockType(DictBizCache.getValue(DictBizEnum.CLOCKTYPE,user.getClockType())); user.setDepartment(StringUtil.join(SysCache.getDeptNames(user.getDepartment()))); }); public List<AttendanceExcel> exportAttendane(AttendanceVO attendance) { List<AttendanceExcel> userList = baseMapper.exportAttendane(attendance); return userList; } src/main/java/org/springblade/modules/simulateexam/service/impl/SimulateExamRecordServiceImpl.java
@@ -264,6 +264,7 @@ for (ExamResultVO examResultVO : examResultVOS) { SimulateExamAnswerRecord answerRecord = new SimulateExamAnswerRecord(); answerRecord.setSimulateExamId(simulateExamScore.getSimulateExamId()); answerRecord.setSubjectChoicesId(examResultVO.getSubjectChoicesId()); answerRecord.setAnswerOption(examResultVO.getValue()); answerRecord.setAnswerScore(examResultVO.getGrade()); if (examResultVO.getGrade() > 0) {