package com.gkhy.safePlatform.emergency.service.impl; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.gkhy.safePlatform.commons.enums.ResultCodes; import com.gkhy.safePlatform.commons.query.PageQuery; import com.gkhy.safePlatform.commons.utils.BeanCopyUtils; import com.gkhy.safePlatform.commons.vo.ResultVO; import com.gkhy.safePlatform.commons.vo.SearchResultVO; import com.gkhy.safePlatform.emergency.entity.EmergencyTeamFileInfo; import com.gkhy.safePlatform.emergency.entity.EmergencyTeamFileInfoDO; import com.gkhy.safePlatform.emergency.entity.EmergencyTeamInfoPageDO; import com.gkhy.safePlatform.emergency.model.dto.req.EmergencyTeamReqDTO; import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyTeamFileRespDTO; import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencyTeamPageRespDTO; import com.gkhy.safePlatform.emergency.query.EmergencyTeamQuery; import com.gkhy.safePlatform.emergency.query.db.EmergencyTeamDBQuery; import com.gkhy.safePlatform.emergency.service.EmergencyTeamService; import com.gkhy.safePlatform.emergency.service.baseService.EmergencyTeamFileInfoService; import com.gkhy.safePlatform.emergency.service.baseService.EmergencyTeamInfoService; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.util.ArrayList; import java.util.List; @Service("emergencyTeamService") public class EmergencyTeamServiceImpl implements EmergencyTeamService { @Autowired private EmergencyTeamInfoService emergencyTeamInfoService; @Autowired private EmergencyTeamFileInfoService emergencyTeamFileInfoService; @Override public SearchResultVO> selectEmergencyTeamList(PageQuery query) { Long pageIndex = query.getPageIndex(); Long pageSize = query.getPageSize(); Page page = new Page<>(pageIndex, pageSize); EmergencyTeamDBQuery emergencyTeamDBQuery = new EmergencyTeamDBQuery(); if (query.getSearchParams() != null) { BeanUtils.copyProperties(query.getSearchParams(), emergencyTeamDBQuery); } List respList = new ArrayList<>(); List emergencyTeamInfoPageDOList = emergencyTeamInfoService.selectEmergencyTeamList(page,emergencyTeamDBQuery); if (!CollectionUtils.isEmpty(emergencyTeamInfoPageDOList)){ for (int i = 0 ; i < emergencyTeamInfoPageDOList.size() ; i++){ List emergencyTeamFileInfoDOList = emergencyTeamFileInfoService.selectByEmergencyTeamId(emergencyTeamInfoPageDOList.get(i).getId()); List emergencyTeamFileRespDTOList = BeanCopyUtils.copyBeanList(emergencyTeamFileInfoDOList, EmergencyTeamFileRespDTO.class); EmergencyTeamPageRespDTO emergencyTeamPageRespDTO = new EmergencyTeamPageRespDTO(); BeanUtils.copyProperties(emergencyTeamInfoPageDOList.get(i),emergencyTeamPageRespDTO); emergencyTeamPageRespDTO.setFileList(emergencyTeamFileRespDTOList); respList.add(emergencyTeamPageRespDTO); } } return new SearchResultVO<>( true, pageIndex, pageSize, page.getTotal(), respList, ResultCodes.OK ); } @Override public ResultVO add(Long valueOf, EmergencyTeamReqDTO emergencyTeamReqDTO) { //新增应急预案 //新增应急预案使用部门表 // return null; } }