|
|
@ -15,28 +15,32 @@ import com.glxp.api.admin.dao.basic.BussinessTypeDao;
|
|
|
|
import com.glxp.api.admin.dao.basic.UnitMaintainDao;
|
|
|
|
import com.glxp.api.admin.dao.basic.UnitMaintainDao;
|
|
|
|
import com.glxp.api.admin.dao.business.StockOrderDao;
|
|
|
|
import com.glxp.api.admin.dao.business.StockOrderDao;
|
|
|
|
import com.glxp.api.admin.dao.business.StockOrderDetailDao;
|
|
|
|
import com.glxp.api.admin.dao.business.StockOrderDetailDao;
|
|
|
|
import com.glxp.api.admin.dao.inout.OrderDao;
|
|
|
|
|
|
|
|
import com.glxp.api.admin.entity.basic.*;
|
|
|
|
import com.glxp.api.admin.entity.basic.*;
|
|
|
|
import com.glxp.api.admin.entity.business.StockOrderDetailEntity;
|
|
|
|
import com.glxp.api.admin.entity.business.StockOrderDetailEntity;
|
|
|
|
import com.glxp.api.admin.entity.business.StockOrderEntity;
|
|
|
|
import com.glxp.api.admin.entity.business.StockOrderEntity;
|
|
|
|
import com.glxp.api.admin.entity.business.StockOrderPrintEntity;
|
|
|
|
import com.glxp.api.admin.entity.business.StockOrderPrintEntity;
|
|
|
|
|
|
|
|
import com.glxp.api.admin.entity.business.StockOrderUploadLogEntity;
|
|
|
|
import com.glxp.api.admin.entity.inout.OrderEntity;
|
|
|
|
import com.glxp.api.admin.entity.inout.OrderEntity;
|
|
|
|
import com.glxp.api.admin.entity.inventory.InvWarehouseEntity;
|
|
|
|
import com.glxp.api.admin.entity.inventory.InvWarehouseEntity;
|
|
|
|
import com.glxp.api.admin.entity.thrsys.ThrInvWarehouseEntity;
|
|
|
|
import com.glxp.api.admin.entity.thrsys.ThrInvWarehouseEntity;
|
|
|
|
import com.glxp.api.admin.httpclient.res.UdiwmsOrderResponse;
|
|
|
|
|
|
|
|
import com.glxp.api.admin.httpclient.req.UdiwmsOrderDetail;
|
|
|
|
import com.glxp.api.admin.httpclient.req.UdiwmsOrderDetail;
|
|
|
|
import com.glxp.api.admin.httpclient.req.UdiwmsOrderRequest;
|
|
|
|
import com.glxp.api.admin.httpclient.req.UdiwmsOrderRequest;
|
|
|
|
|
|
|
|
import com.glxp.api.admin.httpclient.res.UdiwmsOrderResponse;
|
|
|
|
|
|
|
|
import com.glxp.api.admin.req.basic.FilterBasicThirdSysDetailRequest;
|
|
|
|
import com.glxp.api.admin.req.business.StockOrderDetailFilterRequest;
|
|
|
|
import com.glxp.api.admin.req.business.StockOrderDetailFilterRequest;
|
|
|
|
import com.glxp.api.admin.req.business.StockOrderFilterRequest;
|
|
|
|
import com.glxp.api.admin.req.business.StockOrderFilterRequest;
|
|
|
|
import com.glxp.api.admin.req.business.StockOrderQueryRequest;
|
|
|
|
import com.glxp.api.admin.req.business.StockOrderQueryRequest;
|
|
|
|
|
|
|
|
import com.glxp.api.admin.req.business.StockOrderUploadRequest;
|
|
|
|
import com.glxp.api.admin.res.business.StockOrderDetailEntityVo;
|
|
|
|
import com.glxp.api.admin.res.business.StockOrderDetailEntityVo;
|
|
|
|
import com.glxp.api.admin.res.business.StockOrderExportResponse;
|
|
|
|
import com.glxp.api.admin.res.business.StockOrderExportResponse;
|
|
|
|
import com.glxp.api.admin.service.basic.BussinessLocalTypeService;
|
|
|
|
import com.glxp.api.admin.service.basic.BussinessLocalTypeService;
|
|
|
|
import com.glxp.api.admin.service.basic.UdiRelevanceService;
|
|
|
|
import com.glxp.api.admin.service.basic.UdiRelevanceService;
|
|
|
|
import com.glxp.api.admin.service.business.StockOrderService;
|
|
|
|
import com.glxp.api.admin.service.business.StockOrderService;
|
|
|
|
|
|
|
|
import com.glxp.api.admin.service.business.StockOrderUploadLogService;
|
|
|
|
import com.glxp.api.admin.service.inout.OrderService;
|
|
|
|
import com.glxp.api.admin.service.inout.OrderService;
|
|
|
|
import com.glxp.api.admin.service.inventory.InvWarehouseService;
|
|
|
|
import com.glxp.api.admin.service.inventory.InvWarehouseService;
|
|
|
|
import com.glxp.api.admin.service.thrsys.ThrInvWarehouseService;
|
|
|
|
import com.glxp.api.admin.service.thrsys.ThrInvWarehouseService;
|
|
|
|
|
|
|
|
import com.glxp.api.admin.util.DateUtil;
|
|
|
|
import com.glxp.api.admin.util.HttpClient;
|
|
|
|
import com.glxp.api.admin.util.HttpClient;
|
|
|
|
import com.glxp.api.common.res.BaseResponse;
|
|
|
|
import com.glxp.api.common.res.BaseResponse;
|
|
|
|
import com.glxp.api.common.util.ResultVOUtils;
|
|
|
|
import com.glxp.api.common.util.ResultVOUtils;
|
|
|
@ -46,9 +50,8 @@ import org.springframework.stereotype.Service;
|
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.*;
|
|
|
|
import java.util.Collections;
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Slf4j
|
|
|
|
@Slf4j
|
|
|
|
@Service
|
|
|
|
@Service
|
|
|
@ -67,8 +70,6 @@ public class StockOrderServiceImpl implements StockOrderService {
|
|
|
|
@Resource
|
|
|
|
@Resource
|
|
|
|
private BasicThirdSysDao basicThirdSysDao;
|
|
|
|
private BasicThirdSysDao basicThirdSysDao;
|
|
|
|
@Resource
|
|
|
|
@Resource
|
|
|
|
private OrderDao orderDao;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
|
|
|
private OrderService orderService;
|
|
|
|
private OrderService orderService;
|
|
|
|
@Resource
|
|
|
|
@Resource
|
|
|
|
BussinessLocalTypeService bussinessLocalTypeService;
|
|
|
|
BussinessLocalTypeService bussinessLocalTypeService;
|
|
|
@ -78,6 +79,10 @@ public class StockOrderServiceImpl implements StockOrderService {
|
|
|
|
ThrInvWarehouseService thrInvWarehouseService;
|
|
|
|
ThrInvWarehouseService thrInvWarehouseService;
|
|
|
|
@Resource
|
|
|
|
@Resource
|
|
|
|
UdiRelevanceService udiRelevanceService;
|
|
|
|
UdiRelevanceService udiRelevanceService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
|
|
|
private BasicThirdSysBusApiDao basicThirdSysBusApiDao;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
|
|
|
private StockOrderUploadLogService stockOrderUploadLogService;
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public List<StockOrderEntity> listStockOrders(StockOrderQueryRequest stockOrderQueryRequest) {
|
|
|
|
public List<StockOrderEntity> listStockOrders(StockOrderQueryRequest stockOrderQueryRequest) {
|
|
|
@ -287,7 +292,15 @@ public class StockOrderServiceImpl implements StockOrderService {
|
|
|
|
|
|
|
|
|
|
|
|
udiwmsOrderRequest.setItem(items);
|
|
|
|
udiwmsOrderRequest.setItem(items);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//提交单据到第三方服务
|
|
|
|
//提交单据到第三方服务
|
|
|
|
|
|
|
|
//记录日志
|
|
|
|
|
|
|
|
StockOrderUploadLogEntity uploadLog = new StockOrderUploadLogEntity();
|
|
|
|
|
|
|
|
uploadLog.setBillDate(DateUtil.parseDate(udiwmsOrderRequest.getBillDate()));
|
|
|
|
|
|
|
|
uploadLog.setBillType(stockOrderEntity.getBillType());
|
|
|
|
|
|
|
|
uploadLog.setSubmitTime(new Date());
|
|
|
|
|
|
|
|
uploadLog.setBillNo(udiwmsOrderRequest.getBillNo());
|
|
|
|
|
|
|
|
|
|
|
|
BasicThirdSysEntity basicThirdSysEntity = basicThirdSysDao.selectByThirdId(thirdSysBusApiEntity.getThirdSys());
|
|
|
|
BasicThirdSysEntity basicThirdSysEntity = basicThirdSysDao.selectByThirdId(thirdSysBusApiEntity.getThirdSys());
|
|
|
|
String response = HttpClient.uCloudPost(basicThirdSysEntity.getThridUrl() + "/udiwms/erp/submitOrders", udiwmsOrderRequest);
|
|
|
|
String response = HttpClient.uCloudPost(basicThirdSysEntity.getThridUrl() + "/udiwms/erp/submitOrders", udiwmsOrderRequest);
|
|
|
|
if (StrUtil.isNotBlank(response)) {
|
|
|
|
if (StrUtil.isNotBlank(response)) {
|
|
|
@ -306,18 +319,58 @@ public class StockOrderServiceImpl implements StockOrderService {
|
|
|
|
orderEntity.setThirdBillNo(udiwmsOrderResponse.getThirdBillNo());
|
|
|
|
orderEntity.setThirdBillNo(udiwmsOrderResponse.getThirdBillNo());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
orderService.updateOrder(orderEntity);
|
|
|
|
orderService.updateOrder(orderEntity);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
uploadLog.setStatus(2);
|
|
|
|
|
|
|
|
uploadLog.setThrBillNo(udiwmsOrderResponse.getThirdBillNo());
|
|
|
|
|
|
|
|
uploadLog.setResult("提交成功");
|
|
|
|
|
|
|
|
stockOrderUploadLogService.insert(uploadLog);
|
|
|
|
return ResultVOUtils.success("提交成功");
|
|
|
|
return ResultVOUtils.success("提交成功");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
uploadLog.setStatus(3);
|
|
|
|
|
|
|
|
uploadLog.setResult("提交失败");
|
|
|
|
|
|
|
|
stockOrderUploadLogService.insert(uploadLog);
|
|
|
|
return ResultVOUtils.error(500, "提交失败");
|
|
|
|
return ResultVOUtils.error(500, "提交失败");
|
|
|
|
} catch (Exception e) {
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
|
|
uploadLog.setStatus(3);
|
|
|
|
|
|
|
|
uploadLog.setResult("提交失败, " + e.getMessage());
|
|
|
|
|
|
|
|
stockOrderUploadLogService.insert(uploadLog);
|
|
|
|
return ResultVOUtils.error(500, "提交失败");
|
|
|
|
return ResultVOUtils.error(500, "提交失败");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
|
|
|
|
uploadLog.setStatus(3);
|
|
|
|
|
|
|
|
uploadLog.setResult("提交失败,调用接口返回为空");
|
|
|
|
|
|
|
|
stockOrderUploadLogService.insert(uploadLog);
|
|
|
|
return ResultVOUtils.error(500, "提交失败");
|
|
|
|
return ResultVOUtils.error(500, "提交失败");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
|
|
|
public List<StockOrderEntity> filter(StockOrderUploadRequest request) {
|
|
|
|
|
|
|
|
if (null == request) {
|
|
|
|
|
|
|
|
return Collections.emptyList();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (StrUtil.isBlank(request.getBillType())) {
|
|
|
|
|
|
|
|
//查询可以提交的单据类型
|
|
|
|
|
|
|
|
List<String> thirdIds = basicThirdSysDao.selectEnabledThirdId();
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(thirdIds)) {
|
|
|
|
|
|
|
|
List<String> billTypes = new ArrayList<>();
|
|
|
|
|
|
|
|
for (String thirdId : thirdIds) {
|
|
|
|
|
|
|
|
FilterBasicThirdSysDetailRequest filterBasicThirdSysDetailRequest = new FilterBasicThirdSysDetailRequest();
|
|
|
|
|
|
|
|
filterBasicThirdSysDetailRequest.setThirdSysFk(thirdId);
|
|
|
|
|
|
|
|
List<BasicThirdSysBusApiEntity> thirdSysBusApiEntities = basicThirdSysBusApiDao.filterSysBusApi(filterBasicThirdSysDetailRequest);
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(thirdSysBusApiEntities)) {
|
|
|
|
|
|
|
|
Set<String> codes = thirdSysBusApiEntities.stream().map(BasicThirdSysBusApiEntity::getCode).collect(Collectors.toSet());
|
|
|
|
|
|
|
|
billTypes.addAll(codes);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
request.setBillTypes(billTypes);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
List<StockOrderEntity> stockOrderEntityList = stockOrderDao.selectUploadList(request);
|
|
|
|
|
|
|
|
return stockOrderEntityList;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 获取第三方名称字段
|
|
|
|
* 获取第三方名称字段
|
|
|
|
*
|
|
|
|
*
|
|
|
|