瀏覽代碼

提交代码

JX.Li 1 年之前
父節點
當前提交
8cdace40b5
共有 16 個文件被更改,包括 1369 次插入0 次删除
  1. 42 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/mobile/MPressureRegulatingBoxController.java
  2. 113 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/controller/GPressureRegulatingBoxController.java
  3. 113 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/controller/GPressureRegulatingBoxDetailsController.java
  4. 70 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/domain/GPressureRegulatingBox.java
  5. 105 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/domain/GPressureRegulatingBoxDetails.java
  6. 122 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/domain/bo/GPressureRegulatingBoxBo.java
  7. 178 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/domain/bo/GPressureRegulatingBoxDetailsBo.java
  8. 154 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/domain/vo/GPressureRegulatingBoxDetailsVo.java
  9. 96 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/domain/vo/GPressureRegulatingBoxVo.java
  10. 14 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/mapper/GPressureRegulatingBoxDetailsMapper.java
  11. 14 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/mapper/GPressureRegulatingBoxMapper.java
  12. 56 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/service/IGPressureRegulatingBoxDetailsService.java
  13. 56 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/service/IGPressureRegulatingBoxService.java
  14. 103 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/service/impl/GPressureRegulatingBoxDetailsServiceImpl.java
  15. 107 0
      ruoyi-gas/src/main/java/com/ruoyi/gas/service/impl/GPressureRegulatingBoxServiceImpl.java
  16. 26 0
      ruoyi-gas/src/main/resources/mapper/GPressureRegulatingBoxMapper.xml

+ 42 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/mobile/MPressureRegulatingBoxController.java

