1.修复盘点bug

feature-order-fix
x_z 2 years ago
parent 76166a9628
commit d84b4ff437

@ -75,4 +75,14 @@ public interface InvSpaceDao {
* @return
*/
List<InvSpace> selectExist(InvSpace invSpace);
/**
*
*
* @param invStorageCode
* @param invWarehouseCode
* @param inSpaceCode
* @return
*/
List<InvSpace> selectByInvCode(@Param("invStorageCode") String invStorageCode, @Param("invWarehouseCode") String invWarehouseCode, @Param("invSpaceCode") String invSpaceCode);
}

@ -73,7 +73,7 @@ public interface InvCountOrderDetailDao {
* @param nameCode
* @return
*/
InvCountOrderDetail selectOrderDetail(@Param("orderIdFk") String orderIdFk, @Param("nameCode") String nameCode, @Param("batchNo") String batchNo);
InvCountOrderDetail selectOrderDetail(@Param("orderIdFk") String orderIdFk, @Param("nameCode") String nameCode, @Param("batchNo") String batchNo, @Param("produceDate") String produceDate, @Param("expireDate") String expireDate);
/**
*

@ -57,7 +57,7 @@ public class InvCountCodesServiceImpl implements InvCountCodesService {
}
UdiEntity udi = FilterUdiUtils.getUdi(list.get(0).getCode());
InvCountOrderDetail invCountOrderDetail = invCountOrderDetailDao.selectOrderDetail(list.get(0).getOrderIdFk(), udi.getUdi(), udi.getBatchNo());
InvCountOrderDetail invCountOrderDetail = invCountOrderDetailDao.selectOrderDetail(list.get(0).getOrderIdFk(), udi.getUdi(), udi.getBatchNo(), udi.getProduceDate(), udi.getExpireDate());
if (invCountOrderDetail.getCountNum() == 1) {
//条码数量为1删除此产品的盘点单据详情
invCountOrderDetailDao.deleteByPrimaryKey(invCountOrderDetail.getId());
@ -86,7 +86,7 @@ public class InvCountCodesServiceImpl implements InvCountCodesService {
//查询单据详情,单据详情添加
InvCountOrderDetail invCountOrderDetail = invCountOrderDetailDao.selectOrderDetail(invCountCodes.getOrderIdFk(), udi.getUdi(), udi.getBatchNo());
InvCountOrderDetail invCountOrderDetail = invCountOrderDetailDao.selectOrderDetail(invCountCodes.getOrderIdFk(), udi.getUdi(), udi.getBatchNo(), udi.getProduceDate(),udi.getExpireDate());
if (null == invCountOrderDetail) {
return ResultVOUtils.error(ResultEnum.DATA_NOT, "当前仓库或货位不存在此产品");
}

@ -297,6 +297,9 @@ public class InvCountOrderServiceImpl implements InvCountOrderService {
warehouseEntity.setFromCorp(order.getFromCorp());
warehouseEntity.setFromCorpId(order.getFromCorpId());
warehouseEntity.setCorpOrderId(order.getCorpOrderId());
//设置供应商信息
//invProductDetailDao.select
warehouseEntity.setSupId("");
});
orderDao.insertOrder(order);

@ -141,6 +141,21 @@ public class InvSpaceServiceImpl implements InvSpaceService {
* @return
*/
public String verifyExist(InvSpace invSpace) {
//先检查货位号是否重复
List<InvSpace> invSpaces = invSpaceDao.selectByInvCode(invSpace.getInvStorageCode(), invSpace.getInvWarehouseCode(), invSpace.getCode());
if (CollUtil.isNotEmpty(invSpaces)) {
//判断ID是否为空如果为空表示数据为新增货位是重复添加
if (null == invSpace.getId()) {
return "货位信息已存在";
}
//此分库下货位号重复判断ID是否与当前货位相同
for (InvSpace space : invSpaces) {
if (!space.getId().equals(invSpace.getId())) {
return "货位信息已存在";
}
}
}
List<InvSpace> list = invSpaceDao.selectExist(invSpace);
if (CollUtil.isNotEmpty(list)) {
if (null == invSpace.getId()) {

@ -288,7 +288,7 @@
s.type like concat('%', #{key}, '%'))
</if>
<if test="status != null">
AND s.status = #{status}
AND s.status = #{status}
</if>
</where>
</select>
@ -340,11 +340,14 @@
</select>
<select id="selectByWarehouseCode" resultMap="BaseResultMap">
select * from inv_space where invWarehouseCode = #{warehouseCode}
select *
from inv_space
where invWarehouseCode = #{warehouseCode}
</select>
<select id="selectExist" resultMap="BaseResultMap">
select * from inv_space
select *
from inv_space
<where>
<if test="invStorageCode != null and invStorageCode != ''">
AND invStorageCode = #{invStorageCode}
@ -360,4 +363,21 @@
</if>
</where>
</select>
<select id="selectByInvCode" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from inv_space
<where>
<if test="invStorageCode != null and invStorageCode != ''">
AND invStorageCode = #{invStorageCode}
</if>
<if test="invWarehouseCode != null and invWarehouseCode != ''">
AND invWarehouseCode = #{invWarehouseCode}
</if>
<if test="invSpaceCode != null and invSpaceCode != ''">
AND code = #{invSpaceCode}
</if>
</where>
</select>
</mapper>

@ -194,7 +194,7 @@
serialNo = #{serialNo,jdbcType=VARCHAR},
countNum = #{countNum,jdbcType=INTEGER},
invNum = #{invNum,jdbcType=INTEGER},
profitNum = #{productId,jdbcType=INTEGER},
profitNum = #{profitNum,jdbcType=INTEGER},
lossNum = #{lossNum,jdbcType=INTEGER},
`status` = #{status,jdbcType=INTEGER}
where id = #{id,jdbcType=INTEGER}
@ -334,6 +334,12 @@
<if test="batchNo != null and batchNo != ''">
AND batchNo = #{batchNo}
</if>
<if test="produceDate != null and produceDate != ''">
AND produceDate = #{produceDate}
</if>
<if test="expireDate != null and expireDate != ''">
AND expireDate = #{expireDate}
</if>
</where>
</select>

@ -391,6 +391,7 @@
left join inv_product on inv_product_detail.productIdFk = inv_product.relIdFk
and inv_product.invStorageCode = inv_product_detail.invStorageCode
and inv_product.invWarehouseCode = inv_product_detail.invWarehouseCode
AND IFNULL(inv_product.batchNo, 'empty') = IFNULL(inv_product_detail.batchNo, 'empty')
left join basic_udirel on inv_product_detail.productIdFk = basic_udirel.id
left join basic_products on basic_products.uuid = basic_udirel.uuid
<where>

Loading…
Cancel
Save