|
|
@ -66,6 +66,9 @@ import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
import java.lang.reflect.Field; |
|
|
|
import java.util.*; |
|
|
|
import java.util.concurrent.CompletableFuture; |
|
|
|
import java.util.concurrent.ExecutorService; |
|
|
|
import java.util.concurrent.TimeUnit; |
|
|
|
import java.util.concurrent.atomic.AtomicBoolean; |
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
@ -112,6 +115,8 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl<CustomerAgencyDao |
|
|
|
private IcBuildingUnitDao icBuildingUnitDao; |
|
|
|
@Autowired |
|
|
|
private IcHouseDao icHouseDao; |
|
|
|
@Autowired |
|
|
|
private ExecutorService executorService; |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
@ -171,10 +176,22 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl<CustomerAgencyDao |
|
|
|
if (null == staffOrgsFormDTO || staffOrgsFormDTO.getCustomerIdList().size() == 0) { |
|
|
|
return new Result<>(); |
|
|
|
} |
|
|
|
List<StaffOrgsResultDTO> list = baseDao.selectStaffOrgList(staffOrgsFormDTO.getCustomerIdList()); |
|
|
|
CompletableFuture<List<StaffOrgsResultDTO>> listFuture = CompletableFuture.supplyAsync(()-> baseDao.selectStaffOrgList(staffOrgsFormDTO.getCustomerIdList()),executorService); |
|
|
|
//List<StaffOrgsResultDTO> list = baseDao.selectStaffOrgList(staffOrgsFormDTO.getCustomerIdList());
|
|
|
|
|
|
|
|
CustomerFormDTO customerFormDTO = new CustomerFormDTO(); |
|
|
|
customerFormDTO.setCustomerIdList(staffOrgsFormDTO.getCustomerIdList()); |
|
|
|
Result<List<CustomerDTO>> customerDTOResult = operCrmFeignClient.queryCustomerList(customerFormDTO); |
|
|
|
CompletableFuture<Result<List<CustomerDTO>>> customerDTOResultFuture = CompletableFuture.supplyAsync(()-> operCrmFeignClient.queryCustomerList(customerFormDTO),executorService); |
|
|
|
//Result<List<CustomerDTO>> customerDTOResult = operCrmFeignClient.queryCustomerList(customerFormDTO);
|
|
|
|
List<StaffOrgsResultDTO> list = null; |
|
|
|
Result<List<CustomerDTO>> customerDTOResult = null; |
|
|
|
try { |
|
|
|
list = listFuture.get(10, TimeUnit.SECONDS); |
|
|
|
customerDTOResult = customerDTOResultFuture.get(10, TimeUnit.SECONDS); |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("getStaffOrgList exception",e); |
|
|
|
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getMsg()); |
|
|
|
} |
|
|
|
List<CustomerDTO> customerDTOList = customerDTOResult.getData(); |
|
|
|
if (customerDTOResult.success() && customerDTOList.size() > 0) { |
|
|
|
for (CustomerDTO customer : customerDTOList) { |
|
|
|