产品申购添加领用单引入

master
郑明梁 2 years ago
parent ac1839b825
commit 176f808bca

@ -12,21 +12,29 @@ import com.glxp.api.constant.Constant;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.auth.AuthAdmin;
import com.glxp.api.entity.auth.InvWarehouseEntity;
import com.glxp.api.entity.basic.UdiProductEntity;
import com.glxp.api.entity.inout.PurReceiveDetailEntity;
import com.glxp.api.entity.inout.PurReceiveEntity;
import com.glxp.api.entity.purchase.PurApplyDetailEntity;
import com.glxp.api.entity.purchase.PurOrderDetailEntity;
import com.glxp.api.entity.purchase.PurPlanDetailEntity;
import com.glxp.api.req.inout.AddReceiveDetailRequest;
import com.glxp.api.req.inout.FilterReceiveDetailRequest;
import com.glxp.api.req.inout.FilterReceiveRequest;
import com.glxp.api.req.inout.UpdateReceiveDetailRequest;
import com.glxp.api.req.purchase.*;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.inout.ReceiveDetailResponse;
import com.glxp.api.res.inout.ReceiveResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.auth.InvWarehouseService;
import com.glxp.api.service.basic.UdiProductService;
import com.glxp.api.service.inout.ReceiveService;
import com.glxp.api.service.inout.ReceivedetailService;
import com.glxp.api.service.purchase.PurApplyDetailService;
import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.OrderNoTypeBean;
import org.springframework.beans.BeanUtils;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@ -34,8 +42,10 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@RestController
public class PurOrderReceiveController extends BaseController {
@ -49,6 +59,10 @@ public class PurOrderReceiveController extends BaseController {
CustomerService customerService;
@Resource
GennerOrderUtils gennerOrderUtils;
@Resource
PurApplyDetailService purApplyDetailService;
@Resource
UdiProductService udiProductService;
@AuthRuleAnnotation("")
@PostMapping("/udiwms/thrsys/order/insertWeb")
@ -215,4 +229,64 @@ public class PurOrderReceiveController extends BaseController {
return ResultVOUtils.success("成功");
}
/**
*
*/
@PostMapping("/receive/order/addOrderDetailAndApply")
public BaseResponse addOrderDetailAndApply(@RequestBody purReceiveRequest purReceiveRequest) {
if (purReceiveRequest.getOrderId() == null || purReceiveRequest.getId() == null) {
return ResultVOUtils.error(999,"参数错误!");
}
//查询领用单详情
List<PurReceiveDetailEntity> purPlanDetailEntityList=receivedetailService.selectByOrderId(purReceiveRequest.getOrderId());
//使用stream拷贝list
List<PurApplyDetailEntity> purOrderDetailEntityList = purPlanDetailEntityList.stream()
.map(e-> {
PurApplyDetailEntity d = new PurApplyDetailEntity();
d.setProductId(e.getRelIdFk().intValue());
UdiProductEntity udiProductEntity=udiProductService.findByNameCode(e.getNameCode());
d.setProductName(udiProductEntity.getCpmctymc());
d.setCount(e.getCount());
d.setSupId(e.getSupId());
d.setZczbhhzbapzbh(udiProductEntity.getZczbhhzbapzbh());
return d;
})
.collect(Collectors.toList());
for (PurApplyDetailEntity obj:purOrderDetailEntityList){
obj.setOrderIdFk(purReceiveRequest.getId()+"");
}
//获取详情表信息
List<PurApplyDetailEntity> purOrderDetailEntities=purApplyDetailService.findByOrderId(purReceiveRequest.getId());
List<Long> ids=new ArrayList<>();
for (PurApplyDetailEntity obj:purOrderDetailEntities){
for (PurApplyDetailEntity obj1:purOrderDetailEntityList){
if(obj.getProductId().equals(obj1.getProductId())){
//获取存在在详情表和申购单里面一样的产品
ids.add(obj.getId().longValue());
break;
}
}
}
//删除存在的产品
if(ids.size()>0){
purApplyDetailService.deleteByIds(ids);
}
boolean falg= purApplyDetailService.insertPurApplyDetailEntity(purOrderDetailEntityList);
if(falg){
//查询申购单
return ResultVOUtils.success(purReceiveRequest.getId());
}else{
return ResultVOUtils.success("添加失败");
}
}
}

@ -3,6 +3,7 @@ package com.glxp.api.dao.purchase;
import com.glxp.api.entity.purchase.PurApplyDetailEntity;
import com.glxp.api.entity.purchase.PurOrderDetailEntity;
import com.glxp.api.req.purchase.PurApplyDetailRequest;
import com.glxp.api.res.purchase.PurOrderDetailResponse;
import org.apache.ibatis.annotations.Mapper;
@ -25,4 +26,6 @@ public interface PurApplyDetailDao {
Boolean deleteByOrderId(@Param("orderIdFk") String orderIdFk);
boolean insertPurApplyDetailEntity(@Param("datas") List<PurApplyDetailEntity> purApplyDetailEntityList);
}

@ -0,0 +1,10 @@
package com.glxp.api.req.purchase;
import lombok.Data;
@Data
public class purReceiveRequest {
private String id;
private String orderId;
}

@ -3,6 +3,7 @@ package com.glxp.api.service.purchase;
import com.glxp.api.entity.purchase.PurApplyDetailEntity;
import com.glxp.api.entity.purchase.PurOrderDetailEntity;
import com.glxp.api.req.purchase.PurApplyDetailRequest;
import com.glxp.api.res.purchase.PurOrderDetailResponse;
@ -12,7 +13,7 @@ public interface PurApplyDetailService {
List<PurApplyDetailEntity> queryPageList(PurApplyDetailRequest purApplyRequest);
public List<PurApplyDetailEntity> findByOrderId(String orderId);
List<PurApplyDetailEntity> findByOrderId(String orderId);
List<PurOrderDetailResponse> joinQueryList(PurApplyDetailRequest purApplyRequest);
@ -27,4 +28,6 @@ public interface PurApplyDetailService {
List<PurApplyDetailEntity> selectPurApplyDetailList(PurApplyDetailRequest purApplyRequest);
boolean insertPurApplyDetailEntity(List<PurApplyDetailEntity> purApplyDetailEntityList);
}

@ -82,5 +82,10 @@ public class PurApplyDetailImplService implements PurApplyDetailService {
return purApplyDetailDao.queryPageList(purApplyRequest);
}
@Override
public boolean insertPurApplyDetailEntity(List<PurApplyDetailEntity> purApplyDetailEntityList) {
return purApplyDetailDao.insertPurApplyDetailEntity(purApplyDetailEntityList);
}
}

@ -96,4 +96,21 @@
WHERE id = #{id}
</update>
<insert id="insertPurApplyDetailEntity" keyProperty="id" parameterType="com.glxp.api.entity.purchase.PurApplyDetailEntity">
REPLACE INTO pur_apply_detail
( orderIdFk,productId,productName,count,supId,zczbhhzbapzbh) values
<foreach collection="datas" item="item" index="index" separator=",">
(
#{item.orderIdFk},
#{item.productId},
#{item.productName},
#{item.count},
#{item.supId},
#{item.zczbhhzbapzbh}
)
</foreach>
</insert>
</mapper>
Loading…
Cancel
Save