瀏覽代碼

1、会议管理:开始会议接口

dongpo 1 年之前
父節點
當前提交
f6dc3f9665

+ 3 - 2
yudao-module-bpm/yudao-module-bpm-api/src/main/java/cn/iocoder/yudao/module/bpm/enums/ErrorCodeConstants.java

@@ -139,6 +139,7 @@ public interface ErrorCodeConstants {
     ErrorCode OA_MEETING_RESERVE_START_TIME_MORE_THAN_NOW = new ErrorCode(1_009_018_013, "会议室预定开始时间不能早于当前时间");
     ErrorCode OA_MEETING_RESERVE_START_TIME_MORE_THAN_FIVE_MINUTES = new ErrorCode(1_009_018_014, "会议开始前5分钟后不能修改");
     ErrorCode OA_MEETING_RESERVE_STATUS_NOT_WAITING_CAN_NOT_CANCEL = new ErrorCode(1_009_018_015, "会议未开始的才能取消");
-    ErrorCode OA_MEETING_RESERVE_STATUS_NOT_IN_PROGRESS_CAN_NOT_ENDED = new ErrorCode(1_009_018_016, "会议进行中的才能结束");
-    ErrorCode OA_MEETING_RESERVE_TIME_OCCUPIED = new ErrorCode(1_009_018_017, "该时间段会议室已被占用");
+    ErrorCode OA_MEETING_RESERVE_STATUS_NOT_WAITING_CAN_NOT_START = new ErrorCode(1_009_018_016, "会议未开始的才能开始");
+    ErrorCode OA_MEETING_RESERVE_STATUS_NOT_IN_PROGRESS_CAN_NOT_ENDED = new ErrorCode(1_009_018_017, "会议进行中的才能结束");
+    ErrorCode OA_MEETING_RESERVE_TIME_OCCUPIED = new ErrorCode(1_009_018_018, "该时间段会议室已被占用");
 }

+ 9 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/controller/admin/meeting/reserve/OaMeetingReserveController.java

@@ -245,6 +245,15 @@ public class OaMeetingReserveController {
         return success(true);
     }
 
+    @GetMapping("/start")
+    @Operation(summary = "开始会议室预定管理信息")
+    @Parameter(name = "id", description = "编号", required = true)
+    // @PreAuthorize("@ss.hasPermission('bpm:oa-meeting-reserve:start')")
+    public CommonResult<Boolean> startOaMeetingReserve(@RequestParam("id") Long id) {
+        oaMeetingReserveService.startOaMeetingReserve(id);
+        return success(true);
+    }
+
     @GetMapping("/end")
     @Operation(summary = "结束会议室预定管理信息")
     @Parameter(name = "id", description = "编号", required = true)

+ 7 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/meeting/reserve/OaMeetingReserveService.java

@@ -61,6 +61,13 @@ public interface OaMeetingReserveService {
      */
     void cancelOaMeetingReserve(Long id);
 
+    /**
+     * 开始会议室预定管理信息
+     *
+     * @param id 主键id
+     */
+    void startOaMeetingReserve(Long id);
+
     /**
      * 结束会议室预定管理信息
      *

+ 10 - 5
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/meeting/reserve/OaMeetingReserveServiceImpl.java

@@ -1,9 +1,6 @@
 package cn.iocoder.yudao.module.bpm.service.meeting.reserve;
 
 import cn.hutool.core.collection.CollUtil;
-import cn.hutool.core.date.DateTime;
-import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.io.unit.DataUnit;
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
@@ -18,14 +15,12 @@ import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
 import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import org.jsoup.helper.DataUtil;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.time.temporal.ChronoUnit;
@@ -199,6 +194,16 @@ public class OaMeetingReserveServiceImpl implements OaMeetingReserveService {
         oaMeetingReserveMapper.updateById(OaMeetingReserveDO.builder().id(id).status(MeetingReserveStatusEnum.CANCELED.getStatus()).build());
     }
 
+    @Override
+    public void startOaMeetingReserve(Long id) {
+        OaMeetingReserveDO oaMeetingReserveDO = validateOaMeetingReserveExists(id);
+        String status = oaMeetingReserveDO.getStatus();
+        if (!MeetingReserveStatusEnum.WAITING.getStatus().equals(status)) {
+            throw exception(OA_MEETING_RESERVE_STATUS_NOT_WAITING_CAN_NOT_START);
+        }
+        oaMeetingReserveMapper.updateById(OaMeetingReserveDO.builder().id(id).status(MeetingReserveStatusEnum.IN_PROGRESS.getStatus()).build());
+    }
+
     @Override
     public void endOaMeetingReserve(Long id) {
         OaMeetingReserveDO oaMeetingReserveDO = validateOaMeetingReserveExists(id);