diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java index c40024e..b3383b3 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java @@ -1,11 +1,9 @@ package com.casic.missiles.controller.workbench; -import cn.hutool.core.lang.Assert; -import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.workbench.CalendarScheduleDeleteRequest; import com.casic.missiles.dto.workbench.CalendarScheduleListRequest; -import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.workbench.WorkbenchCalendarSchedule; @@ -19,7 +17,6 @@ import javax.validation.Valid; import java.util.List; import java.util.Map; -import java.util.Objects; /** *

@@ -48,7 +45,7 @@ @ApiOperation("日程新增(批量)") @PostMapping("/add") @ResponseBody - public ReturnDTO add(@RequestBody List calendarScheduleList, BindingResult bindingResult) { + public ReturnDTO add(@RequestBody @Valid List calendarScheduleList, BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } @@ -58,23 +55,20 @@ @ApiOperation("日程编辑") @PostMapping("/update") @ResponseBody - public ReturnDTO update(@RequestBody WorkbenchCalendarSchedule calendarSchedule, BindingResult bindingResult) { + public ReturnDTO update(@RequestBody @Valid List calendarScheduleList, BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - Assert.isFalse(Objects.isNull(calendarSchedule.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return calendarScheduleService.updateCalendarSchedule(calendarSchedule); + return calendarScheduleService.updateCalendarSchedule(calendarScheduleList); } @ApiOperation("日程删除") @PostMapping("/delete") @ResponseBody - public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return calendarScheduleService.deleteCalendarSchedule(idDTO.getId()); + public ReturnDTO delete(@RequestBody @Valid CalendarScheduleDeleteRequest request, BindingResult bindingResult) { + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + return calendarScheduleService.deleteCalendarSchedule(request); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java index c40024e..b3383b3 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java @@ -1,11 +1,9 @@ package com.casic.missiles.controller.workbench; -import cn.hutool.core.lang.Assert; -import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.workbench.CalendarScheduleDeleteRequest; import com.casic.missiles.dto.workbench.CalendarScheduleListRequest; -import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.workbench.WorkbenchCalendarSchedule; @@ -19,7 +17,6 @@ import javax.validation.Valid; import java.util.List; import java.util.Map; -import java.util.Objects; /** *

@@ -48,7 +45,7 @@ @ApiOperation("日程新增(批量)") @PostMapping("/add") @ResponseBody - public ReturnDTO add(@RequestBody List calendarScheduleList, BindingResult bindingResult) { + public ReturnDTO add(@RequestBody @Valid List calendarScheduleList, BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } @@ -58,23 +55,20 @@ @ApiOperation("日程编辑") @PostMapping("/update") @ResponseBody - public ReturnDTO update(@RequestBody WorkbenchCalendarSchedule calendarSchedule, BindingResult bindingResult) { + public ReturnDTO update(@RequestBody @Valid List calendarScheduleList, BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - Assert.isFalse(Objects.isNull(calendarSchedule.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return calendarScheduleService.updateCalendarSchedule(calendarSchedule); + return calendarScheduleService.updateCalendarSchedule(calendarScheduleList); } @ApiOperation("日程删除") @PostMapping("/delete") @ResponseBody - public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return calendarScheduleService.deleteCalendarSchedule(idDTO.getId()); + public ReturnDTO delete(@RequestBody @Valid CalendarScheduleDeleteRequest request, BindingResult bindingResult) { + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + return calendarScheduleService.deleteCalendarSchedule(request); } } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java new file mode 100644 index 0000000..f663e91 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java @@ -0,0 +1,25 @@ +package com.casic.missiles.dto.workbench; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + +/** + * @Description: + * @Author: wangpeng + * @Date: 2023/6/16 9:42 + */ +@ApiModel +@Data +public class CalendarScheduleDeleteRequest { + @NotNull(message = "登录用户id不能为空") + @ApiModelProperty(value = "登录用户id", dataType = "Long") + private Long userId; + + @ApiModelProperty(value = "日期(格式:2023-06-16)", dataType = "String") + @NotEmpty(message = "日期不能为空") + private String scheduleDate; +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java index c40024e..b3383b3 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java @@ -1,11 +1,9 @@ package com.casic.missiles.controller.workbench; -import cn.hutool.core.lang.Assert; -import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.workbench.CalendarScheduleDeleteRequest; import com.casic.missiles.dto.workbench.CalendarScheduleListRequest; -import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.workbench.WorkbenchCalendarSchedule; @@ -19,7 +17,6 @@ import javax.validation.Valid; import java.util.List; import java.util.Map; -import java.util.Objects; /** *

@@ -48,7 +45,7 @@ @ApiOperation("日程新增(批量)") @PostMapping("/add") @ResponseBody - public ReturnDTO add(@RequestBody List calendarScheduleList, BindingResult bindingResult) { + public ReturnDTO add(@RequestBody @Valid List calendarScheduleList, BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } @@ -58,23 +55,20 @@ @ApiOperation("日程编辑") @PostMapping("/update") @ResponseBody - public ReturnDTO update(@RequestBody WorkbenchCalendarSchedule calendarSchedule, BindingResult bindingResult) { + public ReturnDTO update(@RequestBody @Valid List calendarScheduleList, BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - Assert.isFalse(Objects.isNull(calendarSchedule.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return calendarScheduleService.updateCalendarSchedule(calendarSchedule); + return calendarScheduleService.updateCalendarSchedule(calendarScheduleList); } @ApiOperation("日程删除") @PostMapping("/delete") @ResponseBody - public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return calendarScheduleService.deleteCalendarSchedule(idDTO.getId()); + public ReturnDTO delete(@RequestBody @Valid CalendarScheduleDeleteRequest request, BindingResult bindingResult) { + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + return calendarScheduleService.deleteCalendarSchedule(request); } } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java new file mode 100644 index 0000000..f663e91 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java @@ -0,0 +1,25 @@ +package com.casic.missiles.dto.workbench; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + +/** + * @Description: + * @Author: wangpeng + * @Date: 2023/6/16 9:42 + */ +@ApiModel +@Data +public class CalendarScheduleDeleteRequest { + @NotNull(message = "登录用户id不能为空") + @ApiModelProperty(value = "登录用户id", dataType = "Long") + private Long userId; + + @ApiModelProperty(value = "日期(格式:2023-06-16)", dataType = "String") + @NotEmpty(message = "日期不能为空") + private String scheduleDate; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java index 19c3fab..22a7041 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java @@ -47,7 +47,6 @@ * 日程安排事宜 */ @ApiModelProperty(value = "日程安排", dataType = "String") - @NotEmpty(message = "日程安排不能为空") @TableField("schedule_matters") private String scheduleMatters; diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java index c40024e..b3383b3 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java @@ -1,11 +1,9 @@ package com.casic.missiles.controller.workbench; -import cn.hutool.core.lang.Assert; -import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.workbench.CalendarScheduleDeleteRequest; import com.casic.missiles.dto.workbench.CalendarScheduleListRequest; -import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.workbench.WorkbenchCalendarSchedule; @@ -19,7 +17,6 @@ import javax.validation.Valid; import java.util.List; import java.util.Map; -import java.util.Objects; /** *

@@ -48,7 +45,7 @@ @ApiOperation("日程新增(批量)") @PostMapping("/add") @ResponseBody - public ReturnDTO add(@RequestBody List calendarScheduleList, BindingResult bindingResult) { + public ReturnDTO add(@RequestBody @Valid List calendarScheduleList, BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } @@ -58,23 +55,20 @@ @ApiOperation("日程编辑") @PostMapping("/update") @ResponseBody - public ReturnDTO update(@RequestBody WorkbenchCalendarSchedule calendarSchedule, BindingResult bindingResult) { + public ReturnDTO update(@RequestBody @Valid List calendarScheduleList, BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - Assert.isFalse(Objects.isNull(calendarSchedule.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return calendarScheduleService.updateCalendarSchedule(calendarSchedule); + return calendarScheduleService.updateCalendarSchedule(calendarScheduleList); } @ApiOperation("日程删除") @PostMapping("/delete") @ResponseBody - public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return calendarScheduleService.deleteCalendarSchedule(idDTO.getId()); + public ReturnDTO delete(@RequestBody @Valid CalendarScheduleDeleteRequest request, BindingResult bindingResult) { + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + return calendarScheduleService.deleteCalendarSchedule(request); } } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java new file mode 100644 index 0000000..f663e91 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java @@ -0,0 +1,25 @@ +package com.casic.missiles.dto.workbench; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + +/** + * @Description: + * @Author: wangpeng + * @Date: 2023/6/16 9:42 + */ +@ApiModel +@Data +public class CalendarScheduleDeleteRequest { + @NotNull(message = "登录用户id不能为空") + @ApiModelProperty(value = "登录用户id", dataType = "Long") + private Long userId; + + @ApiModelProperty(value = "日期(格式:2023-06-16)", dataType = "String") + @NotEmpty(message = "日期不能为空") + private String scheduleDate; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java index 19c3fab..22a7041 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java @@ -47,7 +47,6 @@ * 日程安排事宜 */ @ApiModelProperty(value = "日程安排", dataType = "String") - @NotEmpty(message = "日程安排不能为空") @TableField("schedule_matters") private String scheduleMatters; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/WorkbenchCalendarScheduleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/WorkbenchCalendarScheduleServiceImpl.java index 48a14ac..c01f4dc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/WorkbenchCalendarScheduleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/WorkbenchCalendarScheduleServiceImpl.java @@ -1,14 +1,17 @@ package com.casic.missiles.service.Impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.workbench.CalendarScheduleDeleteRequest; import com.casic.missiles.dto.workbench.CalendarScheduleListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.workbench.WorkbenchCalendarScheduleMapper; import com.casic.missiles.model.workbench.WorkbenchCalendarSchedule; import com.casic.missiles.service.workbench.IWorkbenchCalendarScheduleService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -54,16 +57,29 @@ } @Override - public ReturnDTO updateCalendarSchedule(WorkbenchCalendarSchedule calendarSchedule) { - if(calendarScheduleMapper.updateById(calendarSchedule) > 0) { + public ReturnDTO updateCalendarSchedule(List calendarScheduleList) { + Long userId = calendarScheduleList.get(0).getUserId(); + String scheduleDate = calendarScheduleList.get(0).getScheduleDate(); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("user_id", userId); + wrapper.eq("schedule_date", scheduleDate); + calendarScheduleMapper.delete(wrapper); + if(StringUtils.isEmpty(calendarScheduleList.get(0).getScheduleMatters())){ + return ReturnUtil.success(); + } + if (this.saveBatch(calendarScheduleList)) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @Override - public ReturnDTO deleteCalendarSchedule(Long id) { - if(calendarScheduleMapper.deleteById(id) > 0){ + public ReturnDTO deleteCalendarSchedule(CalendarScheduleDeleteRequest request) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("user_id", request.getUserId()); + wrapper.eq("schedule_date", request.getScheduleDate()); + int delete = calendarScheduleMapper.delete(wrapper); + if(delete > 0){ return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java index c40024e..b3383b3 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/workbench/WorkbenchCalendarScheduleController.java @@ -1,11 +1,9 @@ package com.casic.missiles.controller.workbench; -import cn.hutool.core.lang.Assert; -import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.workbench.CalendarScheduleDeleteRequest; import com.casic.missiles.dto.workbench.CalendarScheduleListRequest; -import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.workbench.WorkbenchCalendarSchedule; @@ -19,7 +17,6 @@ import javax.validation.Valid; import java.util.List; import java.util.Map; -import java.util.Objects; /** *

@@ -48,7 +45,7 @@ @ApiOperation("日程新增(批量)") @PostMapping("/add") @ResponseBody - public ReturnDTO add(@RequestBody List calendarScheduleList, BindingResult bindingResult) { + public ReturnDTO add(@RequestBody @Valid List calendarScheduleList, BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } @@ -58,23 +55,20 @@ @ApiOperation("日程编辑") @PostMapping("/update") @ResponseBody - public ReturnDTO update(@RequestBody WorkbenchCalendarSchedule calendarSchedule, BindingResult bindingResult) { + public ReturnDTO update(@RequestBody @Valid List calendarScheduleList, BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - Assert.isFalse(Objects.isNull(calendarSchedule.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return calendarScheduleService.updateCalendarSchedule(calendarSchedule); + return calendarScheduleService.updateCalendarSchedule(calendarScheduleList); } @ApiOperation("日程删除") @PostMapping("/delete") @ResponseBody - public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return calendarScheduleService.deleteCalendarSchedule(idDTO.getId()); + public ReturnDTO delete(@RequestBody @Valid CalendarScheduleDeleteRequest request, BindingResult bindingResult) { + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + return calendarScheduleService.deleteCalendarSchedule(request); } } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java new file mode 100644 index 0000000..f663e91 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/workbench/CalendarScheduleDeleteRequest.java @@ -0,0 +1,25 @@ +package com.casic.missiles.dto.workbench; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + +/** + * @Description: + * @Author: wangpeng + * @Date: 2023/6/16 9:42 + */ +@ApiModel +@Data +public class CalendarScheduleDeleteRequest { + @NotNull(message = "登录用户id不能为空") + @ApiModelProperty(value = "登录用户id", dataType = "Long") + private Long userId; + + @ApiModelProperty(value = "日期(格式:2023-06-16)", dataType = "String") + @NotEmpty(message = "日期不能为空") + private String scheduleDate; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java index 19c3fab..22a7041 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchCalendarSchedule.java @@ -47,7 +47,6 @@ * 日程安排事宜 */ @ApiModelProperty(value = "日程安排", dataType = "String") - @NotEmpty(message = "日程安排不能为空") @TableField("schedule_matters") private String scheduleMatters; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/WorkbenchCalendarScheduleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/WorkbenchCalendarScheduleServiceImpl.java index 48a14ac..c01f4dc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/WorkbenchCalendarScheduleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/WorkbenchCalendarScheduleServiceImpl.java @@ -1,14 +1,17 @@ package com.casic.missiles.service.Impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.workbench.CalendarScheduleDeleteRequest; import com.casic.missiles.dto.workbench.CalendarScheduleListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.workbench.WorkbenchCalendarScheduleMapper; import com.casic.missiles.model.workbench.WorkbenchCalendarSchedule; import com.casic.missiles.service.workbench.IWorkbenchCalendarScheduleService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -54,16 +57,29 @@ } @Override - public ReturnDTO updateCalendarSchedule(WorkbenchCalendarSchedule calendarSchedule) { - if(calendarScheduleMapper.updateById(calendarSchedule) > 0) { + public ReturnDTO updateCalendarSchedule(List calendarScheduleList) { + Long userId = calendarScheduleList.get(0).getUserId(); + String scheduleDate = calendarScheduleList.get(0).getScheduleDate(); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("user_id", userId); + wrapper.eq("schedule_date", scheduleDate); + calendarScheduleMapper.delete(wrapper); + if(StringUtils.isEmpty(calendarScheduleList.get(0).getScheduleMatters())){ + return ReturnUtil.success(); + } + if (this.saveBatch(calendarScheduleList)) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @Override - public ReturnDTO deleteCalendarSchedule(Long id) { - if(calendarScheduleMapper.deleteById(id) > 0){ + public ReturnDTO deleteCalendarSchedule(CalendarScheduleDeleteRequest request) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("user_id", request.getUserId()); + wrapper.eq("schedule_date", request.getScheduleDate()); + int delete = calendarScheduleMapper.delete(wrapper); + if(delete > 0){ return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/workbench/IWorkbenchCalendarScheduleService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/workbench/IWorkbenchCalendarScheduleService.java index b97e877..cf61bf5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/workbench/IWorkbenchCalendarScheduleService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/workbench/IWorkbenchCalendarScheduleService.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.dto.workbench.CalendarScheduleDeleteRequest; import com.casic.missiles.dto.workbench.CalendarScheduleListRequest; import com.casic.missiles.model.workbench.WorkbenchCalendarSchedule; @@ -22,7 +23,7 @@ ReturnDTO calendarScheduleAdd(List calendarScheduleList); - ReturnDTO updateCalendarSchedule(WorkbenchCalendarSchedule calendarSchedule); + ReturnDTO updateCalendarSchedule(List calendarScheduleList); - ReturnDTO deleteCalendarSchedule(Long id); + ReturnDTO deleteCalendarSchedule(CalendarScheduleDeleteRequest request); }