多级产品出库问题,申购新增备注字段搜索

pro^2
anthonywj 2 years ago
parent 53aa0b11a8
commit a09eb7c2da

@ -126,7 +126,7 @@ public class UdiRlSupController extends BaseController {
@AuthRuleAnnotation("")
@GetMapping("/sale/info/company/product/plan/relevance/filter")
public BaseResponse filterCompanyProductPlanRelevance(CompanyProductRelevanceRequest companyProductRelevanceRequest,
BindingResult bindingResult) {
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
@ -160,12 +160,12 @@ public class UdiRlSupController extends BaseController {
companyProductRelevanceRequest.setDiType(1);
}
//查询详情id过滤
List<PurApplyDetailEntity> purApplyDetailEntityList= purApplyDetailService.findByOrderId(companyProductRelevanceRequest.getId());
List<PurApplyDetailEntity> purApplyDetailEntityList = purApplyDetailService.findByOrderId(companyProductRelevanceRequest.getId());
List<Long> idList = purApplyDetailEntityList.stream().map(PurApplyDetailEntity::getProductId).collect(Collectors.toList());
List<UdiRelevanceResponse> basicInstrumentMaintainRelevanceResponses = null;
FilterUdiRelRequest filterUdiRelRequest=new FilterUdiRelRequest();
BeanCopyUtils.copy(companyProductRelevanceRequest,filterUdiRelRequest);
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
BeanCopyUtils.copy(companyProductRelevanceRequest, filterUdiRelRequest);
filterUdiRelRequest.setIds(idList);
basicInstrumentMaintainRelevanceResponses = udiRelevanceService.filterUdiJoinSup(filterUdiRelRequest);
PageInfo<UdiRelevanceResponse> pageInfo;

@ -575,11 +575,11 @@ public class IoCodeTempController extends BaseController {
BaseResponse invRes = null;
if (bussinessTypeEntity.isScanPreIn()) { //校验预验收库存
invRes = checkPreInInv(bussinessTypeEntity, exitLocalEntity);
invRes = checkPreInInv(bussinessTypeEntity, genDetaiEntity);
} else if (bussinessTypeEntity.isAdvancePreIn()) { //校验寄售库存
invRes = checkPreInv(bussinessTypeEntity, exitLocalEntity);
invRes = checkPreInv(bussinessTypeEntity, genDetaiEntity);
} else {
invRes = checkInv(bussinessTypeEntity, exitLocalEntity);
invRes = checkInv(bussinessTypeEntity, genDetaiEntity);
}
if (invRes != null) {
return invRes;
@ -791,15 +791,15 @@ public class IoCodeTempController extends BaseController {
InvWarehouseEntity invWarehouseEntity = invWarehouseService.findByOne(ConstantStatus.ACTION_TYPE_ADVANCE);
int count = 0;
if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_NULL) {
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), null, codeTempEntity.getCode());
} else
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), null);
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
// count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), null, codeTempEntity.getCode());
// } else
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), null);
} else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_SET) {
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode());
} else
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode());
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
// count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode());
// } else
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode());
} else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_CODE) {
//按指定货位出库
if (StrUtil.isEmpty(codeTempEntity.getPreSpaceCode())) {
@ -816,35 +816,38 @@ public class IoCodeTempController extends BaseController {
return ResultVOUtils.error(500, "添加失败,该产品未上架货位!");
}
} else {
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode());
} else
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode());
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
// count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode());
// } else
count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode());
}
}
InvPreProductDetailEntity invPreinDetailEntity = invPreProductDetailService.findUseOneByCode(codeTempEntity.getCode());
// InvPreProductDetailEntity invPreinDetailEntity = invPreProductDetailService.findUseOneByCode(codeTempEntity.getCode());
if (count <= 0) {
return ResultVOUtils.error(500, "寄售库存数量不足!");
} else {
if (StrUtil.isNotEmpty(invPreinDetailEntity.getBatchNo()) && StrUtil.isNotEmpty(codeTempEntity.getBatchNo())
&& !invPreinDetailEntity.getBatchNo().equals(codeTempEntity.getBatchNo())) {
return ResultVOUtils.error(500, "当前批次号与预验收录入批次号不匹配!");
}
if (StrUtil.isNotEmpty(codeTempEntity.getOrderId())) {//非首次添加
if (StrUtil.isEmpty(codeTempEntity.getSerialNo())) {//该单据已有该产品
//无序列号,则可能存在多个预验收入库单
IoCodeTempEntity tempEntity = codeTempService.findByUnique(codeTempEntity.getOrderId(), codeTempEntity.getCode());
if (tempEntity != null) {
if (count < (tempEntity.getMyCount() + 1)) {
return ResultVOUtils.error(500, "超出寄售库存数量");
}
}
} else {
if (count < 1) {
return ResultVOUtils.error(500, "寄售库存数量不足");
}
}
// if (StrUtil.isNotEmpty(invPreinDetailEntity.getBatchNo()) && StrUtil.isNotEmpty(codeTempEntity.getBatchNo())
// && !invPreinDetailEntity.getBatchNo().equals(codeTempEntity.getBatchNo())) {
// return ResultVOUtils.error(500, "当前批次号与预验收录入批次号不匹配!");
// }
// if (StrUtil.isNotEmpty(codeTempEntity.getOrderId())) {//非首次添加
// if (StrUtil.isEmpty(codeTempEntity.getSerialNo())) {//该单据已有该产品
// IoCodeTempEntity tempEntity = codeTempService.findByUnique(codeTempEntity.getOrderId(), codeTempEntity.getCode());
// if (tempEntity != null) {
// if (count < (tempEntity.getMyCount() + 1)) {
// return ResultVOUtils.error(500, "超出寄售库存数量");
// }
// }
// } else {
// if (count < 1) {
// return ResultVOUtils.error(500, "寄售库存数量不足");
// }
// }
// }
int exitCount = IntUtil.value(codeTempService.selectExitCount(codeTempEntity.getOrderId(), codeTempEntity.getBatchNo(), codeTempEntity.getRelId(), codeTempEntity.getSupId()));
if ((codeTempEntity.getMyReCount() + exitCount) > count) {
return ResultVOUtils.error(500, "寄售库存数量不足");
}
}
return null;
@ -908,7 +911,7 @@ public class IoCodeTempController extends BaseController {
}
} else {
if (count < 1) {
return ResultVOUtils.error(500, "寄售预验收数量不足");
return ResultVOUtils.error(500, "预验收库存数量不足");
}
}
}
@ -1058,15 +1061,15 @@ public class IoCodeTempController extends BaseController {
if (bussinessTypeEntity.isVailInv() && bussinessTypeEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
int count = 0;
if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_NULL) {
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null, codeTempEntity.getCode());
} else
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null);
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
// count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null, codeTempEntity.getCode());
// } else
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null);
} else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_SET) {
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode());
} else
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode());
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
// count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode());
// } else
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode());
} else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_CODE) {
//按指定货位出库
if (StrUtil.isEmpty(codeTempEntity.getWarehouseCode())) {
@ -1082,17 +1085,18 @@ public class IoCodeTempController extends BaseController {
return ResultVOUtils.error(500, "添加失败,该产品未上架货位!");
}
} else {
if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode());
} else
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode());
// if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
// count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode());
// } else
count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode());
}
}
if (count <= 0) {
return ResultVOUtils.error(500, "当前库存不足");
} else {
//查询此单据已扫描的条码数量
if (codeTempEntity.getMyReCount() > count) {
int exitCount = IntUtil.value(codeTempService.selectExitCount(codeTempEntity.getOrderId(), codeTempEntity.getBatchNo(), codeTempEntity.getRelId(), codeTempEntity.getSupId()));
if ((codeTempEntity.getMyReCount() + exitCount) > count) {
return ResultVOUtils.error(500, "当前库存不足");
}
}

@ -291,8 +291,13 @@ public class IoPurChangeService {
ioOrderEntity.setAction(basicBusTypeChangeEntity.getTargetAction());
ioOrderEntity.setFromCorp(m.getKey());
ioOrderEntity.setFromType(ConstantStatus.FROM_PLAN);
ioOrderEntity.setStatus(1);
ioOrderEntity.setDealStatus(1);
if (basicBusTypeChangeEntity.getAuditStatus() == 1) {
ioOrderEntity.setStatus(ConstantStatus.ORDER_STATUS_TEMP_SAVE);
ioOrderEntity.setDealStatus(ConstantStatus.ORDER_DEAL_DRAFT);
} else {
ioOrderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK);
ioOrderEntity.setDealStatus(ConstantStatus.ORDER_DEAL_POST);
}
ioOrderEntity.setOrderType(1);
ioOrderEntity.setCreateTime(new Date());
ioOrderEntity.setCreateUser(purReceiveEntity.getCreateUser());
@ -325,8 +330,6 @@ public class IoPurChangeService {
ioOrderDetailBizService.insert(ioOrderDetailBizEntity);
}
}
// purReceiveEntity.se(billNo.substring(0, billNo.length() - 1));
// receiveService.update(purPlanEntity1);
}
}

