maven
15 小时以前 54441b789704a6ca10247fe44b342801d8a14353
Merge remote-tracking branch 'origin/master'
已修改2个文件
已添加42个文件
1451 ■■■■■ 文件已修改
src/main/java/com/ruoyi/approve/utils/ListToStringTypeHandler.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/controller/DutyPlanController.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/controller/RulesRegulationsManagementController.java 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/dto/DutyPlanDTO.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/dto/RulesRegulationsManagementDTO.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/dto/SealApplicationManagementDTO.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/mapper/DutyPlanMapper.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/mapper/ReadingStatusMapper.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/mapper/RulesRegulationsManagementMapper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/mapper/SealApplicationManagementMapper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/pojo/DutyPlan.java 100 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/pojo/ReadingStatus.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/pojo/RulesRegulationsManagement.java 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/pojo/SealApplicationManagement.java 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/service/DutyPlanService.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/service/RulesRegulationsManagementService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/service/SealApplicationManagementService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/service/impl/DutyPlanServiceImpl.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/service/impl/RulesRegulationsManagementServiceImpl.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/collaborativeApproval/service/impl/SealApplicationManagementServiceImpl.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/procurementrecord/controller/GasTankWarningController.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/procurementrecord/mapper/GasTankWarningMapper.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/procurementrecord/pojo/GasTankWarning.java 158 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/procurementrecord/service/GasTankWarningService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/procurementrecord/service/impl/GasTankWarningServiceImpl.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/controller/HolidayApplicationController.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/controller/PersonalAttendanceRecordsController.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/mapper/HolidayApplicationMapper.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/mapper/PersonalAttendanceRecordsMapper.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/pojo/HolidayApplication.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/pojo/PersonalAttendanceRecords.java 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/service/HolidayApplicationService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/service/PersonalAttendanceRecordsService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/service/impl/HolidayApplicationServiceImpl.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceRecordsServiceImpl.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/collaborativeApproval/DutyPlanMapper.xml 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/collaborativeApproval/ReadingStatusMapper.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/collaborativeApproval/RulesRegulationsManagementMapper.xml 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/collaborativeApproval/SealApplicationManagementMapper.xml 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/procurementrecord/GasTankWarningMapper.xml 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/staff/HolidayApplicationMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/staff/PersonalAttendanceRecordsMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/staff/StaffJoinLeaveRecordMapper.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/approve/utils/ListToStringTypeHandler.java
@@ -20,14 +20,18 @@
    @Override
    public void setNonNullParameter(PreparedStatement ps, int i, List<String> parameter, JdbcType jdbcType) throws SQLException {
        // å­˜å‚¨æ—¶ï¼šList è½¬é€—号分隔字符串
        if (parameter == null) {
            ps.setString(i, null);
        } else {
            ps.setString(i, String.join(SEPARATOR, parameter));
        }
//        String value = parameter.stream().collect(Collectors.joining(","));
//        ps.setString(i, value);
    }
    @Override
    public List<String> getNullableResult(ResultSet rs, String columnName) throws SQLException {
        // æŸ¥è¯¢æ—¶ï¼šå­—符串转 List
        String value = rs.getString(columnName);
        return value != null && !value.isEmpty() ? Arrays.asList(value.split(SEPARATOR)) : new ArrayList<>();
    }
