Merge remote-tracking branch 'origin/master'

master
郑明梁 2 years ago
commit c7ecdd380a

@ -581,7 +581,7 @@ public class IoCodeTempController extends BaseController {
orderEntity.setAction(bussinessTypeEntity.getAction());
orderEntity.setFromCorp(addOrderRequest.getFromCorp());
if (StrUtil.isNotEmpty(addOrderRequest.getFromInvCode())) {
InvWarehouseEntity invWarehouseEntity1 = invWarehouseService.findByInvSubByCode(addOrderRequest.getInvCode());
InvWarehouseEntity invWarehouseEntity1 = invWarehouseService.findByInvSubByCode(addOrderRequest.getFromInvCode());
orderEntity.setFromDeptCode(invWarehouseEntity1.getParentId());
}
orderEntity.setFromInvCode(addOrderRequest.getFromInvCode());

@ -261,11 +261,43 @@ public class IoOrderController extends BaseController {
@AuthRuleAnnotation("")
@PostMapping("udiwms/inout/code/finish/delete")
public BaseResponse deleteCodeById(@RequestBody IoCodeEntity codeEntity) {
orderService.deleteInvCode(codeEntity.getOrderId(), codeEntity.getCode());
return ResultVOUtils.success("删除成功!");
}
//已验收单据撤回
@AuthRuleAnnotation("")
@GetMapping("/udiwms/stock/order/received/rollback")
public BaseResponse rollbackOrder(String billNo, Integer contrastStatus) {
if (StrUtil.isBlank(billNo)) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
IoOrderEntity orderEntity = orderService.findByBillNo(billNo);
if (StrUtil.isNotEmpty(orderEntity.getSupplementNo()) || StrUtil.isNotEmpty(orderEntity.getUllageSupNo())) {
return ResultVOUtils.error(500, "单据已补单,无法撤回!");
}
boolean result = orderService.rollbackOrder(billNo);
if (result) {
return ResultVOUtils.success();
}
return ResultVOUtils.error(ResultEnum.NOT_NETWORK, "撤回失败");
}
//已校验单据撤回到等待处理
@AuthRuleAnnotation("")
@GetMapping("/udiwms/inout/order/unReceive/rollback")
public BaseResponse rollUnReceivebackOrder(String billNo, Integer contrastStatus) {
if (StrUtil.isBlank(billNo)) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
boolean result = orderService.rollbackUnReOrder(billNo);
if (result) {
return ResultVOUtils.success("撤回成功!");
}
return ResultVOUtils.error(ResultEnum.NOT_NETWORK, "撤回失败");
}
//手持终端获取未处理业务单据进行校验
@AuthRuleAnnotation("")

@ -37,6 +37,9 @@ public interface IoOrderService {
int deleteInvCode(String billNo, String code);
boolean rollbackOrder(String billNo);
boolean rollbackUnReOrder(String billNo);
/**
*
@ -91,4 +94,6 @@ public interface IoOrderService {
* @param orderEditRequest
*/
void updateOrderInfo(OrderEditRequest orderEditRequest);
}

@ -31,6 +31,7 @@ import com.glxp.api.service.inv.*;
import com.glxp.api.util.DateUtil;
import com.glxp.api.util.udi.UdiCalCountUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -73,6 +74,10 @@ public class IoOrderServiceImpl implements IoOrderService {
IoCodeService codeService;
@Resource
IoCodeTempService codeTempService;
@Resource
IoOrderDetailCodeService ioOrderDetailCodeService;
@Resource
IoOrderDetailResultService ioOrderDetailResultService;
@Override
public List<IoOrderEntity> selectAll() {
@ -210,12 +215,6 @@ public class IoOrderServiceImpl implements IoOrderService {
return 0;
}
@Resource
IoOrderDetailCodeService ioOrderDetailCodeService;
@Resource
IoOrderDetailResultService ioOrderDetailResultService;
//单据编辑条码减一
@Override
public int deleteInvCode(String billNo, String code) {
@ -337,6 +336,73 @@ public class IoOrderServiceImpl implements IoOrderService {
return 0;
}
@Resource
InvPreinOrderService invPreinOrderService;
@Resource
InvPreinDetailService invPreinDetailService;
//已验收单据撤回
@Override
public boolean rollbackOrder(String billNo) {
IoOrderEntity orderEntity = findByBillNo(billNo);
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(orderEntity.getAction());
//预验收撤回---直接删除预验收库存
if (bussinessTypeEntity.isPreIn()) {
invPreinOrderService.deleteByOrderId(billNo);
invPreinDetailService.deleteByOrderId(billNo);
return true;
}
List<InvProductDetailEntity> invProductDetailEntities = invProductDetailService.selectByOrderIdFk(billNo);
if (CollUtil.isNotEmpty(invProductDetailEntities)) {
for (InvProductDetailEntity invProductDetailEntity : invProductDetailEntities) {
InvProductEntity invProductEntity = invProductService.selectByUnique(invProductDetailEntity.getRelId(), invProductDetailEntity.getBatchNo(), invProductDetailEntity.getSupId(),
invProductDetailEntity.getDeptCode(), invProductDetailEntity.getInvCode());
if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) {
int count = invProductEntity.getInCount() - invProductDetailEntity.getReCount();
invProductEntity.setInCount(count);
} else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) {
int count = invProductEntity.getOutCount() - invProductDetailEntity.getReCount();
invProductEntity.setOutCount(count);
}
invProductService.update(invProductEntity);
}
invProductDetailService.deleteByOrderId(billNo);
}
orderEntity.setDealStatus(ConstantStatus.ORDER_DEAL_POST);
orderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK_SUCCESS);
orderEntity.setUpdateTime(new Date());
update(orderEntity);
return false;
}
@Override
public boolean rollbackUnReOrder(String billNo) {
IoOrderEntity orderEntity = findByBillNo(billNo);
List<IoCodeEntity> codeEntityList = codeService.findByOrderId(billNo);
List<IoCodeTempEntity> codeTempEntities = new ArrayList<>();
for (IoCodeEntity codeEntity : codeEntityList) {
IoCodeTempEntity codeTempEntity = new IoCodeTempEntity();
BeanUtils.copyProperties(codeEntity, codeTempEntity);
codeTempEntity.setId(null);
codeTempEntities.add(codeTempEntity);
}
codeTempService.insertBatch(codeTempEntities);
codeService.deleteCodeByOrderId(billNo);
orderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK);
orderEntity.setDealStatus(ConstantStatus.ORDER_DEAL_POST);
orderEntity.setUpdateTime(new Date());
update(orderEntity);
return true;
}
@Override
public List<IoOrderResponse> filterList(FilterOrderRequest filterOrderRequest) {
if (null == filterOrderRequest) {
@ -476,6 +542,7 @@ public class IoOrderServiceImpl implements IoOrderService {
orderDao.update(order, new QueryWrapper<IoOrderEntity>().in("billNo", orderEditRequest.getOrderIds()));
}
/**
*
*

Loading…
Cancel
Save