|
|
|
@ -20,6 +20,7 @@ import com.glxp.api.entity.inv.InvProductDetailEntity;
|
|
|
|
|
import com.glxp.api.entity.system.SystemParamConfigEntity;
|
|
|
|
|
import com.glxp.api.req.basic.FilterCompanyProductRelevanceRequest;
|
|
|
|
|
import com.glxp.api.entity.inout.PdaCodeEntity;
|
|
|
|
|
import com.glxp.api.req.inout.PdaPostOrderRequest;
|
|
|
|
|
import com.glxp.api.req.inout.PostOrderRequest;
|
|
|
|
|
import com.glxp.api.res.basic.UdiRelevanceResponse;
|
|
|
|
|
import com.glxp.api.service.basic.BasicCorpService;
|
|
|
|
@ -406,111 +407,146 @@ public class IoAddInoutService {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//手持终端上传生成扫码单据
|
|
|
|
|
public void creatOrderByPda(PostOrderRequest postOrderRequest) {
|
|
|
|
|
List<PostOrderRequest.PostOrder> postOrders = postOrderRequest.getPostOrders();
|
|
|
|
|
if (postOrders != null && postOrders.size() > 0) {
|
|
|
|
|
for (int i = 0; i < postOrders.size(); i++) {
|
|
|
|
|
PostOrderRequest.PostOrder postOrder = postOrders.get(i);
|
|
|
|
|
//创建单据
|
|
|
|
|
PdaOrderEntity pdaOrderEntity = postOrder.getOrderBean();
|
|
|
|
|
IoOrderEntity orderEntity = null;
|
|
|
|
|
if (StrUtil.isNotEmpty(pdaOrderEntity.getDocid())) {
|
|
|
|
|
orderEntity = orderService.findByBillNo(pdaOrderEntity.getDocid());
|
|
|
|
|
}
|
|
|
|
|
if (orderEntity != null) {
|
|
|
|
|
//已包含业务单据校验
|
|
|
|
|
orderEntity.setUpdateUser(postOrderRequest.getUserId() + "");
|
|
|
|
|
orderEntity.setUpdateTime(new Date());
|
|
|
|
|
orderService.update(orderEntity);
|
|
|
|
|
List<PdaCodeEntity> pdaCodeEntities = postOrder.getCodes();
|
|
|
|
|
if (pdaCodeEntities != null && pdaCodeEntities.size() > 0) {
|
|
|
|
|
PdaCodeEntity pdaCodeEntity = pdaCodeEntities.get(0);
|
|
|
|
|
//写入条码
|
|
|
|
|
List<IoCodeTempEntity> ioCodeEnttities = new ArrayList<>();
|
|
|
|
|
for (int index = 0; index < pdaCodeEntities.size(); index++) {
|
|
|
|
|
IoCodeTempEntity codeEnttity = new IoCodeTempEntity();
|
|
|
|
|
BeanUtils.copyProperties(pdaCodeEntities.get(index), codeEnttity);
|
|
|
|
|
codeEnttity.setAction(orderEntity.getAction());
|
|
|
|
|
codeEnttity.setMainAction(orderEntity.getMainAction());
|
|
|
|
|
codeEnttity.setDeptCode(orderEntity.getDeptCode());
|
|
|
|
|
codeEnttity.setOrderId(orderEntity.getBillNo());
|
|
|
|
|
codeEnttity.setInvCode(orderEntity.getInvCode());
|
|
|
|
|
codeEnttity.setReCount(codeEnttity.getCount() * udiCalCountUtil.getActCount(codeEnttity.getNameCode()));
|
|
|
|
|
codeEnttity.setUpdateTime(new Date());
|
|
|
|
|
codeEnttity.setCreateTime(MsDateUtil.parseDate(pdaCodeEntity.getActDate()));
|
|
|
|
|
ioCodeEnttities.add(codeEnttity);
|
|
|
|
|
}
|
|
|
|
|
codeTempService.insertBatch(ioCodeEnttities);
|
|
|
|
|
dealProcess(orderEntity);
|
|
|
|
|
if (!ioCheckInoutService.checkManual(orderEntity.getBillNo())) {
|
|
|
|
|
ioCheckInoutService.check(orderEntity.getBillNo());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
//创建新单据
|
|
|
|
|
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(pdaOrderEntity.getType());
|
|
|
|
|
String orderNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER + StrUtil.trimToEmpty(bussinessTypeEntity.getPrefix()), "yyyyMMdd"));
|
|
|
|
|
IoOrderEntity orderSaveRequest = new IoOrderEntity();
|
|
|
|
|
orderSaveRequest.setBillNo(orderNo);
|
|
|
|
|
orderSaveRequest.setMainAction(pdaOrderEntity.getInout());
|
|
|
|
|
orderSaveRequest.setAction(pdaOrderEntity.getType());
|
|
|
|
|
orderSaveRequest.setCorpOrderId(pdaOrderEntity.getOrder());
|
|
|
|
|
orderSaveRequest.setFromCorp(pdaOrderEntity.getFromCorpID());
|
|
|
|
|
orderSaveRequest.setCustomerId(postOrderRequest.getCustomerId());
|
|
|
|
|
orderSaveRequest.setFromDeptCode(pdaOrderEntity.getFromDeptCode());
|
|
|
|
|
orderSaveRequest.setFromInvCode(pdaOrderEntity.getFromInvCode());
|
|
|
|
|
orderSaveRequest.setDeptCode(pdaOrderEntity.getDeptCode());
|
|
|
|
|
orderSaveRequest.setInvCode(pdaOrderEntity.getInvCode());
|
|
|
|
|
orderSaveRequest.setStatus(ConstantStatus.ORDER_STATUS_PROCESS);
|
|
|
|
|
orderSaveRequest.setDealStatus(ConstantStatus.ORDER_DEAL_POST);
|
|
|
|
|
orderSaveRequest.setCreateUser(postOrderRequest.getUserId() + "");
|
|
|
|
|
orderSaveRequest.setUpdateUser(postOrderRequest.getUserId() + "");
|
|
|
|
|
orderSaveRequest.setUpdateTime(new Date());
|
|
|
|
|
orderSaveRequest.setBusType(bussinessTypeEntity.getBusType());
|
|
|
|
|
orderSaveRequest.setOrderType(ConstantStatus.ORDER_TYPE_SCAN);
|
|
|
|
|
if (postOrder.getErpOrders() != null && postOrder.getErpOrders().size() > 0)
|
|
|
|
|
orderSaveRequest.setFromType(ConstantStatus.FROM_PDAED);
|
|
|
|
|
else
|
|
|
|
|
orderSaveRequest.setFromType(ConstantStatus.FROM_PDAUN);
|
|
|
|
|
List<PdaCodeEntity> pdaCodeEntities = postOrder.getCodes();
|
|
|
|
|
if (pdaCodeEntities != null && pdaCodeEntities.size() > 0) {
|
|
|
|
|
PdaCodeEntity pdaCodeEntity = pdaCodeEntities.get(0);
|
|
|
|
|
if (pdaCodeEntity.getActDate() != null) {
|
|
|
|
|
orderSaveRequest.setCreateTime(MsDateUtil.parseDate(pdaCodeEntity.getActDate()));
|
|
|
|
|
}
|
|
|
|
|
//写入条码
|
|
|
|
|
List<IoCodeTempEntity> ioCodeEnttities = new ArrayList<>();
|
|
|
|
|
for (int index = 0; index < pdaCodeEntities.size(); index++) {
|
|
|
|
|
IoCodeTempEntity codeEnttity = new IoCodeTempEntity();
|
|
|
|
|
BeanUtils.copyProperties(pdaCodeEntities.get(index), codeEnttity);
|
|
|
|
|
codeEnttity.setAction(orderSaveRequest.getAction());
|
|
|
|
|
codeEnttity.setMainAction(orderSaveRequest.getMainAction());
|
|
|
|
|
codeEnttity.setDeptCode(orderSaveRequest.getDeptCode());
|
|
|
|
|
codeEnttity.setOrderId(orderSaveRequest.getBillNo());
|
|
|
|
|
codeEnttity.setInvCode(orderSaveRequest.getInvCode());
|
|
|
|
|
codeEnttity.setReCount(codeEnttity.getCount() * udiCalCountUtil.getActCount(codeEnttity.getNameCode()));
|
|
|
|
|
codeEnttity.setUpdateTime(new Date());
|
|
|
|
|
codeEnttity.setCreateTime(MsDateUtil.parseDate(pdaCodeEntity.getActDate()));
|
|
|
|
|
ioCodeEnttities.add(codeEnttity);
|
|
|
|
|
}
|
|
|
|
|
codeTempService.insertBatch(ioCodeEnttities);
|
|
|
|
|
}
|
|
|
|
|
orderService.insertOrder(orderSaveRequest);
|
|
|
|
|
dealProcess(orderSaveRequest);
|
|
|
|
|
if (!ioCheckInoutService.checkManual(orderEntity.getBillNo())) {
|
|
|
|
|
ioCheckInoutService.check(orderEntity.getBillNo());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
/**
|
|
|
|
|
* 手持终端上传生成扫码单据
|
|
|
|
|
*
|
|
|
|
|
* @param pdaPostOrderRequest
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public BaseResponse creatOrderByPda(PdaPostOrderRequest pdaPostOrderRequest) {
|
|
|
|
|
|
|
|
|
|
IoOrderEntity orderEntity = pdaPostOrderRequest.getOrderEntity();
|
|
|
|
|
IoOrderEntity tempEntity = orderService.findByBillNo(orderEntity.getBillNo());
|
|
|
|
|
if (tempEntity != null) {
|
|
|
|
|
return ResultVOUtils.error(500, "单据已存在,请勿重复提交");
|
|
|
|
|
}
|
|
|
|
|
tempEntity = orderService.findByCorpOrderId(orderEntity.getBillNo());
|
|
|
|
|
if (tempEntity != null) {
|
|
|
|
|
return ResultVOUtils.error(500, "单据已存在,请勿重复提交");
|
|
|
|
|
}
|
|
|
|
|
if (CollUtil.isNotEmpty(pdaPostOrderRequest.getCodeTempEntities())) {
|
|
|
|
|
codeTempService.insertBatch(pdaPostOrderRequest.getCodeTempEntities());
|
|
|
|
|
}
|
|
|
|
|
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(orderEntity.getAction());
|
|
|
|
|
String orderNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER + StrUtil.trimToEmpty(bussinessTypeEntity.getPrefix()), "yyyyMMdd"));
|
|
|
|
|
orderEntity.setBillNo(orderNo);
|
|
|
|
|
orderService.insertOrder(orderEntity);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
dealProcess(orderEntity);
|
|
|
|
|
if (!ioCheckInoutService.checkManual(orderEntity.getBillNo())) {
|
|
|
|
|
ioCheckInoutService.check(orderEntity.getBillNo());
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.success("单据上传成功!");
|
|
|
|
|
|
|
|
|
|
// List<PostOrderRequest.PostOrder> postOrders = postOrderRequest.getPostOrders();
|
|
|
|
|
// if (postOrders != null && postOrders.size() > 0) {
|
|
|
|
|
// for (int i = 0; i < postOrders.size(); i++) {
|
|
|
|
|
// PostOrderRequest.PostOrder postOrder = postOrders.get(i);
|
|
|
|
|
// //创建单据
|
|
|
|
|
// PdaOrderEntity pdaOrderEntity = postOrder.getOrderBean();
|
|
|
|
|
// IoOrderEntity orderEntity = null;
|
|
|
|
|
// if (StrUtil.isNotEmpty(pdaOrderEntity.getDocid())) {
|
|
|
|
|
// orderEntity = orderService.findByBillNo(pdaOrderEntity.getDocid());
|
|
|
|
|
// }
|
|
|
|
|
// if (orderEntity != null) {
|
|
|
|
|
// //已包含业务单据校验
|
|
|
|
|
// orderEntity.setUpdateUser(postOrderRequest.getUserId() + "");
|
|
|
|
|
// orderEntity.setUpdateTime(new Date());
|
|
|
|
|
// orderService.update(orderEntity);
|
|
|
|
|
// List<PdaCodeEntity> pdaCodeEntities = postOrder.getCodes();
|
|
|
|
|
// if (pdaCodeEntities != null && pdaCodeEntities.size() > 0) {
|
|
|
|
|
// PdaCodeEntity pdaCodeEntity = pdaCodeEntities.get(0);
|
|
|
|
|
// //写入条码
|
|
|
|
|
// List<IoCodeTempEntity> ioCodeEnttities = new ArrayList<>();
|
|
|
|
|
// for (int index = 0; index < pdaCodeEntities.size(); index++) {
|
|
|
|
|
// IoCodeTempEntity codeEnttity = new IoCodeTempEntity();
|
|
|
|
|
// BeanUtil.copyProperties(pdaCodeEntities.get(index), codeEnttity);
|
|
|
|
|
// codeEnttity.setAction(orderEntity.getAction());
|
|
|
|
|
// codeEnttity.setMainAction(orderEntity.getMainAction());
|
|
|
|
|
// codeEnttity.setDeptCode(orderEntity.getDeptCode());
|
|
|
|
|
// codeEnttity.setOrderId(orderEntity.getBillNo());
|
|
|
|
|
// codeEnttity.setInvCode(orderEntity.getInvCode());
|
|
|
|
|
// codeEnttity.setReCount(codeEnttity.getCount() * udiCalCountUtil.getActCount(codeEnttity.getNameCode()));
|
|
|
|
|
// codeEnttity.setUpdateTime(new Date());
|
|
|
|
|
// codeEnttity.setCreateTime(MsDateUtil.parseDate(pdaCodeEntity.getActDate()));
|
|
|
|
|
// ioCodeEnttities.add(codeEnttity);
|
|
|
|
|
// }
|
|
|
|
|
// codeTempService.insertBatch(ioCodeEnttities);
|
|
|
|
|
// dealProcess(orderEntity);
|
|
|
|
|
// if (!ioCheckInoutService.checkManual(orderEntity.getBillNo())) {
|
|
|
|
|
// ioCheckInoutService.check(orderEntity.getBillNo());
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// } else {
|
|
|
|
|
// //创建新单据
|
|
|
|
|
// BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(pdaOrderEntity.getType());
|
|
|
|
|
// String orderNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER + StrUtil.trimToEmpty(bussinessTypeEntity.getPrefix()), "yyyyMMdd"));
|
|
|
|
|
// IoOrderEntity orderSaveRequest = new IoOrderEntity();
|
|
|
|
|
// orderSaveRequest.setBillNo(orderNo);
|
|
|
|
|
// orderSaveRequest.setMainAction(pdaOrderEntity.getInout());
|
|
|
|
|
// orderSaveRequest.setAction(pdaOrderEntity.getType());
|
|
|
|
|
// orderSaveRequest.setCorpOrderId(pdaOrderEntity.getOrder());
|
|
|
|
|
// orderSaveRequest.setFromCorp(pdaOrderEntity.getFromCorpID());
|
|
|
|
|
// orderSaveRequest.setCustomerId(postOrderRequest.getCustomerId());
|
|
|
|
|
// orderSaveRequest.setFromDeptCode(pdaOrderEntity.getFromDeptCode());
|
|
|
|
|
// orderSaveRequest.setFromInvCode(pdaOrderEntity.getFromInvCode());
|
|
|
|
|
// orderSaveRequest.setDeptCode(pdaOrderEntity.getDeptCode());
|
|
|
|
|
// orderSaveRequest.setInvCode(pdaOrderEntity.getInvCode());
|
|
|
|
|
// orderSaveRequest.setStatus(ConstantStatus.ORDER_STATUS_PROCESS);
|
|
|
|
|
// orderSaveRequest.setDealStatus(ConstantStatus.ORDER_DEAL_POST);
|
|
|
|
|
// orderSaveRequest.setCreateUser(postOrderRequest.getUserId() + "");
|
|
|
|
|
// orderSaveRequest.setUpdateUser(postOrderRequest.getUserId() + "");
|
|
|
|
|
// orderSaveRequest.setUpdateTime(new Date());
|
|
|
|
|
// orderSaveRequest.setBusType(bussinessTypeEntity.getBusType());
|
|
|
|
|
// orderSaveRequest.setOrderType(ConstantStatus.ORDER_TYPE_SCAN);
|
|
|
|
|
// if (postOrder.getErpOrders() != null && postOrder.getErpOrders().size() > 0)
|
|
|
|
|
// orderSaveRequest.setFromType(ConstantStatus.FROM_PDAED);
|
|
|
|
|
// else
|
|
|
|
|
// orderSaveRequest.setFromType(ConstantStatus.FROM_PDAUN);
|
|
|
|
|
// List<PdaCodeEntity> pdaCodeEntities = postOrder.getCodes();
|
|
|
|
|
// if (pdaCodeEntities != null && pdaCodeEntities.size() > 0) {
|
|
|
|
|
// PdaCodeEntity pdaCodeEntity = pdaCodeEntities.get(0);
|
|
|
|
|
// if (pdaCodeEntity.getActDate() != null) {
|
|
|
|
|
// orderSaveRequest.setCreateTime(MsDateUtil.parseDate(pdaCodeEntity.getActDate()));
|
|
|
|
|
// }
|
|
|
|
|
// //写入条码
|
|
|
|
|
// List<IoCodeTempEntity> ioCodeEnttities = new ArrayList<>();
|
|
|
|
|
// for (int index = 0; index < pdaCodeEntities.size(); index++) {
|
|
|
|
|
// IoCodeTempEntity codeEnttity = new IoCodeTempEntity();
|
|
|
|
|
// BeanUtil.copyProperties(pdaCodeEntities.get(index), codeEnttity);
|
|
|
|
|
// codeEnttity.setAction(orderSaveRequest.getAction());
|
|
|
|
|
// codeEnttity.setMainAction(orderSaveRequest.getMainAction());
|
|
|
|
|
// codeEnttity.setDeptCode(orderSaveRequest.getDeptCode());
|
|
|
|
|
// codeEnttity.setOrderId(orderSaveRequest.getBillNo());
|
|
|
|
|
// codeEnttity.setInvCode(orderSaveRequest.getInvCode());
|
|
|
|
|
// codeEnttity.setReCount(codeEnttity.getCount() * udiCalCountUtil.getActCount(codeEnttity.getNameCode()));
|
|
|
|
|
// codeEnttity.setUpdateTime(new Date());
|
|
|
|
|
// codeEnttity.setCreateTime(MsDateUtil.parseDate(pdaCodeEntity.getActDate()));
|
|
|
|
|
// ioCodeEnttities.add(codeEnttity);
|
|
|
|
|
// }
|
|
|
|
|
// codeTempService.insertBatch(ioCodeEnttities);
|
|
|
|
|
// }
|
|
|
|
|
// orderService.insertOrder(orderSaveRequest);
|
|
|
|
|
// dealProcess(orderSaveRequest);
|
|
|
|
|
// if (!ioCheckInoutService.checkManual(orderEntity.getBillNo())) {
|
|
|
|
|
// ioCheckInoutService.check(orderEntity.getBillNo());
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
//
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 待配货,待校验单据提交
|
|
|
|
|
*
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public BaseResponse waitOrderByPda(PdaPostOrderRequest pdaPostOrderRequest) {
|
|
|
|
|
return ResultVOUtils.success("提交成功!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
UdiCalCountUtil udiCalCountUtil;
|
|
|
|
|
|
|
|
|
|
//校验条码关联供应商
|
|
|
|
|
public String checkExitSup(Long relId) {
|
|
|
|
|