From 1d2e7d5e3a24f3b64fb7da0b9554581eaa30d702 Mon Sep 17 00:00:00 2001 From: "JinLu.Yin" <411641505@qq.com> Date: Wed, 8 Jun 2022 20:16:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=8E=92=E7=8F=AD=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ktg/common/constant/UserConstants.java | 6 ++ .../mes/cal/controller/CalPlanController.java | 22 ++++++- .../cal/controller/CalShiftController.java | 11 ---- .../java/com/ktg/mes/cal/domain/CalPlan.java | 13 ++++- .../java/com/ktg/mes/cal/domain/CalTeam.java | 36 +++++++----- .../ktg/mes/cal/mapper/CalPlanTeamMapper.java | 2 + .../ktg/mes/cal/mapper/CalShiftMapper.java | 2 + .../mes/cal/service/ICalPlanTeamService.java | 2 + .../ktg/mes/cal/service/ICalShiftService.java | 6 ++ .../service/impl/CalPlanTeamServiceImpl.java | 5 ++ .../cal/service/impl/CalShiftServiceImpl.java | 57 +++++++++++++++++++ .../resources/mapper/cal/CalPlanMapper.xml | 7 ++- .../mapper/cal/CalPlanTeamMapper.xml | 5 ++ .../resources/mapper/cal/CalShiftMapper.xml | 4 ++ .../resources/mapper/cal/CalTeamMapper.xml | 7 ++- 15 files changed, 155 insertions(+), 30 deletions(-) diff --git a/ktg-common/src/main/java/com/ktg/common/constant/UserConstants.java b/ktg-common/src/main/java/com/ktg/common/constant/UserConstants.java index ff7af35..f219023 100644 --- a/ktg-common/src/main/java/com/ktg/common/constant/UserConstants.java +++ b/ktg-common/src/main/java/com/ktg/common/constant/UserConstants.java @@ -131,8 +131,14 @@ public class UserConstants public static final String TRANSACTION_TYPE_MISC_RECPT = "MISC_RECPT"; //杂项入库 public static final String TRANSACTION_TYPE_MISC_ISSUE = "MISC_ISSUE"; //杂项出库 + /** + * 轮班方式 + */ public static final String CAL_SHIFT_TYPE_SINGLE="SINGLE"; public static final String CAL_SHIFT_TYPE_TWO="SHIFT_TWO"; public static final String CAL_SHIFT_TYPE_THREE="SHIFT_THREE"; + public static final String CAL_SHIFT_NAME_DAY="白班"; + public static final String CAL_SHIFT_NAME_NIGHT="夜班"; + public static final String CAL_SHIFT_NAME_MID="中班"; } diff --git a/ktg-mes/src/main/java/com/ktg/mes/cal/controller/CalPlanController.java b/ktg-mes/src/main/java/com/ktg/mes/cal/controller/CalPlanController.java index 74640ac..8f3defd 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/cal/controller/CalPlanController.java +++ b/ktg-mes/src/main/java/com/ktg/mes/cal/controller/CalPlanController.java @@ -2,8 +2,12 @@ package com.ktg.mes.cal.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; + +import com.ktg.mes.cal.service.ICalPlanTeamService; +import com.ktg.mes.cal.service.ICalShiftService; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; @@ -34,6 +38,12 @@ public class CalPlanController extends BaseController @Autowired private ICalPlanService calPlanService; + @Autowired + private ICalShiftService calShiftService; + + @Autowired + private ICalPlanTeamService calPlanTeamService; + /** * 查询排班计划列表 */ @@ -74,10 +84,14 @@ public class CalPlanController extends BaseController */ @PreAuthorize("@ss.hasPermi('mes:cal:calplan:add')") @Log(title = "排班计划", businessType = BusinessType.INSERT) + @Transactional @PostMapping public AjaxResult add(@RequestBody CalPlan calPlan) { - return toAjax(calPlanService.insertCalPlan(calPlan)); + int ret = calPlanService.insertCalPlan(calPlan); + //根据选择的轮班方式生成默认的班次 + calShiftService.addDefaultShift(calPlan.getPlanId(),calPlan.getShiftType()); + return toAjax(ret); } /** @@ -96,9 +110,15 @@ public class CalPlanController extends BaseController */ @PreAuthorize("@ss.hasPermi('mes:cal:calplan:remove')") @Log(title = "排班计划", businessType = BusinessType.DELETE) + @Transactional @DeleteMapping("/{planIds}") public AjaxResult remove(@PathVariable Long[] planIds) { + for (Long planId:planIds + ) { + calShiftService.deleteByPlanId(planId); + calPlanTeamService.deleteByPlanId(planId); + } return toAjax(calPlanService.deleteCalPlanByPlanIds(planIds)); } } diff --git a/ktg-mes/src/main/java/com/ktg/mes/cal/controller/CalShiftController.java b/ktg-mes/src/main/java/com/ktg/mes/cal/controller/CalShiftController.java index d3863c9..bbb3079 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/cal/controller/CalShiftController.java +++ b/ktg-mes/src/main/java/com/ktg/mes/cal/controller/CalShiftController.java @@ -107,17 +107,6 @@ public class CalShiftController extends BaseController @PutMapping public AjaxResult edit(@RequestBody CalShift calShift) { - int count = calShiftService.checkShiftCount(calShift.getPlanId()); - CalPlan plan = calPlanService.selectCalPlanByPlanId(calShift.getPlanId()); - if(UserConstants.CAL_SHIFT_TYPE_SINGLE.equals(plan.getShiftType())&&count>0){ - return AjaxResult.error("轮班方式为 白班 时只能有一个班次!"); - } - if(UserConstants.CAL_SHIFT_TYPE_TWO.equals(plan.getShiftType())&&count>1){ - return AjaxResult.error("轮班方式为 白班 时只能有两个班次!"); - } - if(UserConstants.CAL_SHIFT_TYPE_THREE.equals(plan.getShiftType())&&count>2){ - return AjaxResult.error("轮班方式为 白班 时只能有三个班次!"); - } return toAjax(calShiftService.updateCalShift(calShift)); } diff --git a/ktg-mes/src/main/java/com/ktg/mes/cal/domain/CalPlan.java b/ktg-mes/src/main/java/com/ktg/mes/cal/domain/CalPlan.java index 88d1bfb..cdf2603 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/cal/domain/CalPlan.java +++ b/ktg-mes/src/main/java/com/ktg/mes/cal/domain/CalPlan.java @@ -28,6 +28,8 @@ public class CalPlan extends BaseEntity @Excel(name = "计划名称") private String planName; + private String calendarType; + /** 开始日期 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "开始日期", width = 30, dateFormat = "yyyy-MM-dd") @@ -94,7 +96,15 @@ public class CalPlan extends BaseEntity this.startDate = startDate; } - public Date getStartDate() + public String getCalendarType() { + return calendarType; + } + + public void setCalendarType(String calendarType) { + this.calendarType = calendarType; + } + + public Date getStartDate() { return startDate; } @@ -179,6 +189,7 @@ public class CalPlan extends BaseEntity .append("planName", getPlanName()) .append("startDate", getStartDate()) .append("endDate", getEndDate()) + .append("calendarType", getCalendarType()) .append("shiftType", getShiftType()) .append("shiftMethod", getShiftMethod()) .append("shiftCount", getShiftCount()) diff --git a/ktg-mes/src/main/java/com/ktg/mes/cal/domain/CalTeam.java b/ktg-mes/src/main/java/com/ktg/mes/cal/domain/CalTeam.java index 68258ef..a5a10f4 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/cal/domain/CalTeam.java +++ b/ktg-mes/src/main/java/com/ktg/mes/cal/domain/CalTeam.java @@ -26,6 +26,8 @@ public class CalTeam extends BaseEntity @Excel(name = "班组名称") private String teamName; + private String calendarType; + /** 预留字段1 */ private String attr1; @@ -70,7 +72,15 @@ public class CalTeam extends BaseEntity this.attr1 = attr1; } - public String getAttr1() + public String getCalendarType() { + return calendarType; + } + + public void setCalendarType(String calendarType) { + this.calendarType = calendarType; + } + + public String getAttr1() { return attr1; } @@ -104,19 +114,15 @@ public class CalTeam extends BaseEntity @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("teamId", getTeamId()) - .append("teamCode", getTeamCode()) - .append("teamName", getTeamName()) - .append("remark", getRemark()) - .append("attr1", getAttr1()) - .append("attr2", getAttr2()) - .append("attr3", getAttr3()) - .append("attr4", getAttr4()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .toString(); + return "CalTeam{" + + "teamId=" + teamId + + ", teamCode='" + teamCode + '\'' + + ", teamName='" + teamName + '\'' + + ", calendarType='" + calendarType + '\'' + + ", attr1='" + attr1 + '\'' + + ", attr2='" + attr2 + '\'' + + ", attr3=" + attr3 + + ", attr4=" + attr4 + + '}'; } } diff --git a/ktg-mes/src/main/java/com/ktg/mes/cal/mapper/CalPlanTeamMapper.java b/ktg-mes/src/main/java/com/ktg/mes/cal/mapper/CalPlanTeamMapper.java index eaa55a9..1020eaa 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/cal/mapper/CalPlanTeamMapper.java +++ b/ktg-mes/src/main/java/com/ktg/mes/cal/mapper/CalPlanTeamMapper.java @@ -60,4 +60,6 @@ public interface CalPlanTeamMapper * @return 结果 */ public int deleteCalPlanTeamByRecordIds(Long[] recordIds); + + public int deleteByPlanId(Long planId); } diff --git a/ktg-mes/src/main/java/com/ktg/mes/cal/mapper/CalShiftMapper.java b/ktg-mes/src/main/java/com/ktg/mes/cal/mapper/CalShiftMapper.java index c83573b..aa506c7 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/cal/mapper/CalShiftMapper.java +++ b/ktg-mes/src/main/java/com/ktg/mes/cal/mapper/CalShiftMapper.java @@ -61,4 +61,6 @@ public interface CalShiftMapper * @return 结果 */ public int deleteCalShiftByShiftIds(Long[] shiftIds); + + public int deleteByPlanId(Long planId); } diff --git a/ktg-mes/src/main/java/com/ktg/mes/cal/service/ICalPlanTeamService.java b/ktg-mes/src/main/java/com/ktg/mes/cal/service/ICalPlanTeamService.java index a2e58ff..54f9886 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/cal/service/ICalPlanTeamService.java +++ b/ktg-mes/src/main/java/com/ktg/mes/cal/service/ICalPlanTeamService.java @@ -60,4 +60,6 @@ public interface ICalPlanTeamService * @return 结果 */ public int deleteCalPlanTeamByRecordId(Long recordId); + + public int deleteByPlanId(Long plandId); } diff --git a/ktg-mes/src/main/java/com/ktg/mes/cal/service/ICalShiftService.java b/ktg-mes/src/main/java/com/ktg/mes/cal/service/ICalShiftService.java index 3bb3b61..d031f22 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/cal/service/ICalShiftService.java +++ b/ktg-mes/src/main/java/com/ktg/mes/cal/service/ICalShiftService.java @@ -29,6 +29,9 @@ public interface ICalShiftService public int checkShiftCount(Long planId); + + public void addDefaultShift(Long plandId,String shiftType); + /** * 新增计划班次 * @@ -60,4 +63,7 @@ public interface ICalShiftService * @return 结果 */ public int deleteCalShiftByShiftId(Long shiftId); + + public int deleteByPlanId(Long planId); + } diff --git a/ktg-mes/src/main/java/com/ktg/mes/cal/service/impl/CalPlanTeamServiceImpl.java b/ktg-mes/src/main/java/com/ktg/mes/cal/service/impl/CalPlanTeamServiceImpl.java index f3ea52b..637b345 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/cal/service/impl/CalPlanTeamServiceImpl.java +++ b/ktg-mes/src/main/java/com/ktg/mes/cal/service/impl/CalPlanTeamServiceImpl.java @@ -106,4 +106,9 @@ public class CalPlanTeamServiceImpl implements ICalPlanTeamService { return calPlanTeamMapper.deleteCalPlanTeamByRecordId(recordId); } + + @Override + public int deleteByPlanId(Long plandId) { + return calPlanTeamMapper.deleteByPlanId(plandId); + } } diff --git a/ktg-mes/src/main/java/com/ktg/mes/cal/service/impl/CalShiftServiceImpl.java b/ktg-mes/src/main/java/com/ktg/mes/cal/service/impl/CalShiftServiceImpl.java index 19d0ffc..e4b6989 100644 --- a/ktg-mes/src/main/java/com/ktg/mes/cal/service/impl/CalShiftServiceImpl.java +++ b/ktg-mes/src/main/java/com/ktg/mes/cal/service/impl/CalShiftServiceImpl.java @@ -1,6 +1,8 @@ package com.ktg.mes.cal.service.impl; import java.util.List; + +import com.ktg.common.constant.UserConstants; import com.ktg.common.utils.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -49,6 +51,56 @@ public class CalShiftServiceImpl implements ICalShiftService return calShiftMapper.checkShiftCount(planId); } + @Override + public void addDefaultShift(Long plandId,String shiftType) { + if(UserConstants.CAL_SHIFT_TYPE_SINGLE.equals(shiftType)){ + CalShift shift = new CalShift(); + shift.setPlanId(plandId); + shift.setShiftName(UserConstants.CAL_SHIFT_NAME_DAY); + shift.setOrderNum(1); + shift.setStartTime("8:00"); + shift.setEndTime("18:00"); + calShiftMapper.insertCalShift(shift); + }else if(UserConstants.CAL_SHIFT_TYPE_TWO.equals(shiftType)){ + CalShift shiftDay = new CalShift(); + shiftDay.setPlanId(plandId); + shiftDay.setShiftName(UserConstants.CAL_SHIFT_NAME_DAY); + shiftDay.setOrderNum(1); + shiftDay.setStartTime("8:00"); + shiftDay.setEndTime("20:00"); + CalShift shiftNight = new CalShift(); + shiftNight.setPlanId(plandId); + shiftNight.setShiftName(UserConstants.CAL_SHIFT_NAME_NIGHT); + shiftNight.setOrderNum(2); + shiftNight.setStartTime("20:00"); + shiftNight.setEndTime("8:00"); + calShiftMapper.insertCalShift(shiftDay); + calShiftMapper.insertCalShift(shiftNight); + }else { + CalShift shiftDay = new CalShift(); + shiftDay.setPlanId(plandId); + shiftDay.setShiftName(UserConstants.CAL_SHIFT_NAME_DAY); + shiftDay.setOrderNum(1); + shiftDay.setStartTime("8:00"); + shiftDay.setEndTime("16:00"); + CalShift shiftMid = new CalShift(); + shiftMid.setPlanId(plandId); + shiftMid.setShiftName(UserConstants.CAL_SHIFT_NAME_MID); + shiftMid.setOrderNum(2); + shiftMid.setStartTime("16:00"); + shiftMid.setEndTime("24:00"); + CalShift shiftNight = new CalShift(); + shiftNight.setPlanId(plandId); + shiftNight.setShiftName(UserConstants.CAL_SHIFT_NAME_NIGHT); + shiftNight.setOrderNum(3); + shiftNight.setStartTime("00:00"); + shiftNight.setEndTime("8:00"); + calShiftMapper.insertCalShift(shiftDay); + calShiftMapper.insertCalShift(shiftMid); + calShiftMapper.insertCalShift(shiftNight); + } + } + /** * 新增计划班次 * @@ -98,4 +150,9 @@ public class CalShiftServiceImpl implements ICalShiftService { return calShiftMapper.deleteCalShiftByShiftId(shiftId); } + + @Override + public int deleteByPlanId(Long planId) { + return calShiftMapper.deleteByPlanId(planId); + } } diff --git a/ktg-mes/src/main/resources/mapper/cal/CalPlanMapper.xml b/ktg-mes/src/main/resources/mapper/cal/CalPlanMapper.xml index 8a4f7d1..7f3968a 100644 --- a/ktg-mes/src/main/resources/mapper/cal/CalPlanMapper.xml +++ b/ktg-mes/src/main/resources/mapper/cal/CalPlanMapper.xml @@ -8,6 +8,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -25,7 +26,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select plan_id, plan_code, plan_name, start_date, end_date, shift_type, shift_method, shift_count, remark, attr1, attr2, attr3, attr4, create_by, create_time, update_by, update_time from cal_plan + select plan_id, plan_code, plan_name,calendar_type, start_date, end_date, shift_type, shift_method, shift_count, remark, attr1, attr2, attr3, attr4, create_by, create_time, update_by, update_time from cal_plan and team_code = #{teamCode} + and calendar_type = #{calendarType} and team_name like concat('%', #{teamName}, '%') @@ -41,6 +43,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" team_code, team_name, + calendar_type, remark, attr1, attr2, @@ -54,6 +57,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{teamCode}, #{teamName}, + #{calendarType}, #{remark}, #{attr1}, #{attr2}, @@ -71,6 +75,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" team_code = #{teamCode}, team_name = #{teamName}, + calendar_type = #{calendarType}, remark = #{remark}, attr1 = #{attr1}, attr2 = #{attr2},