出入库扫码相关bug修改

pro
anthonywj 2 years ago
parent 2178f1ca37
commit ea3c82f475

@ -98,6 +98,10 @@ public class UdiRelevanceController extends BaseController {
}
List<UdiRelevanceResponse> udiRelevanceResponses = null;
if(StrUtil.isNotEmpty(filterUdiRelRequest.getUdiCode())){
filterUdiRelRequest.setNameCode(FilterUdiUtils.getUdi(filterUdiRelRequest.getUdiCode()).getUdi());
}
if (StrUtil.isNotEmpty(filterUdiRelRequest.getBindRlIds())) {
String[] datas = filterUdiRelRequest.getBindRlIds().split(",");
List<String> list = Arrays.asList(datas);

@ -622,6 +622,7 @@ public class IoCodeTempController extends BaseController {
codeEnttity.setWarehouseCode(addOrderRequest.getCurSpaceCode());
codeEnttity.setPreSpaceCode(addOrderRequest.getPreCurSpaceCode());
codeEnttity.setPreInSpaceCode(addOrderRequest.getCheckPreInSpaceCode());
codeEnttity.setRelId(addOrderRequest.getRelId());
codeEnttity.setCount(1);
String unitFk = null;
if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) {
@ -946,10 +947,10 @@ public class IoCodeTempController extends BaseController {
List<UdiRelevanceResponse> udiRelevanceEntities = udiRelevanceService.selectAllByNameCode(codeEnttity.getNameCode(), unitFk);
if (udiRelevanceEntities != null && udiRelevanceEntities.size() > 1 && codeEnttity.getRelId() == null) {//同一个DI绑定多个产品西信息
codeEnttity.setRelId(null);
codeEnttity.setStatus(ConstantStatus.ORDER_DETAIL_DI_MUTI);
codeTempService.insert(codeEnttity);
codeEnttity = codeTempService.findByUnique(codeEnttity.getOrderId(), codeEnttity.getCode());
// codeEnttity.setRelId(null);
// codeEnttity.setStatus(ConstantStatus.ORDER_DETAIL_DI_MUTI);
// codeTempService.insert(codeEnttity);
// codeEnttity = codeTempService.findByUnique(codeEnttity.getOrderId(), codeEnttity.getCode());
BaseResponse baseResponse = ResultVOUtils.error(502, "DI绑定多个产品ID,请指定对应产品");
baseResponse.setData(codeEnttity);
return baseResponse;

@ -438,7 +438,7 @@ public class IoOrderController extends BaseController {
@Log(title = "单据管理", businessType = BusinessType.DELETE)
public BaseResponse deletById(@RequestBody DeleteRequest deleteRequest) {
IoOrderEntity orderEntity = orderService.findByBillNo(deleteRequest.getBillNo());
if (orderEntity.getStatus() != 1 && orderEntity.getStatus() != 3 && orderEntity.getStatus() != 4 && orderEntity.getStatus() != 6) {
if (orderEntity.getStatus() != 1 && orderEntity.getStatus() != 3 && orderEntity.getStatus() != 4 && orderEntity.getStatus() != 6 && orderEntity.getStatus() != 10) {
return ResultVOUtils.error(500, "单据已提交无法删除!");
}
orderService.deleteByBillNo(deleteRequest.getBillNo());

@ -29,6 +29,7 @@ public class AddOrderRequest {
private String remark;
private String checkPreInOrders;
private String selectSupId;
private Long relId;
// 预验收货位
private String checkPreInSpaceCode;

@ -334,80 +334,89 @@ public class IoOrderServiceImpl implements IoOrderService {
if (basicBussinessTypeEntity.getActionType() == ConstantStatus.ACTION_TYPE_PREIN) {
InvPreInProductDetailEntity invProductDetailEntity = invPreinProductDetailService.selectByCode(billNo, code);
int count = invProductDetailEntity.getCount() - 1;
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
if (count == 0) {
invPreinProductDetailService.deleteById(invProductDetailEntity.getId() + "");
} else {
//更新详情表
invProductDetailEntity.setCount(count);
invProductDetailEntity.setReCount(invProductDetailEntity.getReCount() - reCount);
invPreinProductDetailService.update(invProductDetailEntity);
}
//更新产品表
InvPreinProductEntity invProductEntity = invPreinProductService.selectByUnique(invProductDetailEntity.getRelId(), invProductDetailEntity.getBatchNo(), invProductDetailEntity.getSupId(), invProductDetailEntity.getDeptCode(), invProductDetailEntity.getInvCode());
if (invProductEntity != null) {
if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) {
int inCount = invProductEntity.getInCount() - reCount;
invProductEntity.setInCount(inCount);
} else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) {
int outCount = invProductEntity.getOutCount() - reCount;
invProductEntity.setOutCount(outCount);
if (invProductDetailEntity != null) {
int count = invProductDetailEntity.getCount() - 1;
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
if (count == 0) {
invPreinProductDetailService.deleteById(invProductDetailEntity.getId() + "");
} else {
//更新详情表
invProductDetailEntity.setCount(count);
invProductDetailEntity.setReCount(invProductDetailEntity.getReCount() - reCount);
invPreinProductDetailService.update(invProductDetailEntity);
}
invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount());
//更新产品表
InvPreinProductEntity invProductEntity = invPreinProductService.selectByUnique(invProductDetailEntity.getRelId(), invProductDetailEntity.getBatchNo(), invProductDetailEntity.getSupId(), invProductDetailEntity.getDeptCode(), invProductDetailEntity.getInvCode());
if (invProductEntity != null) {
if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) {
int inCount = invProductEntity.getInCount() - reCount;
invProductEntity.setInCount(inCount);
} else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) {
int outCount = invProductEntity.getOutCount() - reCount;
invProductEntity.setOutCount(outCount);
}
invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount());
}
invPreinProductService.update(invProductEntity);
}
invPreinProductService.update(invProductEntity);
} else if (basicBussinessTypeEntity.getActionType() == ConstantStatus.ACTION_TYPE_ADVANCE) { //寄售库存
InvPreProductDetailEntity invProductDetailEntity = invPreProductDetailService.selectByCode(billNo, code);
int count = invProductDetailEntity.getCount() - 1;
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
if (count == 0) {
invPreProductService.deleteById(invProductDetailEntity.getId());
} else {
//更新详情表
invProductDetailEntity.setCount(count);
invProductDetailEntity.setReCount(invProductDetailEntity.getReCount() - reCount);
invPreProductDetailService.update(invProductDetailEntity);
}
//更新产品表
InvPreProductEntity invProductEntity = invPreProductService.selectByUnique(invProductDetailEntity.getRelId(), invProductDetailEntity.getBatchNo(), invProductDetailEntity.getSupId(), invProductDetailEntity.getDeptCode(), invProductDetailEntity.getInvCode());
if (invProductEntity != null) {
if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) {
int inCount = invProductEntity.getInCount() - reCount;
invProductEntity.setInCount(inCount);
} else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) {
int outCount = invProductEntity.getOutCount() - reCount;
invProductEntity.setOutCount(outCount);
if (invProductDetailEntity != null) {
int count = invProductDetailEntity.getCount() - 1;
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
if (count == 0) {
invPreProductService.deleteById(invProductDetailEntity.getId());
} else {
//更新详情表
invProductDetailEntity.setCount(count);
invProductDetailEntity.setReCount(invProductDetailEntity.getReCount() - reCount);
invPreProductDetailService.update(invProductDetailEntity);
}
//更新产品表
InvPreProductEntity invProductEntity = invPreProductService.selectByUnique(invProductDetailEntity.getRelId(), invProductDetailEntity.getBatchNo(), invProductDetailEntity.getSupId(), invProductDetailEntity.getDeptCode(), invProductDetailEntity.getInvCode());
if (invProductEntity != null) {
if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) {
int inCount = invProductEntity.getInCount() - reCount;
invProductEntity.setInCount(inCount);
} else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) {
int outCount = invProductEntity.getOutCount() - reCount;
invProductEntity.setOutCount(outCount);
}
invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount());
}
invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount());
invPreProductService.update(invProductEntity);
}
invPreProductService.update(invProductEntity);
} else { //普通库存
InvProductDetailEntity invProductDetailEntity = invProductDetailService.selectByCode(billNo, code);
int count = invProductDetailEntity.getCount() - 1;
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
if (count == 0) {
invProductDetailService.deleteById(invProductDetailEntity.getId());
} else {
//更新详情表
invProductDetailEntity.setCount(count);
invProductDetailEntity.setReCount(invProductDetailEntity.getReCount() - reCount);
invProductDetailService.update(invProductDetailEntity);
}
//更新产品表
InvProductEntity invProductEntity = invProductService.selectByUnique(invProductDetailEntity.getRelId(), invProductDetailEntity.getBatchNo(), invProductDetailEntity.getSupId(), invProductDetailEntity.getDeptCode(), invProductDetailEntity.getInvCode());
if (invProductEntity != null) {
if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) {
int inCount = invProductEntity.getInCount() - reCount;
invProductEntity.setInCount(inCount);
} else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) {
int outCount = invProductEntity.getOutCount() - reCount;
invProductEntity.setOutCount(outCount);
if (invProductDetailEntity != null) {
int count = invProductDetailEntity.getCount() - 1;
int reCount = udiCalCountUtil.getActCount(invProductDetailEntity.getNameCode());
if (count == 0) {
invProductDetailService.deleteById(invProductDetailEntity.getId());
} else {
//更新详情表
invProductDetailEntity.setCount(count);
invProductDetailEntity.setReCount(invProductDetailEntity.getReCount() - reCount);
invProductDetailService.update(invProductDetailEntity);
}
//更新产品表
InvProductEntity invProductEntity = invProductService.selectByUnique(invProductDetailEntity.getRelId(), invProductDetailEntity.getBatchNo(), invProductDetailEntity.getSupId(), invProductDetailEntity.getDeptCode(), invProductDetailEntity.getInvCode());
if (invProductEntity != null) {
if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) {
int inCount = invProductEntity.getInCount() - reCount;
invProductEntity.setInCount(inCount);
} else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) {
int outCount = invProductEntity.getOutCount() - reCount;
invProductEntity.setOutCount(outCount);
}
invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount());
}
invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount());
invProductService.update(invProductEntity);
}
invProductService.update(invProductEntity);
}

@ -20,6 +20,7 @@ import com.glxp.api.res.inv.InvProductDetailResponse;
import com.glxp.api.service.auth.InvSpaceService;
import com.glxp.api.service.inv.InvProductDetailService;
import com.glxp.api.util.DateUtil;
import com.glxp.api.util.IntUtil;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -64,9 +65,14 @@ public class InvProductDetailServiceImpl implements InvProductDetailService {
public InvProductDetailEntity selectByCode(String billNo, String code) {
List<InvProductDetailEntity> invProductDetailEntities = invProductDetailDao.selectList
(new QueryWrapper<InvProductDetailEntity>().eq("code", code).eq("orderId", billNo));
if (CollUtil.isNotEmpty(invProductDetailEntities))
if (CollUtil.isNotEmpty(invProductDetailEntities)) {
for (InvProductDetailEntity invProductDetailEntity : invProductDetailEntities) {
if (IntUtil.value(invProductDetailEntity.getReCount()) > 0) {
return invProductDetailEntity;
}
}
return invProductDetailEntities.get(0);
else
} else
return null;
}

Loading…
Cancel
Save