|
|
@ -23,6 +23,7 @@ import com.glxp.mipsdl.dao.basic.BasicCorpDao;
|
|
|
|
import com.glxp.mipsdl.dao.basic.BasicProductsDao;
|
|
|
|
import com.glxp.mipsdl.dao.basic.BasicProductsDao;
|
|
|
|
import com.glxp.mipsdl.dao.basic.BasicUdirelDao;
|
|
|
|
import com.glxp.mipsdl.dao.basic.BasicUdirelDao;
|
|
|
|
import com.glxp.mipsdl.dao.inout.*;
|
|
|
|
import com.glxp.mipsdl.dao.inout.*;
|
|
|
|
|
|
|
|
import com.glxp.mipsdl.dao.system.SysParamConfigMapper;
|
|
|
|
import com.glxp.mipsdl.dao.thrsys.ThrInvWarehouseDao;
|
|
|
|
import com.glxp.mipsdl.dao.thrsys.ThrInvWarehouseDao;
|
|
|
|
import com.glxp.mipsdl.dao.thrsys.ThrProductsDao;
|
|
|
|
import com.glxp.mipsdl.dao.thrsys.ThrProductsDao;
|
|
|
|
import com.glxp.mipsdl.dao.thrsys.ThrSystemBusApiDao;
|
|
|
|
import com.glxp.mipsdl.dao.thrsys.ThrSystemBusApiDao;
|
|
|
@ -37,6 +38,7 @@ import com.glxp.mipsdl.entity.ctqyy.MaterialDictEntity;
|
|
|
|
import com.glxp.mipsdl.entity.ctqyy.PriceClassEntity;
|
|
|
|
import com.glxp.mipsdl.entity.ctqyy.PriceClassEntity;
|
|
|
|
import com.glxp.mipsdl.entity.ctqyy.ThrHslbEntity;
|
|
|
|
import com.glxp.mipsdl.entity.ctqyy.ThrHslbEntity;
|
|
|
|
import com.glxp.mipsdl.entity.inout.*;
|
|
|
|
import com.glxp.mipsdl.entity.inout.*;
|
|
|
|
|
|
|
|
import com.glxp.mipsdl.entity.system.SysParamConfigEntity;
|
|
|
|
import com.glxp.mipsdl.entity.thrsys.ThrInvWarehouseEntity;
|
|
|
|
import com.glxp.mipsdl.entity.thrsys.ThrInvWarehouseEntity;
|
|
|
|
import com.glxp.mipsdl.entity.thrsys.ThrProductsEntity;
|
|
|
|
import com.glxp.mipsdl.entity.thrsys.ThrProductsEntity;
|
|
|
|
import com.glxp.mipsdl.entity.thrsys.ThrSystemBusApiEntity;
|
|
|
|
import com.glxp.mipsdl.entity.thrsys.ThrSystemBusApiEntity;
|
|
|
@ -50,6 +52,7 @@ import com.glxp.mipsdl.res.BaseResponse;
|
|
|
|
import com.glxp.mipsdl.res.ctqyy.CtBaseResponse;
|
|
|
|
import com.glxp.mipsdl.res.ctqyy.CtBaseResponse;
|
|
|
|
import com.glxp.mipsdl.res.udiwms.*;
|
|
|
|
import com.glxp.mipsdl.res.udiwms.*;
|
|
|
|
import com.glxp.mipsdl.service.auth.AuthWarehouseService;
|
|
|
|
import com.glxp.mipsdl.service.auth.AuthWarehouseService;
|
|
|
|
|
|
|
|
import com.glxp.mipsdl.service.system.SysParamConfigService;
|
|
|
|
import com.glxp.mipsdl.service.thrsys.ThrCorpService;
|
|
|
|
import com.glxp.mipsdl.service.thrsys.ThrCorpService;
|
|
|
|
import com.glxp.mipsdl.service.thrsys.ThrSystemDetailService;
|
|
|
|
import com.glxp.mipsdl.service.thrsys.ThrSystemDetailService;
|
|
|
|
import com.glxp.mipsdl.util.DateUtil;
|
|
|
|
import com.glxp.mipsdl.util.DateUtil;
|
|
|
@ -439,6 +442,8 @@ public class CtqyyClient extends CommonHttpClient {
|
|
|
|
return null;
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
|
|
|
SysParamConfigService sysParamConfigService;
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public BaseResponse submitOrders(UdiwmsOrderRequest udiwmsOrderRequest) {
|
|
|
|
public BaseResponse submitOrders(UdiwmsOrderRequest udiwmsOrderRequest) {
|
|
|
@ -539,7 +544,7 @@ public class CtqyyClient extends CommonHttpClient {
|
|
|
|
//查询业务单据详情
|
|
|
|
//查询业务单据详情
|
|
|
|
List<IoOrderDetailBizEntity> detailBizEntities = orderDetailBizDao.selectList(new QueryWrapper<IoOrderDetailBizEntity>().eq("orderIdFk", orderEntity.getBillNo()));
|
|
|
|
List<IoOrderDetailBizEntity> detailBizEntities = orderDetailBizDao.selectList(new QueryWrapper<IoOrderDetailBizEntity>().eq("orderIdFk", orderEntity.getBillNo()));
|
|
|
|
setOrderDetailList(ioCodeEntities, items, detailBizEntities);
|
|
|
|
setOrderDetailList(ioCodeEntities, items, detailBizEntities);
|
|
|
|
zaxzyyOrderRequest.setItem(items);
|
|
|
|
zaxzyyOrderRequest.setItems(items);
|
|
|
|
if (CollUtil.isEmpty(items)) {
|
|
|
|
if (CollUtil.isEmpty(items)) {
|
|
|
|
log.error("\"产品信息对照异常,无法上传\"");
|
|
|
|
log.error("\"产品信息对照异常,无法上传\"");
|
|
|
|
return ResultVOUtils.error(500, "产品信息对照异常,无法上传");
|
|
|
|
return ResultVOUtils.error(500, "产品信息对照异常,无法上传");
|
|
|
@ -579,19 +584,26 @@ public class CtqyyClient extends CommonHttpClient {
|
|
|
|
// zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput"));
|
|
|
|
// zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput"));
|
|
|
|
// zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest));
|
|
|
|
// zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest));
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
Map<String, List<UdiwmsOrderDetailRequest>> splitMap = items.stream()
|
|
|
|
Boolean b = sysParamConfigService.selectByKey("ct_split_groupbuy");
|
|
|
|
.collect(Collectors.groupingBy(UdiwmsOrderDetailRequest::getFirstSalesInvNo));
|
|
|
|
if (b) {
|
|
|
|
BaseResponse baseResponse = null;
|
|
|
|
Map<String, List<UdiwmsOrderDetailRequest>> splitMap = items.stream()
|
|
|
|
int index = 1;
|
|
|
|
.collect(Collectors.groupingBy(UdiwmsOrderDetailRequest::getFirstSalesInvNo));
|
|
|
|
if (splitMap.size() > 1) {
|
|
|
|
BaseResponse baseResponse = null;
|
|
|
|
for (List<UdiwmsOrderDetailRequest> splitItems : splitMap.values()) {
|
|
|
|
int index = 1;
|
|
|
|
zaxzyyOrderRequest.setItem(splitItems);
|
|
|
|
if (splitMap.size() > 1) {
|
|
|
|
|
|
|
|
for (List<UdiwmsOrderDetailRequest> splitItems : splitMap.values()) {
|
|
|
|
|
|
|
|
zaxzyyOrderRequest.setItems(splitItems);
|
|
|
|
|
|
|
|
zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput"));
|
|
|
|
|
|
|
|
zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest));
|
|
|
|
|
|
|
|
orderEntity.setBillNo(orderEntity.getBillNo() + "-" + index);
|
|
|
|
|
|
|
|
baseResponse = submitOrder(orderEntity, zaZyRequest);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return baseResponse;
|
|
|
|
|
|
|
|
} else {
|
|
|
|
zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput"));
|
|
|
|
zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput"));
|
|
|
|
zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest));
|
|
|
|
zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest));
|
|
|
|
orderEntity.setBillNo(orderEntity.getBillNo() + "-" + index);
|
|
|
|
return submitOrder(orderEntity, zaZyRequest);
|
|
|
|
baseResponse = submitOrder(orderEntity, zaZyRequest);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return baseResponse;
|
|
|
|
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput"));
|
|
|
|
zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput"));
|
|
|
|
zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest));
|
|
|
|
zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest));
|
|
|
@ -601,10 +613,10 @@ public class CtqyyClient extends CommonHttpClient {
|
|
|
|
|
|
|
|
|
|
|
|
} else if (thrSystemBusApiEntity.getUrl().equals("saveMaterialHight")) {
|
|
|
|
} else if (thrSystemBusApiEntity.getUrl().equals("saveMaterialHight")) {
|
|
|
|
|
|
|
|
|
|
|
|
// 1.先提交到物资
|
|
|
|
// // 1.先提交到物资
|
|
|
|
zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput"));
|
|
|
|
// zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput"));
|
|
|
|
zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest));
|
|
|
|
// zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest));
|
|
|
|
submitOrder(orderEntity, zaZyRequest);
|
|
|
|
// submitOrder(orderEntity, zaZyRequest);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//2.提交到预备货
|
|
|
|
//2.提交到预备货
|
|
|
@ -886,6 +898,16 @@ public class CtqyyClient extends CommonHttpClient {
|
|
|
|
BeanUtils.copyProperties(udiwmsOrderRequest, udiwmsPreInOrderRequest);
|
|
|
|
BeanUtils.copyProperties(udiwmsOrderRequest, udiwmsPreInOrderRequest);
|
|
|
|
udiwmsPreInOrderRequest.setLocInvCode(udiwmsOrderRequest.getLocStorageCode());
|
|
|
|
udiwmsPreInOrderRequest.setLocInvCode(udiwmsOrderRequest.getLocStorageCode());
|
|
|
|
udiwmsPreInOrderRequest.setLocInvName(udiwmsOrderRequest.getLocStorageName());
|
|
|
|
udiwmsPreInOrderRequest.setLocInvName(udiwmsOrderRequest.getLocStorageName());
|
|
|
|
|
|
|
|
String deptCode = "70";
|
|
|
|
|
|
|
|
if (StrUtil.isNotEmpty(orderEntity.getOriginUllageSupNo())) {
|
|
|
|
|
|
|
|
IoOrderEntity temp = orderDao.selectOne(new QueryWrapper<IoOrderEntity>().eq("billNo", orderEntity.getOriginUllageSupNo()).last("limit 1"));
|
|
|
|
|
|
|
|
if (temp != null && StrUtil.isNotEmpty(temp.getFromInvCode())) {
|
|
|
|
|
|
|
|
AuthWarehouseEntity authWarehouseEntity =
|
|
|
|
|
|
|
|
authWarehouseDao.selectOne(new QueryWrapper<AuthWarehouseEntity>().eq("code", temp.getFromInvCode()).last("limit 1"));
|
|
|
|
|
|
|
|
deptCode = authWarehouseEntity.getThirdId();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
udiwmsPreInOrderRequest.setDeptCode(deptCode);
|
|
|
|
if (orderEntity.getReviewUser() != null) {
|
|
|
|
if (orderEntity.getReviewUser() != null) {
|
|
|
|
AuthUserEntity authUser = authUserDao.selectById(orderEntity.getReviewUser());
|
|
|
|
AuthUserEntity authUser = authUserDao.selectById(orderEntity.getReviewUser());
|
|
|
|
udiwmsPreInOrderRequest.setActor(authUser.getEmployeeName());
|
|
|
|
udiwmsPreInOrderRequest.setActor(authUser.getEmployeeName());
|
|
|
@ -894,14 +916,20 @@ public class CtqyyClient extends CommonHttpClient {
|
|
|
|
udiwmsPreInOrderRequest.setActor(authUser.getEmployeeName());
|
|
|
|
udiwmsPreInOrderRequest.setActor(authUser.getEmployeeName());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
List<UdiwmsPreInOrderRequest.ItemDTO> itemDTOS = new ArrayList<>();
|
|
|
|
List<UdiwmsPreInOrderRequest.ItemDTO> itemDTOS = new ArrayList<>();
|
|
|
|
if (CollUtil.isNotEmpty(udiwmsOrderRequest.getItem())) {
|
|
|
|
if (CollUtil.isNotEmpty(udiwmsOrderRequest.getItems())) {
|
|
|
|
for (UdiwmsOrderDetailRequest udiwmsOrderDetail : udiwmsOrderRequest.getItem()) {
|
|
|
|
for (UdiwmsOrderDetailRequest udiwmsOrderDetail : udiwmsOrderRequest.getItems()) {
|
|
|
|
if (CollUtil.isNotEmpty(udiwmsOrderDetail.getCodeList())) {
|
|
|
|
if (CollUtil.isNotEmpty(udiwmsOrderDetail.getCodeList())) {
|
|
|
|
for (UdiwmsOrderDetailRequest.CodeDetailEntity codeDetaiEntity : udiwmsOrderDetail.getCodeList()) {
|
|
|
|
for (UdiwmsOrderDetailRequest.CodeDetailEntity codeDetaiEntity : udiwmsOrderDetail.getCodeList()) {
|
|
|
|
UdiwmsPreInOrderRequest.ItemDTO itemDTO = new UdiwmsPreInOrderRequest.ItemDTO();
|
|
|
|
UdiwmsPreInOrderRequest.ItemDTO itemDTO = new UdiwmsPreInOrderRequest.ItemDTO();
|
|
|
|
BeanUtils.copyProperties(udiwmsOrderDetail, itemDTO);
|
|
|
|
BeanUtils.copyProperties(udiwmsOrderDetail, itemDTO);
|
|
|
|
itemDTO.setCode(codeDetaiEntity.getCode());
|
|
|
|
|
|
|
|
|
|
|
|
String code = codeDetaiEntity.getCode();
|
|
|
|
|
|
|
|
if (code.contains("\u001D")) {
|
|
|
|
|
|
|
|
code = code.replace("\u001D", "zysoft");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
itemDTO.setCode(code);
|
|
|
|
itemDTO.setCount(codeDetaiEntity.getCount());
|
|
|
|
itemDTO.setCount(codeDetaiEntity.getCount());
|
|
|
|
|
|
|
|
itemDTO.setNameCode(codeDetaiEntity.getNameCode());
|
|
|
|
itemDTOS.add(itemDTO);
|
|
|
|
itemDTOS.add(itemDTO);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|