Quellcode durchsuchen

修改代码生成适配postgre
值班管理

459242451@qq.com vor 3 Jahren
Ursprung
Commit
9aa2f6f9f1
53 geänderte Dateien mit 2711 neuen und 32 gelöschten Zeilen
  1. 3 0
      README.md
  2. 8 0
      pom.xml
  3. 6 0
      ruoyi-admin/pom.xml
  4. 113 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/JgyDutyCommandContController.java
  5. 113 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/JgyDutyEmpController.java
  6. 113 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/JgyDutyGroupController.java
  7. 113 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/JgyDutyGroupDetailController.java
  8. 113 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/JgyDutyTransferController.java
  9. 1 1
      ruoyi-admin/src/main/resources/application-dev.yml
  10. 4 4
      ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java
  11. 6 0
      ruoyi-generator/src/main/java/com/ruoyi/generator/controller/GenController.java
  12. 1 1
      ruoyi-generator/src/main/java/com/ruoyi/generator/domain/GenTableColumn.java
  13. 1 1
      ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java
  14. 3 3
      ruoyi-generator/src/main/resources/generator.yml
  15. 22 6
      ruoyi-generator/src/main/resources/mapper/generator/GenTableColumnMapper.xml
  16. 42 15
      ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml
  17. 26 0
      ruoyi-zhdd/pom.xml
  18. 117 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/JgyDutyCommandCont.java
  19. 42 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/JgyDutyEmp.java
  20. 72 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/JgyDutyGroup.java
  21. 57 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/JgyDutyGroupDetail.java
  22. 52 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/JgyDutyTransfer.java
  23. 132 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/JgyDutyCommandContBo.java
  24. 70 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/JgyDutyEmpBo.java
  25. 76 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/JgyDutyGroupBo.java
  26. 88 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/JgyDutyGroupDetailBo.java
  27. 82 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/JgyDutyTransferBo.java
  28. 114 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/JgyDutyCommandContVo.java
  29. 48 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/JgyDutyEmpVo.java
  30. 69 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/JgyDutyGroupDetailVo.java
  31. 48 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/JgyDutyGroupVo.java
  32. 62 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/JgyDutyTransferVo.java
  33. 16 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/mapper/JgyDutyCommandContMapper.java
  34. 16 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/mapper/JgyDutyEmpMapper.java
  35. 16 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/mapper/JgyDutyGroupDetailMapper.java
  36. 16 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/mapper/JgyDutyGroupMapper.java
  37. 16 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/mapper/JgyDutyTransferMapper.java
  38. 56 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IJgyDutyCommandContService.java
  39. 56 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IJgyDutyEmpService.java
  40. 56 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IJgyDutyGroupDetailService.java
  41. 56 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IJgyDutyGroupService.java
  42. 56 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IJgyDutyTransferService.java
  43. 94 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/JgyDutyCommandContServiceImpl.java
  44. 85 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/JgyDutyEmpServiceImpl.java
  45. 88 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/JgyDutyGroupDetailServiceImpl.java
  46. 85 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/JgyDutyGroupServiceImpl.java
  47. 87 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/JgyDutyTransferServiceImpl.java
  48. 28 0
      ruoyi-zhdd/src/main/resources/mapper/zhdd/JgyDutyCommandContMapper.xml
  49. 14 0
      ruoyi-zhdd/src/main/resources/mapper/zhdd/JgyDutyEmpMapper.xml
  50. 17 0
      ruoyi-zhdd/src/main/resources/mapper/zhdd/JgyDutyGroupDetailMapper.xml
  51. 19 0
      ruoyi-zhdd/src/main/resources/mapper/zhdd/JgyDutyGroupMapper.xml
  52. 16 0
      ruoyi-zhdd/src/main/resources/mapper/zhdd/JgyDutyTransferMapper.xml
  53. 1 1
      sql/ry_postgresql.sql

+ 3 - 0
README.md