@ -176,6 +176,23 @@ public class ThrProductsController {
}
/**
*
*
* @return
*/
@AuthRuleAnnotation("")
@PostMapping("/udiwms/udiinfo/erp/products/update")
public BaseResponse updateProduct(@RequestBody ThrProductsEntity thrProductsEntity) {
if (null == thrProductsEntity)
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
thrProductsEntity.setUpdateTime(new Date());
thrProductsService.updateById(thrProductsEntity);
return ResultVOUtils.success("修改成功!");
}
/**
*
*

@ -16,4 +16,6 @@ public interface IoCodeTempDao extends BaseMapperPlus<IoCodeTempDao, IoCodeTempE
* @return
*/
List<IoCodeTempResponse> selectCodeList(FilterCodeRequest filterCodeRequest);
Integer selectExitCount(FilterCodeRequest filterCodeRequest);
}

@ -55,4 +55,14 @@ public class CompanyProductRelevanceRequest extends ListPageRequest {
private String manufactory;
private String flbm;
private List<String> uuids;
private String basicPrductRemak1;
private String basicPrductRemak2;
private String basicPrductRemak3;
private String basicPrductRemak4;
private String basicPrductRemak5;
private String basicPrductRemak6;
private String basicPrductRemak7;
private String basicPrductRemak8;
}

