package com.gkhy.safePlatform.emergency.rpc.provider; import com.gkhy.safePlatform.commons.co.ContextCacheUser; import com.gkhy.safePlatform.commons.enums.ResultCodes; 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.model.dto.resp.EmergencySuppliesRespDTO; import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencySuppliesTypeRespDTO; import com.gkhy.safePlatform.emergency.rpc.api.EmergencyRpcAPi; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteNumRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.req.EmergencyExecuteTimeRPCReq; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteNumRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencyExecuteTimeRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencySuppliesRPCResp; import com.gkhy.safePlatform.emergency.rpc.api.model.dto.resp.EmergencySuppliesTypeRPCResp; import com.gkhy.safePlatform.emergency.service.EmergencyCountService; import com.gkhy.safePlatform.emergency.service.EmergencySuppliesService; import org.apache.commons.collections.CollectionUtils; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import java.util.ArrayList; import java.util.List; @DubboService public class EmergencyRpcProvider implements EmergencyRpcAPi { @Autowired private EmergencySuppliesService emergencySuppliesService; @Autowired private EmergencyCountService emergencyCountService; @Override public SearchResultVO getTimeByDeptId(EmergencyExecuteTimeRPCReq query) { return emergencyCountService.getTimeByDeptId(query); } @Override public SearchResultVO> getTimeByDeptIds(EmergencyExecuteTimeRPCReq query) { return emergencyCountService.getTimeByDeptIds(query); } @Override public SearchResultVO getNumByDeptId(EmergencyExecuteNumRPCReq query) { return emergencyCountService.getNumByDeptId(query); } @Override public SearchResultVO> getNumByDeptIds(EmergencyExecuteNumRPCReq query) { return emergencyCountService.getNumByDeptIds(query); } @Override public ResultVO> emergencySuppliesList(ContextCacheUser currentUser) { List list = (List)emergencySuppliesService.emergencySuppliesList(currentUser).getData(); List typeRPCRespList = new ArrayList<>(); for (EmergencySuppliesTypeRespDTO typeRespDTO:list) { EmergencySuppliesTypeRPCResp typeRPCResp = new EmergencySuppliesTypeRPCResp(); typeRPCResp.setMaterialType(typeRespDTO.getMaterialType()); typeRPCResp.setMaterialTypeName(typeRespDTO.getMaterialTypeName()); if(!CollectionUtils.isEmpty(typeRespDTO.getList())){ List emergencySuppliesRPCRespList = BeanCopyUtils.copyBeanList(typeRespDTO.getList(), EmergencySuppliesRPCResp.class); typeRPCResp.setList(emergencySuppliesRPCRespList); } typeRPCRespList.add(typeRPCResp); } return new ResultVO<>(ResultCodes.OK,typeRPCRespList); } }