@@ -71,3 +71,6 @@ RuoYi-Vue-Plus 是基于 RuoYi-Vue 针对 `分布式集群` 场景升级(不兼
 | 连接池监视 | 监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。 |
 | 使用案例 | 系统的一些功能案例 |
 
+## 注意点
+
+切换数据库需要修改generator模块中GenTableColumnMapper.xml和GenTableMapper.xml,找到其中的mysql和postgresql标识

+ 8 - 0
pom.xml

@@ -213,6 +213,13 @@
                 <version>${ruoyi-vue-plus.version}</version>
             </dependency>
 
+            <!-- 指挥调度模块 -->
+            <dependency>
+                <groupId>com.ruoyi</groupId>
+                <artifactId>ruoyi-zhdd</artifactId>
+                <version>${ruoyi-vue-plus.version}</version>
+            </dependency>
+
             <!-- demo模块 -->
             <dependency>
                 <groupId>com.ruoyi</groupId>
@@ -232,6 +239,7 @@
         <module>ruoyi-common</module>
         <module>ruoyi-demo</module>
         <module>ruoyi-oss</module>
+        <module>ruoyi-zhdd</module>
     </modules>
     <packaging>pom</packaging>
 

+ 6 - 0
ruoyi-admin/pom.xml

@@ -59,6 +59,12 @@
             <artifactId>ruoyi-generator</artifactId>
         </dependency>
 
+        <!-- 指挥调度 -->
+        <dependency>
+            <groupId>com.ruoyi</groupId>
+            <artifactId>ruoyi-zhdd</artifactId>
+        </dependency>
+
         <!--  demo模块  -->
         <dependency>
             <groupId>com.ruoyi</groupId>

+ 113 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/JgyDutyCommandContController.java

@@ -0,0 +1,113 @@
+package com.ruoyi.web.controller.zhdd;
+
+import java.util.List;
+import java.util.Arrays;
+import java.util.concurrent.TimeUnit;
+
+import lombok.RequiredArgsConstructor;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.constraints.*;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.validation.annotation.Validated;
+import com.ruoyi.common.annotation.RepeatSubmit;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.validate.AddGroup;
+import com.ruoyi.common.core.validate.EditGroup;
+import com.ruoyi.common.core.validate.QueryGroup;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.zhdd.domain.vo.JgyDutyCommandContVo;
+import com.ruoyi.zhdd.domain.bo.JgyDutyCommandContBo;
+import com.ruoyi.zhdd.service.IJgyDutyCommandContService;
+import com.ruoyi.common.core.page.TableDataInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 日常值班登记Controller
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Validated
+@Api(value = "日常值班登记控制器", tags = {"日常值班登记管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/zhdd/dutyCommandCont")
+public class JgyDutyCommandContController extends BaseController {
+
+    private final IJgyDutyCommandContService iJgyDutyCommandContService;
+
+    /**
+     * 查询日常值班登记列表
+     */
+    @ApiOperation("查询日常值班登记列表")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyCommandCont:list')")
+    @GetMapping("/list")
+    public TableDataInfo<JgyDutyCommandContVo> list(@Validated(QueryGroup.class) JgyDutyCommandContBo bo) {
+        return iJgyDutyCommandContService.queryPageList(bo);
+    }
+
+    /**
+     * 导出日常值班登记列表
+     */
+    @ApiOperation("导出日常值班登记列表")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyCommandCont:export')")
+    @Log(title = "日常值班登记", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public void export(@Validated JgyDutyCommandContBo bo, HttpServletResponse response) {
+        List<JgyDutyCommandContVo> list = iJgyDutyCommandContService.queryList(bo);
+        ExcelUtil.exportExcel(list, "日常值班登记", JgyDutyCommandContVo.class, response);
+    }
+
+    /**
+     * 获取日常值班登记详细信息
+     */
+    @ApiOperation("获取日常值班登记详细信息")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyCommandCont:query')")
+    @GetMapping("/{duId}")
+    public AjaxResult<JgyDutyCommandContVo> getInfo(@NotNull(message = "主键不能为空")
+                                                  @PathVariable("duId") Long duId) {
+        return AjaxResult.success(iJgyDutyCommandContService.queryById(duId));
+    }
+
+    /**
+     * 新增日常值班登记
+     */
+    @ApiOperation("新增日常值班登记")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyCommandCont:add')")
+    @Log(title = "日常值班登记", businessType = BusinessType.INSERT)
+    @RepeatSubmit()
+    @PostMapping()
+    public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody JgyDutyCommandContBo bo) {
+        return toAjax(iJgyDutyCommandContService.insertByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改日常值班登记
+     */
+    @ApiOperation("修改日常值班登记")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyCommandCont:edit')")
+    @Log(title = "日常值班登记", businessType = BusinessType.UPDATE)
+    @RepeatSubmit()
+    @PutMapping()
+    public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody JgyDutyCommandContBo bo) {
+        return toAjax(iJgyDutyCommandContService.updateByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 删除日常值班登记
+     */
+    @ApiOperation("删除日常值班登记")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyCommandCont:remove')")
+    @Log(title = "日常值班登记" , businessType = BusinessType.DELETE)
+    @DeleteMapping("/{duIds}")
+    public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空")
+                                       @PathVariable Long[] duIds) {
+        return toAjax(iJgyDutyCommandContService.deleteWithValidByIds(Arrays.asList(duIds), true) ? 1 : 0);
+    }
+}

+ 113 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/JgyDutyEmpController.java

@@ -0,0 +1,113 @@
+package com.ruoyi.web.controller.zhdd;
+
+import java.util.List;
+import java.util.Arrays;
+import java.util.concurrent.TimeUnit;
+
+import lombok.RequiredArgsConstructor;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.constraints.*;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.validation.annotation.Validated;
+import com.ruoyi.common.annotation.RepeatSubmit;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.validate.AddGroup;
+import com.ruoyi.common.core.validate.EditGroup;
+import com.ruoyi.common.core.validate.QueryGroup;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.zhdd.domain.vo.JgyDutyEmpVo;
+import com.ruoyi.zhdd.domain.bo.JgyDutyEmpBo;
+import com.ruoyi.zhdd.service.IJgyDutyEmpService;
+import com.ruoyi.common.core.page.TableDataInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 值班人员Controller
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Validated
+@Api(value = "值班人员控制器", tags = {"值班人员管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/zhdd/dutyEmp")
+public class JgyDutyEmpController extends BaseController {
+
+    private final IJgyDutyEmpService iJgyDutyEmpService;
+
+    /**
+     * 查询值班人员列表
+     */
+    @ApiOperation("查询值班人员列表")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyEmp:list')")
+    @GetMapping("/list")
+    public TableDataInfo<JgyDutyEmpVo> list(@Validated(QueryGroup.class) JgyDutyEmpBo bo) {
+        return iJgyDutyEmpService.queryPageList(bo);
+    }
+
+    /**
+     * 导出值班人员列表
+     */
+    @ApiOperation("导出值班人员列表")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyEmp:export')")
+    @Log(title = "值班人员", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public void export(@Validated JgyDutyEmpBo bo, HttpServletResponse response) {
+        List<JgyDutyEmpVo> list = iJgyDutyEmpService.queryList(bo);
+        ExcelUtil.exportExcel(list, "值班人员", JgyDutyEmpVo.class, response);
+    }
+
+    /**
+     * 获取值班人员详细信息
+     */
+    @ApiOperation("获取值班人员详细信息")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyEmp:query')")
+    @GetMapping("/{deId}")
+    public AjaxResult<JgyDutyEmpVo> getInfo(@NotNull(message = "主键不能为空")
+                                                  @PathVariable("deId") Long deId) {
+        return AjaxResult.success(iJgyDutyEmpService.queryById(deId));
+    }
+
+    /**
+     * 新增值班人员
+     */
+    @ApiOperation("新增值班人员")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyEmp:add')")
+    @Log(title = "值班人员", businessType = BusinessType.INSERT)
+    @RepeatSubmit()
+    @PostMapping()
+    public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody JgyDutyEmpBo bo) {
+        return toAjax(iJgyDutyEmpService.insertByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改值班人员
+     */
+    @ApiOperation("修改值班人员")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyEmp:edit')")
+    @Log(title = "值班人员", businessType = BusinessType.UPDATE)
+    @RepeatSubmit()
+    @PutMapping()
+    public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody JgyDutyEmpBo bo) {
+        return toAjax(iJgyDutyEmpService.updateByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 删除值班人员
+     */
+    @ApiOperation("删除值班人员")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyEmp:remove')")
+    @Log(title = "值班人员" , businessType = BusinessType.DELETE)
+    @DeleteMapping("/{deIds}")
+    public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空")
+                                       @PathVariable Long[] deIds) {
+        return toAjax(iJgyDutyEmpService.deleteWithValidByIds(Arrays.asList(deIds), true) ? 1 : 0);
+    }
+}

+ 113 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/JgyDutyGroupController.java

@@ -0,0 +1,113 @@
+package com.ruoyi.web.controller.zhdd;
+
+import java.util.List;
+import java.util.Arrays;
+import java.util.concurrent.TimeUnit;
+
+import lombok.RequiredArgsConstructor;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.constraints.*;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.validation.annotation.Validated;
+import com.ruoyi.common.annotation.RepeatSubmit;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.validate.AddGroup;
+import com.ruoyi.common.core.validate.EditGroup;
+import com.ruoyi.common.core.validate.QueryGroup;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.zhdd.domain.vo.JgyDutyGroupVo;
+import com.ruoyi.zhdd.domain.bo.JgyDutyGroupBo;
+import com.ruoyi.zhdd.service.IJgyDutyGroupService;
+import com.ruoyi.common.core.page.TableDataInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 值班组信息Controller
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Validated
+@Api(value = "值班组信息控制器", tags = {"值班组信息管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/zhdd/dutyGroup")
+public class JgyDutyGroupController extends BaseController {
+
+    private final IJgyDutyGroupService iJgyDutyGroupService;
+
+    /**
+     * 查询值班组信息列表
+     */
+    @ApiOperation("查询值班组信息列表")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroup:list')")
+    @GetMapping("/list")
+    public TableDataInfo<JgyDutyGroupVo> list(@Validated(QueryGroup.class) JgyDutyGroupBo bo) {
+        return iJgyDutyGroupService.queryPageList(bo);
+    }
+
+    /**
+     * 导出值班组信息列表
+     */
+    @ApiOperation("导出值班组信息列表")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroup:export')")
+    @Log(title = "值班组信息", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public void export(@Validated JgyDutyGroupBo bo, HttpServletResponse response) {
+        List<JgyDutyGroupVo> list = iJgyDutyGroupService.queryList(bo);
+        ExcelUtil.exportExcel(list, "值班组信息", JgyDutyGroupVo.class, response);
+    }
+
+    /**
+     * 获取值班组信息详细信息
+     */
+    @ApiOperation("获取值班组信息详细信息")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroup:query')")
+    @GetMapping("/{groupId}")
+    public AjaxResult<JgyDutyGroupVo> getInfo(@NotNull(message = "主键不能为空")
+                                                  @PathVariable("groupId") Long groupId) {
+        return AjaxResult.success(iJgyDutyGroupService.queryById(groupId));
+    }
+
+    /**
+     * 新增值班组信息
+     */
+    @ApiOperation("新增值班组信息")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroup:add')")
+    @Log(title = "值班组信息", businessType = BusinessType.INSERT)
+    @RepeatSubmit()
+    @PostMapping()
+    public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody JgyDutyGroupBo bo) {
+        return toAjax(iJgyDutyGroupService.insertByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改值班组信息
+     */
+    @ApiOperation("修改值班组信息")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroup:edit')")
+    @Log(title = "值班组信息", businessType = BusinessType.UPDATE)
+    @RepeatSubmit()
+    @PutMapping()
+    public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody JgyDutyGroupBo bo) {
+        return toAjax(iJgyDutyGroupService.updateByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 删除值班组信息
+     */
+    @ApiOperation("删除值班组信息")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroup:remove')")
+    @Log(title = "值班组信息" , businessType = BusinessType.DELETE)
+    @DeleteMapping("/{groupIds}")
+    public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空")
+                                       @PathVariable Long[] groupIds) {
+        return toAjax(iJgyDutyGroupService.deleteWithValidByIds(Arrays.asList(groupIds), true) ? 1 : 0);
+    }
+}

+ 113 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/JgyDutyGroupDetailController.java

@@ -0,0 +1,113 @@
+package com.ruoyi.web.controller.zhdd;
+
+import java.util.List;
+import java.util.Arrays;
+import java.util.concurrent.TimeUnit;
+
+import lombok.RequiredArgsConstructor;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.constraints.*;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.validation.annotation.Validated;
+import com.ruoyi.common.annotation.RepeatSubmit;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.validate.AddGroup;
+import com.ruoyi.common.core.validate.EditGroup;
+import com.ruoyi.common.core.validate.QueryGroup;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.zhdd.domain.vo.JgyDutyGroupDetailVo;
+import com.ruoyi.zhdd.domain.bo.JgyDutyGroupDetailBo;
+import com.ruoyi.zhdd.service.IJgyDutyGroupDetailService;
+import com.ruoyi.common.core.page.TableDataInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 值班组详细Controller
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Validated
+@Api(value = "值班组详细控制器", tags = {"值班组详细管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/zhdd/dutyGroupDetail")
+public class JgyDutyGroupDetailController extends BaseController {
+
+    private final IJgyDutyGroupDetailService iJgyDutyGroupDetailService;
+
+    /**
+     * 查询值班组详细列表
+     */
+    @ApiOperation("查询值班组详细列表")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroupDetail:list')")
+    @GetMapping("/list")
+    public TableDataInfo<JgyDutyGroupDetailVo> list(@Validated(QueryGroup.class) JgyDutyGroupDetailBo bo) {
+        return iJgyDutyGroupDetailService.queryPageList(bo);
+    }
+
+    /**
+     * 导出值班组详细列表
+     */
+    @ApiOperation("导出值班组详细列表")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroupDetail:export')")
+    @Log(title = "值班组详细", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public void export(@Validated JgyDutyGroupDetailBo bo, HttpServletResponse response) {
+        List<JgyDutyGroupDetailVo> list = iJgyDutyGroupDetailService.queryList(bo);
+        ExcelUtil.exportExcel(list, "值班组详细", JgyDutyGroupDetailVo.class, response);
+    }
+
+    /**
+     * 获取值班组详细详细信息
+     */
+    @ApiOperation("获取值班组详细详细信息")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroupDetail:query')")
+    @GetMapping("/{detailId}")
+    public AjaxResult<JgyDutyGroupDetailVo> getInfo(@NotNull(message = "主键不能为空")
+                                                  @PathVariable("detailId") Long detailId) {
+        return AjaxResult.success(iJgyDutyGroupDetailService.queryById(detailId));
+    }
+
+    /**
+     * 新增值班组详细
+     */
+    @ApiOperation("新增值班组详细")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroupDetail:add')")
+    @Log(title = "值班组详细", businessType = BusinessType.INSERT)
+    @RepeatSubmit()
+    @PostMapping()
+    public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody JgyDutyGroupDetailBo bo) {
+        return toAjax(iJgyDutyGroupDetailService.insertByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改值班组详细
+     */
+    @ApiOperation("修改值班组详细")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroupDetail:edit')")
+    @Log(title = "值班组详细", businessType = BusinessType.UPDATE)
+    @RepeatSubmit()
+    @PutMapping()
+    public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody JgyDutyGroupDetailBo bo) {
+        return toAjax(iJgyDutyGroupDetailService.updateByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 删除值班组详细
+     */
+    @ApiOperation("删除值班组详细")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyGroupDetail:remove')")
+    @Log(title = "值班组详细" , businessType = BusinessType.DELETE)
+    @DeleteMapping("/{detailIds}")
+    public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空")
+                                       @PathVariable Long[] detailIds) {
+        return toAjax(iJgyDutyGroupDetailService.deleteWithValidByIds(Arrays.asList(detailIds), true) ? 1 : 0);
+    }
+}

+ 113 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/JgyDutyTransferController.java

@@ -0,0 +1,113 @@
+package com.ruoyi.web.controller.zhdd;
+
+import java.util.List;
+import java.util.Arrays;
+import java.util.concurrent.TimeUnit;
+
+import lombok.RequiredArgsConstructor;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.constraints.*;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.validation.annotation.Validated;
+import com.ruoyi.common.annotation.RepeatSubmit;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.validate.AddGroup;
+import com.ruoyi.common.core.validate.EditGroup;
+import com.ruoyi.common.core.validate.QueryGroup;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.zhdd.domain.vo.JgyDutyTransferVo;
+import com.ruoyi.zhdd.domain.bo.JgyDutyTransferBo;
+import com.ruoyi.zhdd.service.IJgyDutyTransferService;
+import com.ruoyi.common.core.page.TableDataInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * 交班事项Controller
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Validated
+@Api(value = "交班事项控制器", tags = {"交班事项管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/zhdd/dutyTransfer")
+public class JgyDutyTransferController extends BaseController {
+
+    private final IJgyDutyTransferService iJgyDutyTransferService;
+
+    /**
+     * 查询交班事项列表
+     */
+    @ApiOperation("查询交班事项列表")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyTransfer:list')")
+    @GetMapping("/list")
+    public TableDataInfo<JgyDutyTransferVo> list(@Validated(QueryGroup.class) JgyDutyTransferBo bo) {
+        return iJgyDutyTransferService.queryPageList(bo);
+    }
+
+    /**
+     * 导出交班事项列表
+     */
+    @ApiOperation("导出交班事项列表")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyTransfer:export')")
+    @Log(title = "交班事项", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public void export(@Validated JgyDutyTransferBo bo, HttpServletResponse response) {
+        List<JgyDutyTransferVo> list = iJgyDutyTransferService.queryList(bo);
+        ExcelUtil.exportExcel(list, "交班事项", JgyDutyTransferVo.class, response);
+    }
+
+    /**
+     * 获取交班事项详细信息
+     */
+    @ApiOperation("获取交班事项详细信息")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyTransfer:query')")
+    @GetMapping("/{dtId}")
+    public AjaxResult<JgyDutyTransferVo> getInfo(@NotNull(message = "主键不能为空")
+                                                  @PathVariable("dtId") Long dtId) {
+        return AjaxResult.success(iJgyDutyTransferService.queryById(dtId));
+    }
+
+    /**
+     * 新增交班事项
+     */
+    @ApiOperation("新增交班事项")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyTransfer:add')")
+    @Log(title = "交班事项", businessType = BusinessType.INSERT)
+    @RepeatSubmit()
+    @PostMapping()
+    public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody JgyDutyTransferBo bo) {
+        return toAjax(iJgyDutyTransferService.insertByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改交班事项
+     */
+    @ApiOperation("修改交班事项")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyTransfer:edit')")
+    @Log(title = "交班事项", businessType = BusinessType.UPDATE)
+    @RepeatSubmit()
+    @PutMapping()
+    public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody JgyDutyTransferBo bo) {
+        return toAjax(iJgyDutyTransferService.updateByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 删除交班事项
+     */
+    @ApiOperation("删除交班事项")
+    @PreAuthorize("@ss.hasPermi('zhdd:dutyTransfer:remove')")
+    @Log(title = "交班事项" , businessType = BusinessType.DELETE)
+    @DeleteMapping("/{dtIds}")
+    public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空")
+                                       @PathVariable Long[] dtIds) {
+        return toAjax(iJgyDutyTransferService.deleteWithValidByIds(Arrays.asList(dtIds), true) ? 1 : 0);
+    }
+}

+ 1 - 1
ruoyi-admin/src/main/resources/application-dev.yml

@@ -5,7 +5,7 @@ spring:
     # 动态数据源文档 https://www.kancloud.cn/tracy5546/dynamic-datasource/content
     dynamic:
       # 性能分析插件(有性能损耗 不建议生产环境使用)
-      p6spy: false
+      p6spy: true
       # 设置默认的数据源或者数据源组,默认值即为 master
       primary: master
       datasource:

+ 4 - 4
ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java

@@ -2,7 +2,7 @@ package com.ruoyi.common.constant;
 
 /**
  * 代码生成通用常量
- * 
+ *
  * @author ruoyi
  */
 public class GenConstants
@@ -32,7 +32,7 @@ public class GenConstants
     public static final String PARENT_MENU_NAME = "parentMenuName";
 
     /** 数据库字符串类型 */
-    public static final String[] COLUMNTYPE_STR = { "char", "varchar", "nvarchar", "varchar2" };
+    public static final String[] COLUMNTYPE_STR = { "bpchar", "char", "varchar", "nvarchar", "varchar2" };
 
     /** 数据库文本类型 */
     public static final String[] COLUMNTYPE_TEXT = { "tinytext", "text", "mediumtext", "longtext" };
@@ -41,8 +41,8 @@ public class GenConstants
     public static final String[] COLUMNTYPE_TIME = { "datetime", "time", "date", "timestamp" };
 
     /** 数据库数字类型 */
-    public static final String[] COLUMNTYPE_NUMBER = { "tinyint", "smallint", "mediumint", "int", "number", "integer",
-            "bit", "bigint", "float", "double", "decimal" };
+    public static final String[] COLUMNTYPE_NUMBER = { "tinyint", "smallint", "mediumint", "int", "int2", "int4", "int8", "number", "integer",
+            "bit", "bigint", "float", "double", "decimal", "numeric", "serial", "bigserial" };
 
     /** 页面不需要编辑字段 */
     public static final String[] COLUMNNAME_NOT_EDIT = { "id", "create_by", "create_time", "del_flag" };

+ 6 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/controller/GenController.java

@@ -10,6 +10,9 @@ import com.ruoyi.generator.domain.GenTable;
 import com.ruoyi.generator.domain.GenTableColumn;
 import com.ruoyi.generator.service.IGenTableColumnService;
 import com.ruoyi.generator.service.IGenTableService;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
 import org.apache.commons.io.IOUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -94,6 +97,7 @@ public class GenController extends BaseController
     @PreAuthorize("@ss.hasPermi('tool:gen:import')")
     @Log(title = "代码生成", businessType = BusinessType.IMPORT)
     @PostMapping("/importTable")
+    @ApiOperation("导入表结构(保存)")
     public AjaxResult importTableSave(String tables)
     {
         String[] tableNames = Convert.toStrArray(tables);
@@ -109,6 +113,7 @@ public class GenController extends BaseController
     @PreAuthorize("@ss.hasPermi('tool:gen:edit')")
     @Log(title = "代码生成", businessType = BusinessType.UPDATE)
     @PutMapping
+    @ApiOperation("修改保存代码生成业务")
     public AjaxResult editSave(@Validated @RequestBody GenTable genTable)
     {
         genTableService.validateEdit(genTable);
@@ -122,6 +127,7 @@ public class GenController extends BaseController
     @PreAuthorize("@ss.hasPermi('tool:gen:remove')")
     @Log(title = "代码生成", businessType = BusinessType.DELETE)
     @DeleteMapping("/{tableIds}")
+    @ApiOperation("删除代码生成")
     public AjaxResult remove(@PathVariable Long[] tableIds)
     {
         genTableService.deleteGenTableByIds(tableIds);

+ 1 - 1
ruoyi-generator/src/main/java/com/ruoyi/generator/domain/GenTableColumn.java

@@ -28,7 +28,7 @@ public class GenTableColumn implements Serializable {
     /**
      * 编号
      */
-    @TableId(value = "column_id", type = IdType.AUTO)
+    @TableId(value = "column_id", type = IdType.ASSIGN_ID)
     private Long columnId;
 
     /**

+ 1 - 1
ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java

@@ -62,7 +62,7 @@ public class GenUtils
 
             // 如果是浮点型 统一用BigDecimal
             String[] str = StringUtils.split(StringUtils.substringBetween(column.getColumnType(), "(", ")"), ",");
-            if (str != null && str.length == 2 && Integer.parseInt(str[1]) > 0)
+            if (str != null && str.length == 2 && Integer.parseInt(str[1]) > 0 || "numeric".equals(dataType))
             {
                 column.setJavaType(GenConstants.TYPE_BIGDECIMAL);
             }

+ 3 - 3
ruoyi-generator/src/main/resources/generator.yml

@@ -1,10 +1,10 @@
 # 代码生成
-gen: 
+gen:
   # 作者
   author: ruoyi
   # 默认生成包路径 system 需改成自己的模块名称 如 system monitor tool
-  packageName: com.ruoyi.system
+  packageName: com.ruoyi.zhdd
   # 自动去除表前缀,默认是false
   autoRemovePre: false
   # 表前缀(生成类名不会包含表前缀,多个用逗号分隔)
-  tablePrefix: sys_
+  tablePrefix: sys_

+ 22 - 6
ruoyi-generator/src/main/resources/mapper/generator/GenTableColumnMapper.xml

@@ -3,7 +3,7 @@
 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.ruoyi.generator.mapper.GenTableColumnMapper">
-    
+
     <resultMap type="GenTableColumn" id="GenTableColumnResult">
         <id     property="columnId"       column="column_id"      />
         <result property="tableId"        column="table_id"       />
@@ -28,11 +28,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="updateBy"       column="update_by"      />
         <result property="updateTime"     column="update_time"    />
     </resultMap>
-    
+
+    <!-- mysql -->
+<!--    select column_name, (case when (is_nullable = 'no' <![CDATA[ && ]]> column_key != 'PRI') then '1' else null end) as is_required, (case when column_key = 'PRI' then '1' else '0' end) as is_pk, ordinal_position as sort, column_comment, (case when extra = 'auto_increment' then '1' else '0' end) as is_increment, column_type-->
+<!--    from information_schema.columns where table_schema = (select database()) and table_name = (#{tableName})-->
+<!--    order by ordinal_position-->
     <select id="selectDbTableColumnsByName" parameterType="String" resultMap="GenTableColumnResult">
-		select column_name, (case when (is_nullable = 'no' <![CDATA[ && ]]> column_key != 'PRI') then '1' else null end) as is_required, (case when column_key = 'PRI' then '1' else '0' end) as is_pk, ordinal_position as sort, column_comment, (case when extra = 'auto_increment' then '1' else '0' end) as is_increment, column_type
-		from information_schema.columns where table_schema = (select database()) and table_name = (#{tableName})
-		order by ordinal_position
+        <!-- postgresql -->
+        select
+            column_name,
+            is_required,
+            is_pk,
+            sort,
+            column_comment,
+            is_increment,
+            column_type
+        from
+            view_self_table_columns
+        where
+            table_catalog  = (select current_catalog)
+          and table_schema = (select current_schema())
+          and table_name = #{tableName}
 	</select>
 
-</mapper>
+</mapper>

+ 42 - 15
ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml

@@ -27,7 +27,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="remark"         column="remark"            />
 		<collection  property="columns"  javaType="java.util.List"  resultMap="GenTableColumnResult" />
 	</resultMap>
-	
+
 	<resultMap type="GenTableColumn" id="GenTableColumnResult">
         <id     property="columnId"       column="column_id"      />
         <result property="tableId"        column="table_id"       />
@@ -52,7 +52,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="updateBy"       column="update_by"      />
         <result property="updateTime"     column="update_time"    />
     </resultMap>
-	
+
 	<sql id="selectGenTableVo">
         select table_id, table_name, table_comment, sub_table_name, sub_table_fk_name, class_name, tpl_category, package_name, module_name, business_name, function_name, function_author, gen_type, gen_path, options, create_by, create_time, update_by, update_time, remark from gen_table
     </sql>
@@ -75,7 +75,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		</where>
 	</select>
 
-	<select id="selectPageDbTableList" parameterType="GenTable" resultMap="GenTableResult">
+    <!-- mysql -->
+	<!--<select id="selectPageDbTableList" parameterType="GenTable" resultMap="GenTableResult">
 		select table_name, table_comment, create_time, update_time from information_schema.tables
 		where table_schema = (select database())
 		AND table_name NOT LIKE 'qrtz_%' AND table_name NOT LIKE 'gen_%'
@@ -86,14 +87,35 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<if test="genTable.tableComment != null and genTable.tableComment != ''">
 			AND lower(table_comment) like lower(concat('%', #{genTable.tableComment}, '%'))
 		</if>
-		<if test="genTable.params.beginTime != null and genTable.params.beginTime != ''"><!-- 开始时间检索 -->
+		<if test="genTable.params.beginTime != null and genTable.params.beginTime != ''">&lt;!&ndash; 开始时间检索 &ndash;&gt;
 			AND date_format(create_time,'%y%m%d') &gt;= date_format(#{genTable.params.beginTime},'%y%m%d')
 		</if>
-		<if test="genTable.params.endTime != null and genTable.params.endTime != ''"><!-- 结束时间检索 -->
+		<if test="genTable.params.endTime != null and genTable.params.endTime != ''">&lt;!&ndash; 结束时间检索 &ndash;&gt;
 			AND date_format(create_time,'%y%m%d') &lt;= date_format(#{genTable.params.endTime},'%y%m%d')
 		</if>
 		order by create_time desc
-	</select>
+	</select>-->
+
+    <!-- postgresql -->
+    <select id="selectPageDbTableList" parameterType="GenTable" resultMap="GenTableResult">
+        select table_name, table_comment, create_time, update_time from view_self_table
+        where table_schema = (select current_schema()) and table_catalog  = (select current_catalog)
+        AND table_name NOT LIKE 'qrtz_%' AND table_name NOT LIKE 'gen_%' AND table_name NOT LIKE 'flyway_schema_%'
+        AND table_name NOT IN (select table_name from gen_table)
+        <if test="genTable.tableName != null and genTable.tableName != ''">
+            AND lower(table_name) like lower(concat('%', #{genTable.tableName}::text, '%'))
+        </if>
+        <if test="genTable.tableComment != null and genTable.tableComment != ''">
+            AND lower(table_comment) like lower(concat('%', #{genTable.tableComment}::text, '%'))
+        </if>
+        <if test="genTable.params.beginTime != null and genTable.params.beginTime != ''"><!-- 开始时间检索 -->
+            AND to_char(create_time,'yyyy-mm-dd') &gt;= #{genTable.params.beginTime}::text
+        </if>
+        <if test="genTable.params.endTime != null and genTable.params.endTime != ''"><!-- 结束时间检索 -->
+            AND to_char(create_time,'yyyy-mm-dd') &lt;= #{genTable.params.endTime}::text
+        </if>
+        order by create_time desc
+    </select>
 
 
 	<select id="selectGenTableList" parameterType="GenTable" resultMap="GenTableResult">
@@ -133,22 +155,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		</if>
         order by create_time desc
 	</select>
-	
+
 	<select id="selectDbTableListByNames" resultMap="GenTableResult">
-		select table_name, table_comment, create_time, update_time from information_schema.tables
+        <!-- mysql -->
+		/*select table_name, table_comment, create_time, update_time from information_schema.tables
 		where table_name NOT LIKE 'qrtz_%' and table_name NOT LIKE 'gen_%' and table_schema = (select database())
-		and table_name in
+		and table_name in*/
+        <!-- postgresql -->
+        select table_name, table_comment, create_time, update_time from view_self_table
+        where table_name NOT LIKE 'qrtz_%' and table_name NOT LIKE 'gen_%' AND table_name NOT LIKE 'flyway_schema_%' and table_schema = (select current_schema()) and table_catalog  = (select current_catalog)
+        and table_name in
 	    <foreach collection="array" item="name" open="(" separator="," close=")">
  			#{name}
-        </foreach> 
+        </foreach>
 	</select>
-	
+
 	<select id="selectTableByName" parameterType="String" resultMap="GenTableResult">
 		select table_name, table_comment, create_time, update_time from information_schema.tables
 		where table_comment <![CDATA[ <> ]]> '' and table_schema = (select database())
 		and table_name = #{tableName}
 	</select>
-	
+
 	<select id="selectGenTableById" parameterType="Long" resultMap="GenTableResult">
 	    SELECT t.table_id, t.table_name, t.table_comment, t.sub_table_name, t.sub_table_fk_name, t.class_name, t.tpl_category, t.package_name, t.module_name, t.business_name, t.function_name, t.function_author, t.gen_type, t.gen_path, t.options, t.remark,
 			   c.column_id, c.column_name, c.column_comment, c.column_type, c.java_type, c.java_field, c.is_pk, c.is_increment, c.is_required, c.is_insert, c.is_edit, c.is_list, c.is_query, c.query_type, c.html_type, c.dict_type, c.sort
@@ -156,7 +183,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			 LEFT JOIN gen_table_column c ON t.table_id = c.table_id
 		where t.table_id = #{tableId} order by c.sort
 	</select>
-	
+
 	<select id="selectGenTableByName" parameterType="String" resultMap="GenTableResult">
 	    SELECT t.table_id, t.table_name, t.table_comment, t.sub_table_name, t.sub_table_fk_name, t.class_name, t.tpl_category, t.package_name, t.module_name, t.business_name, t.function_name, t.function_author, t.gen_type, t.gen_path, t.options, t.remark,
 			   c.column_id, c.column_name, c.column_comment, c.column_type, c.java_type, c.java_field, c.is_pk, c.is_increment, c.is_required, c.is_insert, c.is_edit, c.is_list, c.is_query, c.query_type, c.html_type, c.dict_type, c.sort
@@ -164,7 +191,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			 LEFT JOIN gen_table_column c ON t.table_id = c.table_id
 		where t.table_name = #{tableName} order by c.sort
 	</select>
-	
+
 	<select id="selectGenTableAll" parameterType="String" resultMap="GenTableResult">
 	    SELECT t.table_id, t.table_name, t.table_comment, t.sub_table_name, t.sub_table_fk_name, t.class_name, t.tpl_category, t.package_name, t.module_name, t.business_name, t.function_name, t.function_author, t.options, t.remark,
 			   c.column_id, c.column_name, c.column_comment, c.column_type, c.java_type, c.java_field, c.is_pk, c.is_increment, c.is_required, c.is_insert, c.is_edit, c.is_list, c.is_query, c.query_type, c.html_type, c.dict_type, c.sort
@@ -173,4 +200,4 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		order by c.sort
 	</select>
 
-</mapper>
+</mapper>

+ 26 - 0
ruoyi-zhdd/pom.xml

@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>ruoyi-vue-plus</artifactId>
+        <groupId>com.ruoyi</groupId>
+        <version>3.1.0</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>ruoyi-zhdd</artifactId>
+
+    <description>
+        指挥调度模块
+    </description>
+
+    <dependencies>
+        <!-- 通用工具-->
+        <dependency>
+            <groupId>com.ruoyi</groupId>
+            <artifactId>ruoyi-common</artifactId>
+        </dependency>
+    </dependencies>
+
+</project>

+ 117 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/JgyDutyCommandCont.java

@@ -0,0 +1,117 @@
+package com.ruoyi.zhdd.domain;
+
+import com.baomidou.mybatisplus.annotation.*;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+import java.io.Serializable;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 日常值班登记对象 jgy_duty_command_cont
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("jgy_duty_command_cont")
+public class JgyDutyCommandCont implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+
+    /**
+     * 值班ID
+     */
+    @TableId(value = "du_id", type = IdType.AUTO)
+    private Long duId;
+
+    /**
+     * 所属管理处
+     */
+    private Long moId;
+
+    /**
+     * 值班日期
+     */
+    private Date dccDate;
+
+    /**
+     * 值班开始时间
+     */
+    private Date dccStartDate;
+
+    /**
+     * 值班结束时间
+     */
+    private Date dccEndDate;
+
+    /**
+     * 班次
+     */
+    private String dccSNum;
+
+    /**
+     * 天气
+     */
+    private String dccWeather;
+
+    /**
+     * 值班人员
+     */
+    private String duEmpName;
+
+    /**
+     * 接班ID
+     */
+    private Long dduId;
+
+    /**
+     * 接班人员
+     */
+    private String dduEmpName;
+
+    /**
+     * 交接班状态(0初始化  1:交班完成  2:接班完成)
+     */
+    private Long duStatus;
+
+    /**
+     * 值班人员id
+     */
+    private String duEmpId;
+
+    /**
+     * $column.columnComment
+     */
+    @TableLogic
+    private String delFlag;
+
+    /**
+     * $column.columnComment
+     */
+    @TableField(fill = FieldFill.INSERT)
+    private String createBy;
+
+    /**
+     * $column.columnComment
+     */
+    @TableField(fill = FieldFill.INSERT)
+    private Date createTime;
+
+    /**
+     * $column.columnComment
+     */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private String updateBy;
+
+    /**
+     * $column.columnComment
+     */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Date updateTime;
+
+}

+ 42 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/JgyDutyEmp.java

@@ -0,0 +1,42 @@
+package com.ruoyi.zhdd.domain;
+
+import com.baomidou.mybatisplus.annotation.*;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+import java.io.Serializable;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 值班人员对象 jgy_duty_emp
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("jgy_duty_emp")
+public class JgyDutyEmp implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+
+    /**
+     * 值班人员Id
+     */
+    @TableId(value = "de_id", type = IdType.AUTO)
+    private Long deId;
+
+    /**
+     * 值班ID
+     */
+    private Long duId;
+
+    /**
+     * $column.columnComment
+     */
+    private Long empId;
+
+}

+ 72 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/JgyDutyGroup.java

@@ -0,0 +1,72 @@
+package com.ruoyi.zhdd.domain;
+
+import com.baomidou.mybatisplus.annotation.*;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+import java.io.Serializable;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 值班组信息对象 jgy_duty_group
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("jgy_duty_group")
+public class JgyDutyGroup implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+
+    /**
+     * 值班组号
+     */
+    @TableId(value = "group_id", type = IdType.AUTO)
+    private Long groupId;
+
+    /**
+     * 所属管理处
+     */
+    private Long moId;
+
+    /**
+     * 值班组名称
+     */
+    private String name;
+
+    /**
+     * $column.columnComment
+     */
+    @TableLogic
+    private String delFlag;
+
+    /**
+     * $column.columnComment
+     */
+    @TableField(fill = FieldFill.INSERT)
+    private String createBy;
+
+    /**
+     * $column.columnComment
+     */
+    @TableField(fill = FieldFill.INSERT)
+    private Date createTime;
+
+    /**
+     * $column.columnComment
+     */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private String updateBy;
+
+    /**
+     * $column.columnComment
+     */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Date updateTime;
+
+}

+ 57 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/JgyDutyGroupDetail.java

@@ -0,0 +1,57 @@
+package com.ruoyi.zhdd.domain;
+
+import com.baomidou.mybatisplus.annotation.*;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+import java.io.Serializable;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 值班组详细对象 jgy_duty_group_detail
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("jgy_duty_group_detail")
+public class JgyDutyGroupDetail implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+
+    /**
+     * 值班组详细
+     */
+    @TableId(value = "detail_id", type = IdType.AUTO)
+    private Long detailId;
+
+    /**
+     * 组号
+     */
+    private Long groupId;
+
+    /**
+     * 人员号
+     */
+    private Long empId;
+
+    /**
+     * 人员名称
+     */
+    private String empName;
+
+    /**
+     * 是否班长
+     */
+    private Long leaderFlag;
+
+    /**
+     * 是否副班长
+     */
+    private Long viceLeaderFlag;
+
+}

+ 52 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/JgyDutyTransfer.java

@@ -0,0 +1,52 @@
+package com.ruoyi.zhdd.domain;
+
+import com.baomidou.mybatisplus.annotation.*;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+import java.io.Serializable;
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * 交班事项对象 jgy_duty_transfer
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("jgy_duty_transfer")
+public class JgyDutyTransfer implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+
+    /**
+     * pk
+     */
+    @TableId(value = "dt_id", type = IdType.AUTO)
+    private Long dtId;
+
+    /**
+     * 值班ID
+     */
+    private Long duId;
+
+    /**
+     * 事件ID
+     */
+    private Long eventId;
+
+    /**
+     * 移交类型
+     */
+    private Long dtType;
+
+    /**
+     * 事件来源
+     */
+    private Long dtSource;
+
+}

+ 132 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/JgyDutyCommandContBo.java

@@ -0,0 +1,132 @@
+package com.ruoyi.zhdd.domain.bo;
+
+import com.ruoyi.common.core.validate.AddGroup;
+import com.ruoyi.common.core.validate.EditGroup;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import javax.validation.constraints.*;
+
+import java.util.Date;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 日常值班登记业务对象 jgy_duty_command_cont
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("日常值班登记业务对象")
+public class JgyDutyCommandContBo extends BaseEntity {
+
+    /**
+     * 值班ID
+     */
+    @ApiModelProperty(value = "值班ID")
+    private Long duId;
+
+    /**
+     * 所属管理处
+     */
+    @ApiModelProperty(value = "所属管理处")
+    private Long moId;
+
+    /**
+     * 值班日期
+     */
+    @ApiModelProperty(value = "值班日期")
+    private Date dccDate;
+
+    /**
+     * 值班开始时间
+     */
+    @ApiModelProperty(value = "值班开始时间")
+    private Date dccStartDate;
+
+    /**
+     * 值班结束时间
+     */
+    @ApiModelProperty(value = "值班结束时间")
+    private Date dccEndDate;
+
+    /**
+     * 班次
+     */
+    @ApiModelProperty(value = "班次")
+    private String dccSNum;
+
+    /**
+     * 天气
+     */
+    @ApiModelProperty(value = "天气")
+    private String dccWeather;
+
+    /**
+     * 值班人员
+     */
+    @ApiModelProperty(value = "值班人员")
+    private String duEmpName;
+
+    /**
+     * 接班ID
+     */
+    @ApiModelProperty(value = "接班ID")
+    private Long dduId;
+
+    /**
+     * 接班人员
+     */
+    @ApiModelProperty(value = "接班人员")
+    private String dduEmpName;
+
+    /**
+     * 交接班状态(0初始化  1:交班完成  2:接班完成)
+     */
+    @ApiModelProperty(value = "交接班状态(0初始化  1:交班完成  2:接班完成)")
+    private Long duStatus;
+
+    /**
+     * 值班人员id
+     */
+    @ApiModelProperty(value = "值班人员id")
+    private String duEmpId;
+
+    /**
+     * $column.columnComment
+     */
+    @ApiModelProperty(value = "$column.columnComment")
+    private String delFlag;
+
+
+    /**
+     * 分页大小
+     */
+    @ApiModelProperty("分页大小")
+    private Integer pageSize;
+
+    /**
+     * 当前页数
+     */
+    @ApiModelProperty("当前页数")
+    private Integer pageNum;
+
+    /**
+     * 排序列
+     */
+    @ApiModelProperty("排序列")
+    private String orderByColumn;
+
+    /**
+     * 排序的方向desc或者asc
+     */
+    @ApiModelProperty(value = "排序的方向", example = "asc,desc")
+    private String isAsc;
+
+}

+ 70 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/JgyDutyEmpBo.java

@@ -0,0 +1,70 @@
+package com.ruoyi.zhdd.domain.bo;
+
+import com.ruoyi.common.core.validate.AddGroup;
+import com.ruoyi.common.core.validate.EditGroup;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import javax.validation.constraints.*;
+
+import java.util.Date;
+
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 值班人员业务对象 jgy_duty_emp
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("值班人员业务对象")
+public class JgyDutyEmpBo extends BaseEntity {
+
+    /**
+     * 值班人员Id
+     */
+    @ApiModelProperty(value = "值班人员Id")
+    private Long deId;
+
+    /**
+     * 值班ID
+     */
+    @ApiModelProperty(value = "值班ID")
+    private Long duId;
+
+    /**
+     * $column.columnComment
+     */
+    @ApiModelProperty(value = "$column.columnComment")
+    private Long empId;
+
+
+    /**
+     * 分页大小
+     */
+    @ApiModelProperty("分页大小")
+    private Integer pageSize;
+
+    /**
+     * 当前页数
+     */
+    @ApiModelProperty("当前页数")
+    private Integer pageNum;
+
+    /**
+     * 排序列
+     */
+    @ApiModelProperty("排序列")
+    private String orderByColumn;
+
+    /**
+     * 排序的方向desc或者asc
+     */
+    @ApiModelProperty(value = "排序的方向", example = "asc,desc")
+    private String isAsc;
+
+}

+ 76 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/JgyDutyGroupBo.java

@@ -0,0 +1,76 @@
+package com.ruoyi.zhdd.domain.bo;
+
+import com.ruoyi.common.core.validate.AddGroup;
+import com.ruoyi.common.core.validate.EditGroup;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import javax.validation.constraints.*;
+
+import java.util.Date;
+
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 值班组信息业务对象 jgy_duty_group
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("值班组信息业务对象")
+public class JgyDutyGroupBo extends BaseEntity {
+
+    /**
+     * 值班组号
+     */
+    @ApiModelProperty(value = "值班组号")
+    private Long groupId;
+
+    /**
+     * 所属管理处
+     */
+    @ApiModelProperty(value = "所属管理处")
+    private Long moId;
+
+    /**
+     * 值班组名称
+     */
+    @ApiModelProperty(value = "值班组名称")
+    private String name;
+
+    /**
+     * $column.columnComment
+     */
+    @ApiModelProperty(value = "$column.columnComment")
+    private String delFlag;
+
+
+    /**
+     * 分页大小
+     */
+    @ApiModelProperty("分页大小")
+    private Integer pageSize;
+
+    /**
+     * 当前页数
+     */
+    @ApiModelProperty("当前页数")
+    private Integer pageNum;
+
+    /**
+     * 排序列
+     */
+    @ApiModelProperty("排序列")
+    private String orderByColumn;
+
+    /**
+     * 排序的方向desc或者asc
+     */
+    @ApiModelProperty(value = "排序的方向", example = "asc,desc")
+    private String isAsc;
+
+}

+ 88 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/JgyDutyGroupDetailBo.java

@@ -0,0 +1,88 @@
+package com.ruoyi.zhdd.domain.bo;
+
+import com.ruoyi.common.core.validate.AddGroup;
+import com.ruoyi.common.core.validate.EditGroup;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import javax.validation.constraints.*;
+
+import java.util.Date;
+
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 值班组详细业务对象 jgy_duty_group_detail
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("值班组详细业务对象")
+public class JgyDutyGroupDetailBo extends BaseEntity {
+
+    /**
+     * 值班组详细
+     */
+    @ApiModelProperty(value = "值班组详细")
+    private Long detailId;
+
+    /**
+     * 组号
+     */
+    @ApiModelProperty(value = "组号")
+    private Long groupId;
+
+    /**
+     * 人员号
+     */
+    @ApiModelProperty(value = "人员号")
+    private Long empId;
+
+    /**
+     * 人员名称
+     */
+    @ApiModelProperty(value = "人员名称")
+    private String empName;
+
+    /**
+     * 是否班长
+     */
+    @ApiModelProperty(value = "是否班长")
+    private Long leaderFlag;
+
+    /**
+     * 是否副班长
+     */
+    @ApiModelProperty(value = "是否副班长")
+    private Long viceLeaderFlag;
+
+
+    /**
+     * 分页大小
+     */
+    @ApiModelProperty("分页大小")
+    private Integer pageSize;
+
+    /**
+     * 当前页数
+     */
+    @ApiModelProperty("当前页数")
+    private Integer pageNum;
+
+    /**
+     * 排序列
+     */
+    @ApiModelProperty("排序列")
+    private String orderByColumn;
+
+    /**
+     * 排序的方向desc或者asc
+     */
+    @ApiModelProperty(value = "排序的方向", example = "asc,desc")
+    private String isAsc;
+
+}

+ 82 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/JgyDutyTransferBo.java

@@ -0,0 +1,82 @@
+package com.ruoyi.zhdd.domain.bo;
+
+import com.ruoyi.common.core.validate.AddGroup;
+import com.ruoyi.common.core.validate.EditGroup;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import javax.validation.constraints.*;
+
+import java.util.Date;
+
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 交班事项业务对象 jgy_duty_transfer
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("交班事项业务对象")
+public class JgyDutyTransferBo extends BaseEntity {
+
+    /**
+     * pk
+     */
+    @ApiModelProperty(value = "pk")
+    private Long dtId;
+
+    /**
+     * 值班ID
+     */
+    @ApiModelProperty(value = "值班ID")
+    private Long duId;
+
+    /**
+     * 事件ID
+     */
+    @ApiModelProperty(value = "事件ID")
+    private Long eventId;
+
+    /**
+     * 移交类型
+     */
+    @ApiModelProperty(value = "移交类型")
+    private Long dtType;
+
+    /**
+     * 事件来源
+     */
+    @ApiModelProperty(value = "事件来源")
+    private Long dtSource;
+
+
+    /**
+     * 分页大小
+     */
+    @ApiModelProperty("分页大小")
+    private Integer pageSize;
+
+    /**
+     * 当前页数
+     */
+    @ApiModelProperty("当前页数")
+    private Integer pageNum;
+
+    /**
+     * 排序列
+     */
+    @ApiModelProperty("排序列")
+    private String orderByColumn;
+
+    /**
+     * 排序的方向desc或者asc
+     */
+    @ApiModelProperty(value = "排序的方向", example = "asc,desc")
+    private String isAsc;
+
+}

+ 114 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/JgyDutyCommandContVo.java

@@ -0,0 +1,114 @@
+package com.ruoyi.zhdd.domain.vo;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.ruoyi.common.annotation.ExcelDictFormat;
+import com.ruoyi.common.convert.ExcelDictConvert;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 日常值班登记视图对象 jgy_duty_command_cont
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Data
+@ApiModel("日常值班登记视图对象")
+@ExcelIgnoreUnannotated
+public class JgyDutyCommandContVo {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+     *  值班ID
+     */
+	@ApiModelProperty("值班ID")
+	private Long duId;
+
+    /**
+     * 所属管理处
+     */
+	@ExcelProperty(value = "所属管理处")
+	@ApiModelProperty("所属管理处")
+	private Long moId;
+
+    /**
+     * 值班日期
+     */
+	@ExcelProperty(value = "值班日期")
+	@ApiModelProperty("值班日期")
+	private Date dccDate;
+
+    /**
+     * 值班开始时间
+     */
+	@ExcelProperty(value = "值班开始时间")
+	@ApiModelProperty("值班开始时间")
+	private Date dccStartDate;
+
+    /**
+     * 值班结束时间
+     */
+	@ExcelProperty(value = "值班结束时间")
+	@ApiModelProperty("值班结束时间")
+	private Date dccEndDate;
+
+    /**
+     * 班次
+     */
+	@ExcelProperty(value = "班次")
+	@ApiModelProperty("班次")
+	private String dccSNum;
+
+    /**
+     * 天气
+     */
+	@ExcelProperty(value = "天气")
+	@ApiModelProperty("天气")
+	private String dccWeather;
+
+    /**
+     * 值班人员
+     */
+	@ExcelProperty(value = "值班人员")
+	@ApiModelProperty("值班人员")
+	private String duEmpName;
+
+    /**
+     * 接班ID
+     */
+	@ExcelProperty(value = "接班ID")
+	@ApiModelProperty("接班ID")
+	private Long dduId;
+
+    /**
+     * 接班人员
+     */
+	@ExcelProperty(value = "接班人员")
+	@ApiModelProperty("接班人员")
+	private String dduEmpName;
+
+    /**
+     * 交接班状态(0初始化  1:交班完成  2:接班完成)
+     */
+	@ExcelProperty(value = "交接班状态", converter = ExcelDictConvert.class)
+    @ExcelDictFormat(readConverterExp = "0=初始化,1=:交班完成,2=:接班完成")
+	@ApiModelProperty("交接班状态(0初始化  1:交班完成  2:接班完成)")
+	private Long duStatus;
+
+    /**
+     * 值班人员id
+     */
+	@ExcelProperty(value = "值班人员id")
+	@ApiModelProperty("值班人员id")
+	private String duEmpId;
+
+
+}

+ 48 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/JgyDutyEmpVo.java

@@ -0,0 +1,48 @@
+package com.ruoyi.zhdd.domain.vo;
+
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.ruoyi.common.annotation.ExcelDictFormat;
+import com.ruoyi.common.convert.ExcelDictConvert;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 值班人员视图对象 jgy_duty_emp
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Data
+@ApiModel("值班人员视图对象")
+@ExcelIgnoreUnannotated
+public class JgyDutyEmpVo {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+     *  值班人员Id
+     */
+	@ApiModelProperty("值班人员Id")
+	private Long deId;
+
+    /**
+     * 值班ID
+     */
+	@ExcelProperty(value = "值班ID")
+	@ApiModelProperty("值班ID")
+	private Long duId;
+
+    /**
+     * $column.columnComment
+     */
+	@ExcelProperty(value = "值班ID")
+	@ApiModelProperty("$column.columnComment")
+	private Long empId;
+
+
+}

+ 69 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/JgyDutyGroupDetailVo.java

@@ -0,0 +1,69 @@
+package com.ruoyi.zhdd.domain.vo;
+
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.ruoyi.common.annotation.ExcelDictFormat;
+import com.ruoyi.common.convert.ExcelDictConvert;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 值班组详细视图对象 jgy_duty_group_detail
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Data
+@ApiModel("值班组详细视图对象")
+@ExcelIgnoreUnannotated
+public class JgyDutyGroupDetailVo {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+     *  值班组详细
+     */
+	@ApiModelProperty("值班组详细")
+	private Long detailId;
+
+    /**
+     * 组号
+     */
+	@ExcelProperty(value = "组号")
+	@ApiModelProperty("组号")
+	private Long groupId;
+
+    /**
+     * 人员号
+     */
+	@ExcelProperty(value = "人员号")
+	@ApiModelProperty("人员号")
+	private Long empId;
+
+    /**
+     * 人员名称
+     */
+	@ExcelProperty(value = "人员名称")
+	@ApiModelProperty("人员名称")
+	private String empName;
+
+    /**
+     * 是否班长
+     */
+	@ExcelProperty(value = "是否班长")
+	@ApiModelProperty("是否班长")
+	private Long leaderFlag;
+
+    /**
+     * 是否副班长
+     */
+	@ExcelProperty(value = "是否副班长")
+	@ApiModelProperty("是否副班长")
+	private Long viceLeaderFlag;
+
+
+}

+ 48 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/JgyDutyGroupVo.java

@@ -0,0 +1,48 @@
+package com.ruoyi.zhdd.domain.vo;
+
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.ruoyi.common.annotation.ExcelDictFormat;
+import com.ruoyi.common.convert.ExcelDictConvert;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 值班组信息视图对象 jgy_duty_group
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Data
+@ApiModel("值班组信息视图对象")
+@ExcelIgnoreUnannotated
+public class JgyDutyGroupVo {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+     *  值班组号
+     */
+	@ApiModelProperty("值班组号")
+	private Long groupId;
+
+    /**
+     * 所属管理处
+     */
+	@ExcelProperty(value = "所属管理处")
+	@ApiModelProperty("所属管理处")
+	private Long moId;
+
+    /**
+     * 值班组名称
+     */
+	@ExcelProperty(value = "值班组名称")
+	@ApiModelProperty("值班组名称")
+	private String name;
+
+
+}

+ 62 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/JgyDutyTransferVo.java

@@ -0,0 +1,62 @@
+package com.ruoyi.zhdd.domain.vo;
+
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.ruoyi.common.annotation.ExcelDictFormat;
+import com.ruoyi.common.convert.ExcelDictConvert;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.util.Date;
+
+
+
+/**
+ * 交班事项视图对象 jgy_duty_transfer
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Data
+@ApiModel("交班事项视图对象")
+@ExcelIgnoreUnannotated
+public class JgyDutyTransferVo {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+     *  pk
+     */
+	@ApiModelProperty("pk")
+	private Long dtId;
+
+    /**
+     * 值班ID
+     */
+	@ExcelProperty(value = "值班ID")
+	@ApiModelProperty("值班ID")
+	private Long duId;
+
+    /**
+     * 事件ID
+     */
+	@ExcelProperty(value = "事件ID")
+	@ApiModelProperty("事件ID")
+	private Long eventId;
+
+    /**
+     * 移交类型
+     */
+	@ExcelProperty(value = "移交类型")
+	@ApiModelProperty("移交类型")
+	private Long dtType;
+
+    /**
+     * 事件来源
+     */
+	@ExcelProperty(value = "事件来源")
+	@ApiModelProperty("事件来源")
+	private Long dtSource;
+
+
+}

+ 16 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/mapper/JgyDutyCommandContMapper.java

@@ -0,0 +1,16 @@
+package com.ruoyi.zhdd.mapper;
+
+import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
+import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
+import com.ruoyi.zhdd.domain.JgyDutyCommandCont;
+import org.apache.ibatis.annotations.CacheNamespace;
+
+/**
+ * 日常值班登记Mapper接口
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+public interface JgyDutyCommandContMapper extends BaseMapperPlus<JgyDutyCommandCont> {
+
+}

+ 16 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/mapper/JgyDutyEmpMapper.java

@@ -0,0 +1,16 @@
+package com.ruoyi.zhdd.mapper;
+
+import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
+import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
+import com.ruoyi.zhdd.domain.JgyDutyEmp;
+import org.apache.ibatis.annotations.CacheNamespace;
+
+/**
+ * 值班人员Mapper接口
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+public interface JgyDutyEmpMapper extends BaseMapperPlus<JgyDutyEmp> {
+
+}

+ 16 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/mapper/JgyDutyGroupDetailMapper.java

@@ -0,0 +1,16 @@
+package com.ruoyi.zhdd.mapper;
+
+import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
+import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
+import com.ruoyi.zhdd.domain.JgyDutyGroupDetail;
+import org.apache.ibatis.annotations.CacheNamespace;
+
+/**
+ * 值班组详细Mapper接口
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+public interface JgyDutyGroupDetailMapper extends BaseMapperPlus<JgyDutyGroupDetail> {
+
+}

+ 16 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/mapper/JgyDutyGroupMapper.java

@@ -0,0 +1,16 @@
+package com.ruoyi.zhdd.mapper;
+
+import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
+import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
+import com.ruoyi.zhdd.domain.JgyDutyGroup;
+import org.apache.ibatis.annotations.CacheNamespace;
+
+/**
+ * 值班组信息Mapper接口
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+public interface JgyDutyGroupMapper extends BaseMapperPlus<JgyDutyGroup> {
+
+}

+ 16 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/mapper/JgyDutyTransferMapper.java

@@ -0,0 +1,16 @@
+package com.ruoyi.zhdd.mapper;
+
+import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
+import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
+import com.ruoyi.zhdd.domain.JgyDutyTransfer;
+import org.apache.ibatis.annotations.CacheNamespace;
+
+/**
+ * 交班事项Mapper接口
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+public interface JgyDutyTransferMapper extends BaseMapperPlus<JgyDutyTransfer> {
+
+}

+ 56 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IJgyDutyCommandContService.java

@@ -0,0 +1,56 @@
+package com.ruoyi.zhdd.service;
+
+import com.ruoyi.zhdd.domain.JgyDutyCommandCont;
+import com.ruoyi.zhdd.domain.vo.JgyDutyCommandContVo;
+import com.ruoyi.zhdd.domain.bo.JgyDutyCommandContBo;
+import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 日常值班登记Service接口
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+public interface IJgyDutyCommandContService extends IServicePlus<JgyDutyCommandCont, JgyDutyCommandContVo> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	JgyDutyCommandContVo queryById(Long duId);
+
+	/**
+	 * 查询列表
+	 */
+    TableDataInfo<JgyDutyCommandContVo> queryPageList(JgyDutyCommandContBo bo);
+
+	/**
+	 * 查询列表
+	 */
+	List<JgyDutyCommandContVo> queryList(JgyDutyCommandContBo bo);
+
+	/**
+	 * 根据新增业务对象插入日常值班登记
+	 * @param bo 日常值班登记新增业务对象
+	 * @return
+	 */
+	Boolean insertByBo(JgyDutyCommandContBo bo);
+
+	/**
+	 * 根据编辑业务对象修改日常值班登记
+	 * @param bo 日常值班登记编辑业务对象
+	 * @return
+	 */
+	Boolean updateByBo(JgyDutyCommandContBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 56 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IJgyDutyEmpService.java

@@ -0,0 +1,56 @@
+package com.ruoyi.zhdd.service;
+
+import com.ruoyi.zhdd.domain.JgyDutyEmp;
+import com.ruoyi.zhdd.domain.vo.JgyDutyEmpVo;
+import com.ruoyi.zhdd.domain.bo.JgyDutyEmpBo;
+import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 值班人员Service接口
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+public interface IJgyDutyEmpService extends IServicePlus<JgyDutyEmp, JgyDutyEmpVo> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	JgyDutyEmpVo queryById(Long deId);
+
+	/**
+	 * 查询列表
+	 */
+    TableDataInfo<JgyDutyEmpVo> queryPageList(JgyDutyEmpBo bo);
+
+	/**
+	 * 查询列表
+	 */
+	List<JgyDutyEmpVo> queryList(JgyDutyEmpBo bo);
+
+	/**
+	 * 根据新增业务对象插入值班人员
+	 * @param bo 值班人员新增业务对象
+	 * @return
+	 */
+	Boolean insertByBo(JgyDutyEmpBo bo);
+
+	/**
+	 * 根据编辑业务对象修改值班人员
+	 * @param bo 值班人员编辑业务对象
+	 * @return
+	 */
+	Boolean updateByBo(JgyDutyEmpBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 56 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IJgyDutyGroupDetailService.java

@@ -0,0 +1,56 @@
+package com.ruoyi.zhdd.service;
+
+import com.ruoyi.zhdd.domain.JgyDutyGroupDetail;
+import com.ruoyi.zhdd.domain.vo.JgyDutyGroupDetailVo;
+import com.ruoyi.zhdd.domain.bo.JgyDutyGroupDetailBo;
+import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 值班组详细Service接口
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+public interface IJgyDutyGroupDetailService extends IServicePlus<JgyDutyGroupDetail, JgyDutyGroupDetailVo> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	JgyDutyGroupDetailVo queryById(Long detailId);
+
+	/**
+	 * 查询列表
+	 */
+    TableDataInfo<JgyDutyGroupDetailVo> queryPageList(JgyDutyGroupDetailBo bo);
+
+	/**
+	 * 查询列表
+	 */
+	List<JgyDutyGroupDetailVo> queryList(JgyDutyGroupDetailBo bo);
+
+	/**
+	 * 根据新增业务对象插入值班组详细
+	 * @param bo 值班组详细新增业务对象
+	 * @return
+	 */
+	Boolean insertByBo(JgyDutyGroupDetailBo bo);
+
+	/**
+	 * 根据编辑业务对象修改值班组详细
+	 * @param bo 值班组详细编辑业务对象
+	 * @return
+	 */
+	Boolean updateByBo(JgyDutyGroupDetailBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 56 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IJgyDutyGroupService.java

@@ -0,0 +1,56 @@
+package com.ruoyi.zhdd.service;
+
+import com.ruoyi.zhdd.domain.JgyDutyGroup;
+import com.ruoyi.zhdd.domain.vo.JgyDutyGroupVo;
+import com.ruoyi.zhdd.domain.bo.JgyDutyGroupBo;
+import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 值班组信息Service接口
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+public interface IJgyDutyGroupService extends IServicePlus<JgyDutyGroup, JgyDutyGroupVo> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	JgyDutyGroupVo queryById(Long groupId);
+
+	/**
+	 * 查询列表
+	 */
+    TableDataInfo<JgyDutyGroupVo> queryPageList(JgyDutyGroupBo bo);
+
+	/**
+	 * 查询列表
+	 */
+	List<JgyDutyGroupVo> queryList(JgyDutyGroupBo bo);
+
+	/**
+	 * 根据新增业务对象插入值班组信息
+	 * @param bo 值班组信息新增业务对象
+	 * @return
+	 */
+	Boolean insertByBo(JgyDutyGroupBo bo);
+
+	/**
+	 * 根据编辑业务对象修改值班组信息
+	 * @param bo 值班组信息编辑业务对象
+	 * @return
+	 */
+	Boolean updateByBo(JgyDutyGroupBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 56 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IJgyDutyTransferService.java

@@ -0,0 +1,56 @@
+package com.ruoyi.zhdd.service;
+
+import com.ruoyi.zhdd.domain.JgyDutyTransfer;
+import com.ruoyi.zhdd.domain.vo.JgyDutyTransferVo;
+import com.ruoyi.zhdd.domain.bo.JgyDutyTransferBo;
+import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * 交班事项Service接口
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+public interface IJgyDutyTransferService extends IServicePlus<JgyDutyTransfer, JgyDutyTransferVo> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	JgyDutyTransferVo queryById(Long dtId);
+
+	/**
+	 * 查询列表
+	 */
+    TableDataInfo<JgyDutyTransferVo> queryPageList(JgyDutyTransferBo bo);
+
+	/**
+	 * 查询列表
+	 */
+	List<JgyDutyTransferVo> queryList(JgyDutyTransferBo bo);
+
+	/**
+	 * 根据新增业务对象插入交班事项
+	 * @param bo 交班事项新增业务对象
+	 * @return
+	 */
+	Boolean insertByBo(JgyDutyTransferBo bo);
+
+	/**
+	 * 根据编辑业务对象修改交班事项
+	 * @param bo 交班事项编辑业务对象
+	 * @return
+	 */
+	Boolean updateByBo(JgyDutyTransferBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 94 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/JgyDutyCommandContServiceImpl.java

@@ -0,0 +1,94 @@
+package com.ruoyi.zhdd.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.PageUtils;
+import com.ruoyi.common.core.page.PagePlus;
+import com.ruoyi.common.core.page.TableDataInfo;
+import org.springframework.stereotype.Service;
+import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.zhdd.domain.bo.JgyDutyCommandContBo;
+import com.ruoyi.zhdd.domain.vo.JgyDutyCommandContVo;
+import com.ruoyi.zhdd.domain.JgyDutyCommandCont;
+import com.ruoyi.zhdd.mapper.JgyDutyCommandContMapper;
+import com.ruoyi.zhdd.service.IJgyDutyCommandContService;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Collection;
+
+/**
+ * 日常值班登记Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Service
+public class JgyDutyCommandContServiceImpl extends ServicePlusImpl<JgyDutyCommandContMapper, JgyDutyCommandCont, JgyDutyCommandContVo> implements IJgyDutyCommandContService {
+
+    @Override
+    public JgyDutyCommandContVo queryById(Long duId){
+        return getVoById(duId);
+    }
+
+    @Override
+    public TableDataInfo<JgyDutyCommandContVo> queryPageList(JgyDutyCommandContBo bo) {
+        PagePlus<JgyDutyCommandCont, JgyDutyCommandContVo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo));
+        return PageUtils.buildDataInfo(result);
+    }
+
+    @Override
+    public List<JgyDutyCommandContVo> queryList(JgyDutyCommandContBo bo) {
+        return listVo(buildQueryWrapper(bo));
+    }
+
+    private LambdaQueryWrapper<JgyDutyCommandCont> buildQueryWrapper(JgyDutyCommandContBo bo) {
+        Map<String, Object> params = bo.getParams();
+        LambdaQueryWrapper<JgyDutyCommandCont> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getMoId() != null, JgyDutyCommandCont::getMoId, bo.getMoId());
+        lqw.eq(bo.getDccDate() != null, JgyDutyCommandCont::getDccDate, bo.getDccDate());
+        lqw.eq(bo.getDccStartDate() != null, JgyDutyCommandCont::getDccStartDate, bo.getDccStartDate());
+        lqw.eq(bo.getDccEndDate() != null, JgyDutyCommandCont::getDccEndDate, bo.getDccEndDate());
+        lqw.eq(StringUtils.isNotBlank(bo.getDccSNum()), JgyDutyCommandCont::getDccSNum, bo.getDccSNum());
+        lqw.eq(StringUtils.isNotBlank(bo.getDccWeather()), JgyDutyCommandCont::getDccWeather, bo.getDccWeather());
+        lqw.like(StringUtils.isNotBlank(bo.getDuEmpName()), JgyDutyCommandCont::getDuEmpName, bo.getDuEmpName());
+        lqw.eq(bo.getDduId() != null, JgyDutyCommandCont::getDduId, bo.getDduId());
+        lqw.like(StringUtils.isNotBlank(bo.getDduEmpName()), JgyDutyCommandCont::getDduEmpName, bo.getDduEmpName());
+        lqw.eq(bo.getDuStatus() != null, JgyDutyCommandCont::getDuStatus, bo.getDuStatus());
+        lqw.eq(StringUtils.isNotBlank(bo.getDuEmpId()), JgyDutyCommandCont::getDuEmpId, bo.getDuEmpId());
+        return lqw;
+    }
+
+    @Override
+    public Boolean insertByBo(JgyDutyCommandContBo bo) {
+        JgyDutyCommandCont add = BeanUtil.toBean(bo, JgyDutyCommandCont.class);
+        validEntityBeforeSave(add);
+        return save(add);
+    }
+
+    @Override
+    public Boolean updateByBo(JgyDutyCommandContBo bo) {
+        JgyDutyCommandCont update = BeanUtil.toBean(bo, JgyDutyCommandCont.class);
+        validEntityBeforeSave(update);
+        return updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(JgyDutyCommandCont entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return removeByIds(ids);
+    }
+}

+ 85 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/JgyDutyEmpServiceImpl.java

@@ -0,0 +1,85 @@
+package com.ruoyi.zhdd.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.PageUtils;
+import com.ruoyi.common.core.page.PagePlus;
+import com.ruoyi.common.core.page.TableDataInfo;
+import org.springframework.stereotype.Service;
+import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.zhdd.domain.bo.JgyDutyEmpBo;
+import com.ruoyi.zhdd.domain.vo.JgyDutyEmpVo;
+import com.ruoyi.zhdd.domain.JgyDutyEmp;
+import com.ruoyi.zhdd.mapper.JgyDutyEmpMapper;
+import com.ruoyi.zhdd.service.IJgyDutyEmpService;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Collection;
+
+/**
+ * 值班人员Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Service
+public class JgyDutyEmpServiceImpl extends ServicePlusImpl<JgyDutyEmpMapper, JgyDutyEmp, JgyDutyEmpVo> implements IJgyDutyEmpService {
+
+    @Override
+    public JgyDutyEmpVo queryById(Long deId){
+        return getVoById(deId);
+    }
+
+    @Override
+    public TableDataInfo<JgyDutyEmpVo> queryPageList(JgyDutyEmpBo bo) {
+        PagePlus<JgyDutyEmp, JgyDutyEmpVo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo));
+        return PageUtils.buildDataInfo(result);
+    }
+
+    @Override
+    public List<JgyDutyEmpVo> queryList(JgyDutyEmpBo bo) {
+        return listVo(buildQueryWrapper(bo));
+    }
+
+    private LambdaQueryWrapper<JgyDutyEmp> buildQueryWrapper(JgyDutyEmpBo bo) {
+        Map<String, Object> params = bo.getParams();
+        LambdaQueryWrapper<JgyDutyEmp> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getDuId() != null, JgyDutyEmp::getDuId, bo.getDuId());
+        lqw.eq(bo.getEmpId() != null, JgyDutyEmp::getEmpId, bo.getEmpId());
+        return lqw;
+    }
+
+    @Override
+    public Boolean insertByBo(JgyDutyEmpBo bo) {
+        JgyDutyEmp add = BeanUtil.toBean(bo, JgyDutyEmp.class);
+        validEntityBeforeSave(add);
+        return save(add);
+    }
+
+    @Override
+    public Boolean updateByBo(JgyDutyEmpBo bo) {
+        JgyDutyEmp update = BeanUtil.toBean(bo, JgyDutyEmp.class);
+        validEntityBeforeSave(update);
+        return updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(JgyDutyEmp entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return removeByIds(ids);
+    }
+}

+ 88 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/JgyDutyGroupDetailServiceImpl.java

@@ -0,0 +1,88 @@
+package com.ruoyi.zhdd.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.PageUtils;
+import com.ruoyi.common.core.page.PagePlus;
+import com.ruoyi.common.core.page.TableDataInfo;
+import org.springframework.stereotype.Service;
+import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.zhdd.domain.bo.JgyDutyGroupDetailBo;
+import com.ruoyi.zhdd.domain.vo.JgyDutyGroupDetailVo;
+import com.ruoyi.zhdd.domain.JgyDutyGroupDetail;
+import com.ruoyi.zhdd.mapper.JgyDutyGroupDetailMapper;
+import com.ruoyi.zhdd.service.IJgyDutyGroupDetailService;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Collection;
+
+/**
+ * 值班组详细Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Service
+public class JgyDutyGroupDetailServiceImpl extends ServicePlusImpl<JgyDutyGroupDetailMapper, JgyDutyGroupDetail, JgyDutyGroupDetailVo> implements IJgyDutyGroupDetailService {
+
+    @Override
+    public JgyDutyGroupDetailVo queryById(Long detailId){
+        return getVoById(detailId);
+    }
+
+    @Override
+    public TableDataInfo<JgyDutyGroupDetailVo> queryPageList(JgyDutyGroupDetailBo bo) {
+        PagePlus<JgyDutyGroupDetail, JgyDutyGroupDetailVo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo));
+        return PageUtils.buildDataInfo(result);
+    }
+
+    @Override
+    public List<JgyDutyGroupDetailVo> queryList(JgyDutyGroupDetailBo bo) {
+        return listVo(buildQueryWrapper(bo));
+    }
+
+    private LambdaQueryWrapper<JgyDutyGroupDetail> buildQueryWrapper(JgyDutyGroupDetailBo bo) {
+        Map<String, Object> params = bo.getParams();
+        LambdaQueryWrapper<JgyDutyGroupDetail> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getGroupId() != null, JgyDutyGroupDetail::getGroupId, bo.getGroupId());
+        lqw.eq(bo.getEmpId() != null, JgyDutyGroupDetail::getEmpId, bo.getEmpId());
+        lqw.like(StringUtils.isNotBlank(bo.getEmpName()), JgyDutyGroupDetail::getEmpName, bo.getEmpName());
+        lqw.eq(bo.getLeaderFlag() != null, JgyDutyGroupDetail::getLeaderFlag, bo.getLeaderFlag());
+        lqw.eq(bo.getViceLeaderFlag() != null, JgyDutyGroupDetail::getViceLeaderFlag, bo.getViceLeaderFlag());
+        return lqw;
+    }
+
+    @Override
+    public Boolean insertByBo(JgyDutyGroupDetailBo bo) {
+        JgyDutyGroupDetail add = BeanUtil.toBean(bo, JgyDutyGroupDetail.class);
+        validEntityBeforeSave(add);
+        return save(add);
+    }
+
+    @Override
+    public Boolean updateByBo(JgyDutyGroupDetailBo bo) {
+        JgyDutyGroupDetail update = BeanUtil.toBean(bo, JgyDutyGroupDetail.class);
+        validEntityBeforeSave(update);
+        return updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(JgyDutyGroupDetail entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return removeByIds(ids);
+    }
+}

+ 85 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/JgyDutyGroupServiceImpl.java

@@ -0,0 +1,85 @@
+package com.ruoyi.zhdd.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.PageUtils;
+import com.ruoyi.common.core.page.PagePlus;
+import com.ruoyi.common.core.page.TableDataInfo;
+import org.springframework.stereotype.Service;
+import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.zhdd.domain.bo.JgyDutyGroupBo;
+import com.ruoyi.zhdd.domain.vo.JgyDutyGroupVo;
+import com.ruoyi.zhdd.domain.JgyDutyGroup;
+import com.ruoyi.zhdd.mapper.JgyDutyGroupMapper;
+import com.ruoyi.zhdd.service.IJgyDutyGroupService;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Collection;
+
+/**
+ * 值班组信息Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Service
+public class JgyDutyGroupServiceImpl extends ServicePlusImpl<JgyDutyGroupMapper, JgyDutyGroup, JgyDutyGroupVo> implements IJgyDutyGroupService {
+
+    @Override
+    public JgyDutyGroupVo queryById(Long groupId){
+        return getVoById(groupId);
+    }
+
+    @Override
+    public TableDataInfo<JgyDutyGroupVo> queryPageList(JgyDutyGroupBo bo) {
+        PagePlus<JgyDutyGroup, JgyDutyGroupVo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo));
+        return PageUtils.buildDataInfo(result);
+    }
+
+    @Override
+    public List<JgyDutyGroupVo> queryList(JgyDutyGroupBo bo) {
+        return listVo(buildQueryWrapper(bo));
+    }
+
+    private LambdaQueryWrapper<JgyDutyGroup> buildQueryWrapper(JgyDutyGroupBo bo) {
+        Map<String, Object> params = bo.getParams();
+        LambdaQueryWrapper<JgyDutyGroup> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getMoId() != null, JgyDutyGroup::getMoId, bo.getMoId());
+        lqw.like(StringUtils.isNotBlank(bo.getName()), JgyDutyGroup::getName, bo.getName());
+        return lqw;
+    }
+
+    @Override
+    public Boolean insertByBo(JgyDutyGroupBo bo) {
+        JgyDutyGroup add = BeanUtil.toBean(bo, JgyDutyGroup.class);
+        validEntityBeforeSave(add);
+        return save(add);
+    }
+
+    @Override
+    public Boolean updateByBo(JgyDutyGroupBo bo) {
+        JgyDutyGroup update = BeanUtil.toBean(bo, JgyDutyGroup.class);
+        validEntityBeforeSave(update);
+        return updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(JgyDutyGroup entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return removeByIds(ids);
+    }
+}

+ 87 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/JgyDutyTransferServiceImpl.java

@@ -0,0 +1,87 @@
+package com.ruoyi.zhdd.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.PageUtils;
+import com.ruoyi.common.core.page.PagePlus;
+import com.ruoyi.common.core.page.TableDataInfo;
+import org.springframework.stereotype.Service;
+import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.zhdd.domain.bo.JgyDutyTransferBo;
+import com.ruoyi.zhdd.domain.vo.JgyDutyTransferVo;
+import com.ruoyi.zhdd.domain.JgyDutyTransfer;
+import com.ruoyi.zhdd.mapper.JgyDutyTransferMapper;
+import com.ruoyi.zhdd.service.IJgyDutyTransferService;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Collection;
+
+/**
+ * 交班事项Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-09-22
+ */
+@Service
+public class JgyDutyTransferServiceImpl extends ServicePlusImpl<JgyDutyTransferMapper, JgyDutyTransfer, JgyDutyTransferVo> implements IJgyDutyTransferService {
+
+    @Override
+    public JgyDutyTransferVo queryById(Long dtId){
+        return getVoById(dtId);
+    }
+
+    @Override
+    public TableDataInfo<JgyDutyTransferVo> queryPageList(JgyDutyTransferBo bo) {
+        PagePlus<JgyDutyTransfer, JgyDutyTransferVo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo));
+        return PageUtils.buildDataInfo(result);
+    }
+
+    @Override
+    public List<JgyDutyTransferVo> queryList(JgyDutyTransferBo bo) {
+        return listVo(buildQueryWrapper(bo));
+    }
+
+    private LambdaQueryWrapper<JgyDutyTransfer> buildQueryWrapper(JgyDutyTransferBo bo) {
+        Map<String, Object> params = bo.getParams();
+        LambdaQueryWrapper<JgyDutyTransfer> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getDuId() != null, JgyDutyTransfer::getDuId, bo.getDuId());
+        lqw.eq(bo.getEventId() != null, JgyDutyTransfer::getEventId, bo.getEventId());
+        lqw.eq(bo.getDtType() != null, JgyDutyTransfer::getDtType, bo.getDtType());
+        lqw.eq(bo.getDtSource() != null, JgyDutyTransfer::getDtSource, bo.getDtSource());
+        return lqw;
+    }
+
+    @Override
+    public Boolean insertByBo(JgyDutyTransferBo bo) {
+        JgyDutyTransfer add = BeanUtil.toBean(bo, JgyDutyTransfer.class);
+        validEntityBeforeSave(add);
+        return save(add);
+    }
+
+    @Override
+    public Boolean updateByBo(JgyDutyTransferBo bo) {
+        JgyDutyTransfer update = BeanUtil.toBean(bo, JgyDutyTransfer.class);
+        validEntityBeforeSave(update);
+        return updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(JgyDutyTransfer entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return removeByIds(ids);
+    }
+}

+ 28 - 0
ruoyi-zhdd/src/main/resources/mapper/zhdd/JgyDutyCommandContMapper.xml

@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.zhdd.mapper.JgyDutyCommandContMapper">
+
+    <resultMap type="com.ruoyi.zhdd.domain.JgyDutyCommandCont" id="JgyDutyCommandContResult">
+        <result property="duId" column="du_id"/>
+        <result property="moId" column="mo_id"/>
+        <result property="dccDate" column="dcc_date"/>
+        <result property="dccStartDate" column="dcc_start_date"/>
+        <result property="dccEndDate" column="dcc_end_date"/>
+        <result property="dccSNum" column="dcc_s_num"/>
+        <result property="dccWeather" column="dcc_weather"/>
+        <result property="duEmpName" column="du_emp_name"/>
+        <result property="dduId" column="ddu_id"/>
+        <result property="dduEmpName" column="ddu_emp_name"/>
+        <result property="duStatus" column="du_status"/>
+        <result property="duEmpId" column="du_emp_id"/>
+        <result property="delFlag" column="del_flag"/>
+        <result property="createBy" column="create_by"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateBy" column="update_by"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+
+
+</mapper>

+ 14 - 0
ruoyi-zhdd/src/main/resources/mapper/zhdd/JgyDutyEmpMapper.xml

@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.zhdd.mapper.JgyDutyEmpMapper">
+
+    <resultMap type="com.ruoyi.zhdd.domain.JgyDutyEmp" id="JgyDutyEmpResult">
+        <result property="deId" column="de_id"/>
+        <result property="duId" column="du_id"/>
+        <result property="empId" column="emp_id"/>
+    </resultMap>
+
+
+</mapper>

+ 17 - 0
ruoyi-zhdd/src/main/resources/mapper/zhdd/JgyDutyGroupDetailMapper.xml

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.zhdd.mapper.JgyDutyGroupDetailMapper">
+
+    <resultMap type="com.ruoyi.zhdd.domain.JgyDutyGroupDetail" id="JgyDutyGroupDetailResult">
+        <result property="detailId" column="detail_id"/>
+        <result property="groupId" column="group_id"/>
+        <result property="empId" column="emp_id"/>
+        <result property="empName" column="emp_name"/>
+        <result property="leaderFlag" column="leader_flag"/>
+        <result property="viceLeaderFlag" column="vice_leader_flag"/>
+    </resultMap>
+
+
+</mapper>

+ 19 - 0
ruoyi-zhdd/src/main/resources/mapper/zhdd/JgyDutyGroupMapper.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.zhdd.mapper.JgyDutyGroupMapper">
+
+    <resultMap type="com.ruoyi.zhdd.domain.JgyDutyGroup" id="JgyDutyGroupResult">
+        <result property="groupId" column="group_id"/>
+        <result property="moId" column="mo_id"/>
+        <result property="name" column="name"/>
+        <result property="delFlag" column="del_flag"/>
+        <result property="createBy" column="create_by"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateBy" column="update_by"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+
+
+</mapper>

+ 16 - 0
ruoyi-zhdd/src/main/resources/mapper/zhdd/JgyDutyTransferMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.zhdd.mapper.JgyDutyTransferMapper">
+
+    <resultMap type="com.ruoyi.zhdd.domain.JgyDutyTransfer" id="JgyDutyTransferResult">
+        <result property="dtId" column="dt_id"/>
+        <result property="duId" column="du_id"/>
+        <result property="eventId" column="event_id"/>
+        <result property="dtType" column="dt_type"/>
+        <result property="dtSource" column="dt_source"/>
+    </resultMap>
+
+
+</mapper>

+ 1 - 1
sql/ry_postgresql.sql

@@ -1111,7 +1111,7 @@ drop table if exists gen_table_column;
 create table gen_table_column
 (
     column_id      BIGSERIAL not null,
-    table_id       varchar(64),
+    table_id       int8,
     column_name    varchar(200),
     column_comment varchar(500),
     column_type    varchar(100),