Newer
Older
huludao / src / main / java / com / newfiber / api / pc / dao / RiverManage / RiverInfoBasisDao.java
package com.newfiber.api.pc.dao.RiverManage;

import com.baomidou.mybatisplus.plugins.Page;
import com.newfiber.api.core.base.BaseDao;
import com.newfiber.api.pc.model.River.RiverInfoBasis;
import com.newfiber.api.pc.model.River.WaterQuality;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * @author wmj
 * @version 创建时间:2017/11/24
 * @description 河道基础信息接口
 */
@Repository
public interface RiverInfoBasisDao extends BaseDao<RiverInfoBasis> {

    int addRiverInfoBasis(@Param("riverName") String riverName,
                          @Param("riverGrade") Integer riverGrade,
                          @Param("riverGradeZn") String riverGradeZn,
                          @Param("parentRiverNo") String parentRiverNo,
                          @Param("riverLength") BigDecimal riverLength,
                          @Param("riverStartAddress") String riverStartAddress,
                          @Param("riverEndAddress") String riverEndAddress,
                          @Param("flowThroughRegion") String flowThroughRegion,
                          @Param("createUserNo") String createUserNo,
                          @Param("riverNo") String riverNo,
                          @Param("divisionNo") String divisionNo,
                          @Param("riverInformation") String riverInformation,
                          @Param("riverPicsNo") String riverPicsNo,
                          @Param("pointXY") String pointXY);

    int updateRiverInfoBasis(@Param("riverName") String riverName,
                             @Param("riverGrade") Integer riverGrade,
                             @Param("riverGradeZn") String riverGradeZn,
                             @Param("parentRiverNo") String parentRiverNo,
                             @Param("riverLength") BigDecimal riverLength,
                             @Param("riverStartAddress") String riverStartAddress,
                             @Param("riverEndAddress") String riverEndAddress,
                             @Param("flowThroughRegion") String flowThroughRegion,
                             @Param("riverNo") String riverNo,
                             @Param("divisionNo") String divisionNo,
                             @Param("riverInformation") String riverInformation,
                             @Param("riverPicsNo") String riverPicsNo,
                             @Param("pointXY") String pointXY);

    int deleteRiverInfoBasis(@Param("list") List<String> list);

    List<RiverInfoBasis> selectRiverInfoBasisList(@Param("pageNo") Integer pageNo,
                                                  @Param("pageSize") Integer pageSize,
                                                  @Param("riverNo") String riverNo,
                                                  @Param("riverGrade") Integer riverGrade,
                                                  @Param("riverName") String riverName);

    int countRiverInfoBasisList(@Param("riverNo") String riverNo,
                                @Param("riverGrade") Integer riverGrade,
                                @Param("riverName") String riverName);

    int selectRiverInfoBasisTotal(@Param("riverGrade") Integer riverGrade);

    int countRiverMessageTotal();

    int countRiverInfoMessageTotal();

    int countRiverChiefTotalByDivisionNo(@Param("divisionNo") String divisionNo);
    //根据父级河道编号查询河道信息
    List<RiverInfoBasis> selectByParentNo(@Param("parentNo") String parentNo);

    //根据河道编号查询河道信息
    List<RiverInfoBasis> selectRiverByRiverNo(@Param("riverNo") String riverNo);
    //业务管理--河道信息--河道信息
    List<RiverInfoBasis> selectRiverInfoBasisByDivisionNo(@Param("divisionNo") String divisionNo,
                                                          @Param("pageNo") Integer pageNo,
                                                          @Param("pageSize") Integer pageSize,
                                                          @Param("riverNo") String riverNo);
    //业务管理--河道信息--我的河道信息
    List<RiverInfoBasis> selectRiverInfoBasisByDivisionNoo(@Param("divisionNo") String divisionNo,
                                                           @Param("riverNo") String riverNo);
    List<RiverInfoBasis> selectByRiverGrade(@Param("grade") Integer grade);
    //业务管理--河道信息--我的策略
    List<RiverInfoBasis> selectUserNoByRiverNo(@Param("chiefUserNo") String chiefUserNo);
    //业务管理--河道信息--我的策略
    List<RiverInfoBasis> selectRiverNoRiverName(@Param("chiefUserNo") String chiefUserNo);
    //业务管理--河道信息--增加河道
    List<RiverInfoBasis> selectRiverParentRiverNo(@Param("divisionNo") String divisionNo);
    //业务管理--河道信息--增加河道
    RiverInfoBasis selectRiverParentRiverNoo(@Param("divisionNo") String divisionNo);
    //业务管理--巡查管理--巡查天数配置--查询我下级的所有河长
    List<RiverInfoBasis> selectRiverUserName(@Param("list") List<String> list);
    //业务管理--巡查管理--巡查天数配置--查询我下级的所有河长
    List<RiverInfoBasis> selectRiverUserNameo(@Param("list") List<String> list);
    //业务管理--巡查管理--巡查天数配置--根据河长编号查询河道编号及名称
    List<RiverInfoBasis> selectRiverNoRiverNameByUserNo(@Param("chiefUserNo") String chiefUserNo);
    //业务管理--巡查管理--巡查天数配置--查询未分配巡查天数的河长河流编号
    List<RiverInfoBasis> selectAddRiverNoRiverNameByUserNo();
    //查询河道水质等级
    RiverInfoBasis selectRiverInfoWaterLevel(@Param("riverNo") String riverNo);
    //根据河道编号查询河流断面
    List<RiverInfoBasis> selectFractureNo(@Param("riverNo") String riverNo);
    //根据断面编号查询站点编号
    List<RiverInfoBasis> selectSiteNo(@Param("fractureNo") String fractureNo);
    //根据站点编号查询水质实时信息
    List<WaterQuality> selectWaterQualityMessage(@Param("siteNo") String siteNo,
                                                 @Param("dataNo") String dataNo);
    //根据站点编号查询水质历史信息
    List<WaterQuality> selectWaterQualityMessageHistory(@Param("siteNo") String siteNo);
    //根据站点编号和因子名称查询历史数据
    List<WaterQuality> selectWaterQualityMessageHistoryByFieldName(@Param("siteNo") String siteNo,
                                                                   @Param("fieldName") String fieldName);
    //根据河道编号查询该河道是否配置过河长
    List<RiverInfoBasis> selectRiverInformationIsNull(@Param("riverNo") String riverNo);
    //根据河道编号查询河道坐标
    RiverInfoBasis selectRiverInfoBasisPoint(@Param("riverNo") String riverNo);

    String getRiverByUser(@Param("userNo") String userNo);

    //获取所有下级河流
    List<String> getChildRiver(@Param("riverNo")String riverNo);

    //根据用户所有对应一二级河流
    List<String> getChildRiverByUser(@Param("userNo")String userNo);

    //获取一级河流对应的用户
    List<String> getHighestRiverChief();

    /** 根据条件获取河道基础信息表列表(分页) */
    public List<RiverInfoBasis> queryList(Map<String, Object> params, Page<RiverInfoBasis> page);

    /** 根据条件获取河道基础信息表列表(无分页) */
    public List<RiverInfoBasis> queryList(Map<String, Object> params);

    /**
     * @Description: 根据行政区划编号获取河道基础信息表列表(附带模糊搜索)
     * @param userNo
     * @return: java.util.List<com.newfiber.api.pc.model.River.RiverInfoBasis>
     * @Author: Wmj
     * @Date: 2018/12/10 16:42
     */
    List<RiverInfoBasis> queryRiverListByDivisionNo(@Param("userNo") String userNo);

    /**
     * @Description: 根据河道编号查询河道具体信息
     * @param riverNo 河道编号
     * @return: com.newfiber.api.pc.model.River.RiverInfoBasis
     * @Author: Wmj
     * @Date: 2018/12/10 16:56
     */
    RiverInfoBasis queryRiverInfoByRivertNo(@Param("riverNo") String riverNo,@Param("userNo")String userNo);

    /**
     * @Description: 根据父级河道编号查询子级河道具体信息
     * @param parentRiverNo 父级河道编号
     * @return: java.util.List<com.newfiber.api.pc.model.River.RiverInfoBasis>
     * @Author: Wmj
     * @Date: 2018/12/10 16:55
     */
    List<RiverInfoBasis> queryRiverListByParentRivertNo(@Param("parentRiverNo") String parentRiverNo);

    List<RiverInfoBasis> queryRiverListByDivision(@Param("divisionNo") String divisionNo);

    List<RiverInfoBasis> batchSelect(@Param("riverNos") List<String> riverNos);

    List<RiverInfoBasis> selectByUserNo(@Param("userNo")String userNo);

    List<RiverInfoBasis> baseRiver();

    RiverInfoBasis selectDivisionNoByUserNo(@Param("chiefUserNo") String chiefUserNo);
}