| package com.dy.pipIrrProject.divide; | 
|   | 
| import com.dy.common.webUtil.QueryResultVo; | 
| import com.dy.pipIrrGlobal.daoBa.BaDistrictMapper; | 
| import com.dy.pipIrrGlobal.daoPr.PrDivideMapper; | 
| import com.dy.pipIrrGlobal.pojoPr.PrDivide; | 
| import com.dy.pipIrrGlobal.voPr.VoDivide; | 
| import lombok.extern.slf4j.Slf4j; | 
| import org.apache.dubbo.common.utils.PojoUtils; | 
| import org.springframework.beans.factory.annotation.Autowired; | 
| import org.springframework.stereotype.Service; | 
|   | 
| import java.util.ArrayList; | 
| import java.util.List; | 
| import java.util.Map; | 
|   | 
| /** | 
|  * @author ZhuBaoMin | 
|  * @date 2023/12/20 20:12 | 
|  * @LastEditTime 2023/12/20 20:12 | 
|  * @Description 分水房服务类 | 
|  */ | 
|   | 
| @Slf4j | 
| @Service | 
| public class DivideSv { | 
|     @Autowired | 
|     private PrDivideMapper prDivideMapper; | 
|   | 
|     @Autowired | 
|     private BaDistrictMapper baDistrictMapper; | 
|   | 
|     /** | 
|      * 添加分水房 | 
|      * @param po | 
|      * @return | 
|      */ | 
|     Integer addDivide(PrDivide po) { | 
|         return prDivideMapper.insert(po); | 
|     } | 
|   | 
|     /** | 
|      * 根据指定条件获取分水房记录 | 
|      * @param queryVo 查询视图 | 
|      * @return 分水房记录列表 | 
|      */ | 
|     public QueryResultVo<List<VoDivide>> getDivides(QueryVo queryVo) { | 
|         Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo); | 
|   | 
|         // 计算符合条件的记录数 | 
|         Long itemTotal = prDivideMapper.getRecordCount(params); | 
|   | 
|         QueryResultVo<List<VoDivide>> rsVo = new QueryResultVo<>() ; | 
|         rsVo.pageSize = queryVo.pageSize ; | 
|         rsVo.pageCurr = queryVo.pageCurr ; | 
|   | 
|         rsVo.calculateAndSet(itemTotal, params); | 
|         rsVo.obj = prDivideMapper.getDivides(params); | 
|         return rsVo ; | 
|     } | 
|   | 
|     /** | 
|      * 根据指定条件导出分水房列表 | 
|      * @param queryVo | 
|      * @return | 
|      */ | 
|     public List<VoDivide> exportDivides(QueryVo queryVo) { | 
|         Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo); | 
|         List<VoDivide> rsVo = new ArrayList<>(); | 
|         rsVo = prDivideMapper.getDivides(params); | 
|         return rsVo ; | 
|     } | 
|   | 
|     /** | 
|      * 根据分水房主键获取分水房对象 | 
|      * @param id | 
|      * @return | 
|      */ | 
|     public PrDivide getOneDivide(Long id) { | 
|         return prDivideMapper.selectByPrimaryKey(id); | 
|     } | 
|   | 
|     /** | 
|      * 根据主键逻辑删除一个分水房 | 
|      * @param id | 
|      * @return | 
|      */ | 
|     public Integer deleteDivideById(Long id) { | 
|         return prDivideMapper.deleteDivideById(id); | 
|     } | 
|   | 
|     /** | 
|      * 根据村编号获取5级区划信息 | 
|      * @param villageId 村编号(主键) | 
|      * @return 5级行政区划信息 | 
|      */ | 
|     public Map getDistrictsByVillageId(Long villageId) { | 
|         return baDistrictMapper.getDistrictsByVillageId(villageId); | 
|     } | 
|   | 
|     /** | 
|      * 修改分水房对象 | 
|      * @param po 农户对象 | 
|      * @return 修改记录条数 | 
|      */ | 
|     public Integer updateByPrimaryKey(PrDivide po) { | 
|         //return prDivideMapper.updateByPrimaryKey(po); | 
|         return prDivideMapper.updateByPrimaryKeySelective(po); | 
|     } | 
|   | 
|     /** | 
|      * 根据分水房编号获取所属片区编号 | 
|      * @param divideId 分水房ID | 
|      * @return 所属片区ID | 
|      */ | 
|     public Long getBlockIdById(Long divideId) { | 
|         return prDivideMapper.getBlockIdById(divideId); | 
|     } | 
| } |