@ -77,4 +77,13 @@ public class FilterUdiRelRequest extends ListPageRequest {
private List<Long> ids;
private String flbm;
private String basicPrductRemak1;
private String basicPrductRemak2;
private String basicPrductRemak3;
private String basicPrductRemak4;
private String basicPrductRemak5;
private String basicPrductRemak6;
private String basicPrductRemak7;
private String basicPrductRemak8;
}

@ -40,4 +40,6 @@ public interface IoCodeTempService {
List<IoCodeTempResponse> findCodeList(FilterCodeRequest filterCodeRequest);
boolean isExit(String orderId);
Integer selectExitCount(String orderId, String bacthNo, Long relId, String supId);
}

@ -92,4 +92,14 @@ public class IoCodeTempServiceImpl implements IoCodeTempService {
return ioCodeTempDao.exists(new QueryWrapper<IoCodeTempEntity>().eq("orderId", orderId));
}
@Override
public Integer selectExitCount(String orderId, String bacthNo, Long relId, String supId) {
FilterCodeRequest filterCodeRequest = new FilterCodeRequest();
filterCodeRequest.setOrderId(orderId);
filterCodeRequest.setBatchNo(bacthNo);
filterCodeRequest.setRelId(relId + "");
filterCodeRequest.setSupId(supId);
return ioCodeTempDao.selectExitCount(filterCodeRequest);
}
}

