diff --git a/cc-admin-master/lock-module/pom.xml b/cc-admin-master/lock-module/pom.xml new file mode 100644 index 0000000..b7fd6d8 --- /dev/null +++ b/cc-admin-master/lock-module/pom.xml @@ -0,0 +1,79 @@ + + + + cn.iocoder.boot + cc-admin-master + ${revision} + + 4.0.0 + lock-module + jar + + ${project.artifactId} + + + + + + cn.iocoder.boot + yudao-module-infra + ${revision} + + + + + cn.iocoder.boot + yudao-spring-boot-starter-biz-data-permission + + + cn.iocoder.boot + yudao-spring-boot-starter-biz-tenant + + + cn.iocoder.boot + yudao-spring-boot-starter-biz-ip + + + + + cn.iocoder.boot + yudao-spring-boot-starter-security + + + + org.springframework.boot + spring-boot-starter-validation + + + + + cn.iocoder.boot + yudao-spring-boot-starter-mybatis + + + + + cn.iocoder.boot + yudao-spring-boot-starter-excel + + + + org.springframework.boot + spring-boot-starter-mail + + + + com.anji-plus + captcha-spring-boot-starter + + + + org.dromara.hutool + hutool-extra + + + + + diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/IsolationPointController.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/IsolationPointController.java new file mode 100644 index 0000000..af37f90 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/IsolationPointController.java @@ -0,0 +1,106 @@ +package cn.iocoder.admin.module.lock.controller; + +import cn.iocoder.admin.module.lock.dal.IsolationPointDO; +import cn.iocoder.admin.module.lock.service.IsolationPointService; +import cn.iocoder.admin.module.lock.vo.IsolationPointPageReqVO; +import cn.iocoder.admin.module.lock.vo.IsolationPointRespVO; +import cn.iocoder.admin.module.lock.vo.IsolationPointSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; + +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; + + +@Tag(name = "管理后台 - 指导书与隔离点关联") +@RestController +@RequestMapping("/guide/isolation-point") +@Validated +public class IsolationPointController { + + @Resource + private IsolationPointService isolationPointService; + + @PostMapping("/create") + @Operation(summary = "创建指导书与隔离点关联") + @PreAuthorize("@ss.hasPermission('guide:isolation-point:create')") + public CommonResult createIsolationPoint(@Valid @RequestBody IsolationPointSaveReqVO createReqVO) { + return success(isolationPointService.createIsolationPoint(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新指导书与隔离点关联") + @PreAuthorize("@ss.hasPermission('guide:isolation-point:update')") + public CommonResult updateIsolationPoint(@Valid @RequestBody IsolationPointSaveReqVO updateReqVO) { + isolationPointService.updateIsolationPoint(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除指导书与隔离点关联") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('guide:isolation-point:delete')") + public CommonResult deleteIsolationPoint(@RequestParam("id") Long id) { + isolationPointService.deleteIsolationPoint(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除指导书与隔离点关联") + @PreAuthorize("@ss.hasPermission('guide:isolation-point:delete')") + public CommonResult deleteIsolationPointList(@RequestParam("ids") List ids) { + isolationPointService.deleteIsolationPointListByIds(ids); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得指导书与隔离点关联") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('guide:isolation-point:query')") + public CommonResult getIsolationPoint(@RequestParam("id") Long id) { + IsolationPointDO isolationPoint = isolationPointService.getIsolationPoint(id); + return success(BeanUtils.toBean(isolationPoint, IsolationPointRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得指导书与隔离点关联分页") + @PreAuthorize("@ss.hasPermission('guide:isolation-point:query')") + public CommonResult> getIsolationPointPage(@Valid IsolationPointPageReqVO pageReqVO) { + PageResult pageResult = isolationPointService.getIsolationPointPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, IsolationPointRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出指导书与隔离点关联 Excel") + @PreAuthorize("@ss.hasPermission('guide:isolation-point:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportIsolationPointExcel(@Valid IsolationPointPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = isolationPointService.getIsolationPointPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "指导书与隔离点关联.xls", "数据", IsolationPointRespVO.class, + BeanUtils.toBean(list, IsolationPointRespVO.class)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/LockController.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/LockController.java new file mode 100644 index 0000000..28b717b --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/LockController.java @@ -0,0 +1,107 @@ +package cn.iocoder.admin.module.lock.controller; + +import cn.iocoder.admin.module.lock.dal.LockDO; +import cn.iocoder.admin.module.lock.service.LockService; +import cn.iocoder.admin.module.lock.vo.LockPageReqVO; +import cn.iocoder.admin.module.lock.vo.LockRespVO; +import cn.iocoder.admin.module.lock.vo.LockSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; + +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; + + + +@Tag(name = "管理后台 - 电子锁") +@RestController +@RequestMapping("/electron/lock") +@Validated +public class LockController { + + @Resource + private LockService lockService; + + @PostMapping("/create") + @Operation(summary = "创建电子锁") + @PreAuthorize("@ss.hasPermission('electron:lock:create')") + public CommonResult createLock(@Valid @RequestBody LockSaveReqVO createReqVO) { + return success(lockService.createLock(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新电子锁") + @PreAuthorize("@ss.hasPermission('electron:lock:update')") + public CommonResult updateLock(@Valid @RequestBody LockSaveReqVO updateReqVO) { + lockService.updateLock(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除电子锁") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('electron:lock:delete')") + public CommonResult deleteLock(@RequestParam("id") Long id) { + lockService.deleteLock(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除电子锁") + @PreAuthorize("@ss.hasPermission('electron:lock:delete')") + public CommonResult deleteLockList(@RequestParam("ids") List ids) { + lockService.deleteLockListByIds(ids); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得电子锁") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('electron:lock:query')") + public CommonResult getLock(@RequestParam("id") Long id) { + LockDO lock = lockService.getLock(id); + return success(BeanUtils.toBean(lock, LockRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得电子锁分页") + @PreAuthorize("@ss.hasPermission('electron:lock:query')") + public CommonResult> getLockPage(@Valid LockPageReqVO pageReqVO) { + PageResult pageResult = lockService.getLockPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, LockRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出电子锁 Excel") + @PreAuthorize("@ss.hasPermission('electron:lock:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportLockExcel(@Valid LockPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = lockService.getLockPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "电子锁.xls", "数据", LockRespVO.class, + BeanUtils.toBean(list, LockRespVO.class)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/LockGuideController.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/LockGuideController.java new file mode 100644 index 0000000..50b40bd --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/LockGuideController.java @@ -0,0 +1,106 @@ +package cn.iocoder.admin.module.lock.controller; + +import cn.iocoder.admin.module.lock.dal.LockGuideDO; +import cn.iocoder.admin.module.lock.service.LockGuideService; +import cn.iocoder.admin.module.lock.vo.LockGuidePageReqVO; +import cn.iocoder.admin.module.lock.vo.LockGuideRespVO; +import cn.iocoder.admin.module.lock.vo.LockGuideSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; + +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; + + +@Tag(name = "管理后台 - 隔离指导书") +@RestController +@RequestMapping("/guide/lock-guide") +@Validated +public class LockGuideController { + + @Resource + private LockGuideService lockGuideService; + + @PostMapping("/create") + @Operation(summary = "创建隔离指导书") + @PreAuthorize("@ss.hasPermission('guide:lock-guide:create')") + public CommonResult createLockGuide(@Valid @RequestBody LockGuideSaveReqVO createReqVO) { + return success(lockGuideService.createLockGuide(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新隔离指导书") + @PreAuthorize("@ss.hasPermission('guide:lock-guide:update')") + public CommonResult updateLockGuide(@Valid @RequestBody LockGuideSaveReqVO updateReqVO) { + lockGuideService.updateLockGuide(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除隔离指导书") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('guide:lock-guide:delete')") + public CommonResult deleteLockGuide(@RequestParam("id") Long id) { + lockGuideService.deleteLockGuide(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除隔离指导书") + @PreAuthorize("@ss.hasPermission('guide:lock-guide:delete')") + public CommonResult deleteLockGuideList(@RequestParam("ids") List ids) { + lockGuideService.deleteLockGuideListByIds(ids); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得隔离指导书") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('guide:lock-guide:query')") + public CommonResult getLockGuide(@RequestParam("id") Long id) { + LockGuideDO lockGuide = lockGuideService.getLockGuide(id); + return success(BeanUtils.toBean(lockGuide, LockGuideRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得隔离指导书分页") + @PreAuthorize("@ss.hasPermission('guide:lock-guide:query')") + public CommonResult> getLockGuidePage(@Valid LockGuidePageReqVO pageReqVO) { + PageResult pageResult = lockGuideService.getLockGuidePage(pageReqVO); + return success(BeanUtils.toBean(pageResult, LockGuideRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出隔离指导书 Excel") + @PreAuthorize("@ss.hasPermission('guide:lock-guide:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportLockGuideExcel(@Valid LockGuidePageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = lockGuideService.getLockGuidePage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "隔离指导书.xls", "数据", LockGuideRespVO.class, + BeanUtils.toBean(list, LockGuideRespVO.class)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/LockWordRecordController.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/LockWordRecordController.java new file mode 100644 index 0000000..9eec3a9 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/LockWordRecordController.java @@ -0,0 +1,106 @@ +package cn.iocoder.admin.module.lock.controller; + +import cn.iocoder.admin.module.lock.dal.LockWordRecordDO; +import cn.iocoder.admin.module.lock.service.LockWordRecordService; +import cn.iocoder.admin.module.lock.vo.LockWordRecordPageReqVO; +import cn.iocoder.admin.module.lock.vo.LockWordRecordRespVO; +import cn.iocoder.admin.module.lock.vo.LockWordRecordSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; + +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; + + +@Tag(name = "管理后台 - 电子锁操作记录") +@RestController +@RequestMapping("/electron/lock-word-record") +@Validated +public class LockWordRecordController { + + @Resource + private LockWordRecordService lockWordRecordService; + + @PostMapping("/create") + @Operation(summary = "创建电子锁操作记录") + @PreAuthorize("@ss.hasPermission('electron:lock-word-record:create')") + public CommonResult createLockWordRecord(@Valid @RequestBody LockWordRecordSaveReqVO createReqVO) { + return success(lockWordRecordService.createLockWordRecord(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新电子锁操作记录") + @PreAuthorize("@ss.hasPermission('electron:lock-word-record:update')") + public CommonResult updateLockWordRecord(@Valid @RequestBody LockWordRecordSaveReqVO updateReqVO) { + lockWordRecordService.updateLockWordRecord(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除电子锁操作记录") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('electron:lock-word-record:delete')") + public CommonResult deleteLockWordRecord(@RequestParam("id") Long id) { + lockWordRecordService.deleteLockWordRecord(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除电子锁操作记录") + @PreAuthorize("@ss.hasPermission('electron:lock-word-record:delete')") + public CommonResult deleteLockWordRecordList(@RequestParam("ids") List ids) { + lockWordRecordService.deleteLockWordRecordListByIds(ids); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得电子锁操作记录") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('electron:lock-word-record:query')") + public CommonResult getLockWordRecord(@RequestParam("id") Long id) { + LockWordRecordDO lockWordRecord = lockWordRecordService.getLockWordRecord(id); + return success(BeanUtils.toBean(lockWordRecord, LockWordRecordRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得电子锁操作记录分页") + @PreAuthorize("@ss.hasPermission('electron:lock-word-record:query')") + public CommonResult> getLockWordRecordPage(@Valid LockWordRecordPageReqVO pageReqVO) { + PageResult pageResult = lockWordRecordService.getLockWordRecordPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, LockWordRecordRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出电子锁操作记录 Excel") + @PreAuthorize("@ss.hasPermission('electron:lock-word-record:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportLockWordRecordExcel(@Valid LockWordRecordPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = lockWordRecordService.getLockWordRecordPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "电子锁操作记录.xls", "数据", LockWordRecordRespVO.class, + BeanUtils.toBean(list, LockWordRecordRespVO.class)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanController.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanController.java new file mode 100644 index 0000000..7cad304 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanController.java @@ -0,0 +1,106 @@ +package cn.iocoder.admin.module.lock.controller; + +import cn.iocoder.admin.module.lock.dal.PlanDO; +import cn.iocoder.admin.module.lock.service.PlanService; +import cn.iocoder.admin.module.lock.vo.PlanPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanRespVO; +import cn.iocoder.admin.module.lock.vo.PlanSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; + +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; + + +@Tag(name = "管理后台 - 隔离计划") +@RestController +@RequestMapping("/isolation/plan") +@Validated +public class PlanController { + + @Resource + private PlanService planService; + + @PostMapping("/create") + @Operation(summary = "创建隔离计划") + @PreAuthorize("@ss.hasPermission('isolation:plan:create')") + public CommonResult createPlan(@Valid @RequestBody PlanSaveReqVO createReqVO) { + return success(planService.createPlan(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新隔离计划") + @PreAuthorize("@ss.hasPermission('isolation:plan:update')") + public CommonResult updatePlan(@Valid @RequestBody PlanSaveReqVO updateReqVO) { + planService.updatePlan(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除隔离计划") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('isolation:plan:delete')") + public CommonResult deletePlan(@RequestParam("id") Long id) { + planService.deletePlan(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除隔离计划") + @PreAuthorize("@ss.hasPermission('isolation:plan:delete')") + public CommonResult deletePlanList(@RequestParam("ids") List ids) { + planService.deletePlanListByIds(ids); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得隔离计划") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('isolation:plan:query')") + public CommonResult getPlan(@RequestParam("id") Long id) { + PlanDO plan = planService.getPlan(id); + return success(BeanUtils.toBean(plan, PlanRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得隔离计划分页") + @PreAuthorize("@ss.hasPermission('isolation:plan:query')") + public CommonResult> getPlanPage(@Valid PlanPageReqVO pageReqVO) { + PageResult pageResult = planService.getPlanPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, PlanRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出隔离计划 Excel") + @PreAuthorize("@ss.hasPermission('isolation:plan:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportPlanExcel(@Valid PlanPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = planService.getPlanPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "隔离计划.xls", "数据", PlanRespVO.class, + BeanUtils.toBean(list, PlanRespVO.class)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanItemController.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanItemController.java new file mode 100644 index 0000000..eb39600 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanItemController.java @@ -0,0 +1,106 @@ +package cn.iocoder.admin.module.lock.controller; + +import cn.iocoder.admin.module.lock.dal.PlanItemDO; +import cn.iocoder.admin.module.lock.service.PlanItemService; +import cn.iocoder.admin.module.lock.vo.PlanItemPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanItemRespVO; +import cn.iocoder.admin.module.lock.vo.PlanItemSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; + +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; + + +@Tag(name = "管理后台 - 隔离计划子项") +@RestController +@RequestMapping("/isolation/plan-item") +@Validated +public class PlanItemController { + + @Resource + private PlanItemService planItemService; + + @PostMapping("/create") + @Operation(summary = "创建隔离计划子项") + @PreAuthorize("@ss.hasPermission('isolation:plan-item:create')") + public CommonResult createPlanItem(@Valid @RequestBody PlanItemSaveReqVO createReqVO) { + return success(planItemService.createPlanItem(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新隔离计划子项") + @PreAuthorize("@ss.hasPermission('isolation:plan-item:update')") + public CommonResult updatePlanItem(@Valid @RequestBody PlanItemSaveReqVO updateReqVO) { + planItemService.updatePlanItem(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除隔离计划子项") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('isolation:plan-item:delete')") + public CommonResult deletePlanItem(@RequestParam("id") Long id) { + planItemService.deletePlanItem(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除隔离计划子项") + @PreAuthorize("@ss.hasPermission('isolation:plan-item:delete')") + public CommonResult deletePlanItemList(@RequestParam("ids") List ids) { + planItemService.deletePlanItemListByIds(ids); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得隔离计划子项") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('isolation:plan-item:query')") + public CommonResult getPlanItem(@RequestParam("id") Long id) { + PlanItemDO planItem = planItemService.getPlanItem(id); + return success(BeanUtils.toBean(planItem, PlanItemRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得隔离计划子项分页") + @PreAuthorize("@ss.hasPermission('isolation:plan-item:query')") + public CommonResult> getPlanItemPage(@Valid PlanItemPageReqVO pageReqVO) { + PageResult pageResult = planItemService.getPlanItemPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, PlanItemRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出隔离计划子项 Excel") + @PreAuthorize("@ss.hasPermission('isolation:plan-item:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportPlanItemExcel(@Valid PlanItemPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = planItemService.getPlanItemPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "隔离计划子项.xls", "数据", PlanItemRespVO.class, + BeanUtils.toBean(list, PlanItemRespVO.class)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanItemDetailController.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanItemDetailController.java new file mode 100644 index 0000000..eb7fdb5 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanItemDetailController.java @@ -0,0 +1,109 @@ +package cn.iocoder.admin.module.lock.controller; + +import cn.iocoder.admin.module.lock.dal.PlanItemDetailDO; +import cn.iocoder.admin.module.lock.service.PlanItemDetailService; +import cn.iocoder.admin.module.lock.vo.PlanItemDetailPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanItemDetailRespVO; +import cn.iocoder.admin.module.lock.vo.PlanItemDetailSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; + +import java.util.*; +import java.io.IOException; + +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; + +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; + +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; + +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; + + +@Tag(name = "管理后台 - 隔离计划子项详情") +@RestController +@RequestMapping("/isolation/plan-item-detail") +@Validated +public class PlanItemDetailController { + + @Resource + private PlanItemDetailService planItemDetailService; + + @PostMapping("/create") + @Operation(summary = "创建隔离计划子项详情") + @PreAuthorize("@ss.hasPermission('isolation:plan-item-detail:create')") + public CommonResult createPlanItemDetail(@Valid @RequestBody PlanItemDetailSaveReqVO createReqVO) { + return success(planItemDetailService.createPlanItemDetail(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新隔离计划子项详情") + @PreAuthorize("@ss.hasPermission('isolation:plan-item-detail:update')") + public CommonResult updatePlanItemDetail(@Valid @RequestBody PlanItemDetailSaveReqVO updateReqVO) { + planItemDetailService.updatePlanItemDetail(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除隔离计划子项详情") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('isolation:plan-item-detail:delete')") + public CommonResult deletePlanItemDetail(@RequestParam("id") Long id) { + planItemDetailService.deletePlanItemDetail(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除隔离计划子项详情") + @PreAuthorize("@ss.hasPermission('isolation:plan-item-detail:delete')") + public CommonResult deletePlanItemDetailList(@RequestParam("ids") List ids) { + planItemDetailService.deletePlanItemDetailListByIds(ids); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得隔离计划子项详情") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('isolation:plan-item-detail:query')") + public CommonResult getPlanItemDetail(@RequestParam("id") Long id) { + PlanItemDetailDO planItemDetail = planItemDetailService.getPlanItemDetail(id); + return success(BeanUtils.toBean(planItemDetail, PlanItemDetailRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得隔离计划子项详情分页") + @PreAuthorize("@ss.hasPermission('isolation:plan-item-detail:query')") + public CommonResult> getPlanItemDetailPage(@Valid PlanItemDetailPageReqVO pageReqVO) { + PageResult pageResult = planItemDetailService.getPlanItemDetailPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, PlanItemDetailRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出隔离计划子项详情 Excel") + @PreAuthorize("@ss.hasPermission('isolation:plan-item-detail:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportPlanItemDetailExcel(@Valid PlanItemDetailPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = planItemDetailService.getPlanItemDetailPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "隔离计划子项详情.xls", "数据", PlanItemDetailRespVO.class, + BeanUtils.toBean(list, PlanItemDetailRespVO.class)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanLifeLockController.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanLifeLockController.java new file mode 100644 index 0000000..adf300e --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PlanLifeLockController.java @@ -0,0 +1,106 @@ +package cn.iocoder.admin.module.lock.controller; + +import cn.iocoder.admin.module.lock.dal.PlanLifeLockDO; +import cn.iocoder.admin.module.lock.service.PlanLifeLockService; +import cn.iocoder.admin.module.lock.vo.PlanLifeLockPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanLifeLockRespVO; +import cn.iocoder.admin.module.lock.vo.PlanLifeLockSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; + +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; + + +@Tag(name = "管理后台 - 个人生命锁") +@RestController +@RequestMapping("/isolation/plan-life-lock") +@Validated +public class PlanLifeLockController { + + @Resource + private PlanLifeLockService planLifeLockService; + + @PostMapping("/create") + @Operation(summary = "创建个人生命锁") + @PreAuthorize("@ss.hasPermission('isolation:plan-life-lock:create')") + public CommonResult createPlanLifeLock(@Valid @RequestBody PlanLifeLockSaveReqVO createReqVO) { + return success(planLifeLockService.createPlanLifeLock(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新个人生命锁") + @PreAuthorize("@ss.hasPermission('isolation:plan-life-lock:update')") + public CommonResult updatePlanLifeLock(@Valid @RequestBody PlanLifeLockSaveReqVO updateReqVO) { + planLifeLockService.updatePlanLifeLock(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除个人生命锁") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('isolation:plan-life-lock:delete')") + public CommonResult deletePlanLifeLock(@RequestParam("id") Long id) { + planLifeLockService.deletePlanLifeLock(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除个人生命锁") + @PreAuthorize("@ss.hasPermission('isolation:plan-life-lock:delete')") + public CommonResult deletePlanLifeLockList(@RequestParam("ids") List ids) { + planLifeLockService.deletePlanLifeLockListByIds(ids); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得个人生命锁") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('isolation:plan-life-lock:query')") + public CommonResult getPlanLifeLock(@RequestParam("id") Long id) { + PlanLifeLockDO planLifeLock = planLifeLockService.getPlanLifeLock(id); + return success(BeanUtils.toBean(planLifeLock, PlanLifeLockRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得个人生命锁分页") + @PreAuthorize("@ss.hasPermission('isolation:plan-life-lock:query')") + public CommonResult> getPlanLifeLockPage(@Valid PlanLifeLockPageReqVO pageReqVO) { + PageResult pageResult = planLifeLockService.getPlanLifeLockPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, PlanLifeLockRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出个人生命锁 Excel") + @PreAuthorize("@ss.hasPermission('isolation:plan-life-lock:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportPlanLifeLockExcel(@Valid PlanLifeLockPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = planLifeLockService.getPlanLifeLockPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "个人生命锁.xls", "数据", PlanLifeLockRespVO.class, + BeanUtils.toBean(list, PlanLifeLockRespVO.class)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PointController.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PointController.java new file mode 100644 index 0000000..b8f8839 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/controller/PointController.java @@ -0,0 +1,106 @@ +package cn.iocoder.admin.module.lock.controller; + +import cn.iocoder.admin.module.lock.dal.PointDO; +import cn.iocoder.admin.module.lock.service.PointService; +import cn.iocoder.admin.module.lock.vo.PointPageReqVO; +import cn.iocoder.admin.module.lock.vo.PointRespVO; +import cn.iocoder.admin.module.lock.vo.PointSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.constraints.*; +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; + +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; + + +@Tag(name = "管理后台 - 隔离点") +@RestController +@RequestMapping("/isolation/point") +@Validated +public class PointController { + + @Resource + private PointService pointService; + + @PostMapping("/create") + @Operation(summary = "创建隔离点") + @PreAuthorize("@ss.hasPermission('isolation:point:create')") + public CommonResult createPoint(@Valid @RequestBody PointSaveReqVO createReqVO) { + return success(pointService.createPoint(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新隔离点") + @PreAuthorize("@ss.hasPermission('isolation:point:update')") + public CommonResult updatePoint(@Valid @RequestBody PointSaveReqVO updateReqVO) { + pointService.updatePoint(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除隔离点") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('isolation:point:delete')") + public CommonResult deletePoint(@RequestParam("id") Long id) { + pointService.deletePoint(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除隔离点") + @PreAuthorize("@ss.hasPermission('isolation:point:delete')") + public CommonResult deletePointList(@RequestParam("ids") List ids) { + pointService.deletePointListByIds(ids); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得隔离点") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('isolation:point:query')") + public CommonResult getPoint(@RequestParam("id") Long id) { + PointDO point = pointService.getPoint(id); + return success(BeanUtils.toBean(point, PointRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得隔离点分页") + @PreAuthorize("@ss.hasPermission('isolation:point:query')") + public CommonResult> getPointPage(@Valid PointPageReqVO pageReqVO) { + PageResult pageResult = pointService.getPointPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, PointRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出隔离点 Excel") + @PreAuthorize("@ss.hasPermission('isolation:point:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportPointExcel(@Valid PointPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = pointService.getPointPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "隔离点.xls", "数据", PointRespVO.class, + BeanUtils.toBean(list, PointRespVO.class)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/IsolationPointDO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/IsolationPointDO.java new file mode 100644 index 0000000..7e48b4e --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/IsolationPointDO.java @@ -0,0 +1,40 @@ +package cn.iocoder.admin.module.lock.dal; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; + +/** + * 指导书与隔离点关联 DO + * + * @author 超级管理员 + */ +@TableName("guide_isolation_point") +@KeySequence("guide_isolation_point_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class IsolationPointDO extends BaseDO { + + /** + * id + */ + @TableId + private Long id; + /** + * 隔离指导书ID + */ + private Long guideId; + /** + * 隔离点ID + */ + private Long isolationPointId; + + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/LockDO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/LockDO.java new file mode 100644 index 0000000..e343fdf --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/LockDO.java @@ -0,0 +1,61 @@ +package cn.iocoder.admin.module.lock.dal; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; + +/** + * 电子锁 DO + * + * @author 超级管理员 + */ +@TableName("electron_lock") +@KeySequence("electron_lock_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class LockDO extends BaseDO { + + /** + * 主键ID + */ + @TableId + private Long id; + /** + * 编号 + */ + private String lockNumber; + /** + * 名称 + */ + private String lockName; + /** + * 状态 + */ + private String lockStatus; + /** + * 锁具类型 + */ + private String lockType; + /** + * 启用状态: 0=未启用, 1=已启用 + */ + private Boolean lockEnableStatus; + /** + * 上次充电时间 + */ + private LocalDateTime lockLastChargeTime; + /** + * 蓝牙ID + */ + private String lockBluetoothId; + + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/LockGuideDO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/LockGuideDO.java new file mode 100644 index 0000000..bc8d288 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/LockGuideDO.java @@ -0,0 +1,40 @@ +package cn.iocoder.admin.module.lock.dal; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; + +/** + * 隔离指导书 DO + * + * @author 超级管理员 + */ +@TableName("guide") +@KeySequence("guide_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class LockGuideDO extends BaseDO { + + /** + * 主键ID + */ + @TableId + private Long id; + /** + * 工作内容和范围 + */ + private String guideContent; + /** + * 所需设备锁数量 + */ + private Integer guideLockNums; + + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/LockWordRecordDO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/LockWordRecordDO.java new file mode 100644 index 0000000..3486461 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/LockWordRecordDO.java @@ -0,0 +1,64 @@ +package cn.iocoder.admin.module.lock.dal; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; + +/** + * 电子锁操作记录 DO + * + * @author 超级管理员 + */ +@TableName("electron_lock_word_record") +@KeySequence("electron_lock_word_record_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class LockWordRecordDO extends BaseDO { + + /** + * 主键ID + */ + @TableId + private Long id; + /** + * 操作人ID + */ + private Long operatorId; + /** + * 电子锁ID + */ + private Long lockId; + /** + * 关联的子项详情ID (某些操作可能不关联) + */ + private Long isolationPlanItemDetailId; + /** + * 记录类型 + */ + private String recordType; + /** + * 操作签名 (图片路径) + */ + private String signaturePath; + /** + * 操作前照片 (图片路径) + */ + private String beforePhotoPath; + /** + * 操作后照片 (图片路径) + */ + private String afterPhotoPath; + /** + * 操作GPS坐标 + */ + private String gpsCoordinates; + + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanDO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanDO.java new file mode 100644 index 0000000..a2c944e --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanDO.java @@ -0,0 +1,36 @@ +package cn.iocoder.admin.module.lock.dal; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; + +/** + * 隔离计划 DO + * + * @author 超级管理员 + */ +@TableName("isolation_plan") +@KeySequence("isolation_plan_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class PlanDO extends BaseDO { + + /** + * 主键ID + */ + @TableId + private Long id; + /** + * 计划名称 + */ + private String ipName; + + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanItemDO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanItemDO.java new file mode 100644 index 0000000..9980186 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanItemDO.java @@ -0,0 +1,60 @@ +package cn.iocoder.admin.module.lock.dal; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; + +/** + * 隔离计划子项 DO + * + * @author 超级管理员 + */ +@TableName("isolation_plan_item") +@KeySequence("isolation_plan_item_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class PlanItemDO extends BaseDO { + + /** + * 主键ID + */ + @TableId + private Long id; + /** + * 隔离计划ID + */ + private Long isolationPlanId; + /** + * 隔离指导书ID + */ + private Long guideId; + /** + * 集中挂牌人ID + */ + private Long operatorId; + /** + * 集中挂牌协助人ID + */ + private Long operatorHelperId; + /** + * 验证人ID + */ + private Long verifierId; + /** + * 验证协助人ID + */ + private Long verifierHelperId; + /** + * 子项状态: 0=未完成, 1=已完成 + */ + private Boolean status; + + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanItemDetailDO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanItemDetailDO.java new file mode 100644 index 0000000..f6a6791 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanItemDetailDO.java @@ -0,0 +1,48 @@ +package cn.iocoder.admin.module.lock.dal; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; + +/** + * 隔离计划子项详情 DO + * + * @author 超级管理员 + */ +@TableName("isolation_plan_item_detail") +@KeySequence("isolation_plan_item_detail_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class PlanItemDetailDO extends BaseDO { + + /** + * 主键ID + */ + @TableId + private Long id; + /** + * 隔离计划子项ID + */ + private Long isolationPlanItemId; + /** + * 隔离点ID + */ + private Long isolationPointId; + /** + * 电子锁ID + */ + private Long lockId; + /** + * 锁状态: 0=未上锁, 1=已上锁, 2=已解锁 + */ + private Boolean lockStatus; + + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanLifeLockDO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanLifeLockDO.java new file mode 100644 index 0000000..b486975 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PlanLifeLockDO.java @@ -0,0 +1,58 @@ +package cn.iocoder.admin.module.lock.dal; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; + +/** + * 个人生命锁 DO + * + * @author 超级管理员 + */ +@TableName("isolation_plan_life_lock") +@KeySequence("isolation_plan_life_lock_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class PlanLifeLockDO extends BaseDO { + + /** + * 主键ID + */ + @TableId + private Long id; + /** + * 子项详情ID + */ + private Long isolationPlanItemDetailId; + /** + * 上锁人ID + */ + private Long userId; + /** + * 生命锁类型 + */ + private String lockType; + /** + * 锁定状态: 0=未上锁, 1=已上锁 + */ + private Boolean lockStatus; + /** + * 上锁时间 + */ + private LocalDateTime lockTime; + /** + * 解锁时间 + */ + private LocalDateTime unlockTime; + + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PointDO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PointDO.java new file mode 100644 index 0000000..51c16ff --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/dal/PointDO.java @@ -0,0 +1,48 @@ +package cn.iocoder.admin.module.lock.dal; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; + +/** + * 隔离点 DO + * + * @author 超级管理员 + */ +@TableName("isolation_point") +@KeySequence("isolation_point_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class PointDO extends BaseDO { + + /** + * 主键ID + */ + @TableId + private Long id; + /** + * 隔离点类型 + */ + private String ipType; + /** + * 隔离点名称 + */ + private String ipName; + /** + * 隔离点位置 + */ + private String ipLocation; + /** + * 隔离点编号 + */ + private String ipNumber; + + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/enums/ErrorCodeConstants.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/enums/ErrorCodeConstants.java new file mode 100644 index 0000000..297925e --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/enums/ErrorCodeConstants.java @@ -0,0 +1,25 @@ +package cn.iocoder.admin.module.lock.enums; + +import cn.iocoder.yudao.framework.common.exception.ErrorCode; + + +public interface ErrorCodeConstants { + + ErrorCode LOCK_NOT_EXISTS = new ErrorCode(1_005_000_001, "电子锁不存在"); + + ErrorCode LOCK_WORD_RECORD_NOT_EXISTS = new ErrorCode(1_005_000_002, "电子锁操作记录不存在"); + + ErrorCode ISOLATION_POINT_NOT_EXISTS = new ErrorCode(1_005_000_003, "指导书与隔离点关联不存在"); + + ErrorCode PLAN_NOT_EXISTS = new ErrorCode(1_005_000_004, "隔离计划不存在"); + + ErrorCode PLAN_ITEM_NOT_EXISTS = new ErrorCode(1_005_000_005, "隔离计划子项不存在"); + + ErrorCode LOCK_GUIDE_NOT_EXISTS = new ErrorCode(1_005_000_006, "隔离指导书不存在"); + + ErrorCode PLAN_ITEM_DETAIL_NOT_EXISTS = new ErrorCode(1_005_000_007, "隔离计划子项详情不存在"); + + ErrorCode PLAN_LIFE_LOCK_NOT_EXISTS = new ErrorCode(1_005_000_008, "个人生命锁不存在"); + + ErrorCode POINT_NOT_EXISTS = new ErrorCode(1_005_000_009, "隔离点不存在"); +} diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/IsolationPointMapper.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/IsolationPointMapper.java new file mode 100644 index 0000000..e7005e1 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/IsolationPointMapper.java @@ -0,0 +1,28 @@ +package cn.iocoder.admin.module.lock.mapper; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.IsolationPointDO; +import cn.iocoder.admin.module.lock.vo.IsolationPointPageReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import org.apache.ibatis.annotations.Mapper; + +/** + * 指导书与隔离点关联 Mapper + * + * @author 超级管理员 + */ +@Mapper +public interface IsolationPointMapper extends BaseMapperX { + + default PageResult selectPage(IsolationPointPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(IsolationPointDO::getGuideId, reqVO.getGuideId()) + .eqIfPresent(IsolationPointDO::getIsolationPointId, reqVO.getIsolationPointId()) + .betweenIfPresent(IsolationPointDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(IsolationPointDO::getId)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/LockGuideMapper.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/LockGuideMapper.java new file mode 100644 index 0000000..e492d32 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/LockGuideMapper.java @@ -0,0 +1,28 @@ +package cn.iocoder.admin.module.lock.mapper; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.LockGuideDO; +import cn.iocoder.admin.module.lock.vo.LockGuidePageReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import org.apache.ibatis.annotations.Mapper; + +/** + * 隔离指导书 Mapper + * + * @author 超级管理员 + */ +@Mapper +public interface LockGuideMapper extends BaseMapperX { + + default PageResult selectPage(LockGuidePageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(LockGuideDO::getGuideContent, reqVO.getGuideContent()) + .eqIfPresent(LockGuideDO::getGuideLockNums, reqVO.getGuideLockNums()) + .betweenIfPresent(LockGuideDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(LockGuideDO::getId)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/LockMapper.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/LockMapper.java new file mode 100644 index 0000000..363d9e9 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/LockMapper.java @@ -0,0 +1,33 @@ +package cn.iocoder.admin.module.lock.mapper; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.LockDO; +import cn.iocoder.admin.module.lock.vo.LockPageReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import org.apache.ibatis.annotations.Mapper; + +/** + * 电子锁 Mapper + * + * @author 超级管理员 + */ +@Mapper +public interface LockMapper extends BaseMapperX { + + default PageResult selectPage(LockPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(LockDO::getLockNumber, reqVO.getLockNumber()) + .likeIfPresent(LockDO::getLockName, reqVO.getLockName()) + .eqIfPresent(LockDO::getLockStatus, reqVO.getLockStatus()) + .eqIfPresent(LockDO::getLockType, reqVO.getLockType()) + .eqIfPresent(LockDO::getLockEnableStatus, reqVO.getLockEnableStatus()) + .betweenIfPresent(LockDO::getLockLastChargeTime, reqVO.getLockLastChargeTime()) + .eqIfPresent(LockDO::getLockBluetoothId, reqVO.getLockBluetoothId()) + .betweenIfPresent(LockDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(LockDO::getId)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/LockWordRecordMapper.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/LockWordRecordMapper.java new file mode 100644 index 0000000..66db61e --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/LockWordRecordMapper.java @@ -0,0 +1,34 @@ +package cn.iocoder.admin.module.lock.mapper; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.LockWordRecordDO; +import cn.iocoder.admin.module.lock.vo.LockWordRecordPageReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import org.apache.ibatis.annotations.Mapper; + +/** + * 电子锁操作记录 Mapper + * + * @author 超级管理员 + */ +@Mapper +public interface LockWordRecordMapper extends BaseMapperX { + + default PageResult selectPage(LockWordRecordPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(LockWordRecordDO::getOperatorId, reqVO.getOperatorId()) + .eqIfPresent(LockWordRecordDO::getLockId, reqVO.getLockId()) + .eqIfPresent(LockWordRecordDO::getIsolationPlanItemDetailId, reqVO.getIsolationPlanItemDetailId()) + .eqIfPresent(LockWordRecordDO::getRecordType, reqVO.getRecordType()) + .eqIfPresent(LockWordRecordDO::getSignaturePath, reqVO.getSignaturePath()) + .eqIfPresent(LockWordRecordDO::getBeforePhotoPath, reqVO.getBeforePhotoPath()) + .eqIfPresent(LockWordRecordDO::getAfterPhotoPath, reqVO.getAfterPhotoPath()) + .eqIfPresent(LockWordRecordDO::getGpsCoordinates, reqVO.getGpsCoordinates()) + .betweenIfPresent(LockWordRecordDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(LockWordRecordDO::getId)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanItemDetailMapper.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanItemDetailMapper.java new file mode 100644 index 0000000..a258df9 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanItemDetailMapper.java @@ -0,0 +1,32 @@ +package cn.iocoder.admin.module.lock.mapper; + +import cn.iocoder.admin.module.lock.dal.PlanItemDetailDO; +import cn.iocoder.admin.module.lock.vo.PlanItemDetailPageReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import org.apache.ibatis.annotations.Mapper; + +import java.util.*; + + + +/** + * 隔离计划子项详情 Mapper + * + * @author 超级管理员 + */ +@Mapper +public interface PlanItemDetailMapper extends BaseMapperX { + + default PageResult selectPage(PlanItemDetailPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(PlanItemDetailDO::getIsolationPlanItemId, reqVO.getIsolationPlanItemId()) + .eqIfPresent(PlanItemDetailDO::getIsolationPointId, reqVO.getIsolationPointId()) + .eqIfPresent(PlanItemDetailDO::getLockId, reqVO.getLockId()) + .eqIfPresent(PlanItemDetailDO::getLockStatus, reqVO.getLockStatus()) + .betweenIfPresent(PlanItemDetailDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(PlanItemDetailDO::getId)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanItemMapper.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanItemMapper.java new file mode 100644 index 0000000..a87eab1 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanItemMapper.java @@ -0,0 +1,33 @@ +package cn.iocoder.admin.module.lock.mapper; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.PlanItemDO; +import cn.iocoder.admin.module.lock.vo.PlanItemPageReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import org.apache.ibatis.annotations.Mapper; + +/** + * 隔离计划子项 Mapper + * + * @author 超级管理员 + */ +@Mapper +public interface PlanItemMapper extends BaseMapperX { + + default PageResult selectPage(PlanItemPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(PlanItemDO::getIsolationPlanId, reqVO.getIsolationPlanId()) + .eqIfPresent(PlanItemDO::getGuideId, reqVO.getGuideId()) + .eqIfPresent(PlanItemDO::getOperatorId, reqVO.getOperatorId()) + .eqIfPresent(PlanItemDO::getOperatorHelperId, reqVO.getOperatorHelperId()) + .eqIfPresent(PlanItemDO::getVerifierId, reqVO.getVerifierId()) + .eqIfPresent(PlanItemDO::getVerifierHelperId, reqVO.getVerifierHelperId()) + .eqIfPresent(PlanItemDO::getStatus, reqVO.getStatus()) + .betweenIfPresent(PlanItemDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(PlanItemDO::getId)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanLifeLockMapper.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanLifeLockMapper.java new file mode 100644 index 0000000..8efc02b --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanLifeLockMapper.java @@ -0,0 +1,32 @@ +package cn.iocoder.admin.module.lock.mapper; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.PlanLifeLockDO; +import cn.iocoder.admin.module.lock.vo.PlanLifeLockPageReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import org.apache.ibatis.annotations.Mapper; + +/** + * 个人生命锁 Mapper + * + * @author 超级管理员 + */ +@Mapper +public interface PlanLifeLockMapper extends BaseMapperX { + + default PageResult selectPage(PlanLifeLockPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(PlanLifeLockDO::getIsolationPlanItemDetailId, reqVO.getIsolationPlanItemDetailId()) + .eqIfPresent(PlanLifeLockDO::getUserId, reqVO.getUserId()) + .eqIfPresent(PlanLifeLockDO::getLockType, reqVO.getLockType()) + .eqIfPresent(PlanLifeLockDO::getLockStatus, reqVO.getLockStatus()) + .betweenIfPresent(PlanLifeLockDO::getLockTime, reqVO.getLockTime()) + .betweenIfPresent(PlanLifeLockDO::getUnlockTime, reqVO.getUnlockTime()) + .betweenIfPresent(PlanLifeLockDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(PlanLifeLockDO::getId)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanMapper.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanMapper.java new file mode 100644 index 0000000..dbcd221 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PlanMapper.java @@ -0,0 +1,27 @@ +package cn.iocoder.admin.module.lock.mapper; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.PlanDO; +import cn.iocoder.admin.module.lock.vo.PlanPageReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import org.apache.ibatis.annotations.Mapper; + +/** + * 隔离计划 Mapper + * + * @author 超级管理员 + */ +@Mapper +public interface PlanMapper extends BaseMapperX { + + default PageResult selectPage(PlanPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .likeIfPresent(PlanDO::getIpName, reqVO.getIpName()) + .betweenIfPresent(PlanDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(PlanDO::getId)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PointMapper.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PointMapper.java new file mode 100644 index 0000000..06502d5 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/PointMapper.java @@ -0,0 +1,30 @@ +package cn.iocoder.admin.module.lock.mapper; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.PointDO; +import cn.iocoder.admin.module.lock.vo.PointPageReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import org.apache.ibatis.annotations.Mapper; + +/** + * 隔离点 Mapper + * + * @author 超级管理员 + */ +@Mapper +public interface PointMapper extends BaseMapperX { + + default PageResult selectPage(PointPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(PointDO::getIpType, reqVO.getIpType()) + .likeIfPresent(PointDO::getIpName, reqVO.getIpName()) + .eqIfPresent(PointDO::getIpLocation, reqVO.getIpLocation()) + .eqIfPresent(PointDO::getIpNumber, reqVO.getIpNumber()) + .betweenIfPresent(PointDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(PointDO::getId)); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/IsolationPointMapper.xml b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/IsolationPointMapper.xml new file mode 100644 index 0000000..d83838e --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/IsolationPointMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/LockGuideMapper.xml b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/LockGuideMapper.xml new file mode 100644 index 0000000..e612968 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/LockGuideMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/LockMapper.xml b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/LockMapper.xml new file mode 100644 index 0000000..0177b54 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/LockMapper.xml @@ -0,0 +1,10 @@ + + + + + + + \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/LockWordRecordMapper.xml b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/LockWordRecordMapper.xml new file mode 100644 index 0000000..24a8fe2 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/LockWordRecordMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanItemDetailMapper.xml b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanItemDetailMapper.xml new file mode 100644 index 0000000..7ad3e0d --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanItemDetailMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanItemMapper.xml b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanItemMapper.xml new file mode 100644 index 0000000..d851ae6 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanItemMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanLifeLockMapper.xml b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanLifeLockMapper.xml new file mode 100644 index 0000000..e2c4909 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanLifeLockMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanMapper.xml b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanMapper.xml new file mode 100644 index 0000000..0075d78 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PlanMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PointMapper.xml b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PointMapper.xml new file mode 100644 index 0000000..b055560 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/mapper/xml/PointMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/IsolationPointService.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/IsolationPointService.java new file mode 100644 index 0000000..f832709 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/IsolationPointService.java @@ -0,0 +1,65 @@ +package cn.iocoder.admin.module.lock.service; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.IsolationPointDO; +import cn.iocoder.admin.module.lock.vo.IsolationPointPageReqVO; +import cn.iocoder.admin.module.lock.vo.IsolationPointSaveReqVO; +import jakarta.validation.*; + +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; + +/** + * 指导书与隔离点关联 Service 接口 + * + * @author 超级管理员 + */ +public interface IsolationPointService { + + /** + * 创建指导书与隔离点关联 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createIsolationPoint(@Valid IsolationPointSaveReqVO createReqVO); + + /** + * 更新指导书与隔离点关联 + * + * @param updateReqVO 更新信息 + */ + void updateIsolationPoint(@Valid IsolationPointSaveReqVO updateReqVO); + + /** + * 删除指导书与隔离点关联 + * + * @param id 编号 + */ + void deleteIsolationPoint(Long id); + + /** + * 批量删除指导书与隔离点关联 + * + * @param ids 编号 + */ + void deleteIsolationPointListByIds(List ids); + + /** + * 获得指导书与隔离点关联 + * + * @param id 编号 + * @return 指导书与隔离点关联 + */ + IsolationPointDO getIsolationPoint(Long id); + + /** + * 获得指导书与隔离点关联分页 + * + * @param pageReqVO 分页查询 + * @return 指导书与隔离点关联分页 + */ + PageResult getIsolationPointPage(IsolationPointPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/LockGuideService.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/LockGuideService.java new file mode 100644 index 0000000..7a70e73 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/LockGuideService.java @@ -0,0 +1,64 @@ +package cn.iocoder.admin.module.lock.service; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.LockGuideDO; +import cn.iocoder.admin.module.lock.vo.LockGuidePageReqVO; +import cn.iocoder.admin.module.lock.vo.LockGuideSaveReqVO; +import jakarta.validation.*; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; + +/** + * 隔离指导书 Service 接口 + * + * @author 超级管理员 + */ +public interface LockGuideService { + + /** + * 创建隔离指导书 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createLockGuide(@Valid LockGuideSaveReqVO createReqVO); + + /** + * 更新隔离指导书 + * + * @param updateReqVO 更新信息 + */ + void updateLockGuide(@Valid LockGuideSaveReqVO updateReqVO); + + /** + * 删除隔离指导书 + * + * @param id 编号 + */ + void deleteLockGuide(Long id); + + /** + * 批量删除隔离指导书 + * + * @param ids 编号 + */ + void deleteLockGuideListByIds(List ids); + + /** + * 获得隔离指导书 + * + * @param id 编号 + * @return 隔离指导书 + */ + LockGuideDO getLockGuide(Long id); + + /** + * 获得隔离指导书分页 + * + * @param pageReqVO 分页查询 + * @return 隔离指导书分页 + */ + PageResult getLockGuidePage(LockGuidePageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/LockService.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/LockService.java new file mode 100644 index 0000000..678333d --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/LockService.java @@ -0,0 +1,64 @@ +package cn.iocoder.admin.module.lock.service; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.LockDO; +import cn.iocoder.admin.module.lock.vo.LockPageReqVO; +import cn.iocoder.admin.module.lock.vo.LockSaveReqVO; +import jakarta.validation.*; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; + +/** + * 电子锁 Service 接口 + * + * @author 超级管理员 + */ +public interface LockService { + + /** + * 创建电子锁 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createLock(@Valid LockSaveReqVO createReqVO); + + /** + * 更新电子锁 + * + * @param updateReqVO 更新信息 + */ + void updateLock(@Valid LockSaveReqVO updateReqVO); + + /** + * 删除电子锁 + * + * @param id 编号 + */ + void deleteLock(Long id); + + /** + * 批量删除电子锁 + * + * @param ids 编号 + */ + void deleteLockListByIds(List ids); + + /** + * 获得电子锁 + * + * @param id 编号 + * @return 电子锁 + */ + LockDO getLock(Long id); + + /** + * 获得电子锁分页 + * + * @param pageReqVO 分页查询 + * @return 电子锁分页 + */ + PageResult getLockPage(LockPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/LockWordRecordService.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/LockWordRecordService.java new file mode 100644 index 0000000..65f5fb3 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/LockWordRecordService.java @@ -0,0 +1,64 @@ +package cn.iocoder.admin.module.lock.service; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.LockWordRecordDO; +import cn.iocoder.admin.module.lock.vo.LockWordRecordPageReqVO; +import cn.iocoder.admin.module.lock.vo.LockWordRecordSaveReqVO; +import jakarta.validation.*; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; + +/** + * 电子锁操作记录 Service 接口 + * + * @author 超级管理员 + */ +public interface LockWordRecordService { + + /** + * 创建电子锁操作记录 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createLockWordRecord(@Valid LockWordRecordSaveReqVO createReqVO); + + /** + * 更新电子锁操作记录 + * + * @param updateReqVO 更新信息 + */ + void updateLockWordRecord(@Valid LockWordRecordSaveReqVO updateReqVO); + + /** + * 删除电子锁操作记录 + * + * @param id 编号 + */ + void deleteLockWordRecord(Long id); + + /** + * 批量删除电子锁操作记录 + * + * @param ids 编号 + */ + void deleteLockWordRecordListByIds(List ids); + + /** + * 获得电子锁操作记录 + * + * @param id 编号 + * @return 电子锁操作记录 + */ + LockWordRecordDO getLockWordRecord(Long id); + + /** + * 获得电子锁操作记录分页 + * + * @param pageReqVO 分页查询 + * @return 电子锁操作记录分页 + */ + PageResult getLockWordRecordPage(LockWordRecordPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanItemDetailService.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanItemDetailService.java new file mode 100644 index 0000000..c644ca3 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanItemDetailService.java @@ -0,0 +1,65 @@ +package cn.iocoder.admin.module.lock.service; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.PlanItemDetailDO; +import cn.iocoder.admin.module.lock.vo.PlanItemDetailPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanItemDetailSaveReqVO; +import jakarta.validation.*; + +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; + +/** + * 隔离计划子项详情 Service 接口 + * + * @author 超级管理员 + */ +public interface PlanItemDetailService { + + /** + * 创建隔离计划子项详情 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createPlanItemDetail(@Valid PlanItemDetailSaveReqVO createReqVO); + + /** + * 更新隔离计划子项详情 + * + * @param updateReqVO 更新信息 + */ + void updatePlanItemDetail(@Valid PlanItemDetailSaveReqVO updateReqVO); + + /** + * 删除隔离计划子项详情 + * + * @param id 编号 + */ + void deletePlanItemDetail(Long id); + + /** + * 批量删除隔离计划子项详情 + * + * @param ids 编号 + */ + void deletePlanItemDetailListByIds(List ids); + + /** + * 获得隔离计划子项详情 + * + * @param id 编号 + * @return 隔离计划子项详情 + */ + PlanItemDetailDO getPlanItemDetail(Long id); + + /** + * 获得隔离计划子项详情分页 + * + * @param pageReqVO 分页查询 + * @return 隔离计划子项详情分页 + */ + PageResult getPlanItemDetailPage(PlanItemDetailPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanItemService.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanItemService.java new file mode 100644 index 0000000..7bf9afa --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanItemService.java @@ -0,0 +1,64 @@ +package cn.iocoder.admin.module.lock.service; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.PlanItemDO; +import cn.iocoder.admin.module.lock.vo.PlanItemPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanItemSaveReqVO; +import jakarta.validation.*; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; + +/** + * 隔离计划子项 Service 接口 + * + * @author 超级管理员 + */ +public interface PlanItemService { + + /** + * 创建隔离计划子项 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createPlanItem(@Valid PlanItemSaveReqVO createReqVO); + + /** + * 更新隔离计划子项 + * + * @param updateReqVO 更新信息 + */ + void updatePlanItem(@Valid PlanItemSaveReqVO updateReqVO); + + /** + * 删除隔离计划子项 + * + * @param id 编号 + */ + void deletePlanItem(Long id); + + /** + * 批量删除隔离计划子项 + * + * @param ids 编号 + */ + void deletePlanItemListByIds(List ids); + + /** + * 获得隔离计划子项 + * + * @param id 编号 + * @return 隔离计划子项 + */ + PlanItemDO getPlanItem(Long id); + + /** + * 获得隔离计划子项分页 + * + * @param pageReqVO 分页查询 + * @return 隔离计划子项分页 + */ + PageResult getPlanItemPage(PlanItemPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanLifeLockService.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanLifeLockService.java new file mode 100644 index 0000000..5020262 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanLifeLockService.java @@ -0,0 +1,64 @@ +package cn.iocoder.admin.module.lock.service; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.PlanLifeLockDO; +import cn.iocoder.admin.module.lock.vo.PlanLifeLockPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanLifeLockSaveReqVO; +import jakarta.validation.*; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; + +/** + * 个人生命锁 Service 接口 + * + * @author 超级管理员 + */ +public interface PlanLifeLockService { + + /** + * 创建个人生命锁 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createPlanLifeLock(@Valid PlanLifeLockSaveReqVO createReqVO); + + /** + * 更新个人生命锁 + * + * @param updateReqVO 更新信息 + */ + void updatePlanLifeLock(@Valid PlanLifeLockSaveReqVO updateReqVO); + + /** + * 删除个人生命锁 + * + * @param id 编号 + */ + void deletePlanLifeLock(Long id); + + /** + * 批量删除个人生命锁 + * + * @param ids 编号 + */ + void deletePlanLifeLockListByIds(List ids); + + /** + * 获得个人生命锁 + * + * @param id 编号 + * @return 个人生命锁 + */ + PlanLifeLockDO getPlanLifeLock(Long id); + + /** + * 获得个人生命锁分页 + * + * @param pageReqVO 分页查询 + * @return 个人生命锁分页 + */ + PageResult getPlanLifeLockPage(PlanLifeLockPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanService.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanService.java new file mode 100644 index 0000000..e34c598 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PlanService.java @@ -0,0 +1,64 @@ +package cn.iocoder.admin.module.lock.service; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.PlanDO; +import cn.iocoder.admin.module.lock.vo.PlanPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanSaveReqVO; +import jakarta.validation.*; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; + +/** + * 隔离计划 Service 接口 + * + * @author 超级管理员 + */ +public interface PlanService { + + /** + * 创建隔离计划 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createPlan(@Valid PlanSaveReqVO createReqVO); + + /** + * 更新隔离计划 + * + * @param updateReqVO 更新信息 + */ + void updatePlan(@Valid PlanSaveReqVO updateReqVO); + + /** + * 删除隔离计划 + * + * @param id 编号 + */ + void deletePlan(Long id); + + /** + * 批量删除隔离计划 + * + * @param ids 编号 + */ + void deletePlanListByIds(List ids); + + /** + * 获得隔离计划 + * + * @param id 编号 + * @return 隔离计划 + */ + PlanDO getPlan(Long id); + + /** + * 获得隔离计划分页 + * + * @param pageReqVO 分页查询 + * @return 隔离计划分页 + */ + PageResult getPlanPage(PlanPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PointService.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PointService.java new file mode 100644 index 0000000..96d985a --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/PointService.java @@ -0,0 +1,65 @@ +package cn.iocoder.admin.module.lock.service; + +import java.util.*; + +import cn.iocoder.admin.module.lock.dal.PointDO; +import cn.iocoder.admin.module.lock.vo.PointPageReqVO; +import cn.iocoder.admin.module.lock.vo.PointSaveReqVO; +import jakarta.validation.*; + +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; + +/** + * 隔离点 Service 接口 + * + * @author 超级管理员 + */ +public interface PointService { + + /** + * 创建隔离点 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createPoint(@Valid PointSaveReqVO createReqVO); + + /** + * 更新隔离点 + * + * @param updateReqVO 更新信息 + */ + void updatePoint(@Valid PointSaveReqVO updateReqVO); + + /** + * 删除隔离点 + * + * @param id 编号 + */ + void deletePoint(Long id); + + /** + * 批量删除隔离点 + * + * @param ids 编号 + */ + void deletePointListByIds(List ids); + + /** + * 获得隔离点 + * + * @param id 编号 + * @return 隔离点 + */ + PointDO getPoint(Long id); + + /** + * 获得隔离点分页 + * + * @param pageReqVO 分页查询 + * @return 隔离点分页 + */ + PageResult getPointPage(PointPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/IsolationPointServiceImpl.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/IsolationPointServiceImpl.java new file mode 100644 index 0000000..09c4be8 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/IsolationPointServiceImpl.java @@ -0,0 +1,87 @@ +package cn.iocoder.admin.module.lock.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.iocoder.admin.module.lock.dal.IsolationPointDO; +import cn.iocoder.admin.module.lock.mapper.IsolationPointMapper; +import cn.iocoder.admin.module.lock.service.IsolationPointService; +import cn.iocoder.admin.module.lock.vo.IsolationPointPageReqVO; +import cn.iocoder.admin.module.lock.vo.IsolationPointSaveReqVO; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; + + +import static cn.iocoder.admin.module.lock.enums.ErrorCodeConstants.ISOLATION_POINT_NOT_EXISTS; +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList; +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.diffList; + +/** + * 指导书与隔离点关联 Service 实现类 + * + * @author 超级管理员 + */ +@Service +@Validated +public class IsolationPointServiceImpl implements IsolationPointService { + + @Resource + private IsolationPointMapper isolationPointMapper; + + @Override + public Long createIsolationPoint(IsolationPointSaveReqVO createReqVO) { + // 插入 + IsolationPointDO isolationPoint = BeanUtils.toBean(createReqVO, IsolationPointDO.class); + isolationPointMapper.insert(isolationPoint); + + // 返回 + return isolationPoint.getId(); + } + + @Override + public void updateIsolationPoint(IsolationPointSaveReqVO updateReqVO) { + // 校验存在 + validateIsolationPointExists(updateReqVO.getId()); + // 更新 + IsolationPointDO updateObj = BeanUtils.toBean(updateReqVO, IsolationPointDO.class); + isolationPointMapper.updateById(updateObj); + } + + @Override + public void deleteIsolationPoint(Long id) { + // 校验存在 + validateIsolationPointExists(id); + // 删除 + isolationPointMapper.deleteById(id); + } + + @Override + public void deleteIsolationPointListByIds(List ids) { + // 删除 + isolationPointMapper.deleteByIds(ids); + } + + + private void validateIsolationPointExists(Long id) { + if (isolationPointMapper.selectById(id) == null) { + throw exception(ISOLATION_POINT_NOT_EXISTS); + } + } + + @Override + public IsolationPointDO getIsolationPoint(Long id) { + return isolationPointMapper.selectById(id); + } + + @Override + public PageResult getIsolationPointPage(IsolationPointPageReqVO pageReqVO) { + return isolationPointMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/LockGuideServiceImpl.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/LockGuideServiceImpl.java new file mode 100644 index 0000000..9f3dfe5 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/LockGuideServiceImpl.java @@ -0,0 +1,88 @@ +package cn.iocoder.admin.module.lock.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.iocoder.admin.module.lock.dal.LockGuideDO; +import cn.iocoder.admin.module.lock.mapper.LockGuideMapper; +import cn.iocoder.admin.module.lock.service.LockGuideService; +import cn.iocoder.admin.module.lock.vo.LockGuidePageReqVO; +import cn.iocoder.admin.module.lock.vo.LockGuideSaveReqVO; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; + +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; + + +import static cn.iocoder.admin.module.lock.enums.ErrorCodeConstants.LOCK_GUIDE_NOT_EXISTS; +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList; + + +/** + * 隔离指导书 Service 实现类 + * + * @author 超级管理员 + */ +@Service +@Validated +public class LockGuideServiceImpl implements LockGuideService { + + @Resource + private LockGuideMapper lockGuideMapper; + + @Override + public Long createLockGuide(LockGuideSaveReqVO createReqVO) { + // 插入 + LockGuideDO lockGuide = BeanUtils.toBean(createReqVO, LockGuideDO.class); + lockGuideMapper.insert(lockGuide); + + // 返回 + return lockGuide.getId(); + } + + @Override + public void updateLockGuide(LockGuideSaveReqVO updateReqVO) { + // 校验存在 + validateLockGuideExists(updateReqVO.getId()); + // 更新 + LockGuideDO updateObj = BeanUtils.toBean(updateReqVO, LockGuideDO.class); + lockGuideMapper.updateById(updateObj); + } + + @Override + public void deleteLockGuide(Long id) { + // 校验存在 + validateLockGuideExists(id); + // 删除 + lockGuideMapper.deleteById(id); + } + + @Override + public void deleteLockGuideListByIds(List ids) { + // 删除 + lockGuideMapper.deleteByIds(ids); + } + + + private void validateLockGuideExists(Long id) { + if (lockGuideMapper.selectById(id) == null) { + throw exception(LOCK_GUIDE_NOT_EXISTS); + } + } + + @Override + public LockGuideDO getLockGuide(Long id) { + return lockGuideMapper.selectById(id); + } + + @Override + public PageResult getLockGuidePage(LockGuidePageReqVO pageReqVO) { + return lockGuideMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/LockServiceImpl.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/LockServiceImpl.java new file mode 100644 index 0000000..0eb1e0b --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/LockServiceImpl.java @@ -0,0 +1,87 @@ +package cn.iocoder.admin.module.lock.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.iocoder.admin.module.lock.dal.LockDO; +import cn.iocoder.admin.module.lock.mapper.LockMapper; +import cn.iocoder.admin.module.lock.service.LockService; +import cn.iocoder.admin.module.lock.vo.LockPageReqVO; +import cn.iocoder.admin.module.lock.vo.LockSaveReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; + +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; + + +import static cn.iocoder.admin.module.lock.enums.ErrorCodeConstants.LOCK_NOT_EXISTS; +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList; +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.diffList; + +/** + * 电子锁 Service 实现类 + * + * @author 超级管理员 + */ +@Service +@Validated +public class LockServiceImpl implements LockService { + + @Resource + private LockMapper lockMapper; + + @Override + public Long createLock(LockSaveReqVO createReqVO) { + // 插入 + LockDO lock = BeanUtils.toBean(createReqVO, LockDO.class); + lockMapper.insert(lock); + + // 返回 + return lock.getId(); + } + + @Override + public void updateLock(LockSaveReqVO updateReqVO) { + // 校验存在 + validateLockExists(updateReqVO.getId()); + // 更新 + LockDO updateObj = BeanUtils.toBean(updateReqVO, LockDO.class); + lockMapper.updateById(updateObj); + } + + @Override + public void deleteLock(Long id) { + // 校验存在 + validateLockExists(id); + // 删除 + lockMapper.deleteById(id); + } + + @Override + public void deleteLockListByIds(List ids) { + // 删除 + lockMapper.deleteByIds(ids); + } + + + private void validateLockExists(Long id) { + if (lockMapper.selectById(id) == null) { + throw exception(LOCK_NOT_EXISTS); + } + } + + @Override + public LockDO getLock(Long id) { + return lockMapper.selectById(id); + } + + @Override + public PageResult getLockPage(LockPageReqVO pageReqVO) { + return lockMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/LockWordRecordServiceImpl.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/LockWordRecordServiceImpl.java new file mode 100644 index 0000000..9f1c344 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/LockWordRecordServiceImpl.java @@ -0,0 +1,88 @@ +package cn.iocoder.admin.module.lock.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.iocoder.admin.module.lock.dal.LockWordRecordDO; +import cn.iocoder.admin.module.lock.mapper.LockWordRecordMapper; +import cn.iocoder.admin.module.lock.service.LockWordRecordService; +import cn.iocoder.admin.module.lock.vo.LockWordRecordPageReqVO; +import cn.iocoder.admin.module.lock.vo.LockWordRecordSaveReqVO; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; + +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; + + +import static cn.iocoder.admin.module.lock.enums.ErrorCodeConstants.LOCK_WORD_RECORD_NOT_EXISTS; +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList; +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.diffList; + +/** + * 电子锁操作记录 Service 实现类 + * + * @author 超级管理员 + */ +@Service +@Validated +public class LockWordRecordServiceImpl implements LockWordRecordService { + + @Resource + private LockWordRecordMapper lockWordRecordMapper; + + @Override + public Long createLockWordRecord(LockWordRecordSaveReqVO createReqVO) { + // 插入 + LockWordRecordDO lockWordRecord = BeanUtils.toBean(createReqVO, LockWordRecordDO.class); + lockWordRecordMapper.insert(lockWordRecord); + + // 返回 + return lockWordRecord.getId(); + } + + @Override + public void updateLockWordRecord(LockWordRecordSaveReqVO updateReqVO) { + // 校验存在 + validateLockWordRecordExists(updateReqVO.getId()); + // 更新 + LockWordRecordDO updateObj = BeanUtils.toBean(updateReqVO, LockWordRecordDO.class); + lockWordRecordMapper.updateById(updateObj); + } + + @Override + public void deleteLockWordRecord(Long id) { + // 校验存在 + validateLockWordRecordExists(id); + // 删除 + lockWordRecordMapper.deleteById(id); + } + + @Override + public void deleteLockWordRecordListByIds(List ids) { + // 删除 + lockWordRecordMapper.deleteByIds(ids); + } + + + private void validateLockWordRecordExists(Long id) { + if (lockWordRecordMapper.selectById(id) == null) { + throw exception(LOCK_WORD_RECORD_NOT_EXISTS); + } + } + + @Override + public LockWordRecordDO getLockWordRecord(Long id) { + return lockWordRecordMapper.selectById(id); + } + + @Override + public PageResult getLockWordRecordPage(LockWordRecordPageReqVO pageReqVO) { + return lockWordRecordMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanItemDetailServiceImpl.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanItemDetailServiceImpl.java new file mode 100644 index 0000000..27912b6 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanItemDetailServiceImpl.java @@ -0,0 +1,87 @@ +package cn.iocoder.admin.module.lock.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.iocoder.admin.module.lock.dal.PlanItemDetailDO; +import cn.iocoder.admin.module.lock.mapper.PlanItemDetailMapper; +import cn.iocoder.admin.module.lock.service.PlanItemDetailService; +import cn.iocoder.admin.module.lock.vo.PlanItemDetailPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanItemDetailSaveReqVO; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; + + +import static cn.iocoder.admin.module.lock.enums.ErrorCodeConstants.PLAN_ITEM_DETAIL_NOT_EXISTS; +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList; +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.diffList; + +/** + * 隔离计划子项详情 Service 实现类 + * + * @author 超级管理员 + */ +@Service +@Validated +public class PlanItemDetailServiceImpl implements PlanItemDetailService { + + @Resource + private PlanItemDetailMapper planItemDetailMapper; + + @Override + public Long createPlanItemDetail(PlanItemDetailSaveReqVO createReqVO) { + // 插入 + PlanItemDetailDO planItemDetail = BeanUtils.toBean(createReqVO, PlanItemDetailDO.class); + planItemDetailMapper.insert(planItemDetail); + + // 返回 + return planItemDetail.getId(); + } + + @Override + public void updatePlanItemDetail(PlanItemDetailSaveReqVO updateReqVO) { + // 校验存在 + validatePlanItemDetailExists(updateReqVO.getId()); + // 更新 + PlanItemDetailDO updateObj = BeanUtils.toBean(updateReqVO, PlanItemDetailDO.class); + planItemDetailMapper.updateById(updateObj); + } + + @Override + public void deletePlanItemDetail(Long id) { + // 校验存在 + validatePlanItemDetailExists(id); + // 删除 + planItemDetailMapper.deleteById(id); + } + + @Override + public void deletePlanItemDetailListByIds(List ids) { + // 删除 + planItemDetailMapper.deleteByIds(ids); + } + + + private void validatePlanItemDetailExists(Long id) { + if (planItemDetailMapper.selectById(id) == null) { + throw exception(PLAN_ITEM_DETAIL_NOT_EXISTS); + } + } + + @Override + public PlanItemDetailDO getPlanItemDetail(Long id) { + return planItemDetailMapper.selectById(id); + } + + @Override + public PageResult getPlanItemDetailPage(PlanItemDetailPageReqVO pageReqVO) { + return planItemDetailMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanItemServiceImpl.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanItemServiceImpl.java new file mode 100644 index 0000000..d189470 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanItemServiceImpl.java @@ -0,0 +1,86 @@ +package cn.iocoder.admin.module.lock.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.iocoder.admin.module.lock.dal.PlanItemDO; +import cn.iocoder.admin.module.lock.mapper.PlanItemMapper; +import cn.iocoder.admin.module.lock.service.PlanItemService; +import cn.iocoder.admin.module.lock.vo.PlanItemPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanItemSaveReqVO; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; + +import java.util.*; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; + + +import static cn.iocoder.admin.module.lock.enums.ErrorCodeConstants.PLAN_ITEM_NOT_EXISTS; +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList; +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.diffList; + +/** + * 隔离计划子项 Service 实现类 + * + * @author 超级管理员 + */ +@Service +@Validated +public class PlanItemServiceImpl implements PlanItemService { + + @Resource + private PlanItemMapper planItemMapper; + + @Override + public Long createPlanItem(PlanItemSaveReqVO createReqVO) { + // 插入 + PlanItemDO planItem = BeanUtils.toBean(createReqVO, PlanItemDO.class); + planItemMapper.insert(planItem); + + // 返回 + return planItem.getId(); + } + + @Override + public void updatePlanItem(PlanItemSaveReqVO updateReqVO) { + // 校验存在 + validatePlanItemExists(updateReqVO.getId()); + // 更新 + PlanItemDO updateObj = BeanUtils.toBean(updateReqVO, PlanItemDO.class); + planItemMapper.updateById(updateObj); + } + + @Override + public void deletePlanItem(Long id) { + // 校验存在 + validatePlanItemExists(id); + // 删除 + planItemMapper.deleteById(id); + } + + @Override + public void deletePlanItemListByIds(List ids) { + // 删除 + planItemMapper.deleteByIds(ids); + } + + + private void validatePlanItemExists(Long id) { + if (planItemMapper.selectById(id) == null) { + throw exception(PLAN_ITEM_NOT_EXISTS); + } + } + + @Override + public PlanItemDO getPlanItem(Long id) { + return planItemMapper.selectById(id); + } + + @Override + public PageResult getPlanItemPage(PlanItemPageReqVO pageReqVO) { + return planItemMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanLifeLockServiceImpl.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanLifeLockServiceImpl.java new file mode 100644 index 0000000..b6fdb0e --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanLifeLockServiceImpl.java @@ -0,0 +1,86 @@ +package cn.iocoder.admin.module.lock.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.iocoder.admin.module.lock.dal.PlanLifeLockDO; +import cn.iocoder.admin.module.lock.mapper.PlanLifeLockMapper; +import cn.iocoder.admin.module.lock.service.PlanLifeLockService; +import cn.iocoder.admin.module.lock.vo.PlanLifeLockPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanLifeLockSaveReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; + +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; + +import static cn.iocoder.admin.module.lock.enums.ErrorCodeConstants.PLAN_LIFE_LOCK_NOT_EXISTS; +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; + + +/** + * 个人生命锁 Service 实现类 + * + * @author 超级管理员 + */ +@Service +@Validated +public class PlanLifeLockServiceImpl implements PlanLifeLockService { + + @Resource + private PlanLifeLockMapper planLifeLockMapper; + + @Override + public Long createPlanLifeLock(PlanLifeLockSaveReqVO createReqVO) { + // 插入 + PlanLifeLockDO planLifeLock = BeanUtils.toBean(createReqVO, PlanLifeLockDO.class); + planLifeLockMapper.insert(planLifeLock); + + // 返回 + return planLifeLock.getId(); + } + + @Override + public void updatePlanLifeLock(PlanLifeLockSaveReqVO updateReqVO) { + // 校验存在 + validatePlanLifeLockExists(updateReqVO.getId()); + // 更新 + PlanLifeLockDO updateObj = BeanUtils.toBean(updateReqVO, PlanLifeLockDO.class); + planLifeLockMapper.updateById(updateObj); + } + + @Override + public void deletePlanLifeLock(Long id) { + // 校验存在 + validatePlanLifeLockExists(id); + // 删除 + planLifeLockMapper.deleteById(id); + } + + @Override + public void deletePlanLifeLockListByIds(List ids) { + // 删除 + planLifeLockMapper.deleteByIds(ids); + } + + + private void validatePlanLifeLockExists(Long id) { + if (planLifeLockMapper.selectById(id) == null) { + throw exception(PLAN_LIFE_LOCK_NOT_EXISTS); + } + } + + @Override + public PlanLifeLockDO getPlanLifeLock(Long id) { + return planLifeLockMapper.selectById(id); + } + + @Override + public PageResult getPlanLifeLockPage(PlanLifeLockPageReqVO pageReqVO) { + return planLifeLockMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanServiceImpl.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanServiceImpl.java new file mode 100644 index 0000000..d943009 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PlanServiceImpl.java @@ -0,0 +1,85 @@ +package cn.iocoder.admin.module.lock.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.iocoder.admin.module.lock.dal.PlanDO; +import cn.iocoder.admin.module.lock.mapper.PlanMapper; +import cn.iocoder.admin.module.lock.service.PlanService; +import cn.iocoder.admin.module.lock.vo.PlanPageReqVO; +import cn.iocoder.admin.module.lock.vo.PlanSaveReqVO; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; + +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; + + +import static cn.iocoder.admin.module.lock.enums.ErrorCodeConstants.PLAN_NOT_EXISTS; +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; + +/** + * 隔离计划 Service 实现类 + * + * @author 超级管理员 + */ +@Service +@Validated +public class PlanServiceImpl implements PlanService { + + @Resource + private PlanMapper planMapper; + + @Override + public Long createPlan(PlanSaveReqVO createReqVO) { + // 插入 + PlanDO plan = BeanUtils.toBean(createReqVO, PlanDO.class); + planMapper.insert(plan); + + // 返回 + return plan.getId(); + } + + @Override + public void updatePlan(PlanSaveReqVO updateReqVO) { + // 校验存在 + validatePlanExists(updateReqVO.getId()); + // 更新 + PlanDO updateObj = BeanUtils.toBean(updateReqVO, PlanDO.class); + planMapper.updateById(updateObj); + } + + @Override + public void deletePlan(Long id) { + // 校验存在 + validatePlanExists(id); + // 删除 + planMapper.deleteById(id); + } + + @Override + public void deletePlanListByIds(List ids) { + // 删除 + planMapper.deleteByIds(ids); + } + + + private void validatePlanExists(Long id) { + if (planMapper.selectById(id) == null) { + throw exception(PLAN_NOT_EXISTS); + } + } + + @Override + public PlanDO getPlan(Long id) { + return planMapper.selectById(id); + } + + @Override + public PageResult getPlanPage(PlanPageReqVO pageReqVO) { + return planMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PointServiceImpl.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PointServiceImpl.java new file mode 100644 index 0000000..ade96c9 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/service/impl/PointServiceImpl.java @@ -0,0 +1,86 @@ +package cn.iocoder.admin.module.lock.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.iocoder.admin.module.lock.dal.PointDO; +import cn.iocoder.admin.module.lock.mapper.PointMapper; +import cn.iocoder.admin.module.lock.service.PointService; +import cn.iocoder.admin.module.lock.vo.PointPageReqVO; +import cn.iocoder.admin.module.lock.vo.PointSaveReqVO; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; + +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; + +import static cn.iocoder.admin.module.lock.enums.ErrorCodeConstants.POINT_NOT_EXISTS; +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; + + +/** + * 隔离点 Service 实现类 + * + * @author 超级管理员 + */ +@Service +@Validated +public class PointServiceImpl implements PointService { + + @Resource + private PointMapper pointMapper; + + @Override + public Long createPoint(PointSaveReqVO createReqVO) { + // 插入 + PointDO point = BeanUtils.toBean(createReqVO, PointDO.class); + pointMapper.insert(point); + + // 返回 + return point.getId(); + } + + @Override + public void updatePoint(PointSaveReqVO updateReqVO) { + // 校验存在 + validatePointExists(updateReqVO.getId()); + // 更新 + PointDO updateObj = BeanUtils.toBean(updateReqVO, PointDO.class); + pointMapper.updateById(updateObj); + } + + @Override + public void deletePoint(Long id) { + // 校验存在 + validatePointExists(id); + // 删除 + pointMapper.deleteById(id); + } + + @Override + public void deletePointListByIds(List ids) { + // 删除 + pointMapper.deleteByIds(ids); + } + + + private void validatePointExists(Long id) { + if (pointMapper.selectById(id) == null) { + throw exception(POINT_NOT_EXISTS); + } + } + + @Override + public PointDO getPoint(Long id) { + return pointMapper.selectById(id); + } + + @Override + public PageResult getPointPage(PointPageReqVO pageReqVO) { + return pointMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/IsolationPointPageReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/IsolationPointPageReqVO.java new file mode 100644 index 0000000..35bca68 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/IsolationPointPageReqVO.java @@ -0,0 +1,26 @@ +package cn.iocoder.admin.module.lock.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 指导书与隔离点关联分页 Request VO") +@Data +public class IsolationPointPageReqVO extends PageParam { + + @Schema(description = "隔离指导书ID", example = "22721") + private Long guideId; + + @Schema(description = "隔离点ID", example = "7504") + private Long isolationPointId; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/IsolationPointRespVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/IsolationPointRespVO.java new file mode 100644 index 0000000..853c8a5 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/IsolationPointRespVO.java @@ -0,0 +1,31 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 指导书与隔离点关联 Response VO") +@Data +@ExcelIgnoreUnannotated +public class IsolationPointRespVO { + + @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "11289") + @ExcelProperty("id") + private Long id; + + @Schema(description = "隔离指导书ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "22721") + @ExcelProperty("隔离指导书ID") + private Long guideId; + + @Schema(description = "隔离点ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7504") + @ExcelProperty("隔离点ID") + private Long isolationPointId; + + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/IsolationPointSaveReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/IsolationPointSaveReqVO.java new file mode 100644 index 0000000..77d6bfe --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/IsolationPointSaveReqVO.java @@ -0,0 +1,23 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; + +@Schema(description = "管理后台 - 指导书与隔离点关联新增/修改 Request VO") +@Data +public class IsolationPointSaveReqVO { + + @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "11289") + private Long id; + + @Schema(description = "隔离指导书ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "22721") + @NotNull(message = "隔离指导书ID不能为空") + private Long guideId; + + @Schema(description = "隔离点ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7504") + @NotNull(message = "隔离点ID不能为空") + private Long isolationPointId; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockGuidePageReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockGuidePageReqVO.java new file mode 100644 index 0000000..4eb44ff --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockGuidePageReqVO.java @@ -0,0 +1,26 @@ +package cn.iocoder.admin.module.lock.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 隔离指导书分页 Request VO") +@Data +public class LockGuidePageReqVO extends PageParam { + + @Schema(description = "工作内容和范围") + private String guideContent; + + @Schema(description = "所需设备锁数量") + private Integer guideLockNums; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockGuideRespVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockGuideRespVO.java new file mode 100644 index 0000000..f09ebad --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockGuideRespVO.java @@ -0,0 +1,31 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 隔离指导书 Response VO") +@Data +@ExcelIgnoreUnannotated +public class LockGuideRespVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23225") + @ExcelProperty("主键ID") + private Long id; + + @Schema(description = "工作内容和范围") + @ExcelProperty("工作内容和范围") + private String guideContent; + + @Schema(description = "所需设备锁数量", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("所需设备锁数量") + private Integer guideLockNums; + + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockGuideSaveReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockGuideSaveReqVO.java new file mode 100644 index 0000000..b12c969 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockGuideSaveReqVO.java @@ -0,0 +1,22 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; + +@Schema(description = "管理后台 - 隔离指导书新增/修改 Request VO") +@Data +public class LockGuideSaveReqVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23225") + private Long id; + + @Schema(description = "工作内容和范围") + private String guideContent; + + @Schema(description = "所需设备锁数量", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "所需设备锁数量不能为空") + private Integer guideLockNums; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockPageReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockPageReqVO.java new file mode 100644 index 0000000..eec1326 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockPageReqVO.java @@ -0,0 +1,42 @@ +package cn.iocoder.admin.module.lock.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 电子锁分页 Request VO") +@Data +public class LockPageReqVO extends PageParam { + + @Schema(description = "编号") + private String lockNumber; + + @Schema(description = "名称", example = "王五") + private String lockName; + + @Schema(description = "状态", example = "2") + private String lockStatus; + + @Schema(description = "锁具类型", example = "1") + private String lockType; + + @Schema(description = "启用状态: 0=未启用, 1=已启用", example = "2") + private Boolean lockEnableStatus; + + @Schema(description = "上次充电时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] lockLastChargeTime; + + @Schema(description = "蓝牙ID", example = "15326") + private String lockBluetoothId; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockRespVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockRespVO.java new file mode 100644 index 0000000..795f558 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockRespVO.java @@ -0,0 +1,55 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +import java.util.*; + +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDateTime; + +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 电子锁 Response VO") +@Data +@ExcelIgnoreUnannotated +public class LockRespVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "2480") + @ExcelProperty("主键ID") + private Long id; + + @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("编号") + private String lockNumber; + + @Schema(description = "名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五") + @ExcelProperty("名称") + private String lockName; + + @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @ExcelProperty("状态") + private String lockStatus; + + @Schema(description = "锁具类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @ExcelProperty("锁具类型") + private String lockType; + + @Schema(description = "启用状态: 0=未启用, 1=已启用", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @ExcelProperty("启用状态: 0=未启用, 1=已启用") + private Boolean lockEnableStatus; + + @Schema(description = "上次充电时间") + @ExcelProperty("上次充电时间") + private LocalDateTime lockLastChargeTime; + + @Schema(description = "蓝牙ID", example = "15326") + @ExcelProperty("蓝牙ID") + private String lockBluetoothId; + + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockSaveReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockSaveReqVO.java new file mode 100644 index 0000000..3dac633 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockSaveReqVO.java @@ -0,0 +1,43 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +@Schema(description = "管理后台 - 电子锁新增/修改 Request VO") +@Data +public class LockSaveReqVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "2480") + private Long id; + + @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED) + @NotEmpty(message = "编号不能为空") + private String lockNumber; + + @Schema(description = "名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五") + @NotEmpty(message = "名称不能为空") + private String lockName; + + @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @NotEmpty(message = "状态不能为空") + private String lockStatus; + + @Schema(description = "锁具类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @NotEmpty(message = "锁具类型不能为空") + private String lockType; + + @Schema(description = "启用状态: 0=未启用, 1=已启用", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @NotNull(message = "启用状态: 0=未启用, 1=已启用不能为空") + private Boolean lockEnableStatus; + + @Schema(description = "上次充电时间") + private LocalDateTime lockLastChargeTime; + + @Schema(description = "蓝牙ID", example = "15326") + private String lockBluetoothId; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockWordRecordPageReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockWordRecordPageReqVO.java new file mode 100644 index 0000000..5267dcb --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockWordRecordPageReqVO.java @@ -0,0 +1,44 @@ +package cn.iocoder.admin.module.lock.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 电子锁操作记录分页 Request VO") +@Data +public class LockWordRecordPageReqVO extends PageParam { + + @Schema(description = "操作人ID", example = "24074") + private Long operatorId; + + @Schema(description = "电子锁ID", example = "21680") + private Long lockId; + + @Schema(description = "关联的子项详情ID (某些操作可能不关联)", example = "29583") + private Long isolationPlanItemDetailId; + + @Schema(description = "记录类型", example = "1") + private String recordType; + + @Schema(description = "操作签名 (图片路径)") + private String signaturePath; + + @Schema(description = "操作前照片 (图片路径)") + private String beforePhotoPath; + + @Schema(description = "操作后照片 (图片路径)") + private String afterPhotoPath; + + @Schema(description = "操作GPS坐标") + private String gpsCoordinates; + + @Schema(description = "操作/记录创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockWordRecordRespVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockWordRecordRespVO.java new file mode 100644 index 0000000..8e8bd32 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockWordRecordRespVO.java @@ -0,0 +1,55 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 电子锁操作记录 Response VO") +@Data +@ExcelIgnoreUnannotated +public class LockWordRecordRespVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "31635") + @ExcelProperty("主键ID") + private Long id; + + @Schema(description = "操作人ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "24074") + @ExcelProperty("操作人ID") + private Long operatorId; + + @Schema(description = "电子锁ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "21680") + @ExcelProperty("电子锁ID") + private Long lockId; + + @Schema(description = "关联的子项详情ID (某些操作可能不关联)", example = "29583") + @ExcelProperty("关联的子项详情ID (某些操作可能不关联)") + private Long isolationPlanItemDetailId; + + @Schema(description = "记录类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @ExcelProperty("记录类型") + private String recordType; + + @Schema(description = "操作签名 (图片路径)") + @ExcelProperty("操作签名 (图片路径)") + private String signaturePath; + + @Schema(description = "操作前照片 (图片路径)") + @ExcelProperty("操作前照片 (图片路径)") + private String beforePhotoPath; + + @Schema(description = "操作后照片 (图片路径)") + @ExcelProperty("操作后照片 (图片路径)") + private String afterPhotoPath; + + @Schema(description = "操作GPS坐标") + @ExcelProperty("操作GPS坐标") + private String gpsCoordinates; + + @Schema(description = "操作/记录创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("操作/记录创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockWordRecordSaveReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockWordRecordSaveReqVO.java new file mode 100644 index 0000000..8827815 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/LockWordRecordSaveReqVO.java @@ -0,0 +1,42 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; + +@Schema(description = "管理后台 - 电子锁操作记录新增/修改 Request VO") +@Data +public class LockWordRecordSaveReqVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "31635") + private Long id; + + @Schema(description = "操作人ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "24074") + @NotNull(message = "操作人ID不能为空") + private Long operatorId; + + @Schema(description = "电子锁ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "21680") + @NotNull(message = "电子锁ID不能为空") + private Long lockId; + + @Schema(description = "关联的子项详情ID (某些操作可能不关联)", example = "29583") + private Long isolationPlanItemDetailId; + + @Schema(description = "记录类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @NotEmpty(message = "记录类型不能为空") + private String recordType; + + @Schema(description = "操作签名 (图片路径)") + private String signaturePath; + + @Schema(description = "操作前照片 (图片路径)") + private String beforePhotoPath; + + @Schema(description = "操作后照片 (图片路径)") + private String afterPhotoPath; + + @Schema(description = "操作GPS坐标") + private String gpsCoordinates; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemDetailPageReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemDetailPageReqVO.java new file mode 100644 index 0000000..eac1c32 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemDetailPageReqVO.java @@ -0,0 +1,32 @@ +package cn.iocoder.admin.module.lock.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 隔离计划子项详情分页 Request VO") +@Data +public class PlanItemDetailPageReqVO extends PageParam { + + @Schema(description = "隔离计划子项ID", example = "31279") + private Long isolationPlanItemId; + + @Schema(description = "隔离点ID", example = "27424") + private Long isolationPointId; + + @Schema(description = "电子锁ID", example = "10317") + private Long lockId; + + @Schema(description = "锁状态: 0=未上锁, 1=已上锁, 2=已解锁", example = "1") + private Boolean lockStatus; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemDetailRespVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemDetailRespVO.java new file mode 100644 index 0000000..c173447 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemDetailRespVO.java @@ -0,0 +1,39 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 隔离计划子项详情 Response VO") +@Data +@ExcelIgnoreUnannotated +public class PlanItemDetailRespVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "13713") + @ExcelProperty("主键ID") + private Long id; + + @Schema(description = "隔离计划子项ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "31279") + @ExcelProperty("隔离计划子项ID") + private Long isolationPlanItemId; + + @Schema(description = "隔离点ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "27424") + @ExcelProperty("隔离点ID") + private Long isolationPointId; + + @Schema(description = "电子锁ID", example = "10317") + @ExcelProperty("电子锁ID") + private Long lockId; + + @Schema(description = "锁状态: 0=未上锁, 1=已上锁, 2=已解锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @ExcelProperty("锁状态: 0=未上锁, 1=已上锁, 2=已解锁") + private Boolean lockStatus; + + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemDetailSaveReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemDetailSaveReqVO.java new file mode 100644 index 0000000..dc1c47e --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemDetailSaveReqVO.java @@ -0,0 +1,30 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; + +@Schema(description = "管理后台 - 隔离计划子项详情新增/修改 Request VO") +@Data +public class PlanItemDetailSaveReqVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "13713") + private Long id; + + @Schema(description = "隔离计划子项ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "31279") + @NotNull(message = "隔离计划子项ID不能为空") + private Long isolationPlanItemId; + + @Schema(description = "隔离点ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "27424") + @NotNull(message = "隔离点ID不能为空") + private Long isolationPointId; + + @Schema(description = "电子锁ID", example = "10317") + private Long lockId; + + @Schema(description = "锁状态: 0=未上锁, 1=已上锁, 2=已解锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @NotNull(message = "锁状态: 0=未上锁, 1=已上锁, 2=已解锁不能为空") + private Boolean lockStatus; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemPageReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemPageReqVO.java new file mode 100644 index 0000000..4533475 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemPageReqVO.java @@ -0,0 +1,41 @@ +package cn.iocoder.admin.module.lock.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 隔离计划子项分页 Request VO") +@Data +public class PlanItemPageReqVO extends PageParam { + + @Schema(description = "隔离计划ID", example = "16895") + private Long isolationPlanId; + + @Schema(description = "隔离指导书ID", example = "23409") + private Long guideId; + + @Schema(description = "集中挂牌人ID", example = "6573") + private Long operatorId; + + @Schema(description = "集中挂牌协助人ID", example = "249") + private Long operatorHelperId; + + @Schema(description = "验证人ID", example = "19847") + private Long verifierId; + + @Schema(description = "验证协助人ID", example = "31703") + private Long verifierHelperId; + + @Schema(description = "子项状态: 0=未完成, 1=已完成", example = "2") + private Boolean status; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemRespVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemRespVO.java new file mode 100644 index 0000000..16c263c --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemRespVO.java @@ -0,0 +1,51 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 隔离计划子项 Response VO") +@Data +@ExcelIgnoreUnannotated +public class PlanItemRespVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "28057") + @ExcelProperty("主键ID") + private Long id; + + @Schema(description = "隔离计划ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16895") + @ExcelProperty("隔离计划ID") + private Long isolationPlanId; + + @Schema(description = "隔离指导书ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23409") + @ExcelProperty("隔离指导书ID") + private Long guideId; + + @Schema(description = "集中挂牌人ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "6573") + @ExcelProperty("集中挂牌人ID") + private Long operatorId; + + @Schema(description = "集中挂牌协助人ID", example = "249") + @ExcelProperty("集中挂牌协助人ID") + private Long operatorHelperId; + + @Schema(description = "验证人ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "19847") + @ExcelProperty("验证人ID") + private Long verifierId; + + @Schema(description = "验证协助人ID", example = "31703") + @ExcelProperty("验证协助人ID") + private Long verifierHelperId; + + @Schema(description = "子项状态: 0=未完成, 1=已完成", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @ExcelProperty("子项状态: 0=未完成, 1=已完成") + private Boolean status; + + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemSaveReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemSaveReqVO.java new file mode 100644 index 0000000..1daaa20 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanItemSaveReqVO.java @@ -0,0 +1,41 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; + +@Schema(description = "管理后台 - 隔离计划子项新增/修改 Request VO") +@Data +public class PlanItemSaveReqVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "28057") + private Long id; + + @Schema(description = "隔离计划ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16895") + @NotNull(message = "隔离计划ID不能为空") + private Long isolationPlanId; + + @Schema(description = "隔离指导书ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23409") + @NotNull(message = "隔离指导书ID不能为空") + private Long guideId; + + @Schema(description = "集中挂牌人ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "6573") + @NotNull(message = "集中挂牌人ID不能为空") + private Long operatorId; + + @Schema(description = "集中挂牌协助人ID", example = "249") + private Long operatorHelperId; + + @Schema(description = "验证人ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "19847") + @NotNull(message = "验证人ID不能为空") + private Long verifierId; + + @Schema(description = "验证协助人ID", example = "31703") + private Long verifierHelperId; + + @Schema(description = "子项状态: 0=未完成, 1=已完成", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @NotNull(message = "子项状态: 0=未完成, 1=已完成不能为空") + private Boolean status; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanLifeLockPageReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanLifeLockPageReqVO.java new file mode 100644 index 0000000..c9b5ea6 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanLifeLockPageReqVO.java @@ -0,0 +1,40 @@ +package cn.iocoder.admin.module.lock.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 个人生命锁分页 Request VO") +@Data +public class PlanLifeLockPageReqVO extends PageParam { + + @Schema(description = "子项详情ID", example = "8076") + private Long isolationPlanItemDetailId; + + @Schema(description = "上锁人ID", example = "28726") + private Long userId; + + @Schema(description = "生命锁类型", example = "2") + private String lockType; + + @Schema(description = "锁定状态: 0=未上锁, 1=已上锁", example = "1") + private Boolean lockStatus; + + @Schema(description = "上锁时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] lockTime; + + @Schema(description = "解锁时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] unlockTime; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanLifeLockRespVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanLifeLockRespVO.java new file mode 100644 index 0000000..a11f197 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanLifeLockRespVO.java @@ -0,0 +1,47 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 个人生命锁 Response VO") +@Data +@ExcelIgnoreUnannotated +public class PlanLifeLockRespVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "24945") + @ExcelProperty("主键ID") + private Long id; + + @Schema(description = "子项详情ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "8076") + @ExcelProperty("子项详情ID") + private Long isolationPlanItemDetailId; + + @Schema(description = "上锁人ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "28726") + @ExcelProperty("上锁人ID") + private Long userId; + + @Schema(description = "生命锁类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @ExcelProperty("生命锁类型") + private String lockType; + + @Schema(description = "锁定状态: 0=未上锁, 1=已上锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @ExcelProperty("锁定状态: 0=未上锁, 1=已上锁") + private Boolean lockStatus; + + @Schema(description = "上锁时间") + @ExcelProperty("上锁时间") + private LocalDateTime lockTime; + + @Schema(description = "解锁时间") + @ExcelProperty("解锁时间") + private LocalDateTime unlockTime; + + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanLifeLockSaveReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanLifeLockSaveReqVO.java new file mode 100644 index 0000000..6e21c49 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanLifeLockSaveReqVO.java @@ -0,0 +1,39 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +@Schema(description = "管理后台 - 个人生命锁新增/修改 Request VO") +@Data +public class PlanLifeLockSaveReqVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "24945") + private Long id; + + @Schema(description = "子项详情ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "8076") + @NotNull(message = "子项详情ID不能为空") + private Long isolationPlanItemDetailId; + + @Schema(description = "上锁人ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "28726") + @NotNull(message = "上锁人ID不能为空") + private Long userId; + + @Schema(description = "生命锁类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @NotEmpty(message = "生命锁类型不能为空") + private String lockType; + + @Schema(description = "锁定状态: 0=未上锁, 1=已上锁", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @NotNull(message = "锁定状态: 0=未上锁, 1=已上锁不能为空") + private Boolean lockStatus; + + @Schema(description = "上锁时间") + private LocalDateTime lockTime; + + @Schema(description = "解锁时间") + private LocalDateTime unlockTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanPageReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanPageReqVO.java new file mode 100644 index 0000000..fce75d5 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanPageReqVO.java @@ -0,0 +1,23 @@ +package cn.iocoder.admin.module.lock.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 隔离计划分页 Request VO") +@Data +public class PlanPageReqVO extends PageParam { + + @Schema(description = "计划名称", example = "张三") + private String ipName; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanRespVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanRespVO.java new file mode 100644 index 0000000..8d3a652 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanRespVO.java @@ -0,0 +1,27 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 隔离计划 Response VO") +@Data +@ExcelIgnoreUnannotated +public class PlanRespVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23080") + @ExcelProperty("主键ID") + private Long id; + + @Schema(description = "计划名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三") + @ExcelProperty("计划名称") + private String ipName; + + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanSaveReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanSaveReqVO.java new file mode 100644 index 0000000..27a63ef --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PlanSaveReqVO.java @@ -0,0 +1,19 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; + +@Schema(description = "管理后台 - 隔离计划新增/修改 Request VO") +@Data +public class PlanSaveReqVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23080") + private Long id; + + @Schema(description = "计划名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三") + @NotEmpty(message = "计划名称不能为空") + private String ipName; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PointPageReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PointPageReqVO.java new file mode 100644 index 0000000..c4f823b --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PointPageReqVO.java @@ -0,0 +1,32 @@ +package cn.iocoder.admin.module.lock.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 隔离点分页 Request VO") +@Data +public class PointPageReqVO extends PageParam { + + @Schema(description = "隔离点类型", example = "2") + private String ipType; + + @Schema(description = "隔离点名称", example = "李四") + private String ipName; + + @Schema(description = "隔离点位置") + private String ipLocation; + + @Schema(description = "隔离点编号") + private String ipNumber; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PointRespVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PointRespVO.java new file mode 100644 index 0000000..98315e9 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PointRespVO.java @@ -0,0 +1,39 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 隔离点 Response VO") +@Data +@ExcelIgnoreUnannotated +public class PointRespVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5317") + @ExcelProperty("主键ID") + private Long id; + + @Schema(description = "隔离点类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @ExcelProperty("隔离点类型") + private String ipType; + + @Schema(description = "隔离点名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四") + @ExcelProperty("隔离点名称") + private String ipName; + + @Schema(description = "隔离点位置") + @ExcelProperty("隔离点位置") + private String ipLocation; + + @Schema(description = "隔离点编号", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("隔离点编号") + private String ipNumber; + + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PointSaveReqVO.java b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PointSaveReqVO.java new file mode 100644 index 0000000..2c6bfb3 --- /dev/null +++ b/cc-admin-master/lock-module/src/main/java/cn/iocoder/admin/module/lock/vo/PointSaveReqVO.java @@ -0,0 +1,30 @@ +package cn.iocoder.admin.module.lock.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; + +@Schema(description = "管理后台 - 隔离点新增/修改 Request VO") +@Data +public class PointSaveReqVO { + + @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "5317") + private Long id; + + @Schema(description = "隔离点类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @NotEmpty(message = "隔离点类型不能为空") + private String ipType; + + @Schema(description = "隔离点名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四") + @NotEmpty(message = "隔离点名称不能为空") + private String ipName; + + @Schema(description = "隔离点位置") + private String ipLocation; + + @Schema(description = "隔离点编号", requiredMode = Schema.RequiredMode.REQUIRED) + @NotEmpty(message = "隔离点编号不能为空") + private String ipNumber; + +} \ No newline at end of file diff --git a/cc-admin-master/pom.xml b/cc-admin-master/pom.xml index b343acb..829c53f 100644 --- a/cc-admin-master/pom.xml +++ b/cc-admin-master/pom.xml @@ -17,6 +17,7 @@ yudao-module-infra yudao-module-bpm yudao-module-report + lock-module diff --git a/cc-admin-master/yudao-server/pom.xml b/cc-admin-master/yudao-server/pom.xml index 11e1976..4f12cc3 100644 --- a/cc-admin-master/yudao-server/pom.xml +++ b/cc-admin-master/yudao-server/pom.xml @@ -51,7 +51,12 @@ yudao-module-iot-biz ${revision} --> - + + + cn.iocoder.boot + lock-module + ${revision} + org.springframework.boot diff --git a/cc-admin-master/yudao-server/src/main/resources/application-local.yaml b/cc-admin-master/yudao-server/src/main/resources/application-local.yaml index c3ea35d..39c3c13 100644 --- a/cc-admin-master/yudao-server/src/main/resources/application-local.yaml +++ b/cc-admin-master/yudao-server/src/main/resources/application-local.yaml @@ -52,13 +52,13 @@ spring: username: root password: roomasd111 driver-class-name: com.mysql.cj.jdbc.Driver # MySQL Connector/J 8.X 连接的示例 - tdengine: - url: jdbc:TAOS-RS://192.168.0.180:6041/test - username: root - password: root - driver-class-name: com.taosdata.jdbc.rs.RestfulDriver # TDengine 连接的示例 - druid: - validation-query: SELECT 1 # TDengine 的验证 SQL +# tdengine: +# url: jdbc:TAOS-RS://192.168.0.180:6041/test +# username: root +# password: root +# driver-class-name: com.taosdata.jdbc.rs.RestfulDriver # TDengine 连接的示例 +# druid: +# validation-query: SELECT 1 # TDengine 的验证 SQL # Redis 配置。Redisson 默认的配置足够使用,一般不需要进行调优 data: