1.修复盘点单bug

master
x_z 2 years ago
parent 39baff10bf
commit ef4b457199

@ -1,11 +1,13 @@
package com.glxp.api.controller.inv; package com.glxp.api.controller.inv;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.inv.InvCountOrderDetailEntity; import com.glxp.api.entity.inv.InvCountOrderDetailEntity;
import com.glxp.api.req.inv.AddInvCountOrderSaveRequest;
import com.glxp.api.req.inv.FilterInvCountOrderDetailRequest; import com.glxp.api.req.inv.FilterInvCountOrderDetailRequest;
import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.inv.InvCountOrderDetailResponse; import com.glxp.api.res.inv.InvCountOrderDetailResponse;
@ -72,4 +74,18 @@ public class InvCountOrderDetailController {
return invCountOrderDetailService.addCountOrderDetail(invCountOrderDetail); return invCountOrderDetailService.addCountOrderDetail(invCountOrderDetail);
} }
/**
*
*
* @param addInvCountOrderSaveRequest
* @return
*/
@PostMapping("/inv/count/order/detail/batchAddDetail")
public BaseResponse batchAddDetail(@RequestBody AddInvCountOrderSaveRequest addInvCountOrderSaveRequest) {
if (null == addInvCountOrderSaveRequest || CollUtil.isEmpty(addInvCountOrderSaveRequest.getCountOrderDetailList())) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
return invCountOrderDetailService.batchAddDetail(addInvCountOrderSaveRequest.getOrderId(), addInvCountOrderSaveRequest.getCountOrderDetailList());
}
} }

@ -1,6 +1,7 @@
package com.glxp.api.req.inv; package com.glxp.api.req.inv;
import com.glxp.api.entity.inv.InvCountCodesEntity; import com.glxp.api.entity.inv.InvCountCodesEntity;
import com.glxp.api.entity.inv.InvCountOrderDetailEntity;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@ -25,4 +26,9 @@ public class AddInvCountOrderSaveRequest {
@NotEmpty(message = "盘点产品不能为空") @NotEmpty(message = "盘点产品不能为空")
private List<InvCountCodesEntity> countCodeList; private List<InvCountCodesEntity> countCodeList;
/**
*
*/
private List<InvCountOrderDetailEntity> countOrderDetailList;
} }

@ -37,4 +37,12 @@ public interface InvCountOrderDetailService {
*/ */
BaseResponse addCountOrderDetail(InvCountOrderDetailEntity invCountOrderDetail); BaseResponse addCountOrderDetail(InvCountOrderDetailEntity invCountOrderDetail);
/**
*
*
* @param orderId
* @param countOrderDetailList
* @return
*/
BaseResponse batchAddDetail(String orderId, List<InvCountOrderDetailEntity> countOrderDetailList);
} }

@ -14,6 +14,10 @@ import com.glxp.api.req.inv.FilterInvCountOrderDetailRequest;
import com.glxp.api.res.inv.InvCountOrderDetailResponse; import com.glxp.api.res.inv.InvCountOrderDetailResponse;
import com.glxp.api.service.inv.InvCountOrderDetailService; import com.glxp.api.service.inv.InvCountOrderDetailService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.session.ExecutorType;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.TransactionIsolationLevel;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -32,6 +36,8 @@ public class InvCountOrderDetailServiceImpl implements InvCountOrderDetailServic
private InvCountOrderDao invCountOrderDao; private InvCountOrderDao invCountOrderDao;
@Resource @Resource
private InvProductDao invProductDao; private InvProductDao invProductDao;
@Resource
private SqlSessionFactory sqlSessionFactory;
@Override @Override
public List<InvCountOrderDetailEntity> filterList(FilterInvCountOrderDetailRequest detailRequest) { public List<InvCountOrderDetailEntity> filterList(FilterInvCountOrderDetailRequest detailRequest) {
@ -78,4 +84,20 @@ public class InvCountOrderDetailServiceImpl implements InvCountOrderDetailServic
invCountOrderDetailDao.insert(invCountOrderDetail); invCountOrderDetailDao.insert(invCountOrderDetail);
return ResultVOUtils.success(); return ResultVOUtils.success();
} }
@Override
public BaseResponse batchAddDetail(String orderId, List<InvCountOrderDetailEntity> countOrderDetailList) {
InvCountOrderEntity invCountOrder = invCountOrderDao.selectByOrderId(orderId);
SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, TransactionIsolationLevel.READ_COMMITTED);
InvCountOrderDetailDao mapper = sqlSession.getMapper(InvCountOrderDetailDao.class);
for (InvCountOrderDetailEntity orderDetailEntity : countOrderDetailList) {
InvProductEntity invProductEntity = invProductDao.selectProductInfo(orderDetailEntity.getRelId(), orderDetailEntity.getBatchNo(), invCountOrder.getDeptCode(), invCountOrder.getInvCode(), invCountOrder.getInvSpaceCode());
orderDetailEntity.setInvNum(invProductEntity.getReCount());
orderDetailEntity.setCountNum(0);
mapper.insert(orderDetailEntity);
}
sqlSession.commit();
sqlSession.close();
return ResultVOUtils.success();
}
} }

@ -205,6 +205,7 @@
AND ipd.invSpaceCode = #{invSpaceCode} AND ipd.invSpaceCode = #{invSpaceCode}
</if> </if>
</where> </where>
group by ip.id
</select> </select>
<select id="getCountInvProduct" resultType="com.glxp.api.res.inv.InvProductResponse"> <select id="getCountInvProduct" resultType="com.glxp.api.res.inv.InvProductResponse">

Loading…
Cancel
Save