@ -283,6 +283,30 @@
<if test="companyName != '' and companyName != null">
AND basic_corp.name like concat('%', #{companyName}, '%')
</if>
<if test="basicPrductRemak1 != '' and basicPrductRemak1 != null">
AND basic_products.basicPrductRemak1 like concat('%', #{basicPrductRemak1}, '%')
</if>
<if test="basicPrductRemak2 != '' and basicPrductRemak2 != null">
AND basic_products.basicPrductRemak2 like concat('%', #{basicPrductRemak2}, '%')
</if>
<if test="basicPrductRemak3 != '' and basicPrductRemak3 != null">
AND basic_products.basicPrductRemak3 like concat('%', #{basicPrductRemak3}, '%')
</if>
<if test="basicPrductRemak4 != '' and basicPrductRemak4 != null">
AND basic_products.basicPrductRemak4 like concat('%', #{basicPrductRemak4}, '%')
</if>
<if test="basicPrductRemak5 != '' and basicPrductRemak5 != null">
AND basic_products.basicPrductRemak5 like concat('%', #{basicPrductRemak5}, '%')
</if>
<if test="basicPrductRemak6 != '' and basicPrductRemak6 != null">
AND basic_products.basicPrductRemak6 like concat('%', #{basicPrductRemak6}, '%')
</if>
<if test="basicPrductRemak7 != '' and basicPrductRemak7 != null">
AND basic_products.basicPrductRemak7 like concat('%', #{basicPrductRemak7}, '%')
</if>
<if test="basicPrductRemak8 != '' and basicPrductRemak8 != null">
AND basic_products.basicPrductRemak8 like concat('%', #{basicPrductRemak8}, '%')
</if>
</where>
</select>

@ -117,7 +117,7 @@
AND basic_products.ylqxzcrbarmc LIKE concat(#{ylqxzcrbarmc}, '%')
</if>
<if test="cpmctymc != '' and cpmctymc != null">
AND cpmctymc LIKE concat('%',#{cpmctymc}, '%')
AND cpmctymc LIKE concat('%', #{cpmctymc}, '%')
</if>
<if test="nameCode != '' and nameCode != null">
AND nameCode LIKE concat(#{nameCode}, '%')
@ -203,6 +203,30 @@
<if test="companyName != '' and companyName != null">
AND basic_corp.name like concat('%', #{companyName}, '%')
</if>
<if test="basicPrductRemak1 != '' and basicPrductRemak1 != null">
AND basic_products.basicPrductRemak1 like concat('%', #{basicPrductRemak1}, '%')
</if>
<if test="basicPrductRemak2 != '' and basicPrductRemak2 != null">
AND basic_products.basicPrductRemak2 like concat('%', #{basicPrductRemak2}, '%')
</if>
<if test="basicPrductRemak3 != '' and basicPrductRemak3 != null">
AND basic_products.basicPrductRemak3 like concat('%', #{basicPrductRemak3}, '%')
</if>
<if test="basicPrductRemak4 != '' and basicPrductRemak4 != null">
AND basic_products.basicPrductRemak4 like concat('%', #{basicPrductRemak4}, '%')
</if>
<if test="basicPrductRemak5 != '' and basicPrductRemak5 != null">
AND basic_products.basicPrductRemak5 like concat('%', #{basicPrductRemak5}, '%')
</if>
<if test="basicPrductRemak6 != '' and basicPrductRemak6 != null">
AND basic_products.basicPrductRemak6 like concat('%', #{basicPrductRemak6}, '%')
</if>
<if test="basicPrductRemak7 != '' and basicPrductRemak7 != null">
AND basic_products.basicPrductRemak7 like concat('%', #{basicPrductRemak7}, '%')
</if>
<if test="basicPrductRemak8 != '' and basicPrductRemak8 != null">
AND basic_products.basicPrductRemak8 like concat('%', #{basicPrductRemak8}, '%')
</if>
<if test="lockStatus != '' and lockStatus != null">
AND basic_udirel.lockStatus = #{lockStatus}
</if>

@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inout.IoCodeTempDao">
<select id="selectCodeList" resultType="com.glxp.api.res.inout.IoCodeTempResponse">
select *,
(select `name` from basic_corp where erpId = io_code_temp.supId) supName
@ -16,5 +15,22 @@
</where>
</select>
</mapper>
<select id="selectExitCount" resultType="java.lang.Integer">
select SUM(reCount)
from io_code_temp
<where>
<if test="relId != null and relId != ''">
relId = #{relId}
</if>
<if test="batchNo != null and batchNo != ''">
AND batchNo = #{batchNo}
</if>
<if test="orderId != null and orderId != ''">
AND orderId = #{orderId}
</if>
<if test="supId != null and supId != ''">
AND supId = #{supId}
</if>
</where>
</select>
</mapper>

Loading…
Cancel
Save