guoshilong
2023-07-05 f18ae9ca317f81095dc1f7e4e32a7513620f9f5d
水库数据质量管理
3 files modified
7 files added
311 ■■■■■ changed files
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/resDataCheck/entity/QualityManage.java 36 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/resDataCheck/vo/QualityManageVO.java 43 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/controller/QualityManageController.java 104 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/controller/RulesController.java 12 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.java 21 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.xml 48 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/IQualityManageService.java 12 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/IRulesService.java 2 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/impl/QualityManageServiceImpl.java 22 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/impl/RulesServiceImpl.java 11 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/resDataCheck/entity/QualityManage.java
New file
@@ -0,0 +1,36 @@
package cn.gistack.sm.resDataCheck.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springblade.core.mp.base.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
 * @Description: 水库数据质量管理表
 */
@Data
@TableName("SM_RES_DATA_QUALITY_MANAGE")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="SM_RES_DATA_CHECK_RULES对象", description="水库数据质量管理表")
public class QualityManage extends BaseEntity {
    /**
     * 水库id
     */
    @ApiModelProperty("水库id")
    private String resId;
    /**
     * 规则id
     */
    @ApiModelProperty("规则id")
    private String ruleId;
}
skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/resDataCheck/vo/QualityManageVO.java
New file
@@ -0,0 +1,43 @@
package cn.gistack.sm.resDataCheck.vo;
import cn.gistack.sm.resDataCheck.entity.QualityManage;
import lombok.Data;
@Data
public class QualityManageVO extends QualityManage {
    /**
     * 水库名称
     */
    private String resName;
    /**
     * 行政区划
     */
    private String resLoc;
    /**
     * 注册登记号
     */
    private String resRegCode;
    /**
     * 工程规模
     */
    private String engScal;
    /**
     * 校验规则名称
     */
    private String ruleName;
    /**
     * 校验规则描述
     */
    private String ruleDesc;
    /**
     * 校验结果描述
     */
    private String proDesc;
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/controller/QualityManageController.java
New file
@@ -0,0 +1,104 @@
package cn.gistack.sm.resDataCheck.controller;
import cn.gistack.sm.resDataCheck.entity.QualityManage;
import cn.gistack.sm.resDataCheck.entity.RulesCondition;
import cn.gistack.sm.resDataCheck.service.IQualityManageService;
import cn.gistack.sm.resDataCheck.service.IRulesConditionService;
import cn.gistack.sm.resDataCheck.vo.QualityManageVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
/**
 * @Description: 数据规则校验
 */
@Slf4j
@Api(tags = "数据质量管理")
@RestController
@RequestMapping("/resDataCheck/qualityManage")
@AllArgsConstructor
public class QualityManageController extends BladeController {
    private IQualityManageService qualityManageService;
    /**
     * 分页列表查询
     */
    @ApiOperation(value = "数据规则校验-分页列表查询", notes = "数据规则校验-分页列表查询")
    @GetMapping(value = "/list")
    public R<IPage<QualityManageVO>> queryPageList(QualityManageVO qualityManageVO, Query query) {
        IPage<QualityManageVO> pageList = qualityManageService.selectCustomizePage(Condition.getPage(query), qualityManageVO);
        return R.data(pageList);
    }
    /**
     * 添加
     *
     * @param QualityManageVO
     * @return
     */
    @ApiOperation(value = "数据规则校验-添加", notes = "数据规则校验-添加")
    @PostMapping(value = "/add")
    public R add(@RequestBody QualityManage QualityManageVO) {
        return R.data(qualityManageService.save(QualityManageVO));
    }
    /**
     * 编辑
     *
     * @param QualityManageVO
     * @return
     */
    @ApiOperation(value = "数据规则校验-编辑", notes = "数据规则校验-编辑")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
    public R edit(@RequestBody QualityManage QualityManageVO) {
        return R.data(qualityManageService.updateById(QualityManageVO));
    }
    /**
     * 通过id删除
     *
     * @param id
     * @return
     */
    @ApiOperation(value = "数据规则校验-通过id删除", notes = "数据规则校验-通过id删除")
    @PostMapping(value = "/delete")
    public R delete(@RequestParam(name = "id", required = true) String id) {
        return R.data(qualityManageService.removeById(id));
    }
    /**
     * 批量删除
     *
     * @param ids
     * @return
     */
    @ApiOperation(value = "数据规则校验-批量删除", notes = "数据规则校验-批量删除")
    @PostMapping(value = "/deleteBatch")
    public R deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
        return R.data(qualityManageService.removeByIds(Arrays.asList(ids.split(","))));
    }
    /**
     * 通过id查询
     *
     * @param id
     * @return
     */
    @ApiOperation(value = "数据规则校验-通过id查询", notes = "数据规则校验-通过id查询")
    @GetMapping(value = "/queryById")
    public R queryById(@RequestParam(name = "id", required = true) String id) {
        QualityManageVO qualityManageVO = qualityManageService.getDetail(id);
        return R.data(qualityManageVO);
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/controller/RulesController.java
@@ -111,6 +111,18 @@
    }
    /**
     * 自定义删除
     *
     * @param id
     * @return
     */
    @ApiOperation(value = "数据规则校验-自定义删除", notes = "数据规则校验-自定义删除")
    @PostMapping(value = "/remove")
    public R remove(@RequestParam(name = "ids", required = true) String id) {
        return R.data(rulesService.customizeRemove(id));
    }
    /**
     * 通过id查询
     *
     * @param id
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.java
New file
@@ -0,0 +1,21 @@
package cn.gistack.sm.resDataCheck.mapper;
import cn.gistack.sm.resDataCheck.entity.QualityManage;
import cn.gistack.sm.resDataCheck.entity.Rules;
import cn.gistack.sm.resDataCheck.vo.QualityManageVO;
import cn.gistack.sm.resDataCheck.vo.RulesVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * @Description: 数据校验规则
 */
public interface QualityManageMapper extends BaseMapper<QualityManage> {
    List<QualityManageVO> selectCustomizePage(IPage<QualityManageVO> page, @Param("vo") QualityManageVO qualityManageVO);
    QualityManageVO getDetail(@Param("id") String id);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.xml
New file
@@ -0,0 +1,48 @@
<?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="cn.gistack.sm.resDataCheck.mapper.QualityManageMapper">
    <select id="selectCustomizePage" resultType="cn.gistack.sm.resDataCheck.vo.QualityManageVO">
        SELECT
               arb."name" AS resName,
               arb."res_loc" AS resLoc,
               arb."res_reg_code" AS resRegCode,
               arb."eng_scal" AS engScal,
               rule.name AS ruleName,
               rule.description AS ruleDesc,
               rule.pro_description AS proDesc,
               qm.*
        FROM
            SM_RES_DATA_QUALITY_MANAGE qm
        LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = qm.res_id
        LEFT JOIN SM_RES_DATA_CHECK_RULES rule ON rule.id = qm.rule_id
        WHERE qm.is_deleted = 0
        <if test="vo.resName !=null and vo.resName !='' ">
            AND arb."name" LIKE CONCAT('%',#{vo.resName},'%')
        </if>
        <if test="vo.vo.engScal !=null and vo.vo.engScal !='' ">
            AND arb."eng_scal"  = #{vo.engScal}
        </if>
        <if test="vo.ruleName !=null and vo.ruleName !='' ">
            AND rule.name LIKE CONCAT('%',#{vo.ruleName},'%')
        </if>
    </select>
    <select id="getDetail" resultType="cn.gistack.sm.resDataCheck.vo.QualityManageVO">
        SELECT
            arb."name" AS resName,
            arb."res_loc" AS resLoc,
            arb."res_reg_code" AS resRegCode,
            arb."eng_scal" AS engScal,
            rule.name AS ruleName,
            rule.description AS ruleDesc,
            rule.pro_description AS proDesc,
            qm.*
        FROM
            SM_RES_DATA_QUALITY_MANAGE qm
                LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = qm.res_id
                LEFT JOIN SM_RES_DATA_CHECK_RULES rule ON rule.id = qm.rule_id
        WHERE qm.is_deleted = 0 AND qm.id = #{id}
    </select>
</mapper>
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/IQualityManageService.java
New file
@@ -0,0 +1,12 @@
package cn.gistack.sm.resDataCheck.service;
import cn.gistack.sm.resDataCheck.entity.QualityManage;
import cn.gistack.sm.resDataCheck.vo.QualityManageVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
public interface IQualityManageService extends BaseService<QualityManage> {
    IPage<QualityManageVO> selectCustomizePage(IPage<QualityManageVO> page, QualityManageVO qualityManageVO);
    QualityManageVO getDetail(String id);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/IRulesService.java
@@ -16,4 +16,6 @@
    Boolean customizeEdit(RulesVO rulesVO);
    RulesVO getDetail(String id);
    Boolean customizeRemove(String id);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/impl/QualityManageServiceImpl.java
New file
@@ -0,0 +1,22 @@
package cn.gistack.sm.resDataCheck.service.impl;
import cn.gistack.sm.resDataCheck.entity.QualityManage;
import cn.gistack.sm.resDataCheck.mapper.QualityManageMapper;
import cn.gistack.sm.resDataCheck.service.IQualityManageService;
import cn.gistack.sm.resDataCheck.vo.QualityManageVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springframework.stereotype.Service;
@Service
public class QualityManageServiceImpl extends BaseServiceImpl<QualityManageMapper, QualityManage> implements IQualityManageService {
    @Override
    public IPage<QualityManageVO> selectCustomizePage(IPage<QualityManageVO> page, QualityManageVO qualityManageVO) {
        return page.setRecords(baseMapper.selectCustomizePage(page,qualityManageVO));
    }
    @Override
    public QualityManageVO getDetail(String id) {
        return baseMapper.getDetail(id);
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/impl/RulesServiceImpl.java
@@ -77,4 +77,15 @@
        return rulesVO;
    }
    @Override
    @Transactional
    public Boolean customizeRemove(String id) {
        boolean removeRule = removeById(id);
        RulesCondition rulesCondition = new RulesCondition();
        rulesCondition.setRuleId(id);
        List<RulesCondition> list = rulesConditionService.list(Condition.getQueryWrapper(rulesCondition));
        boolean removeCondition = removeByIds(list);
        return removeRule&&removeCondition;
    }
}