|
|
|
@ -5,6 +5,7 @@ import com.glxp.api.admin.constant.BasicProcessStatus;
|
|
|
|
|
import com.glxp.api.admin.entity.basic.BasicThirdSysDetailEntity;
|
|
|
|
|
import com.glxp.api.admin.entity.thrsys.*;
|
|
|
|
|
import com.glxp.api.admin.httpclient.ErpOrderClient;
|
|
|
|
|
import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest;
|
|
|
|
|
import com.glxp.api.admin.req.inout.FilterOrderRequest;
|
|
|
|
|
import com.glxp.api.admin.req.thrsys.FilterThrOrderDetailRequest;
|
|
|
|
|
import com.glxp.api.admin.req.thrsys.FilterThrOrderRequest;
|
|
|
|
@ -25,6 +26,7 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
@Service
|
|
|
|
@ -43,7 +45,10 @@ public class ThrOrdersDlService {
|
|
|
|
|
private ThrOrderImportLogService thrOrderImportLogService;
|
|
|
|
|
@Resource
|
|
|
|
|
ThrOrderExportLogService thrOrderExportLogService;
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
ThrOrderImportDetailService thrOrderImportDetailService;
|
|
|
|
|
@Resource
|
|
|
|
|
ThrOrderImportService thrOrderImportService;
|
|
|
|
|
@Async
|
|
|
|
|
public void importOrders(String genKey, String action) {
|
|
|
|
|
|
|
|
|
@ -55,16 +60,18 @@ public class ThrOrdersDlService {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int page = 1;
|
|
|
|
|
int limit = 100;
|
|
|
|
|
while (page != -1) {
|
|
|
|
|
page = getOrders(page, limit, basicThirdSysDetailEntity.getValue(), basicThirdSysDetailEntity.getThirdSysFk(), thrOrderImportLogEntity, action);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
thrOrderImportService.importThrOrder(genKey);
|
|
|
|
|
|
|
|
|
|
redisUtil.set(Constant.dlThrProducts, "false");
|
|
|
|
|
WebSocketServer.sendInfo("业务单据信息下载已完成,请刷新查看!", "sid");
|
|
|
|
|
// thrOrderImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS);
|
|
|
|
|
// thrOrderImportLogService.updateImportLog(thrOrderImportLogEntity);
|
|
|
|
|
thrOrderImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS);
|
|
|
|
|
thrOrderImportLogService.updateImportLog(thrOrderImportLogEntity);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Async
|
|
|
|
@ -159,7 +166,7 @@ public class ThrOrdersDlService {
|
|
|
|
|
List<ErpOrderResponse> erpOrderResponses = thrOrderExportRequest.getErpOrderResponses();
|
|
|
|
|
postThrOrderRequest.setDatas(erpOrderResponses);
|
|
|
|
|
} else {//一键导出
|
|
|
|
|
List<ErpOrderResponse> erpOrderResponses =new ArrayList<>();
|
|
|
|
|
List<ErpOrderResponse> erpOrderResponses = new ArrayList<>();
|
|
|
|
|
BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailService.selectByKey("orderQueryUrl", thrOrderExportRequest.getThirdSysFk());
|
|
|
|
|
if (basicThirdSysDetailEntity == null || basicThirdSysDetailEntity.getValue() == null) {
|
|
|
|
|
thrOrderExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_FAIL);
|
|
|
|
@ -186,15 +193,15 @@ public class ThrOrdersDlService {
|
|
|
|
|
List<ThrOrderEntity> thrOrderEntities = thrOrderService.filterThrOrder(filterThrOrderRequest);
|
|
|
|
|
for (ThrOrderEntity thrOrderEntity : thrOrderEntities) {
|
|
|
|
|
ErpOrderResponse erpOrderResponse = new ErpOrderResponse();
|
|
|
|
|
BeanUtils.copyProperties(thrOrderEntity,erpOrderResponse);
|
|
|
|
|
BeanUtils.copyProperties(thrOrderEntity, erpOrderResponse);
|
|
|
|
|
FilterThrOrderDetailRequest filterThrOrderDetailRequest = new FilterThrOrderDetailRequest();
|
|
|
|
|
filterThrOrderDetailRequest.setOrderIdFk(thrOrderEntity.getId() + "");
|
|
|
|
|
List<ThrOrderDetailEntity> thrOrderDetailEntities = thrOrderDetailService.filterThrOrderDetailDetail(filterThrOrderDetailRequest);
|
|
|
|
|
if (thrOrderDetailEntities != null) {
|
|
|
|
|
List<ErpOrderResponse.SubErpOrder > subErpOrders = new ArrayList<>();
|
|
|
|
|
List<ErpOrderResponse.SubErpOrder> subErpOrders = new ArrayList<>();
|
|
|
|
|
for (ThrOrderDetailEntity thrOrderDetailEntity : thrOrderDetailEntities) {
|
|
|
|
|
ErpOrderResponse.SubErpOrder subErpOrder = new ErpOrderResponse.SubErpOrder();
|
|
|
|
|
BeanUtils.copyProperties(thrOrderDetailEntity,subErpOrder);
|
|
|
|
|
BeanUtils.copyProperties(thrOrderDetailEntity, subErpOrder);
|
|
|
|
|
subErpOrders.add(subErpOrder);
|
|
|
|
|
}
|
|
|
|
|
erpOrderResponse.setSubErpOrders(subErpOrders);
|
|
|
|
@ -226,15 +233,18 @@ public class ThrOrdersDlService {
|
|
|
|
|
BeanUtils.copyProperties(erpOrderResponse, thrOrderEntity);
|
|
|
|
|
thrOrderEntity.setThirdSysFk(thirdSys);
|
|
|
|
|
thrOrderService.insertThrOrder(thrOrderEntity);
|
|
|
|
|
thrOrderEntity = thrOrderService.findByUnique(thrOrderEntity.getBillNo(), thrOrderEntity.getThirdSysFk());
|
|
|
|
|
List<ThrOrderDetailEntity> thrOrderDetailEntities = new ArrayList<>();
|
|
|
|
|
// thrOrderEntity = thrOrderService.findByUnique(thrOrderEntity.getBillNo(), thrOrderEntity.getThirdSysFk());
|
|
|
|
|
List<ThrOrderImportDetailEntity> thrOrderDetailEntities = new ArrayList<>();
|
|
|
|
|
for (ErpOrderResponse.SubErpOrder subPurchase : erpOrderResponse.getSubErpOrders()) {
|
|
|
|
|
ThrOrderDetailEntity thrOrderDetailEntity = new ThrOrderDetailEntity();
|
|
|
|
|
ThrOrderImportDetailEntity thrOrderDetailEntity = new ThrOrderImportDetailEntity();
|
|
|
|
|
BeanUtils.copyProperties(subPurchase, thrOrderDetailEntity);
|
|
|
|
|
thrOrderDetailEntity.setOrderIdFk(thrOrderEntity.getId() + "");
|
|
|
|
|
BeanUtils.copyProperties(erpOrderResponse, thrOrderDetailEntity);
|
|
|
|
|
thrOrderDetailEntity.setGenKeyFk(thrOrderImportLogEntity.getGenKey());
|
|
|
|
|
thrOrderDetailEntity.setThirdSysFk(thirdSys);
|
|
|
|
|
thrOrderDetailEntity.setUpdateTime(new Date());
|
|
|
|
|
thrOrderDetailEntities.add(thrOrderDetailEntity);
|
|
|
|
|
}
|
|
|
|
|
thrOrderDetailService.insertThrOrderDetails(thrOrderDetailEntities);
|
|
|
|
|
thrOrderImportDetailService.insertOrderImportDetails(thrOrderDetailEntities);
|
|
|
|
|
}
|
|
|
|
|
page++;
|
|
|
|
|
if (page * limit < responseBaseResponse.getData().getTotal()) {
|
|
|
|
@ -251,8 +261,6 @@ public class ThrOrdersDlService {
|
|
|
|
|
thrOrderImportLogService.updateImportLog(thrOrderImportLogEntity);
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
thrOrderImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS);
|
|
|
|
|
thrOrderImportLogService.updateImportLog(thrOrderImportLogEntity);
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -316,6 +324,7 @@ public class ThrOrdersDlService {
|
|
|
|
|
}
|
|
|
|
|
return erpOrderResponseList;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public List<ErpOrderResponse> getThrOrders(int page, int limit, String orderQueryUrl, FilterThrOrderRequest filterThrOrderRequest) {
|
|
|
|
|
FilterOrderRequest filterOrderRequest = new FilterOrderRequest();
|
|
|
|
|
BeanUtils.copyProperties(filterThrOrderRequest, filterOrderRequest);
|
|
|
|
|