@@ -0,0 +1,42 @@
+package com.ruoyi.web.controller.mobile;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.core.validate.QueryGroup;
+import com.ruoyi.gas.domain.bo.GPressureRegulatingBoxBo;
+import com.ruoyi.gas.domain.vo.GPressureRegulatingBoxVo;
+import com.ruoyi.gas.service.IGPressureRegulatingBoxService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 调压箱管理Controller
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+@Validated
+@Api(value = "调压箱管理控制器", tags = {"调压箱管理管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/mobile/pressureRegulatingBox")
+public class MPressureRegulatingBoxController extends BaseController {
+
+    private final IGPressureRegulatingBoxService iGPressureRegulatingBoxService;
+
+    /**
+     * 查询调压箱管理列表
+     */
+    @ApiOperation("查询调压箱管理列表")
+    @GetMapping("/list")
+    public TableDataInfo<GPressureRegulatingBoxVo> list(@Validated(QueryGroup.class) GPressureRegulatingBoxBo bo) {
+        return iGPressureRegulatingBoxService.queryPageList(bo);
+    }
+
+}

+ 113 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/controller/GPressureRegulatingBoxController.java

@@ -0,0 +1,113 @@
+package com.ruoyi.gas.controller;
+
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.annotation.RepeatSubmit;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.page.TableDataInfo;
+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.gas.domain.bo.GPressureRegulatingBoxBo;
+import com.ruoyi.gas.domain.vo.GPressureRegulatingBoxVo;
+import com.ruoyi.gas.service.IGPressureRegulatingBoxService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * 调压箱管理Controller
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+@Validated
+@Api(value = "调压箱管理控制器", tags = {"调压箱管理管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/gas/pressureRegulatingBox")
+public class GPressureRegulatingBoxController extends BaseController {
+
+    private final IGPressureRegulatingBoxService iGPressureRegulatingBoxService;
+
+    /**
+     * 查询调压箱管理列表
+     */
+    @ApiOperation("查询调压箱管理列表")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBox:list')")
+    @GetMapping("/list")
+    public TableDataInfo<GPressureRegulatingBoxVo> list(@Validated(QueryGroup.class) GPressureRegulatingBoxBo bo) {
+        return iGPressureRegulatingBoxService.queryPageList(bo);
+    }
+
+    /**
+     * 导出调压箱管理列表
+     */
+    @ApiOperation("导出调压箱管理列表")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBox:export')")
+    @Log(title = "调压箱管理", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public void export(@Validated GPressureRegulatingBoxBo bo, HttpServletResponse response) {
+        List<GPressureRegulatingBoxVo> list = iGPressureRegulatingBoxService.queryList(bo);
+        ExcelUtil.exportExcel(list, "调压箱管理", GPressureRegulatingBoxVo.class, response);
+    }
+
+    /**
+     * 获取调压箱管理详细信息
+     */
+    @ApiOperation("获取调压箱管理详细信息")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBox:query')")
+    @GetMapping("/{id}")
+    public AjaxResult<GPressureRegulatingBoxVo> getInfo(@NotNull(message = "主键不能为空")
+                                                  @PathVariable("id") Long id) {
+        return AjaxResult.success(iGPressureRegulatingBoxService.queryById(id));
+    }
+
+    /**
+     * 新增调压箱管理
+     */
+    @ApiOperation("新增调压箱管理")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBox:add')")
+    @Log(title = "调压箱管理", businessType = BusinessType.INSERT)
+    @RepeatSubmit()
+    @PostMapping()
+    public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody GPressureRegulatingBoxBo bo) {
+        return toAjax(iGPressureRegulatingBoxService.insertByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改调压箱管理
+     */
+    @ApiOperation("修改调压箱管理")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBox:edit')")
+    @Log(title = "调压箱管理", businessType = BusinessType.UPDATE)
+    @RepeatSubmit()
+    @PutMapping()
+    public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody GPressureRegulatingBoxBo bo) {
+        return toAjax(iGPressureRegulatingBoxService.updateByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 删除调压箱管理
+     */
+    @ApiOperation("删除调压箱管理")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBox:remove')")
+    @Log(title = "调压箱管理" , businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空")
+                                       @PathVariable Long[] ids) {
+        return toAjax(iGPressureRegulatingBoxService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0);
+    }
+}

+ 113 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/controller/GPressureRegulatingBoxDetailsController.java

@@ -0,0 +1,113 @@
+package com.ruoyi.gas.controller;
+
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.annotation.RepeatSubmit;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.page.TableDataInfo;
+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.gas.domain.bo.GPressureRegulatingBoxDetailsBo;
+import com.ruoyi.gas.domain.vo.GPressureRegulatingBoxDetailsVo;
+import com.ruoyi.gas.service.IGPressureRegulatingBoxDetailsService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * 调压箱详情Controller
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+@Validated
+@Api(value = "调压箱详情控制器", tags = {"调压箱详情管理"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/gas/pressureRegulatingBoxDetails")
+public class GPressureRegulatingBoxDetailsController extends BaseController {
+
+    private final IGPressureRegulatingBoxDetailsService iGPressureRegulatingBoxDetailsService;
+
+    /**
+     * 查询调压箱详情列表
+     */
+    @ApiOperation("查询调压箱详情列表")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBoxDetails:list')")
+    @GetMapping("/list")
+    public TableDataInfo<GPressureRegulatingBoxDetailsVo> list(@Validated(QueryGroup.class) GPressureRegulatingBoxDetailsBo bo) {
+        return iGPressureRegulatingBoxDetailsService.queryPageList(bo);
+    }
+
+    /**
+     * 导出调压箱详情列表
+     */
+    @ApiOperation("导出调压箱详情列表")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBoxDetails:export')")
+    @Log(title = "调压箱详情", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public void export(@Validated GPressureRegulatingBoxDetailsBo bo, HttpServletResponse response) {
+        List<GPressureRegulatingBoxDetailsVo> list = iGPressureRegulatingBoxDetailsService.queryList(bo);
+        ExcelUtil.exportExcel(list, "调压箱详情", GPressureRegulatingBoxDetailsVo.class, response);
+    }
+
+    /**
+     * 获取调压箱详情详细信息
+     */
+    @ApiOperation("获取调压箱详情详细信息")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBoxDetails:query')")
+    @GetMapping("/{id}")
+    public AjaxResult<GPressureRegulatingBoxDetailsVo> getInfo(@NotNull(message = "主键不能为空")
+                                                  @PathVariable("id") Long id) {
+        return AjaxResult.success(iGPressureRegulatingBoxDetailsService.queryById(id));
+    }
+
+    /**
+     * 新增调压箱详情
+     */
+    @ApiOperation("新增调压箱详情")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBoxDetails:add')")
+    @Log(title = "调压箱详情", businessType = BusinessType.INSERT)
+    @RepeatSubmit()
+    @PostMapping()
+    public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody GPressureRegulatingBoxDetailsBo bo) {
+        return toAjax(iGPressureRegulatingBoxDetailsService.insertByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改调压箱详情
+     */
+    @ApiOperation("修改调压箱详情")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBoxDetails:edit')")
+    @Log(title = "调压箱详情", businessType = BusinessType.UPDATE)
+    @RepeatSubmit()
+    @PutMapping()
+    public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody GPressureRegulatingBoxDetailsBo bo) {
+        return toAjax(iGPressureRegulatingBoxDetailsService.updateByBo(bo) ? 1 : 0);
+    }
+
+    /**
+     * 删除调压箱详情
+     */
+    @ApiOperation("删除调压箱详情")
+    @PreAuthorize("@ss.hasPermi('gas:pressureRegulatingBoxDetails:remove')")
+    @Log(title = "调压箱详情" , businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空")
+                                       @PathVariable Long[] ids) {
+        return toAjax(iGPressureRegulatingBoxDetailsService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0);
+    }
+}

+ 70 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/domain/GPressureRegulatingBox.java

@@ -0,0 +1,70 @@
+package com.ruoyi.gas.domain;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BaseEntity;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * 调压箱管理对象 g_pressure_regulating_box
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+@Data
+@Accessors(chain = true)
+@TableName("g_pressure_regulating_box")
+public class GPressureRegulatingBox extends BaseEntity {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 序号
+     */
+    @TableId(value = "id")
+    private Long id;
+    /**
+     * 性质
+     */
+    private String nature;
+    /**
+     * 类型
+     */
+    private String type;
+    /**
+     * 路数
+     */
+    private String numberOfRoutes;
+    /**
+     * 管理所
+     */
+    private String managementOffice;
+    /**
+     * 编号
+     */
+    private String number;
+    /**
+     * 名称
+     */
+    private String name;
+    /**
+     * 经度
+     */
+    private String longitude;
+    /**
+     * 纬度
+     */
+    private String latitude;
+    /**
+     * 备注
+     */
+    private String remark;
+    /**
+     * 删除标志
+     */
+    @TableLogic
+    private String delFlag;
+
+}

+ 105 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/domain/GPressureRegulatingBoxDetails.java

@@ -0,0 +1,105 @@
+package com.ruoyi.gas.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;
+
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 调压箱详情对象 g_pressure_regulating_box_details
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+@Data
+@Accessors(chain = true)
+@TableName("g_pressure_regulating_box_details")
+public class GPressureRegulatingBoxDetails extends BaseEntity {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 序号
+     */
+    @TableId(value = "id")
+    private Long id;
+    /**
+     * 调压箱id
+     */
+    private Long regulatingBoxId;
+    /**
+     * 阀井位置
+     */
+    private String valveWellPosition;
+    /**
+     * 阀井钥匙形状
+     */
+    private String valveWellKeyShape;
+    /**
+     * 厂家
+     */
+    private String manufacturer;
+    /**
+     * 流量
+     */
+    private String flow;
+    /**
+     * 进口管径
+     */
+    private String importPipeDiameter;
+    /**
+     * 出口管径
+     */
+    private String outletPipeDiameter;
+    /**
+     * 旁通管径
+     */
+    private String bypassPipeDiameter;
+    /**
+     * 调压器
+     */
+    private String voltageRegulator;
+    /**
+     * 设施规格型号
+     */
+    private String facilitySpecificationsAndModels;
+    /**
+     * 入口压力
+     */
+    private String inletPressure;
+    /**
+     * 出口压力
+     */
+    private String outletPressure;
+    /**
+     * 切断压力
+     */
+    private String cutOffPressure;
+    /**
+     * 放散压力
+     */
+    private String releasePressure;
+    /**
+     * 出厂编号
+     */
+    private String factoryNumber;
+    /**
+     * 出厂日期
+     */
+    private String factoryDate;
+    /**
+     * 备注
+     */
+    private String remark;
+    /**
+     * 删除标志
+     */
+    @TableLogic
+    private String delFlag;
+
+}

+ 122 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/domain/bo/GPressureRegulatingBoxBo.java

@@ -0,0 +1,122 @@
+package com.ruoyi.gas.domain.bo;
+
+import com.ruoyi.common.core.domain.BaseEntity;
+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.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * 调压箱管理业务对象 g_pressure_regulating_box
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("调压箱管理业务对象")
+public class GPressureRegulatingBoxBo extends BaseEntity {
+
+    /**
+     * 序号
+     */
+    @ApiModelProperty(value = "序号", required = true)
+    @NotNull(message = "序号不能为空", groups = { EditGroup.class })
+    private Long id;
+
+    /**
+     * 性质
+     */
+    @ApiModelProperty(value = "性质", required = true)
+    @NotBlank(message = "性质不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String nature;
+
+    /**
+     * 类型
+     */
+    @ApiModelProperty(value = "类型", required = true)
+    @NotBlank(message = "类型不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String type;
+
+    /**
+     * 路数
+     */
+    @ApiModelProperty(value = "路数", required = true)
+    @NotBlank(message = "路数不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String numberOfRoutes;
+
+    /**
+     * 管理所
+     */
+    @ApiModelProperty(value = "管理所", required = true)
+    @NotBlank(message = "管理所不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String managementOffice;
+
+    /**
+     * 编号
+     */
+    @ApiModelProperty(value = "编号", required = true)
+    @NotBlank(message = "编号不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String number;
+
+    /**
+     * 名称
+     */
+    @ApiModelProperty(value = "名称", required = true)
+    @NotBlank(message = "名称不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String name;
+
+    /**
+     * 经度
+     */
+    @ApiModelProperty(value = "经度", required = true)
+    @NotBlank(message = "经度不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String longitude;
+
+    /**
+     * 纬度
+     */
+    @ApiModelProperty(value = "纬度", required = true)
+    @NotBlank(message = "纬度不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String latitude;
+
+    /**
+     * 备注
+     */
+    @ApiModelProperty(value = "备注", required = true)
+    @NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String remark;
+
+
+    /**
+     * 分页大小
+     */
+    @ApiModelProperty("分页大小")
+    private Integer pageSize;
+
+    /**
+     * 当前页数
+     */
+    @ApiModelProperty("当前页数")
+    private Integer pageNum;
+
+    /**
+     * 排序列
+     */
+    @ApiModelProperty("排序列")
+    private String orderByColumn;
+
+    /**
+     * 排序的方向desc或者asc
+     */
+    @ApiModelProperty(value = "排序的方向", example = "asc,desc")
+    private String isAsc;
+
+    private GPressureRegulatingBoxDetailsBo pressureRegulatingBoxDetailsBo;
+}

+ 178 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/domain/bo/GPressureRegulatingBoxDetailsBo.java

@@ -0,0 +1,178 @@
+package com.ruoyi.gas.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;
+
+/**
+ * 调压箱详情业务对象 g_pressure_regulating_box_details
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("调压箱详情业务对象")
+public class GPressureRegulatingBoxDetailsBo extends BaseEntity {
+
+    /**
+     * 序号
+     */
+    @ApiModelProperty(value = "序号", required = true)
+    @NotNull(message = "序号不能为空", groups = { EditGroup.class })
+    private Long id;
+
+    /**
+     * 调压箱id
+     */
+    @ApiModelProperty(value = "调压箱id", required = true)
+    @NotNull(message = "调压箱id不能为空", groups = { AddGroup.class, EditGroup.class })
+    private Long regulatingBoxId;
+
+    /**
+     * 阀井位置
+     */
+    @ApiModelProperty(value = "阀井位置", required = true)
+    @NotBlank(message = "阀井位置不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String valveWellPosition;
+
+    /**
+     * 阀井钥匙形状
+     */
+    @ApiModelProperty(value = "阀井钥匙形状", required = true)
+    @NotBlank(message = "阀井钥匙形状不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String valveWellKeyShape;
+
+    /**
+     * 厂家
+     */
+    @ApiModelProperty(value = "厂家", required = true)
+    @NotBlank(message = "厂家不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String manufacturer;
+
+    /**
+     * 流量
+     */
+    @ApiModelProperty(value = "流量", required = true)
+    @NotBlank(message = "流量不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String flow;
+
+    /**
+     * 进口管径
+     */
+    @ApiModelProperty(value = "进口管径", required = true)
+    @NotBlank(message = "进口管径不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String importPipeDiameter;
+
+    /**
+     * 出口管径
+     */
+    @ApiModelProperty(value = "出口管径", required = true)
+    @NotBlank(message = "出口管径不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String outletPipeDiameter;
+
+    /**
+     * 旁通管径
+     */
+    @ApiModelProperty(value = "旁通管径", required = true)
+    @NotBlank(message = "旁通管径不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String bypassPipeDiameter;
+
+    /**
+     * 调压器
+     */
+    @ApiModelProperty(value = "调压器", required = true)
+    @NotBlank(message = "调压器不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String voltageRegulator;
+
+    /**
+     * 设施规格型号
+     */
+    @ApiModelProperty(value = "设施规格型号", required = true)
+    @NotBlank(message = "设施规格型号不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String facilitySpecificationsAndModels;
+
+    /**
+     * 入口压力
+     */
+    @ApiModelProperty(value = "入口压力", required = true)
+    @NotBlank(message = "入口压力不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String inletPressure;
+
+    /**
+     * 出口压力
+     */
+    @ApiModelProperty(value = "出口压力", required = true)
+    @NotBlank(message = "出口压力不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String outletPressure;
+
+    /**
+     * 切断压力
+     */
+    @ApiModelProperty(value = "切断压力", required = true)
+    @NotBlank(message = "切断压力不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String cutOffPressure;
+
+    /**
+     * 放散压力
+     */
+    @ApiModelProperty(value = "放散压力", required = true)
+    @NotBlank(message = "放散压力不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String releasePressure;
+
+    /**
+     * 出厂编号
+     */
+    @ApiModelProperty(value = "出厂编号", required = true)
+    @NotBlank(message = "出厂编号不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String factoryNumber;
+
+    /**
+     * 出厂日期
+     */
+    @ApiModelProperty(value = "出厂日期", required = true)
+    @NotBlank(message = "出厂日期不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String factoryDate;
+
+    /**
+     * 备注
+     */
+    @ApiModelProperty(value = "备注", required = true)
+    @NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
+    private String remark;
+
+
+    /**
+     * 分页大小
+     */
+    @ApiModelProperty("分页大小")
+    private Integer pageSize;
+
+    /**
+     * 当前页数
+     */
+    @ApiModelProperty("当前页数")
+    private Integer pageNum;
+
+    /**
+     * 排序列
+     */
+    @ApiModelProperty("排序列")
+    private String orderByColumn;
+
+    /**
+     * 排序的方向desc或者asc
+     */
+    @ApiModelProperty(value = "排序的方向", example = "asc,desc")
+    private String isAsc;
+
+}

+ 154 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/domain/vo/GPressureRegulatingBoxDetailsVo.java

@@ -0,0 +1,154 @@
+package com.ruoyi.gas.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;
+
+
+
+/**
+ * 调压箱详情视图对象 g_pressure_regulating_box_details
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+@Data
+@ApiModel("调压箱详情视图对象")
+@ExcelIgnoreUnannotated
+public class GPressureRegulatingBoxDetailsVo {
+
+	private static final long serialVersionUID = 1L;
+
+    /**
+     * 序号
+     */
+	@ExcelProperty(value = "序号")
+	@ApiModelProperty("序号")
+	private Long id;
+
+    /**
+     * 调压箱id
+     */
+	@ExcelProperty(value = "调压箱id")
+	@ApiModelProperty("调压箱id")
+	private Long regulatingBoxId;
+
+    /**
+     * 阀井位置
+     */
+	@ExcelProperty(value = "阀井位置")
+	@ApiModelProperty("阀井位置")
+	private String valveWellPosition;
+
+    /**
+     * 阀井钥匙形状
+     */
+	@ExcelProperty(value = "阀井钥匙形状")
+	@ApiModelProperty("阀井钥匙形状")
+	private String valveWellKeyShape;
+
+    /**
+     * 厂家
+     */
+	@ExcelProperty(value = "厂家")
+	@ApiModelProperty("厂家")
+	private String manufacturer;
+
+    /**
+     * 流量
+     */
+	@ExcelProperty(value = "流量")
+	@ApiModelProperty("流量")
+	private String flow;
+
+    /**
+     * 进口管径
+     */
+	@ExcelProperty(value = "进口管径")
+	@ApiModelProperty("进口管径")
+	private String importPipeDiameter;
+
+    /**
+     * 出口管径
+     */
+	@ExcelProperty(value = "出口管径")
+	@ApiModelProperty("出口管径")
+	private String outletPipeDiameter;
+
+    /**
+     * 旁通管径
+     */
+	@ExcelProperty(value = "旁通管径")
+	@ApiModelProperty("旁通管径")
+	private String bypassPipeDiameter;
+
+    /**
+     * 调压器
+     */
+	@ExcelProperty(value = "调压器")
+	@ApiModelProperty("调压器")
+	private String voltageRegulator;
+
+    /**
+     * 设施规格型号
+     */
+	@ExcelProperty(value = "设施规格型号")
+	@ApiModelProperty("设施规格型号")
+	private String facilitySpecificationsAndModels;
+
+    /**
+     * 入口压力
+     */
+	@ExcelProperty(value = "入口压力")
+	@ApiModelProperty("入口压力")
+	private String inletPressure;
+
+    /**
+     * 出口压力
+     */
+	@ExcelProperty(value = "出口压力")
+	@ApiModelProperty("出口压力")
+	private String outletPressure;
+
+    /**
+     * 切断压力
+     */
+	@ExcelProperty(value = "切断压力")
+	@ApiModelProperty("切断压力")
+	private String cutOffPressure;
+
+    /**
+     * 放散压力
+     */
+	@ExcelProperty(value = "放散压力")
+	@ApiModelProperty("放散压力")
+	private String releasePressure;
+
+    /**
+     * 出厂编号
+     */
+	@ExcelProperty(value = "出厂编号")
+	@ApiModelProperty("出厂编号")
+	private String factoryNumber;
+
+    /**
+     * 出厂日期
+     */
+	@ExcelProperty(value = "出厂日期")
+	@ApiModelProperty("出厂日期")
+	private String factoryDate;
+
+    /**
+     * 备注
+     */
+	@ExcelProperty(value = "备注")
+	@ApiModelProperty("备注")
+	private String remark;
+
+
+}

+ 96 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/domain/vo/GPressureRegulatingBoxVo.java

@@ -0,0 +1,96 @@
+package com.ruoyi.gas.domain.vo;
+
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.alibaba.excel.annotation.ExcelProperty;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+
+/**
+ * 调压箱管理视图对象 g_pressure_regulating_box
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+@Data
+@ApiModel("调压箱管理视图对象")
+@ExcelIgnoreUnannotated
+public class GPressureRegulatingBoxVo {
+
+	private static final long serialVersionUID = 1L;
+
+    /**
+     * 序号
+     */
+	@ExcelProperty(value = "序号")
+	@ApiModelProperty("序号")
+	private Long id;
+
+    /**
+     * 性质
+     */
+	@ExcelProperty(value = "性质")
+	@ApiModelProperty("性质")
+	private String nature;
+
+    /**
+     * 类型
+     */
+	@ExcelProperty(value = "类型")
+	@ApiModelProperty("类型")
+	private String type;
+
+    /**
+     * 路数
+     */
+	@ExcelProperty(value = "路数")
+	@ApiModelProperty("路数")
+	private String numberOfRoutes;
+
+    /**
+     * 管理所
+     */
+	@ExcelProperty(value = "管理所")
+	@ApiModelProperty("管理所")
+	private String managementOffice;
+
+    /**
+     * 编号
+     */
+	@ExcelProperty(value = "编号")
+	@ApiModelProperty("编号")
+	private String number;
+
+    /**
+     * 名称
+     */
+	@ExcelProperty(value = "名称")
+	@ApiModelProperty("名称")
+	private String name;
+
+    /**
+     * 经度
+     */
+	@ExcelProperty(value = "经度")
+	@ApiModelProperty("经度")
+	private String longitude;
+
+    /**
+     * 纬度
+     */
+	@ExcelProperty(value = "纬度")
+	@ApiModelProperty("纬度")
+	private String latitude;
+
+    /**
+     * 备注
+     */
+	@ExcelProperty(value = "备注")
+	@ApiModelProperty("备注")
+	private String remark;
+
+	private List<GPressureRegulatingBoxDetailsVo> pressureRegulatingBoxDetailsVo;
+}

+ 14 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/mapper/GPressureRegulatingBoxDetailsMapper.java

@@ -0,0 +1,14 @@
+package com.ruoyi.gas.mapper;
+
+import com.ruoyi.gas.domain.GPressureRegulatingBoxDetails;
+import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
+
+/**
+ * 调压箱详情Mapper接口
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+public interface GPressureRegulatingBoxDetailsMapper extends BaseMapperPlus<GPressureRegulatingBoxDetails> {
+
+}

+ 14 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/mapper/GPressureRegulatingBoxMapper.java

@@ -0,0 +1,14 @@
+package com.ruoyi.gas.mapper;
+
+import com.ruoyi.gas.domain.GPressureRegulatingBox;
+import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
+
+/**
+ * 调压箱管理Mapper接口
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+public interface GPressureRegulatingBoxMapper extends BaseMapperPlus<GPressureRegulatingBox> {
+
+}

+ 56 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/service/IGPressureRegulatingBoxDetailsService.java

@@ -0,0 +1,56 @@
+package com.ruoyi.gas.service;
+
+import com.ruoyi.gas.domain.GPressureRegulatingBoxDetails;
+import com.ruoyi.gas.domain.vo.GPressureRegulatingBoxDetailsVo;
+import com.ruoyi.gas.domain.bo.GPressureRegulatingBoxDetailsBo;
+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 2024-03-25
+ */
+public interface IGPressureRegulatingBoxDetailsService extends IServicePlus<GPressureRegulatingBoxDetails, GPressureRegulatingBoxDetailsVo> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	GPressureRegulatingBoxDetailsVo queryById(Long id);
+
+	/**
+	 * 查询列表
+	 */
+    TableDataInfo<GPressureRegulatingBoxDetailsVo> queryPageList(GPressureRegulatingBoxDetailsBo bo);
+
+	/**
+	 * 查询列表
+	 */
+	List<GPressureRegulatingBoxDetailsVo> queryList(GPressureRegulatingBoxDetailsBo bo);
+
+	/**
+	 * 根据新增业务对象插入调压箱详情
+	 * @param bo 调压箱详情新增业务对象
+	 * @return
+	 */
+	Boolean insertByBo(GPressureRegulatingBoxDetailsBo bo);
+
+	/**
+	 * 根据编辑业务对象修改调压箱详情
+	 * @param bo 调压箱详情编辑业务对象
+	 * @return
+	 */
+	Boolean updateByBo(GPressureRegulatingBoxDetailsBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 56 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/service/IGPressureRegulatingBoxService.java

@@ -0,0 +1,56 @@
+package com.ruoyi.gas.service;
+
+import com.ruoyi.gas.domain.GPressureRegulatingBox;
+import com.ruoyi.gas.domain.vo.GPressureRegulatingBoxVo;
+import com.ruoyi.gas.domain.bo.GPressureRegulatingBoxBo;
+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 2024-03-25
+ */
+public interface IGPressureRegulatingBoxService extends IServicePlus<GPressureRegulatingBox, GPressureRegulatingBoxVo> {
+	/**
+	 * 查询单个
+	 * @return
+	 */
+	GPressureRegulatingBoxVo queryById(Long id);
+
+	/**
+	 * 查询列表
+	 */
+    TableDataInfo<GPressureRegulatingBoxVo> queryPageList(GPressureRegulatingBoxBo bo);
+
+	/**
+	 * 查询列表
+	 */
+	List<GPressureRegulatingBoxVo> queryList(GPressureRegulatingBoxBo bo);
+
+	/**
+	 * 根据新增业务对象插入调压箱管理
+	 * @param bo 调压箱管理新增业务对象
+	 * @return
+	 */
+	Boolean insertByBo(GPressureRegulatingBoxBo bo);
+
+	/**
+	 * 根据编辑业务对象修改调压箱管理
+	 * @param bo 调压箱管理编辑业务对象
+	 * @return
+	 */
+	Boolean updateByBo(GPressureRegulatingBoxBo bo);
+
+	/**
+	 * 校验并删除数据
+	 * @param ids 主键集合
+	 * @param isValid 是否校验,true-删除前校验,false-不校验
+	 * @return
+	 */
+	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+}

+ 103 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/service/impl/GPressureRegulatingBoxDetailsServiceImpl.java

@@ -0,0 +1,103 @@
+package com.ruoyi.gas.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.gas.domain.bo.GPressureRegulatingBoxDetailsBo;
+import com.ruoyi.gas.domain.vo.GPressureRegulatingBoxDetailsVo;
+import com.ruoyi.gas.domain.GPressureRegulatingBoxDetails;
+import com.ruoyi.gas.mapper.GPressureRegulatingBoxDetailsMapper;
+import com.ruoyi.gas.service.IGPressureRegulatingBoxDetailsService;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Collection;
+
+/**
+ * 调压箱详情Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+@Service
+public class GPressureRegulatingBoxDetailsServiceImpl extends ServicePlusImpl<GPressureRegulatingBoxDetailsMapper, GPressureRegulatingBoxDetails, GPressureRegulatingBoxDetailsVo> implements IGPressureRegulatingBoxDetailsService {
+
+    @Override
+    public GPressureRegulatingBoxDetailsVo queryById(Long id){
+        return getVoById(id);
+    }
+
+    @Override
+    public TableDataInfo<GPressureRegulatingBoxDetailsVo> queryPageList(GPressureRegulatingBoxDetailsBo bo) {
+        PagePlus<GPressureRegulatingBoxDetails, GPressureRegulatingBoxDetailsVo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo));
+        return PageUtils.buildDataInfo(result);
+    }
+
+    @Override
+    public List<GPressureRegulatingBoxDetailsVo> queryList(GPressureRegulatingBoxDetailsBo bo) {
+        return listVo(buildQueryWrapper(bo));
+    }
+
+    private LambdaQueryWrapper<GPressureRegulatingBoxDetails> buildQueryWrapper(GPressureRegulatingBoxDetailsBo bo) {
+        Map<String, Object> params = bo.getParams();
+        LambdaQueryWrapper<GPressureRegulatingBoxDetails> lqw = Wrappers.lambdaQuery();
+        lqw.eq(bo.getRegulatingBoxId() != null, GPressureRegulatingBoxDetails::getRegulatingBoxId, bo.getRegulatingBoxId());
+        lqw.eq(StringUtils.isNotBlank(bo.getValveWellPosition()), GPressureRegulatingBoxDetails::getValveWellPosition, bo.getValveWellPosition());
+        lqw.eq(StringUtils.isNotBlank(bo.getValveWellKeyShape()), GPressureRegulatingBoxDetails::getValveWellKeyShape, bo.getValveWellKeyShape());
+        lqw.eq(StringUtils.isNotBlank(bo.getManufacturer()), GPressureRegulatingBoxDetails::getManufacturer, bo.getManufacturer());
+        lqw.eq(StringUtils.isNotBlank(bo.getFlow()), GPressureRegulatingBoxDetails::getFlow, bo.getFlow());
+        lqw.eq(StringUtils.isNotBlank(bo.getImportPipeDiameter()), GPressureRegulatingBoxDetails::getImportPipeDiameter, bo.getImportPipeDiameter());
+        lqw.eq(StringUtils.isNotBlank(bo.getOutletPipeDiameter()), GPressureRegulatingBoxDetails::getOutletPipeDiameter, bo.getOutletPipeDiameter());
+        lqw.eq(StringUtils.isNotBlank(bo.getBypassPipeDiameter()), GPressureRegulatingBoxDetails::getBypassPipeDiameter, bo.getBypassPipeDiameter());
+        lqw.eq(StringUtils.isNotBlank(bo.getVoltageRegulator()), GPressureRegulatingBoxDetails::getVoltageRegulator, bo.getVoltageRegulator());
+        lqw.eq(StringUtils.isNotBlank(bo.getFacilitySpecificationsAndModels()), GPressureRegulatingBoxDetails::getFacilitySpecificationsAndModels, bo.getFacilitySpecificationsAndModels());
+        lqw.eq(StringUtils.isNotBlank(bo.getInletPressure()), GPressureRegulatingBoxDetails::getInletPressure, bo.getInletPressure());
+        lqw.eq(StringUtils.isNotBlank(bo.getOutletPressure()), GPressureRegulatingBoxDetails::getOutletPressure, bo.getOutletPressure());
+        lqw.eq(StringUtils.isNotBlank(bo.getCutOffPressure()), GPressureRegulatingBoxDetails::getCutOffPressure, bo.getCutOffPressure());
+        lqw.eq(StringUtils.isNotBlank(bo.getReleasePressure()), GPressureRegulatingBoxDetails::getReleasePressure, bo.getReleasePressure());
+        lqw.eq(StringUtils.isNotBlank(bo.getFactoryNumber()), GPressureRegulatingBoxDetails::getFactoryNumber, bo.getFactoryNumber());
+        lqw.eq(StringUtils.isNotBlank(bo.getFactoryDate()), GPressureRegulatingBoxDetails::getFactoryDate, bo.getFactoryDate());
+        return lqw;
+    }
+
+    @Override
+    public Boolean insertByBo(GPressureRegulatingBoxDetailsBo bo) {
+        GPressureRegulatingBoxDetails add = BeanUtil.toBean(bo, GPressureRegulatingBoxDetails.class);
+        validEntityBeforeSave(add);
+        boolean flag = save(add);
+        if (flag) {
+            bo.setId(add.getId());
+        }
+        return flag;
+    }
+
+    @Override
+    public Boolean updateByBo(GPressureRegulatingBoxDetailsBo bo) {
+        GPressureRegulatingBoxDetails update = BeanUtil.toBean(bo, GPressureRegulatingBoxDetails.class);
+        validEntityBeforeSave(update);
+        return updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(GPressureRegulatingBoxDetails entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return removeByIds(ids);
+    }
+}

+ 107 - 0
ruoyi-gas/src/main/java/com/ruoyi/gas/service/impl/GPressureRegulatingBoxServiceImpl.java

@@ -0,0 +1,107 @@
+package com.ruoyi.gas.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
+import com.ruoyi.common.core.page.PagePlus;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.utils.PageUtils;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.gas.domain.GPressureRegulatingBox;
+import com.ruoyi.gas.domain.bo.GPressureRegulatingBoxBo;
+import com.ruoyi.gas.domain.bo.GPressureRegulatingBoxDetailsBo;
+import com.ruoyi.gas.domain.vo.GPressureRegulatingBoxDetailsVo;
+import com.ruoyi.gas.domain.vo.GPressureRegulatingBoxVo;
+import com.ruoyi.gas.mapper.GPressureRegulatingBoxMapper;
+import com.ruoyi.gas.service.IGPressureRegulatingBoxDetailsService;
+import com.ruoyi.gas.service.IGPressureRegulatingBoxService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 调压箱管理Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2024-03-25
+ */
+@Service
+public class GPressureRegulatingBoxServiceImpl extends ServicePlusImpl<GPressureRegulatingBoxMapper, GPressureRegulatingBox, GPressureRegulatingBoxVo> implements IGPressureRegulatingBoxService {
+
+    @Override
+    public GPressureRegulatingBoxVo queryById(Long id){
+        return getVoById(id);
+    }
+
+    @Autowired
+    private IGPressureRegulatingBoxDetailsService pressureRegulatingBoxDetailsService;
+    @Override
+    public TableDataInfo<GPressureRegulatingBoxVo> queryPageList(GPressureRegulatingBoxBo bo) {
+        PagePlus<GPressureRegulatingBox, GPressureRegulatingBoxVo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo));
+        result.getRecordsVo().forEach(item -> {
+            GPressureRegulatingBoxDetailsBo gPressureRegulatingBoxDetailsBo = new GPressureRegulatingBoxDetailsBo();
+            gPressureRegulatingBoxDetailsBo.setRegulatingBoxId(item.getId());
+            TableDataInfo<GPressureRegulatingBoxDetailsVo> queriedPageList = pressureRegulatingBoxDetailsService.queryPageList(gPressureRegulatingBoxDetailsBo);
+            item.setPressureRegulatingBoxDetailsVo(queriedPageList.getRows());
+        });
+        return PageUtils.buildDataInfo(result);
+    }
+
+    @Override
+    public List<GPressureRegulatingBoxVo> queryList(GPressureRegulatingBoxBo bo) {
+        return listVo(buildQueryWrapper(bo));
+    }
+
+    private LambdaQueryWrapper<GPressureRegulatingBox> buildQueryWrapper(GPressureRegulatingBoxBo bo) {
+        Map<String, Object> params = bo.getParams();
+        LambdaQueryWrapper<GPressureRegulatingBox> lqw = Wrappers.lambdaQuery();
+        lqw.eq(StringUtils.isNotBlank(bo.getNature()), GPressureRegulatingBox::getNature, bo.getNature());
+        lqw.eq(StringUtils.isNotBlank(bo.getType()), GPressureRegulatingBox::getType, bo.getType());
+        lqw.eq(StringUtils.isNotBlank(bo.getNumberOfRoutes()), GPressureRegulatingBox::getNumberOfRoutes, bo.getNumberOfRoutes());
+        lqw.eq(StringUtils.isNotBlank(bo.getManagementOffice()), GPressureRegulatingBox::getManagementOffice, bo.getManagementOffice());
+        lqw.eq(StringUtils.isNotBlank(bo.getNumber()), GPressureRegulatingBox::getNumber, bo.getNumber());
+        lqw.like(StringUtils.isNotBlank(bo.getName()), GPressureRegulatingBox::getName, bo.getName());
+        lqw.eq(StringUtils.isNotBlank(bo.getLongitude()), GPressureRegulatingBox::getLongitude, bo.getLongitude());
+        lqw.eq(StringUtils.isNotBlank(bo.getLatitude()), GPressureRegulatingBox::getLatitude, bo.getLatitude());
+        return lqw;
+    }
+
+    @Override
+    public Boolean insertByBo(GPressureRegulatingBoxBo bo) {
+        GPressureRegulatingBox add = BeanUtil.toBean(bo, GPressureRegulatingBox.class);
+        validEntityBeforeSave(add);
+        boolean flag = save(add);
+        if (flag) {
+            bo.setId(add.getId());
+        }
+        return flag;
+    }
+
+    @Override
+    public Boolean updateByBo(GPressureRegulatingBoxBo bo) {
+        GPressureRegulatingBox update = BeanUtil.toBean(bo, GPressureRegulatingBox.class);
+        validEntityBeforeSave(update);
+        return updateById(update);
+    }
+
+    /**
+     * 保存前的数据校验
+     *
+     * @param entity 实体类数据
+     */
+    private void validEntityBeforeSave(GPressureRegulatingBox entity){
+        //TODO 做一些数据校验,如唯一约束
+    }
+
+    @Override
+    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+        if(isValid){
+            //TODO 做一些业务上的校验,判断是否需要校验
+        }
+        return removeByIds(ids);
+    }
+}

+ 26 - 0
ruoyi-gas/src/main/resources/mapper/GPressureRegulatingBoxMapper.xml

@@ -0,0 +1,26 @@
+<?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.gas.mapper.GPressureRegulatingBoxMapper">
+
+    <resultMap type="com.ruoyi.gas.domain.GPressureRegulatingBox" id="GPressureRegulatingBoxResult">
+        <result property="id" column="id"/>
+        <result property="nature" column="nature"/>
+        <result property="type" column="type"/>
+        <result property="numberOfRoutes" column="number_of_routes"/>
+        <result property="managementOffice" column="management_office"/>
+        <result property="number" column="number"/>
+        <result property="name" column="name"/>
+        <result property="longitude" column="longitude"/>
+        <result property="latitude" column="latitude"/>
+        <result property="remark" column="remark"/>
+        <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>