From fc7e0baabbeba33de71c8b5d4ce78792209dd14b Mon Sep 17 00:00:00 2001 From: huangjiayang <5265313@qq.com> Date: 星期二, 22 四月 2025 15:13:51 +0800 Subject: [PATCH] 【ADD】增加日历管理相关CRUD代码 --- aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsWorkCalendar.java | 166 ++++++++++++++++ aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsWorkCalendarMapper.java | 62 ++++++ aps-modules/aps-core/src/main/java/com/aps/core/controller/basicData/ApsWorkCalendarController.java | 98 +++++++++ aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWorkCalendarServiceImpl.java | 100 ++++++++++ aps-modules/aps-core/src/main/resources/mapper/core/ApsWorkCalendarMapper.xml | 109 ++++++++++ aps-modules/aps-core/src/main/java/com/aps/core/service/IApsWorkCalendarService.java | 62 ++++++ 6 files changed, 597 insertions(+), 0 deletions(-) diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/controller/basicData/ApsWorkCalendarController.java b/aps-modules/aps-core/src/main/java/com/aps/core/controller/basicData/ApsWorkCalendarController.java new file mode 100644 index 0000000..b679767 --- /dev/null +++ b/aps-modules/aps-core/src/main/java/com/aps/core/controller/basicData/ApsWorkCalendarController.java @@ -0,0 +1,98 @@ +package com.aps.core.controller.basicData; + +import com.aps.common.core.utils.poi.ExcelUtil; +import com.aps.common.core.web.controller.BaseController; +import com.aps.common.core.web.domain.AjaxResult; +import com.aps.common.core.web.page.TableDataInfo; +import com.aps.common.log.annotation.Log; +import com.aps.common.log.enums.BusinessType; +import com.aps.common.security.annotation.RequiresPermissions; +import com.aps.core.domain.ApsWorkCalendar; +import com.aps.core.service.IApsWorkCalendarService; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * 鏃ュ巻绠$悊Controller + * + * @author hjy + * @date 2025-04-22 + */ +@RestController +@RequestMapping("/calendar") +public class ApsWorkCalendarController extends BaseController +{ + @Autowired + private IApsWorkCalendarService apsWorkCalendarService; + + /** + * 鏌ヨ鏃ュ巻绠$悊鍒楄〃 + */ + @RequiresPermissions("aps:calendar:list") + @GetMapping("/list") + public TableDataInfo list(ApsWorkCalendar apsWorkCalendar) + { + startPage(); + List<ApsWorkCalendar> list = apsWorkCalendarService.selectApsWorkCalendarList(apsWorkCalendar); + return getDataTable(list); + } + + /** + * 瀵煎嚭鏃ュ巻绠$悊鍒楄〃 + */ + @RequiresPermissions("core:calendar:export") + @Log(title = "鏃ュ巻绠$悊", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ApsWorkCalendar apsWorkCalendar) + { + List<ApsWorkCalendar> list = apsWorkCalendarService.selectApsWorkCalendarList(apsWorkCalendar); + ExcelUtil<ApsWorkCalendar> util = new ExcelUtil<ApsWorkCalendar>(ApsWorkCalendar.class); + util.exportExcel(response, list, "鏃ュ巻绠$悊鏁版嵁"); + } + + /** + * 鑾峰彇鏃ュ巻绠$悊璇︾粏淇℃伅 + */ + @RequiresPermissions("core:calendar:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(apsWorkCalendarService.selectApsWorkCalendarById(id)); + } + + /** + * 鏂板鏃ュ巻绠$悊 + */ + @RequiresPermissions("core:calendar:add") + @Log(title = "鏃ュ巻绠$悊", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ApsWorkCalendar apsWorkCalendar) + { + return toAjax(apsWorkCalendarService.insertApsWorkCalendar(apsWorkCalendar)); + } + + /** + * 淇敼鏃ュ巻绠$悊 + */ + @RequiresPermissions("core:calendar:edit") + @Log(title = "鏃ュ巻绠$悊", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ApsWorkCalendar apsWorkCalendar) + { + return toAjax(apsWorkCalendarService.updateApsWorkCalendar(apsWorkCalendar)); + } + + /** + * 鍒犻櫎鏃ュ巻绠$悊 + */ + @RequiresPermissions("core:calendar:remove") + @Log(title = "鏃ュ巻绠$悊", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(apsWorkCalendarService.deleteApsWorkCalendarByIds(ids)); + } +} diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsWorkCalendar.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsWorkCalendar.java new file mode 100644 index 0000000..5387157 --- /dev/null +++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsWorkCalendar.java @@ -0,0 +1,166 @@ +package com.aps.core.domain; + +import com.aps.common.core.annotation.Excel; +import com.aps.common.core.web.domain.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 鏃ュ巻绠$悊瀵硅薄 aps_work_calendar + * + * @author hjy + * @date 2025-04-22 + */ +public class ApsWorkCalendar extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** 鎻忚堪 */ + @Excel(name = "鎻忚堪") + private String description; + + /** 绫诲瀷锛屽懆宸ヤ綔/鑺傚亣鏃� */ + @Excel(name = "绫诲瀷锛屽懆宸ヤ綔/鑺傚亣鏃�") + private String type; + + /** 鏃ュ巻鐢熸晥鏃ユ湡 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "鏃ュ巻鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + private Date effectiveDate; + + /** 澶辨晥鏃ユ湡 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + private Date expiringDate; + + /** 鏃ュ巻鍐呭 */ + @Excel(name = "鏃ュ巻鍐呭") + private String content; + + /** 閫傜敤宸ュ巶 */ + @Excel(name = "閫傜敤宸ュ巶") + private String applicableFactory; + + /** 閫傜敤杞﹂棿 */ + @Excel(name = "閫傜敤杞﹂棿") + private String applicableWorkshop; + + /** 閫傜敤宸ュ簭 */ + @Excel(name = "閫傜敤宸ュ簭") + private String applicableProcess; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setDescription(String description) + { + this.description = description; + } + + public String getDescription() + { + return description; + } + + public void setType(String type) + { + this.type = type; + } + + public String getType() + { + return type; + } + + public void setEffectiveDate(Date effectiveDate) + { + this.effectiveDate = effectiveDate; + } + + public Date getEffectiveDate() + { + return effectiveDate; + } + + public void setExpiringDate(Date expiringDate) + { + this.expiringDate = expiringDate; + } + + public Date getExpiringDate() + { + return expiringDate; + } + + public void setContent(String content) + { + this.content = content; + } + + public String getContent() + { + return content; + } + + public void setApplicableFactory(String applicableFactory) + { + this.applicableFactory = applicableFactory; + } + + public String getApplicableFactory() + { + return applicableFactory; + } + + public void setApplicableWorkshop(String applicableWorkshop) + { + this.applicableWorkshop = applicableWorkshop; + } + + public String getApplicableWorkshop() + { + return applicableWorkshop; + } + + public void setApplicableProcess(String applicableProcess) + { + this.applicableProcess = applicableProcess; + } + + public String getApplicableProcess() + { + return applicableProcess; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("description", getDescription()) + .append("type", getType()) + .append("effectiveDate", getEffectiveDate()) + .append("expiringDate", getExpiringDate()) + .append("content", getContent()) + .append("applicableFactory", getApplicableFactory()) + .append("applicableWorkshop", getApplicableWorkshop()) + .append("applicableProcess", getApplicableProcess()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsWorkCalendarMapper.java b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsWorkCalendarMapper.java new file mode 100644 index 0000000..1d1e91a --- /dev/null +++ b/aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsWorkCalendarMapper.java @@ -0,0 +1,62 @@ +package com.aps.core.mapper; + +import com.aps.core.domain.ApsWorkCalendar; + +import java.util.List; + +/** + * 鏃ュ巻绠$悊Mapper鎺ュ彛 + * + * @author hjy + * @date 2025-04-22 + */ +public interface ApsWorkCalendarMapper +{ + /** + * 鏌ヨ鏃ュ巻绠$悊 + * + * @param id 鏃ュ巻绠$悊涓婚敭 + * @return 鏃ュ巻绠$悊 + */ + public ApsWorkCalendar selectApsWorkCalendarById(Long id); + + /** + * 鏌ヨ鏃ュ巻绠$悊鍒楄〃 + * + * @param apsWorkCalendar 鏃ュ巻绠$悊 + * @return 鏃ュ巻绠$悊闆嗗悎 + */ + public List<ApsWorkCalendar> selectApsWorkCalendarList(ApsWorkCalendar apsWorkCalendar); + + /** + * 鏂板鏃ュ巻绠$悊 + * + * @param apsWorkCalendar 鏃ュ巻绠$悊 + * @return 缁撴灉 + */ + public int insertApsWorkCalendar(ApsWorkCalendar apsWorkCalendar); + + /** + * 淇敼鏃ュ巻绠$悊 + * + * @param apsWorkCalendar 鏃ュ巻绠$悊 + * @return 缁撴灉 + */ + public int updateApsWorkCalendar(ApsWorkCalendar apsWorkCalendar); + + /** + * 鍒犻櫎鏃ュ巻绠$悊 + * + * @param id 鏃ュ巻绠$悊涓婚敭 + * @return 缁撴灉 + */ + public int deleteApsWorkCalendarById(Long id); + + /** + * 鎵归噺鍒犻櫎鏃ュ巻绠$悊 + * + * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎 + * @return 缁撴灉 + */ + public int deleteApsWorkCalendarByIds(Long[] ids); +} diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsWorkCalendarService.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsWorkCalendarService.java new file mode 100644 index 0000000..bd2cb96 --- /dev/null +++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/IApsWorkCalendarService.java @@ -0,0 +1,62 @@ +package com.aps.core.service; + +import com.aps.core.domain.ApsWorkCalendar; + +import java.util.List; + +/** + * 鏃ュ巻绠$悊Service鎺ュ彛 + * + * @author hjy + * @date 2025-04-22 + */ +public interface IApsWorkCalendarService +{ + /** + * 鏌ヨ鏃ュ巻绠$悊 + * + * @param id 鏃ュ巻绠$悊涓婚敭 + * @return 鏃ュ巻绠$悊 + */ + public ApsWorkCalendar selectApsWorkCalendarById(Long id); + + /** + * 鏌ヨ鏃ュ巻绠$悊鍒楄〃 + * + * @param apsWorkCalendar 鏃ュ巻绠$悊 + * @return 鏃ュ巻绠$悊闆嗗悎 + */ + public List<ApsWorkCalendar> selectApsWorkCalendarList(ApsWorkCalendar apsWorkCalendar); + + /** + * 鏂板鏃ュ巻绠$悊 + * + * @param apsWorkCalendar 鏃ュ巻绠$悊 + * @return 缁撴灉 + */ + public int insertApsWorkCalendar(ApsWorkCalendar apsWorkCalendar); + + /** + * 淇敼鏃ュ巻绠$悊 + * + * @param apsWorkCalendar 鏃ュ巻绠$悊 + * @return 缁撴灉 + */ + public int updateApsWorkCalendar(ApsWorkCalendar apsWorkCalendar); + + /** + * 鎵归噺鍒犻櫎鏃ュ巻绠$悊 + * + * @param ids 闇�瑕佸垹闄ょ殑鏃ュ巻绠$悊涓婚敭闆嗗悎 + * @return 缁撴灉 + */ + public int deleteApsWorkCalendarByIds(Long[] ids); + + /** + * 鍒犻櫎鏃ュ巻绠$悊淇℃伅 + * + * @param id 鏃ュ巻绠$悊涓婚敭 + * @return 缁撴灉 + */ + public int deleteApsWorkCalendarById(Long id); +} diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWorkCalendarServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWorkCalendarServiceImpl.java new file mode 100644 index 0000000..1a152b9 --- /dev/null +++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWorkCalendarServiceImpl.java @@ -0,0 +1,100 @@ +package com.aps.core.service.impl; + +import com.aps.common.core.utils.DateUtils; +import com.aps.common.security.utils.SecurityUtils; +import com.aps.core.domain.ApsWorkCalendar; +import com.aps.core.mapper.ApsWorkCalendarMapper; +import com.aps.core.service.IApsWorkCalendarService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 鏃ュ巻绠$悊Service涓氬姟灞傚鐞� + * + * @author hjy + * @date 2025-04-22 + */ +@Service +public class ApsWorkCalendarServiceImpl implements IApsWorkCalendarService +{ + @Autowired + private ApsWorkCalendarMapper apsWorkCalendarMapper; + + /** + * 鏌ヨ鏃ュ巻绠$悊 + * + * @param id 鏃ュ巻绠$悊涓婚敭 + * @return 鏃ュ巻绠$悊 + */ + @Override + public ApsWorkCalendar selectApsWorkCalendarById(Long id) + { + return apsWorkCalendarMapper.selectApsWorkCalendarById(id); + } + + /** + * 鏌ヨ鏃ュ巻绠$悊鍒楄〃 + * + * @param apsWorkCalendar 鏃ュ巻绠$悊 + * @return 鏃ュ巻绠$悊 + */ + @Override + public List<ApsWorkCalendar> selectApsWorkCalendarList(ApsWorkCalendar apsWorkCalendar) + { + return apsWorkCalendarMapper.selectApsWorkCalendarList(apsWorkCalendar); + } + + /** + * 鏂板鏃ュ巻绠$悊 + * + * @param apsWorkCalendar 鏃ュ巻绠$悊 + * @return 缁撴灉 + */ + @Override + public int insertApsWorkCalendar(ApsWorkCalendar apsWorkCalendar) + { + apsWorkCalendar.setCreateTime(DateUtils.getNowDate()); + apsWorkCalendar.setCreateBy(SecurityUtils.getUsername()); + return apsWorkCalendarMapper.insertApsWorkCalendar(apsWorkCalendar); + } + + /** + * 淇敼鏃ュ巻绠$悊 + * + * @param apsWorkCalendar 鏃ュ巻绠$悊 + * @return 缁撴灉 + */ + @Override + public int updateApsWorkCalendar(ApsWorkCalendar apsWorkCalendar) + { + apsWorkCalendar.setUpdateTime(DateUtils.getNowDate()); + apsWorkCalendar.setUpdateBy(SecurityUtils.getUsername()); + return apsWorkCalendarMapper.updateApsWorkCalendar(apsWorkCalendar); + } + + /** + * 鎵归噺鍒犻櫎鏃ュ巻绠$悊 + * + * @param ids 闇�瑕佸垹闄ょ殑鏃ュ巻绠$悊涓婚敭 + * @return 缁撴灉 + */ + @Override + public int deleteApsWorkCalendarByIds(Long[] ids) + { + return apsWorkCalendarMapper.deleteApsWorkCalendarByIds(ids); + } + + /** + * 鍒犻櫎鏃ュ巻绠$悊淇℃伅 + * + * @param id 鏃ュ巻绠$悊涓婚敭 + * @return 缁撴灉 + */ + @Override + public int deleteApsWorkCalendarById(Long id) + { + return apsWorkCalendarMapper.deleteApsWorkCalendarById(id); + } +} diff --git a/aps-modules/aps-core/src/main/resources/mapper/core/ApsWorkCalendarMapper.xml b/aps-modules/aps-core/src/main/resources/mapper/core/ApsWorkCalendarMapper.xml new file mode 100644 index 0000000..e491501 --- /dev/null +++ b/aps-modules/aps-core/src/main/resources/mapper/core/ApsWorkCalendarMapper.xml @@ -0,0 +1,109 @@ +<?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.aps.core.mapper.ApsWorkCalendarMapper"> + + <resultMap type="ApsWorkCalendar" id="ApsWorkCalendarResult"> + <result property="id" column="id" /> + <result property="description" column="description" /> + <result property="type" column="type" /> + <result property="effectiveDate" column="effective_date" /> + <result property="expiringDate" column="expiring_date" /> + <result property="content" column="content" /> + <result property="applicableFactory" column="applicable_factory" /> + <result property="applicableWorkshop" column="applicable_workshop" /> + <result property="applicableProcess" column="applicable_process" /> + <result property="createBy" column="create_by" /> + <result property="createTime" column="create_time" /> + <result property="updateBy" column="update_by" /> + <result property="updateTime" column="update_time" /> + </resultMap> + + <sql id="selectApsWorkCalendarVo"> + select id, description, type, effective_date, expiring_date, content, applicable_factory, applicable_workshop, applicable_process, create_by, create_time, update_by, update_time from aps_work_calendar + </sql> + + <select id="selectApsWorkCalendarList" parameterType="ApsWorkCalendar" resultMap="ApsWorkCalendarResult"> + <include refid="selectApsWorkCalendarVo"/> + <where> + <if test="description != null and description != ''"> and description like '%' || #{description} || '%'</if> + <if test="type != null and type != ''"> and type = #{type}</if> + <if test="effectiveDate != null "> and effective_date = #{effectiveDate}</if> + <if test="expiringDate != null "> and expiring_date = #{expiringDate}</if> + <if test="content != null and content != ''"> and content = #{content}</if> + <if test="applicableFactory != null and applicableFactory != ''"> and applicable_factory = #{applicableFactory}</if> + <if test="applicableWorkshop != null and applicableWorkshop != ''"> and applicable_workshop = #{applicableWorkshop}</if> + <if test="applicableProcess != null and applicableProcess != ''"> and applicable_process = #{applicableProcess}</if> + </where> + </select> + + <select id="selectApsWorkCalendarById" parameterType="Long" resultMap="ApsWorkCalendarResult"> + <include refid="selectApsWorkCalendarVo"/> + where id = #{id} + </select> + + <insert id="insertApsWorkCalendar" parameterType="ApsWorkCalendar"> + insert into aps_work_calendar + <trim prefix="(" suffix=")" suffixOverrides=","> + <if test="id != null">id,</if> + <if test="description != null">description,</if> + <if test="type != null">type,</if> + <if test="effectiveDate != null">effective_date,</if> + <if test="expiringDate != null">expiring_date,</if> + <if test="content != null">content,</if> + <if test="applicableFactory != null">applicable_factory,</if> + <if test="applicableWorkshop != null">applicable_workshop,</if> + <if test="applicableProcess != null">applicable_process,</if> + <if test="createBy != null">create_by,</if> + <if test="createTime != null">create_time,</if> + <if test="updateBy != null">update_by,</if> + <if test="updateTime != null">update_time,</if> + </trim> + <trim prefix="values (" suffix=")" suffixOverrides=","> + <if test="id != null">#{id},</if> + <if test="description != null">#{description},</if> + <if test="type != null">#{type},</if> + <if test="effectiveDate != null">#{effectiveDate},</if> + <if test="expiringDate != null">#{expiringDate},</if> + <if test="content != null">#{content},</if> + <if test="applicableFactory != null">#{applicableFactory},</if> + <if test="applicableWorkshop != null">#{applicableWorkshop},</if> + <if test="applicableProcess != null">#{applicableProcess},</if> + <if test="createBy != null">#{createBy},</if> + <if test="createTime != null">#{createTime},</if> + <if test="updateBy != null">#{updateBy},</if> + <if test="updateTime != null">#{updateTime},</if> + </trim> + </insert> + + <update id="updateApsWorkCalendar" parameterType="ApsWorkCalendar"> + update aps_work_calendar + <trim prefix="SET" suffixOverrides=","> + <if test="description != null">description = #{description},</if> + <if test="type != null">type = #{type},</if> + <if test="effectiveDate != null">effective_date = #{effectiveDate},</if> + <if test="expiringDate != null">expiring_date = #{expiringDate},</if> + <if test="content != null">content = #{content},</if> + <if test="applicableFactory != null">applicable_factory = #{applicableFactory},</if> + <if test="applicableWorkshop != null">applicable_workshop = #{applicableWorkshop},</if> + <if test="applicableProcess != null">applicable_process = #{applicableProcess},</if> + <if test="createBy != null">create_by = #{createBy},</if> + <if test="createTime != null">create_time = #{createTime},</if> + <if test="updateBy != null">update_by = #{updateBy},</if> + <if test="updateTime != null">update_time = #{updateTime},</if> + </trim> + where id = #{id} + </update> + + <delete id="deleteApsWorkCalendarById" parameterType="Long"> + delete from aps_work_calendar where id = #{id} + </delete> + + <delete id="deleteApsWorkCalendarByIds" parameterType="String"> + delete from aps_work_calendar where id in + <foreach item="id" collection="array" open="(" separator="," close=")"> + #{id} + </foreach> + </delete> +</mapper> \ No newline at end of file -- Gitblit v1.9.3