src/main/java/com/ruoyi/collaborativeApproval/controller/DutyPlanController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,63 @@
package com.ruoyi.collaborativeApproval.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.collaborativeApproval.dto.DutyPlanDTO;
import com.ruoyi.collaborativeApproval.mapper.DutyPlanMapper;
import com.ruoyi.collaborativeApproval.pojo.DutyPlan;
import com.ruoyi.collaborativeApproval.pojo.RulesRegulationsManagement;
import com.ruoyi.collaborativeApproval.service.DutyPlanService;
import com.ruoyi.common.utils.excel.ExcelUtils;
import com.ruoyi.framework.web.domain.AjaxResult;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@RestController
@RequestMapping("/dutyPlan")
@AllArgsConstructor
public class DutyPlanController {
    @Autowired
    private DutyPlanService dutyPlanService;
    @GetMapping("/getList")
    @ApiOperation("分页查询")
    public AjaxResult listPage(Page page, DutyPlanDTO dutyPlanDTO){
        return AjaxResult.success(dutyPlanService.listPage(page, dutyPlanDTO));
    }
    @GetMapping("/getNum")
    @ApiOperation("获取等级数据")
    public AjaxResult getNum(){
        return AjaxResult.success(dutyPlanService.getNum());
    }
    @PostMapping("/add")
    @ApiOperation("新增")
    public AjaxResult add(@RequestBody DutyPlan dutyPlan){
        return AjaxResult.success(dutyPlanService.save(dutyPlan));
    }
    @PostMapping("/update")
    @ApiOperation("修改")
    public AjaxResult update(@RequestBody DutyPlan dutyPlan){
        return AjaxResult.success(dutyPlanService.updateById(dutyPlan));
    }
    @DeleteMapping("/delete")
    @ApiOperation("删除")
    public AjaxResult delete(@RequestBody List<Long> ids){
        if (CollectionUtils.isEmpty(ids)) {
            throw new RuntimeException("请传入要删除的ID");
        }
        return AjaxResult.success(dutyPlanService.removeBatchByIds(ids));
    }
    @PostMapping("/export")
    @ApiOperation("导出")
    public void exportData(HttpServletResponse response, DutyPlanDTO dutyPlanDTO){
        dutyPlanService.exportData(response, dutyPlanDTO);
    }
}
src/main/java/com/ruoyi/collaborativeApproval/controller/RulesRegulationsManagementController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,74 @@
package com.ruoyi.collaborativeApproval.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.collaborativeApproval.mapper.ReadingStatusMapper;
import com.ruoyi.collaborativeApproval.pojo.ReadingStatus;
import com.ruoyi.collaborativeApproval.pojo.RulesRegulationsManagement;
import com.ruoyi.collaborativeApproval.service.RulesRegulationsManagementService;
import com.ruoyi.framework.web.domain.AjaxResult;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/rulesRegulationsManagement")
@AllArgsConstructor
public class RulesRegulationsManagementController {
    @Autowired
    private RulesRegulationsManagementService rulesRegulationsManagementService;
    @Autowired
    private ReadingStatusMapper readingStatusMapper;
    @GetMapping("/getList")
    @ApiOperation("分页查询")
    public AjaxResult listPage(Page page, RulesRegulationsManagement rulesRegulationsManagement){
        return AjaxResult.success(rulesRegulationsManagementService.listPage(page, rulesRegulationsManagement));
    }
    @PostMapping("/add")
    @ApiOperation("新增")
    public AjaxResult add(@RequestBody RulesRegulationsManagement rulesRegulationsManagement){
        return AjaxResult.success(rulesRegulationsManagementService.save(rulesRegulationsManagement));
    }
    @PostMapping("/update")
    @ApiOperation("修改")
    public AjaxResult update(@RequestBody RulesRegulationsManagement rulesRegulationsManagement){
        return AjaxResult.success(rulesRegulationsManagementService.updateById(rulesRegulationsManagement));
    }
    @DeleteMapping("/delete")
    @ApiOperation("删除")
    public AjaxResult delete(@PathVariable("ids") List<Long> ids){
        if (CollectionUtils.isEmpty(ids)) {
            throw new RuntimeException("请传入要删除的ID");
        }
        return AjaxResult.success(rulesRegulationsManagementService.removeBatchByIds(ids));
    }
    //规则查看时新增阅读状态
    @PostMapping("/addReadingStatus")
    @ApiOperation("新增阅读状态")
    public AjaxResult addReadingStatus(@RequestBody ReadingStatus readingStatus){
        return AjaxResult.success(readingStatusMapper.insert(readingStatus));
    }
    @PostMapping("/updateReadingStatus")
    @ApiOperation("修改阅读状态")
    public AjaxResult updateReadingStatus(@RequestBody ReadingStatus readingStatus){
        return AjaxResult.success(readingStatusMapper.updateById(readingStatus));
    }
    @GetMapping("/getReadingStatusList")
    @ApiOperation("分页查询阅读状态")
    public AjaxResult listPage(Page page, ReadingStatus readingStatus){
        return AjaxResult.success(readingStatusMapper.selectPage(page,new QueryWrapper<ReadingStatus>(readingStatus)));
    }
    @GetMapping("/getReadingStatusByRuleId/{ruleId}")
    @ApiOperation("根据制度id查询阅读状态")
    public AjaxResult getReadingStatusByRuleId(@PathVariable Long ruleId){
        return AjaxResult.success(readingStatusMapper.selectList(new QueryWrapper<ReadingStatus>().eq("rule_id", ruleId)));
    }
}
src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,50 @@
package com.ruoyi.collaborativeApproval.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.collaborativeApproval.pojo.SealApplicationManagement;
import com.ruoyi.collaborativeApproval.service.SealApplicationManagementService;
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
import com.ruoyi.framework.web.domain.AjaxResult;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@AllArgsConstructor
@RestController
@RequestMapping("/sealApplicationManagement")
public class SealApplicationManagementController {
    @Autowired
    private SealApplicationManagementService sealApplicationManagementService;
    @GetMapping("/getList")
    @ApiOperation("分页查询")
    public AjaxResult listPage(Page page, SealApplicationManagement sealApplicationManagement){
        return AjaxResult.success(sealApplicationManagementService.listPage(page,sealApplicationManagement));
    }
    @PostMapping("/add")
    @ApiOperation("新增")
    public AjaxResult add(@RequestBody SealApplicationManagement sealApplicationManagement){
        return AjaxResult.success(sealApplicationManagementService.save(sealApplicationManagement));
    }
    @PostMapping("/update")
    @ApiOperation("修改")
    public AjaxResult update(@RequestBody SealApplicationManagement sealApplicationManagement){
        return AjaxResult.success(sealApplicationManagementService.updateById(sealApplicationManagement));
    }
    @DeleteMapping("/delete")
    @ApiOperation("删除")
    public AjaxResult delete(@PathVariable("ids") List<Long> ids){
        if (CollectionUtils.isEmpty(ids)) {
            throw new RuntimeException("请传入要删除的ID");
        }
        return AjaxResult.success(sealApplicationManagementService.removeBatchByIds(ids));
    }
}
src/main/java/com/ruoyi/collaborativeApproval/dto/DutyPlanDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
package com.ruoyi.collaborativeApproval.dto;
import org.springframework.format.annotation.DateTimeFormat;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.collaborativeApproval.pojo.DutyPlan;
import lombok.Data;
import java.time.LocalDate;
import java.util.List;
@Data
public class DutyPlanDTO extends DutyPlan {
    private List<String> tags;
    /**
     * æŸ¥è¯¢æ—¥æœŸ
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate queryDate;
}
src/main/java/com/ruoyi/collaborativeApproval/dto/RulesRegulationsManagementDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
package com.ruoyi.collaborativeApproval.dto;
import com.ruoyi.collaborativeApproval.pojo.RulesRegulationsManagement;
import lombok.Data;
import java.util.List;
@Data
public class RulesRegulationsManagementDTO extends RulesRegulationsManagement {
    /**
     * å‘布人姓名
     */
    private String createUserName;
    private List<String> scope;
}
src/main/java/com/ruoyi/collaborativeApproval/dto/SealApplicationManagementDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
package com.ruoyi.collaborativeApproval.dto;
import com.ruoyi.collaborativeApproval.pojo.SealApplicationManagement;
import lombok.Data;
@Data
public class SealApplicationManagementDTO extends SealApplicationManagement {
    private String createUserName;
    //所属部门
    private String department;
}
src/main/java/com/ruoyi/collaborativeApproval/mapper/DutyPlanMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
package com.ruoyi.collaborativeApproval.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.collaborativeApproval.dto.DutyPlanDTO;
import com.ruoyi.collaborativeApproval.pojo.DutyPlan;
import io.lettuce.core.dynamic.annotation.Param;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import java.util.Map;
@Mapper
public interface DutyPlanMapper extends BaseMapper<DutyPlan> {
    IPage<DutyPlanDTO> listPage(Page page, @Param("dutyPlan") DutyPlanDTO dutyPlan);
    List<Map<String, Object>> getNum();
}
src/main/java/com/ruoyi/collaborativeApproval/mapper/ReadingStatusMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
package com.ruoyi.collaborativeApproval.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.collaborativeApproval.pojo.ReadingStatus;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface ReadingStatusMapper extends BaseMapper<ReadingStatus> {
}
src/main/java/com/ruoyi/collaborativeApproval/mapper/RulesRegulationsManagementMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
package com.ruoyi.collaborativeApproval.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.collaborativeApproval.dto.RulesRegulationsManagementDTO;
import com.ruoyi.collaborativeApproval.pojo.RulesRegulationsManagement;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface RulesRegulationsManagementMapper extends BaseMapper<RulesRegulationsManagement> {
    IPage<RulesRegulationsManagementDTO> listPage(Page page,@Param("ew") RulesRegulationsManagement rulesRegulationsManagement);
}
src/main/java/com/ruoyi/collaborativeApproval/mapper/SealApplicationManagementMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
package com.ruoyi.collaborativeApproval.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.collaborativeApproval.dto.SealApplicationManagementDTO;
import com.ruoyi.collaborativeApproval.pojo.SealApplicationManagement;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface SealApplicationManagementMapper extends BaseMapper<SealApplicationManagement> {
    IPage<SealApplicationManagementDTO> listPage(Page page, @Param("ew") SealApplicationManagement sealApplicationManagement);
}
src/main/java/com/ruoyi/collaborativeApproval/pojo/DutyPlan.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,100 @@
package com.ruoyi.collaborativeApproval.pojo;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.approve.utils.ListToStringTypeHandler;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.ibatis.type.JdbcType;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
@Data
@TableName("duty_plan")
public class DutyPlan{
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * è®¡åˆ’标题
     */
    @Excel(name = "计划标题")
    @ApiModelProperty("计划标题")
    private String title;
    /**
     * è®¡åˆ’描述
     */
    @Excel(name = "计划描述")
    @ApiModelProperty("计划描述")
    private String description;
    /**
     * è®¡åˆ’级别
     */
    @Excel(name = "计划级别")
    @ApiModelProperty("计划级别")
    private String level;
    /**
     * æ—¶é—´å‘¨æœŸ
     */
    @Excel(name = "时间周期")
    @ApiModelProperty("时间周期")
    private String period;
    /**
     * å¼€å§‹æ—¶é—´
     */
    @Excel(name = "开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate startDate;
    /**
     * ç»“束时间
     */
    @Excel(name = "结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate endDate;
    /**
     * è´Ÿè´£äºº
     */
    @Excel(name = "负责人")
    @ApiModelProperty("负责人")
    private String assignee;
    /**
     * çŠ¶æ€
     */
    @Excel(name = "状态")
    @ApiModelProperty("状态")
    private String status;
    /**
     * ä¼˜å…ˆçº§
     */
    @Excel(name = "优先级")
    @ApiModelProperty("优先级")
    private String priority;
    /**
     * å®Œæˆåº¦
     */
    @Excel(name = "完成度")
    @ApiModelProperty("完成度")
    private Integer progress;
    /**
     * æ ‡ç­¾
     */
    @Excel(name = "标签")
    @ApiModelProperty("标签")
    @TableField(value = "tags",typeHandler = ListToStringTypeHandler.class,jdbcType = JdbcType.VARCHAR)
    private List<String> tags;
    /**
     * ç§Ÿæˆ·ID
     */
    @TableField(fill = FieldFill.INSERT)
    private Long tenantId;
}
src/main/java/com/ruoyi/collaborativeApproval/pojo/ReadingStatus.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,70 @@
package com.ruoyi.collaborativeApproval.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;
@Data
@TableName("reading_status")
public class ReadingStatus implements Serializable {
    /**
     * ä¸»é”®
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    /**
     * åˆ¶åº¦id
     */
    private Long ruleId;
    /**
     * å‘˜å·¥å§“名
     */
    private String employee;
    /**
     * éƒ¨é—¨
     */
    private String department;
    /**
     * ç¡®è®¤æ—¶é—´
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime confirmTime;
    /**
     * é˜…读状态
     */
    private String status;
    /**
     * åˆ›å»ºè€…
     */
    @TableField(fill = FieldFill.INSERT)
    private Integer createUser;
    /**
     * åˆ›å»ºæ—¶é—´
     */
    @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)
    private Integer updateUser;
    /**
     * ä¿®æ”¹æ—¶é—´
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
    /**
     * ç§Ÿæˆ·ID
     */
    @TableField(fill = FieldFill.INSERT)
    private Long tenantId;
}
src/main/java/com/ruoyi/collaborativeApproval/pojo/RulesRegulationsManagement.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,103 @@
package com.ruoyi.collaborativeApproval.pojo;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.approve.utils.ListToStringTypeHandler;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.ibatis.type.JdbcType;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import java.util.List;
@Data
@TableName(value = "rules_regulations_management")
public class RulesRegulationsManagement {
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * åˆ¶åº¦ç¼–号
     */
    @ApiModelProperty("制度编号")
    private String regulationNum;
    /**
     * æ ‡é¢˜
     */
    @ApiModelProperty("标题")
    private String title;
    /**
     * åˆ¶åº¦åˆ†ç±»
     */
    @ApiModelProperty("制度分类")
    private String category;
    /**
     * åˆ¶åº¦å†…容
     */
    @ApiModelProperty("制度内容")
    private String content;
    /**
     * ç”Ÿæ•ˆæ—¶é—´
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime effectiveTime;
    /**
     * é€‚用范围
     */
    @ApiModelProperty("适用范围")
    @TableField(value = "scope",typeHandler = ListToStringTypeHandler.class,jdbcType = JdbcType.VARCHAR)
    private List<String> scope;
    /**
     * æ˜¯å¦éœ€è¦ç¡®è®¤
     */
    @ApiModelProperty("是否需要确认")
    private Boolean requireConfirm;
    /**
     * ç‰ˆæœ¬
     */
    @ApiModelProperty("版本")
    private String version;
    /**
     * çŠ¶æ€
     */
    @ApiModelProperty("状态")
    private String status;
    /**
     * å·²è¯»äººæ•°
     */
    @ApiModelProperty("已读人数")
    private Integer readCount;
    /**
     * åˆ›å»ºè€…
     */
    @TableField(fill = FieldFill.INSERT)
    private Integer createUser;
    /**
     * åˆ›å»ºæ—¶é—´
     */
    @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)
    private Integer updateUser;
    /**
     * ä¿®æ”¹æ—¶é—´
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
    /**
     * ç§Ÿæˆ·ID
     */
    @TableField(fill = FieldFill.INSERT)
    private Long tenantId;
}
src/main/java/com/ruoyi/collaborativeApproval/pojo/SealApplicationManagement.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,67 @@
package com.ruoyi.collaborativeApproval.pojo;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
@Data
@TableName("seal_application_management")
public class SealApplicationManagement {
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * ç”³è¯·ç¼–号
     */
    @ApiModelProperty("申请编号")
    private String applicationNum;
    /**
     * å…¬å‘Šæ ‡é¢˜
     */
    @ApiModelProperty("公告标题")
    private String title;
    /**
     * ç”¨å°ç±»åž‹
     */
    @ApiModelProperty("用印类型")
    private String sealType;
    /**
     * ç”³è¯·ç”¨å°åŽŸå› 
     */
    @ApiModelProperty("申请用印原因")
    private String reason;
    /**
     * ç´§æ€¥ç¨‹åº¦
     */
    @ApiModelProperty("紧急程度")
    private String urgency;
    /**
     * çŠ¶æ€
     */
    @ApiModelProperty("状态")
    private String status;
    /**
     * åˆ›å»ºè€…
     */
    @TableField(fill = FieldFill.INSERT)
    private Integer createUser;
    /**
     * åˆ›å»ºæ—¶é—´
     */
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    /**
     * ç§Ÿæˆ·ID
     */
    @TableField(fill = FieldFill.INSERT)
    private Long tenantId;
}
src/main/java/com/ruoyi/collaborativeApproval/service/DutyPlanService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
package com.ruoyi.collaborativeApproval.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.collaborativeApproval.dto.DutyPlanDTO;
import com.ruoyi.collaborativeApproval.pojo.DutyPlan;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
public interface DutyPlanService extends IService<DutyPlan> {
    IPage listPage(Page page, DutyPlanDTO dutyPlanDTO);
    List<Map<String, Object>> getNum();
    void exportData(HttpServletResponse response, DutyPlanDTO dutyPlan);
}
src/main/java/com/ruoyi/collaborativeApproval/service/RulesRegulationsManagementService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
package com.ruoyi.collaborativeApproval.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.collaborativeApproval.dto.RulesRegulationsManagementDTO;
import com.ruoyi.collaborativeApproval.pojo.RulesRegulationsManagement;
public interface RulesRegulationsManagementService extends IService<RulesRegulationsManagement> {
    IPage<RulesRegulationsManagementDTO> listPage(Page page, RulesRegulationsManagement rulesRegulationsManagement);
}
src/main/java/com/ruoyi/collaborativeApproval/service/SealApplicationManagementService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
package com.ruoyi.collaborativeApproval.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.collaborativeApproval.pojo.SealApplicationManagement;
public interface SealApplicationManagementService extends IService<SealApplicationManagement> {
    IPage listPage(Page page, SealApplicationManagement sealApplicationManagement);
}
src/main/java/com/ruoyi/collaborativeApproval/service/impl/DutyPlanServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
package com.ruoyi.collaborativeApproval.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.collaborativeApproval.dto.DutyPlanDTO;
import com.ruoyi.collaborativeApproval.mapper.DutyPlanMapper;
import com.ruoyi.collaborativeApproval.pojo.DutyPlan;
import com.ruoyi.collaborativeApproval.service.DutyPlanService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
@Service
public class DutyPlanServiceImpl extends ServiceImpl<DutyPlanMapper, DutyPlan> implements DutyPlanService {
    @Autowired
    private DutyPlanMapper dutyPlanMapper;
    @Override
    public IPage listPage(Page page, DutyPlanDTO dutyPlanDTO) {
        return dutyPlanMapper.listPage(page, dutyPlanDTO);
    }
    @Override
    public List<Map<String, Object>> getNum() {
        return dutyPlanMapper.getNum();
    }
    @Override
    public void exportData(HttpServletResponse response, DutyPlanDTO dutyPlanDTO) {
        IPage<DutyPlanDTO> dutyPlans = dutyPlanMapper.listPage(new Page<>(-1, -1), dutyPlanDTO);
        List<DutyPlanDTO> records = dutyPlans.getRecords();
        ExcelUtil<DutyPlanDTO> util = new ExcelUtil<>(DutyPlanDTO.class);
        util.exportExcel(response, records, "计划导出");
    }
}
src/main/java/com/ruoyi/collaborativeApproval/service/impl/RulesRegulationsManagementServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
package com.ruoyi.collaborativeApproval.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.collaborativeApproval.dto.RulesRegulationsManagementDTO;
import com.ruoyi.collaborativeApproval.mapper.RulesRegulationsManagementMapper;
import com.ruoyi.collaborativeApproval.pojo.RulesRegulationsManagement;
import com.ruoyi.collaborativeApproval.service.RulesRegulationsManagementService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class RulesRegulationsManagementServiceImpl extends ServiceImpl<RulesRegulationsManagementMapper, RulesRegulationsManagement> implements RulesRegulationsManagementService {
    @Autowired
    private RulesRegulationsManagementMapper rulesRegulationsManagementMapper;
    @Override
    public IPage<RulesRegulationsManagementDTO> listPage(Page page, RulesRegulationsManagement rulesRegulationsManagement) {
        return rulesRegulationsManagementMapper.listPage(page, rulesRegulationsManagement);
    }
}
src/main/java/com/ruoyi/collaborativeApproval/service/impl/SealApplicationManagementServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
package com.ruoyi.collaborativeApproval.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.collaborativeApproval.dto.SealApplicationManagementDTO;
import com.ruoyi.collaborativeApproval.mapper.SealApplicationManagementMapper;
import com.ruoyi.collaborativeApproval.pojo.SealApplicationManagement;
import com.ruoyi.collaborativeApproval.service.SealApplicationManagementService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class SealApplicationManagementServiceImpl extends ServiceImpl<SealApplicationManagementMapper, SealApplicationManagement> implements SealApplicationManagementService {
    @Autowired
    private SealApplicationManagementMapper sealApplicationManagementMapper;
    @Override
    public IPage<SealApplicationManagementDTO> listPage(Page page, SealApplicationManagement sealApplicationManagement) {
        return sealApplicationManagementMapper.listPage(page, sealApplicationManagement);
    }
}
src/main/java/com/ruoyi/procurementrecord/controller/GasTankWarningController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,44 @@
package com.ruoyi.procurementrecord.controller;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.procurementrecord.pojo.GasTankWarning;
import com.ruoyi.procurementrecord.service.GasTankWarningService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@RestController
@RequestMapping("/gasTankWarning")
public class GasTankWarningController {
    @Autowired
    private GasTankWarningService gasTankWarningService;
    @GetMapping("/listPage")
    public AjaxResult listPage(Page page, GasTankWarning gasTankWarning) {
        return AjaxResult.success(gasTankWarningService.listPage(page, gasTankWarning));
    }
    @PostMapping("/add")
    public AjaxResult add(@RequestBody GasTankWarning gasTankWarning) {
        return AjaxResult.success(gasTankWarningService.save(gasTankWarning));
    }
    @PostMapping("update")
    public AjaxResult update(@RequestBody GasTankWarning gasTankWarning) {
        return AjaxResult.success(gasTankWarningService.updateById(gasTankWarning));
    }
    @DeleteMapping("delete")
    public AjaxResult delete(@RequestBody List<Long> ids){
        if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("请传入要删除的ID");
        return AjaxResult.success(gasTankWarningService.removeByIds(ids));
    }
    //导出
    @PostMapping("/export")
    public void export(HttpServletResponse response,@RequestParam(name = "ids", required = false) List<Long> ids){
        gasTankWarningService.export(response,ids);
    }
}
src/main/java/com/ruoyi/procurementrecord/mapper/GasTankWarningMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
package com.ruoyi.procurementrecord.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.procurementrecord.pojo.GasTankWarning;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface GasTankWarningMapper extends BaseMapper<GasTankWarning> {
    IPage<GasTankWarning> listPage(Page page, @Param("gasTankWarning") GasTankWarning gasTankWarning);
}
src/main/java/com/ruoyi/procurementrecord/pojo/GasTankWarning.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,158 @@
package com.ruoyi.procurementrecord.pojo;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.time.LocalDateTime;
@Data
@TableName("gas_tank_warning")
public class GasTankWarning implements Serializable {
    @TableId(value = "id",type = IdType.AUTO)
    private Long id;
    /**
     * å‚¨æ°”罐编码
     */
    @Excel(name = "储气罐编码")
    private String tankCode;
    /**
     * å‚¨æ°”罐名称
     */
    @Excel(name = "储气罐名称")
    private String tankName;
    /**
     * å‚¨æ°”罐类型
     */
    @Excel(name = "储气罐类型")
    private String tankType;
    /**
     * è§„格型号
     */
    @Excel(name = "规格型号")
    private String specificationModel;
    /**
     * å®¹ç§¯(m³)
     */
    @Excel(name = "容积(m³)")
    private Long volume;
    /**
     * å½“前气体水平(m³)
     */
    @Excel(name = "当前气体水平(m³)")
    private Long currentGasLevel;
    /**
     * å®‰å…¨æ°”体水平(m³)
     */
    @Excel(name = "安全气体水平(m³)")
    private Long safetyGasLevel;
    /**
     * æœ€å°æ°”体水平(m³)
     */
    @Excel(name = "最小气体水平(m³)")
    private Long minGasLevel;
    /**
     * æœ€å¤§æ°”体水平(m³)
     */
    @Excel(name = "最大气体水平(m³)")
    private Long maxGasLevel;
    /**
     * å½“前压力(MPa)
     */
    @Excel(name = "当前压力(MPa)")
    private Double currentPressure;
    /**
     * é¢„警类型
     */
    @Excel(name = "预警类型")
    private String warningType;
    /**
     * é¢„警等级
     */
    @Excel(name = "预警等级")
    private String warningLevel;
    /**
     * é¢„警阈值
     */
    @Excel(name = "预警阈值")
    private Long warningThreshold;
    /**
     * æ˜¯å¦å¯ç”¨
     */
    @Excel(name = "是否启用")
    private Boolean isEnabled;
    /**
     * é¢„警规则-当???时触发预警
     */
    @Excel(name = "预警规则")
    private String warningRule;
    /**
     * é¢„警时间
     */
    @Excel(name = "预警时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime warningTime;
    /**
     * é¢„警持续天数
     */
    @Excel(name = "预警持续天数")
    private Long warningDuration;
    /**
     * æœ€åŽæ›´æ–°æ—¶é—´
     */
    @Excel(name = "最后更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime lastUpdateTime;
    /**
     * é¢„期充装时间
     */
    @Excel(name = "预期充装时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime expectedRefillTime;
    /**
     * é¢„期缺气时间
     */
    @Excel(name = "预期缺气时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime expectedShortageTime;
    /**
     * åˆ›å»ºæ—¶é—´
     */
    @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/procurementrecord/service/GasTankWarningService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
package com.ruoyi.procurementrecord.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.procurementrecord.pojo.GasTankWarning;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
public interface GasTankWarningService extends IService<GasTankWarning> {
    IPage listPage(Page page, GasTankWarning gasTankWarning);
    void export(HttpServletResponse response, List<Long> ids);
}
src/main/java/com/ruoyi/procurementrecord/service/impl/GasTankWarningServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,40 @@
package com.ruoyi.procurementrecord.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.procurementrecord.dto.ProcurementPageDto;
import com.ruoyi.procurementrecord.mapper.GasTankWarningMapper;
import com.ruoyi.procurementrecord.pojo.GasTankWarning;
import com.ruoyi.procurementrecord.service.GasTankWarningService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
@Service
public class GasTankWarningServiceImpl extends ServiceImpl<GasTankWarningMapper, GasTankWarning> implements GasTankWarningService {
    @Autowired
    private GasTankWarningMapper gasTankWarningMapper;
    @Override
    public IPage listPage(Page page, GasTankWarning gasTankWarning) {
        return gasTankWarningMapper.listPage(page,gasTankWarning);
    }
    @Override
    public void export(HttpServletResponse response, List<Long> ids) {
        List<GasTankWarning> list = new ArrayList<>();
        if(CollectionUtils.isEmpty(ids)){
            list = gasTankWarningMapper.selectList(null);
        }else {
            list = gasTankWarningMapper.selectBatchIds(ids);
        }
        ExcelUtil<GasTankWarning> util = new ExcelUtil<>(GasTankWarning.class);
        util.exportExcel(response, list, "储气罐预警.xlsx");
    }
}
src/main/java/com/ruoyi/staff/controller/HolidayApplicationController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,44 @@
package com.ruoyi.staff.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.staff.pojo.HolidayApplication;
import com.ruoyi.staff.pojo.PersonalAttendanceRecords;
import com.ruoyi.staff.service.HolidayApplicationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/staff/holidayApplication")
public class HolidayApplicationController {
    @Autowired
    private HolidayApplicationService holidayApplicationService;
    /**
     * è¯·å‡ç”³è¯·åˆ†é¡µæŸ¥è¯¢
     */
    @GetMapping("/listPage")
    public AjaxResult listPage(Page page, HolidayApplication holidayApplication){
        return AjaxResult.success(holidayApplicationService.listPage(page, holidayApplication));
    }
    /**
     * æ–°å¢žè¯·å‡ç”³è¯·
     */
    @PostMapping("/add")
    public AjaxResult add(@RequestBody HolidayApplication holidayApplication){
        return AjaxResult.success(holidayApplicationService.save(holidayApplication));
    }
    /**
     * ä¿®æ”¹è¯·å‡ç”³è¯·
     */
    @PostMapping("/update")
    public AjaxResult update(@RequestBody HolidayApplication holidayApplication){
        return AjaxResult.success(holidayApplicationService.updateById(holidayApplication));
    }
    /**
     * åˆ é™¤è¯·å‡ç”³è¯·
     */
    @DeleteMapping("/delete/{id}")
    public AjaxResult delete(@PathVariable("id") Long id){
        return AjaxResult.success(holidayApplicationService.removeById(id));
    }
}
src/main/java/com/ruoyi/staff/controller/PersonalAttendanceRecordsController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,47 @@
package com.ruoyi.staff.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.staff.pojo.PersonalAttendanceRecords;
import com.ruoyi.staff.pojo.StaffJoinLeaveRecord;
import com.ruoyi.staff.pojo.StaffOnJob;
import com.ruoyi.staff.service.PersonalAttendanceRecordsService;
import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@AllArgsConstructor
@RestController
@RequestMapping("/staff/personalAttendanceRecords")
public class PersonalAttendanceRecordsController {
    @Autowired
    private PersonalAttendanceRecordsService personalAttendanceRecordsService;
    /**
     * ä¸ªäººè€ƒå‹¤è®°å½•分页查询
     */
    @GetMapping("/listPage")
    public AjaxResult personalAttendanceRecordsListPage(Page page, PersonalAttendanceRecords personalAttendanceRecords) {
        return AjaxResult.success(personalAttendanceRecordsService.listPage(page, personalAttendanceRecords));
    }
    /**
     * æ–°å¢žä¸ªäººè€ƒå‹¤è®°å½•
     */
    @PostMapping("/add")
    public AjaxResult add(@RequestBody PersonalAttendanceRecords personalAttendanceRecords) {
        return AjaxResult.success(personalAttendanceRecordsService.save(personalAttendanceRecords));
    }
    /**
     * ä¿®æ”¹ä¸ªäººè€ƒå‹¤è®°å½•
     */
    @PutMapping("/update")
    public AjaxResult update(@RequestBody PersonalAttendanceRecords personalAttendanceRecords) {
        return AjaxResult.success(personalAttendanceRecordsService.updateById(personalAttendanceRecords));
    }
    /**
     * åˆ é™¤ä¸ªäººè€ƒå‹¤è®°å½•
     */
    @DeleteMapping("/delete/{id}")
    public AjaxResult delete(@PathVariable("id") Long id) {
        return AjaxResult.success(personalAttendanceRecordsService.removeById(id));
    }
}
src/main/java/com/ruoyi/staff/mapper/HolidayApplicationMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
package com.ruoyi.staff.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.staff.pojo.HolidayApplication;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface HolidayApplicationMapper extends BaseMapper<HolidayApplication> {
}
src/main/java/com/ruoyi/staff/mapper/PersonalAttendanceRecordsMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
package com.ruoyi.staff.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.staff.pojo.PersonalAttendanceRecords;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface PersonalAttendanceRecordsMapper extends BaseMapper<PersonalAttendanceRecords> {
}
src/main/java/com/ruoyi/staff/pojo/HolidayApplication.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,58 @@
package com.ruoyi.staff.pojo;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDate;
import java.time.LocalTime;
@Data
@TableName("holiday_application")
public class HolidayApplication  {
    /**
     * åºå·
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    /**
     * å‘˜å·¥id
     */
    @TableField(fill = FieldFill.INSERT)
    private Long staffId;
    /**
     * å‡æœŸç±»åž‹
     */
    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 reason;
    /**
     * çŠ¶æ€
     */
    private String status;
    /**
     * ç§Ÿæˆ·ID
     */
    @TableField(fill = FieldFill.INSERT)
    private Long tenantId;
}
src/main/java/com/ruoyi/staff/pojo/PersonalAttendanceRecords.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,52 @@
package com.ruoyi.staff.pojo;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalTime;
@Data
@TableName("personal_attendance_records")
public class PersonalAttendanceRecords implements Serializable {
    /**
     * åºå·
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    /**
     * æ—¥æœŸ
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate date;
    /**
     * ç­¾åˆ°æ—¶é—´
     */
    @JsonFormat(pattern = "HH:mm")
    @DateTimeFormat(pattern = "HH:mm")
    private LocalTime checkIn;
    /**
     * ç­¾é€€æ—¶é—´
     */
    @JsonFormat(pattern = "HH:mm")
    @DateTimeFormat(pattern = "HH:mm")
    private LocalTime checkOut;
    /**
     * å·¥ä½œæ—¶é•¿
     */
    private String workHours;
    /**
     * çŠ¶æ€
     */
    private String status;
    /**
     * ç§Ÿæˆ·ID
     */
    @TableField(fill = FieldFill.INSERT)
    private Long tenantId;
}
src/main/java/com/ruoyi/staff/service/HolidayApplicationService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
package com.ruoyi.staff.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.staff.pojo.HolidayApplication;
public interface HolidayApplicationService extends IService<HolidayApplication> {
    IPage listPage(Page page, HolidayApplication holidayApplication);
}
src/main/java/com/ruoyi/staff/service/PersonalAttendanceRecordsService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
package com.ruoyi.staff.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.staff.pojo.PersonalAttendanceRecords;
public interface PersonalAttendanceRecordsService extends IService<PersonalAttendanceRecords> {
    IPage listPage(Page page, PersonalAttendanceRecords personalAttendanceRecords);
}
src/main/java/com/ruoyi/staff/service/impl/HolidayApplicationServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
package com.ruoyi.staff.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
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.staff.mapper.HolidayApplicationMapper;
import com.ruoyi.staff.pojo.HolidayApplication;
import com.ruoyi.staff.service.HolidayApplicationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class HolidayApplicationServiceImpl extends ServiceImpl<HolidayApplicationMapper, HolidayApplication> implements HolidayApplicationService {
    @Autowired
    private HolidayApplicationMapper holidayApplicationMapper;
    @Override
    public IPage listPage(Page page, HolidayApplication holidayApplication) {
        return holidayApplicationMapper.selectPage(page, new QueryWrapper<>(holidayApplication));
    }
}
src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceRecordsServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
package com.ruoyi.staff.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
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.staff.mapper.PersonalAttendanceRecordsMapper;
import com.ruoyi.staff.pojo.PersonalAttendanceRecords;
import com.ruoyi.staff.service.PersonalAttendanceRecordsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class PersonalAttendanceRecordsServiceImpl extends ServiceImpl<PersonalAttendanceRecordsMapper, PersonalAttendanceRecords> implements PersonalAttendanceRecordsService {
    @Autowired
    private PersonalAttendanceRecordsMapper personalAttendanceRecordsMapper;
    @Override
    public IPage listPage(Page page, PersonalAttendanceRecords personalAttendanceRecords) {
//        return personalAttendanceRecordsMapper.ListPage(page, personalAttendanceRecords);
        return baseMapper.selectPage(page, new QueryWrapper<>(personalAttendanceRecords));
    }
}
src/main/resources/mapper/collaborativeApproval/DutyPlanMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,40 @@
<?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.collaborativeApproval.mapper.DutyPlanMapper">
    <resultMap id="DutyPlanDTOMap" type="com.ruoyi.collaborativeApproval.dto.DutyPlanDTO">
        <result column="id" property="id"/>
        <result column="tags" property="tags" typeHandler="com.ruoyi.approve.utils.ListToStringTypeHandler"/>
    </resultMap>
    <select id="listPage" resultMap="DutyPlanDTOMap">
        select * from duty_plan
        <where>
        1=1
            <if test="dutyPlan.title != null and dutyPlan.title != ''">
                and title like concat('%',#{dutyPlan.title},'%')
            </if>
            <if test="dutyPlan.level != null">
                and level = #{dutyPlan.level}
            </if>
            <if test="dutyPlan.period != null">
                and period = #{dutyPlan.period}
            </if>
            <if test="dutyPlan.queryDate != null">
                and start_date &lt;= #{dutyPlan.queryDate}
                and end_date &gt;= #{dutyPlan.queryDate}
            </if>
        </where>
    </select>
    <select id="getNum" resultType="java.util.Map">
        SELECT
            level,
            COUNT(*) AS num,
            ROUND(COUNT(*) / total.count * 100) AS completion
        FROM
            duty_plan,
            (SELECT COUNT(*) AS count FROM duty_plan) AS total
        GROUP BY
            level, total.count
    </select>
</mapper>
src/main/resources/mapper/collaborativeApproval/ReadingStatusMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
<?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.collaborativeApproval.mapper.ReadingStatusMapper">
</mapper>
src/main/resources/mapper/collaborativeApproval/RulesRegulationsManagementMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,31 @@
<?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.collaborativeApproval.mapper.RulesRegulationsManagementMapper">
    <resultMap id="RulesRegulationsManagementDTOMap" type="com.ruoyi.collaborativeApproval.dto.RulesRegulationsManagementDTO">
        <!-- å…¶ä»–字段映射(保持不变) -->
        <result column="id" property="id"/>
        <result column="regulation_num" property="regulationNum"/>
        <result column="title" property="title"/>
        <!-- ... çœç•¥å…¶ä»–字段 ... -->
        <!-- å…³é”®ä¿®å¤ï¼šä¸º scope å­—段指定类型处理器 -->
        <result column="scope" property="scope" typeHandler="com.ruoyi.approve.utils.ListToStringTypeHandler"/>
    </resultMap>
    <select id="listPage" resultMap="RulesRegulationsManagementDTOMap">
        select rrm.*, su.user_name as create_user_name
        from rules_regulations_management rrm
        left join sys_user su on rrm.create_user = su.user_id
        <where>
            <if test="ew.regulationNum != null and ew.regulationNum != ''">
                and rrm.regulation_num = #{ew.regulationNum}
            </if>
            <if test="ew.title != null and ew.title != ''">
                and rrm.title like concat('%',#{ew.title},'%')
            </if>
            <if test="ew.category != null">
                and rrm.category = #{ew.category}
            </if>
        </where>
    </select>
</mapper>
src/main/resources/mapper/collaborativeApproval/SealApplicationManagementMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
<?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.collaborativeApproval.mapper.SealApplicationManagementMapper">
    <select id="listPage" resultType="com.ruoyi.collaborativeApproval.dto.SealApplicationManagementDTO">
        select sam.*, su.user_name as create_user_name, d.dept_name as department
        from seal_application_management sam
        left join sys_user su on sam.create_user = su.user_id
        left join sys_user_dept sud on su.user_id = sud.user_id
        left join sys_dept d on sud.dept_id = d.dept_id
        <where>
            <if test="ew.title != null and ew.title != ''">
                and sam.title like concat('%',#{ew.title},'%')
            </if>
            <if test="ew.status != null">
                and sam.status = #{ew.status}
            </if>
        </where>
    </select>
</mapper>
src/main/resources/mapper/procurementrecord/GasTankWarningMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
<?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.procurementrecord.mapper.GasTankWarningMapper">
    <select id="listPage" resultType="com.ruoyi.procurementrecord.pojo.GasTankWarning">
        select * from gas_tank_warning
        where 1=1
        <if test="gasTankWarning.tankName != null and gasTankWarning.tankName != ''">
            and tank_name like concat('%', #{gasTankWarning.tankName}, '%')
        </if>
        <if test="gasTankWarning.tankType != null">
            and tank_type = #{gasTankWarning.tankType}
        </if>
        <if test="gasTankWarning.warningType != null">
            and warning_type = #{gasTankWarning.warningType}
        </if>
        <if test="gasTankWarning.warningLevel != null">
            and warning_level = #{gasTankWarning.warningLevel}
        </if>
    </select>
</mapper>
src/main/resources/mapper/staff/HolidayApplicationMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
<?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.staff.mapper.HolidayApplicationMapper">
</mapper>
src/main/resources/mapper/staff/PersonalAttendanceRecordsMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
<?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.staff.mapper.PersonalAttendanceRecordsMapper">
</mapper>
src/main/resources/mapper/staff/StaffJoinLeaveRecordMapper.xml
@@ -16,6 +16,7 @@
        <if test="staffJoinLeaveRecord.entryDateEnd != null and staffJoinLeaveRecord.entryDateEnd != '' ">
            and contract_end_time like concat('%',#{staffJoinLeaveRecord.entryDateEnd},'%')
        </if>
        order by create_time desc
    </select>
    <select id="staffJoinLeaveRecordList" resultType="com.ruoyi.staff.pojo.StaffJoinLeaveRecord">
        SELECT