src/main/java/com/ruoyi/approve/controller/HolidaySettingsController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,173 @@ package com.ruoyi.approve.controller; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.approve.mapper.AnnualLeaveSettingMapper; import com.ruoyi.approve.mapper.OvertimeSettingMapper; import com.ruoyi.approve.mapper.WorkingHoursSettingMapper; import com.ruoyi.approve.pojo.*; import com.ruoyi.approve.service.HolidaySettingsService; import com.ruoyi.framework.web.domain.AjaxResult; import lombok.AllArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; @RestController @RequestMapping("/holidaySettings") @AllArgsConstructor public class HolidaySettingsController { @Autowired private HolidaySettingsService holidaySettingsService; @Autowired private AnnualLeaveSettingMapper annualLeaveSettingMapper; @Autowired private OvertimeSettingMapper overtimeSettingMapper; @Autowired private WorkingHoursSettingMapper workingHoursSettingMapper; /**ã * è·ååæè®¾ç½®å表 * @return */ @GetMapping("/getList") public AjaxResult getList(@RequestParam(defaultValue = "1") long current, @RequestParam(defaultValue = "50") long size, HolidaySettings holidaySettings) { Page page = new Page(current, size); return AjaxResult.success(holidaySettingsService.listpage(page,holidaySettings)); } /**ã * 墿·» * @return */ @PostMapping("/add") public AjaxResult add(@RequestBody HolidaySettings holidaySettings){ return AjaxResult.success(holidaySettingsService.save(holidaySettings)); } /** * æ´æ° * @return */ @PostMapping("/update") public AjaxResult update(@RequestBody HolidaySettings holidaySettings){ return AjaxResult.success(holidaySettingsService.updateById(holidaySettings)); } /** * å é¤ * @return */ @DeleteMapping("/delete") public AjaxResult delete(@RequestBody List<Long> ids){ if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("è¯·ä¼ å ¥è¦å é¤çID"); return AjaxResult.success(holidaySettingsService.removeByIds(ids)); } /**ã * è·åå¹´åè§åå表 * @return */ @GetMapping("/getAnnualLeaveSettingList") public AjaxResult getAnnualLeaveSettingList(@RequestParam(defaultValue = "1") long current, @RequestParam(defaultValue = "50") long size, AnnualLeaveSetting annualLeaveSetting) { Page page = new Page(current, size); return AjaxResult.success(annualLeaveSettingMapper.listPage(page,annualLeaveSetting)); } /**ã * 墿·»å¹´åè§å * @return */ @PostMapping("/addAnnualLeaveSetting") public AjaxResult addAnnualLeaveSetting(@RequestBody AnnualLeaveSetting annualLeaveSetting){ return AjaxResult.success(annualLeaveSettingMapper.insert(annualLeaveSetting)); } /**ã * æ´æ°å¹´åè§å * @return */ @PostMapping("/updateAnnualLeaveSetting") public AjaxResult updateAnnualLeaveSetting(@RequestBody AnnualLeaveSetting annualLeaveSetting){ return AjaxResult.success(annualLeaveSettingMapper.updateById(annualLeaveSetting)); } /**ã * å é¤å¹´åè§å * @return */ @DeleteMapping("/deleteAnnualLeaveSetting") public AjaxResult deleteAnnualLeaveSetting(@RequestBody List<Long> ids){ if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("è¯·ä¼ å ¥è¦å é¤çID"); return AjaxResult.success(annualLeaveSettingMapper.deleteBatchIds(ids)); } /**ã * è·åå çè§åå表 * @return */ @GetMapping("/getOvertimeSettingList") public AjaxResult getOvertimeSettingList(@RequestParam(defaultValue = "1") long current, @RequestParam(defaultValue = "50") long size, OvertimeSetting overtimeSetting) { Page page = new Page(current, size); return AjaxResult.success(overtimeSettingMapper.listPage(page,overtimeSetting)); } /**ã * 墿·»å çè§å * @return */ @PostMapping("/addOvertimeSetting") public AjaxResult addOvertimeSetting(@RequestBody OvertimeSetting overtimeSetting){ return AjaxResult.success(overtimeSettingMapper.insert(overtimeSetting)); } /**ã * æ´æ°å çè§å * @return */ @PostMapping("/updateOvertimeSetting") public AjaxResult updateOvertimeSetting(@RequestBody OvertimeSetting overtimeSetting){ return AjaxResult.success(overtimeSettingMapper.updateById(overtimeSetting)); } /**ã * å é¤å çè§å * @return */ @DeleteMapping("/deleteOvertimeSetting") public AjaxResult deleteOvertimeSetting(@RequestBody List<Long> ids){ if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("è¯·ä¼ å ¥è¦å é¤çID"); return AjaxResult.success(overtimeSettingMapper.deleteBatchIds(ids)); } /**ã * è·åä¸çæ¶é´è®¾ç½®-çå¶è§åå表 * @return */ @GetMapping("/getWorkingHoursSettingList") public AjaxResult getWorkingHoursSettingList(@RequestParam(defaultValue = "1") long current, @RequestParam(defaultValue = "50") long size, WorkingHoursSetting workingHoursSetting) { Page page = new Page(current, size); return AjaxResult.success(workingHoursSettingMapper.listPage(page,workingHoursSetting)); } /**ã * 墿·»çå¶è§å * @return */ @PostMapping("/addWorkingHoursSetting") public AjaxResult addWorkingHoursSetting(@RequestBody WorkingHoursSetting workingHoursSetting){ return AjaxResult.success(workingHoursSettingMapper.insert(workingHoursSetting)); } /**ã * æ´æ°çå¶è§å * @return */ @PostMapping("/updateWorkingHoursSetting") public AjaxResult updateWorkingHoursSetting(@RequestBody WorkingHoursSetting workingHoursSetting){ return AjaxResult.success(workingHoursSettingMapper.updateById(workingHoursSetting)); } /**ã * å é¤çå¶è§å * @return */ @DeleteMapping("/deleteWorkingHoursSetting") public AjaxResult deleteWorkingHoursSetting(@RequestBody List<Long> ids){ if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("è¯·ä¼ å ¥è¦å é¤çID"); return AjaxResult.success(workingHoursSettingMapper.deleteBatchIds(ids)); } } src/main/java/com/ruoyi/approve/mapper/AnnualLeaveSettingMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package com.ruoyi.approve.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.approve.pojo.AnnualLeaveSetting; import io.lettuce.core.dynamic.annotation.Param; import org.apache.ibatis.annotations.Mapper; @Mapper public interface AnnualLeaveSettingMapper extends BaseMapper<AnnualLeaveSetting> { IPage<AnnualLeaveSetting> listPage(Page page,@Param("annualLeaveSetting") AnnualLeaveSetting annualLeaveSetting); } src/main/java/com/ruoyi/approve/mapper/HolidaySettingsMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package com.ruoyi.approve.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.approve.pojo.HolidaySettings; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @Mapper public interface HolidaySettingsMapper extends BaseMapper<HolidaySettings> { IPage<HolidaySettings> listpage(Page page,@Param("holidaySettings") HolidaySettings holidaySettings); } src/main/java/com/ruoyi/approve/mapper/OvertimeSettingMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package com.ruoyi.approve.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.approve.pojo.OvertimeSetting; import org.apache.ibatis.annotations.Mapper; import org.springframework.data.repository.query.Param; @Mapper public interface OvertimeSettingMapper extends BaseMapper<OvertimeSetting> { IPage<OvertimeSetting> listPage(Page<OvertimeSetting> page,@Param("overtimeSetting") OvertimeSetting overtimeSetting); } src/main/java/com/ruoyi/approve/mapper/WorkingHoursSettingMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package com.ruoyi.approve.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.approve.pojo.WorkingHoursSetting; import io.lettuce.core.dynamic.annotation.Param; import org.apache.ibatis.annotations.Mapper; @Mapper public interface WorkingHoursSettingMapper extends BaseMapper<WorkingHoursSetting> { IPage<WorkingHoursSetting> listPage(Page page,@Param("workingHoursSetting") WorkingHoursSetting workingHoursSetting); } src/main/java/com/ruoyi/approve/pojo/AnnualLeaveSetting.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,70 @@ package com.ruoyi.approve.pojo; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.time.LocalDate; import java.time.LocalDateTime; @Data @TableName("annual_leave_setting") public class AnnualLeaveSetting implements Serializable { @TableId(type = IdType.AUTO) private Long id; /** * å工类å */ private String employeeType; /** * å·¥ä½å¹´é */ private String workYears; /** * å¹´åå¤©æ° */ private Integer annualDays; /** * æå¤§å¯ç»è½¬å¤©æ° */ private Integer maxCarryOver; /** * ç¶æ */ private String status; /** * å建æ¶é´ */ @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; /** * æ´æ°æ¶é´ */ @TableField(fill = FieldFill.INSERT_UPDATE) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updateTime; /** * å建人 */ @TableField(fill = FieldFill.INSERT) private Integer createUser; /** * æ´æ°äºº */ @TableField(fill = FieldFill.INSERT_UPDATE) private Integer updateUser; /** * ç§æ·ID */ @TableField(fill = FieldFill.INSERT) private Long tenantId; } src/main/java/com/ruoyi/approve/pojo/HolidaySettings.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,80 @@ package com.ruoyi.approve.pojo; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.approve.utils.ListToStringTypeHandler; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.List; @Data @TableName("holiday_settings") public class HolidaySettings implements Serializable { @TableId(type = IdType.AUTO) private Long id; /** * åæåç§° */ private String name; /** * åæç±»å */ private String type; /** * å¼å§æ¥æ */ @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate startDate; /** * ç»ææ¥æ */ @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate endDate; /** * å¤©æ° */ private Integer days; /** * ç¶æ */ private String status; /** * å建æ¶é´ */ @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; /** * æ´æ°æ¶é´ */ @TableField(fill = FieldFill.INSERT_UPDATE) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updateTime; /** * å建人 */ @TableField(fill = FieldFill.INSERT) private Integer createUser; /** * æ´æ°äºº */ @TableField(fill = FieldFill.INSERT_UPDATE) private Integer updateUser; /** * ç§æ·ID */ @TableField(fill = FieldFill.INSERT) private Long tenantId; } src/main/java/com/ruoyi/approve/pojo/OvertimeSetting.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,79 @@ package com.ruoyi.approve.pojo; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.LocalTime; @Data @TableName("overtime_setting") public class OvertimeSetting implements Serializable { @TableId(type = IdType.AUTO) private Long id; /** * å çè§ååç§° */ private String name; /** * å çç±»å */ private String type; /** * å¼å§æ¶é´ */ @JsonFormat(pattern = "HH:mm") @DateTimeFormat(pattern = "HH:mm") private LocalTime startTime; /** * ç»ææ¶é´ */ @JsonFormat(pattern = "HH:mm") @DateTimeFormat(pattern = "HH:mm") private LocalTime endTime; /** * åç */ private Double rate; /** * ç¶æ */ private String status; /** * å建æ¶é´ */ @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; /** * æ´æ°æ¶é´ */ @TableField(fill = FieldFill.INSERT_UPDATE) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updateTime; /** * å建人 */ @TableField(fill = FieldFill.INSERT) private Integer createUser; /** * æ´æ°äºº */ @TableField(fill = FieldFill.INSERT_UPDATE) private Integer updateUser; /** * ç§æ·ID */ @TableField(fill = FieldFill.INSERT) private Long tenantId; } src/main/java/com/ruoyi/approve/pojo/WorkingHoursSetting.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,79 @@ package com.ruoyi.approve.pojo; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.time.LocalDateTime; import java.time.LocalTime; @Data @TableName("working_hours_setting") public class WorkingHoursSetting implements Serializable { @TableId(type = IdType.AUTO) private Long id; /** * æ¶é´æ®µåç§° */ private String name; /** * ä¸çæ¶é´ */ @JsonFormat(pattern = "HH:mm") @DateTimeFormat(pattern = "HH:mm") private LocalTime startTime; /** * ä¸çæ¶é´ */ @JsonFormat(pattern = "HH:mm") @DateTimeFormat(pattern = "HH:mm") private LocalTime endTime; /** * å¼¹æ§ä¸ç */ private String flexibleStart; /** * å¼¹æ§æ¶é´(åé) */ private Integer flexibleMinutes; /** * ç¶æ */ private String status; /** * å建æ¶é´ */ @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; /** * æ´æ°æ¶é´ */ @TableField(fill = FieldFill.INSERT_UPDATE) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updateTime; /** * å建人 */ @TableField(fill = FieldFill.INSERT) private Integer createUser; /** * æ´æ°äºº */ @TableField(fill = FieldFill.INSERT_UPDATE) private Integer updateUser; /** * ç§æ·ID */ @TableField(fill = FieldFill.INSERT) private Long tenantId; } src/main/java/com/ruoyi/approve/service/HolidaySettingsService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,10 @@ package com.ruoyi.approve.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.approve.pojo.HolidaySettings; public interface HolidaySettingsService extends IService<HolidaySettings> { IPage listpage(Page page, HolidaySettings holidaySettings); } src/main/java/com/ruoyi/approve/service/impl/HolidaySettingsServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,21 @@ package com.ruoyi.approve.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.approve.mapper.HolidaySettingsMapper; import com.ruoyi.approve.pojo.HolidaySettings; import com.ruoyi.approve.service.HolidaySettingsService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class HolidaySettingsServiceImpl extends ServiceImpl<HolidaySettingsMapper, HolidaySettings> implements HolidaySettingsService { @Autowired private HolidaySettingsMapper holidaySettingsMapper; @Override public IPage<HolidaySettings> listpage(Page page, HolidaySettings holidaySettings) { return holidaySettingsMapper.listpage(page,holidaySettings); } } src/main/resources/mapper/approve/AnnualLeaveSettingMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,15 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.approve.mapper.AnnualLeaveSettingMapper"> <select id="listPage" resultType="com.ruoyi.approve.pojo.AnnualLeaveSetting"> select * from annual_leave_setting where 1=1 <if test="annualLeaveSetting.employeeType != null"> and employee_type = #{annualLeaveSetting.employeeType} </if> </select> </mapper> src/main/resources/mapper/approve/HolidaySettingsMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,17 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.approve.mapper.HolidaySettingsMapper"> <select id="listpage" resultType="com.ruoyi.approve.pojo.HolidaySettings"> select * from holiday_settings where 1=1 <if test="holidaySettings.type != null"> and type = #{holidaySettings.type} </if> <if test="holidaySettings.name != null"> and name like concat('%',#{holidaySettings.name},'%') </if> </select> </mapper> src/main/resources/mapper/approve/OvertimeSettingMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,18 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.approve.mapper.OvertimeSettingMapper"> <select id="listPage" resultType="com.ruoyi.approve.pojo.OvertimeSetting"> select * from overtime_setting where 1=1 <if test="overtimeSetting.type != null"> and type = #{overtimeSetting.type} </if> <if test="overtimeSetting.name != null and overtimeSetting.name !=''"> and name like concat('%',#{overtimeSetting.name},'%') </if> </select> </mapper> src/main/resources/mapper/approve/WorkingHoursSettingMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,15 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.approve.mapper.WorkingHoursSettingMapper"> <select id="listPage" resultType="com.ruoyi.approve.pojo.WorkingHoursSetting"> select * from working_hours_setting where 1=1 <if test="workingHoursSetting.name != null and workingHoursSetting.name !=''"> and name like concat('%',#{workingHoursSetting.name},'%') </if> </select> </mapper>