|
@@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
@@ -232,6 +233,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
@Transactional
|
|
@Transactional
|
|
|
public R<OrderVO> savePurchaseEnquiry(Order order) {
|
|
public R<OrderVO> savePurchaseEnquiry(Order order) {
|
|
|
Order purchaseEnquiry = baseMapper.selectById(order.getId());
|
|
Order purchaseEnquiry = baseMapper.selectById(order.getId());
|
|
|
|
|
+ if (StringUtils.isNotBlank(purchaseEnquiry.getIfEnquiry()) && purchaseEnquiry.getIfEnquiry().equals("已询价")){
|
|
|
|
|
+ throw new RuntimeException("已询价,请勿重复提交");
|
|
|
|
|
+ }
|
|
|
//获取系统编号
|
|
//获取系统编号
|
|
|
R billNo = serialClient.getBillNo(order.getBillType());
|
|
R billNo = serialClient.getBillNo(order.getBillType());
|
|
|
if (!billNo.isSuccess()){
|
|
if (!billNo.isSuccess()){
|
|
@@ -254,6 +258,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
.eq("tenant_id", SecureUtil.getTenantId()).eq("is_deleted", 0).orderByAsc("sort"));
|
|
.eq("tenant_id", SecureUtil.getTenantId()).eq("is_deleted", 0).orderByAsc("sort"));
|
|
|
if (CollectionUtils.isNotEmpty(list)){
|
|
if (CollectionUtils.isNotEmpty(list)){
|
|
|
list.stream().forEach(item ->{
|
|
list.stream().forEach(item ->{
|
|
|
|
|
+ item.setSrcId(item.getId());
|
|
|
item.setId(null);
|
|
item.setId(null);
|
|
|
item.setPid(purchaseEnquiry.getId());
|
|
item.setPid(purchaseEnquiry.getId());
|
|
|
item.setUpdateUser(SecureUtil.getUserId());
|
|
item.setUpdateUser(SecureUtil.getUserId());
|
|
@@ -262,6 +267,11 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
vo.setItemsVOList(list.stream().map(orderItemMapstructMapper::toVo).collect(Collectors.toList()));
|
|
vo.setItemsVOList(list.stream().map(orderItemMapstructMapper::toVo).collect(Collectors.toList()));
|
|
|
|
|
+ //修改原订单的信息
|
|
|
|
|
+ Order orderMessage = new Order();
|
|
|
|
|
+ orderMessage.setId(order.getId());
|
|
|
|
|
+ orderMessage.setIfEnquiry("已询价");
|
|
|
|
|
+ baseMapper.updateById(orderMessage);
|
|
|
return R.data(vo);
|
|
return R.data(vo);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -331,6 +341,14 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
|
|
+ submitDto.setUpdateTime(new Date());
|
|
|
|
|
+ submitDto.setUpdateUser(SecureUtil.getUserId());
|
|
|
|
|
+ baseMapper.updateById(submitDto);
|
|
|
|
|
+ //获取订单明细信息
|
|
|
|
|
+ List<OrderItems> orderItemsList = this.getOrderItems(submitDto.getId(),SecureUtil.getUserId());
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(orderItemsList)) {
|
|
|
|
|
+ submitDto.setItemsVOList(orderItemsList.stream().map(orderItemMapstructMapper::toVo).collect(Collectors.toList()));
|
|
|
|
|
+ }
|
|
|
return R.data(submitDto);
|
|
return R.data(submitDto);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -382,7 +400,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
//获取订单运费
|
|
//获取订单运费
|
|
|
List<OrderFreight> orderFreightList = orderFreightService.list(Wrappers.<OrderFreight>lambdaQuery().eq(OrderFreight::getPid, vo.getId())
|
|
List<OrderFreight> orderFreightList = orderFreightService.list(Wrappers.<OrderFreight>lambdaQuery().eq(OrderFreight::getPid, vo.getId())
|
|
|
.eq(OrderFreight::getTenantId, SecureUtil.getTenantId()).eq(OrderFreight::getIsDeleted, 0));
|
|
.eq(OrderFreight::getTenantId, SecureUtil.getTenantId()).eq(OrderFreight::getIsDeleted, 0));
|
|
|
- if (CollectionUtils.isNotEmpty(modifyList)) {
|
|
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(orderFreightList)) {
|
|
|
vo.setOrderFreightList(orderFreightList);
|
|
vo.setOrderFreightList(orderFreightList);
|
|
|
}
|
|
}
|
|
|
return R.data(vo);
|
|
return R.data(vo);
|
|
@@ -459,7 +477,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
@Override
|
|
@Override
|
|
|
public R<OrderVO> submit(Order order)
|
|
public R<OrderVO> submit(Order order)
|
|
|
{
|
|
{
|
|
|
- order.setOrderStatus("已确认");
|
|
|
|
|
|
|
+ order.setIfEnquiry("询价确认");
|
|
|
order.setUpdateUser(SecureUtil.getUserId());
|
|
order.setUpdateUser(SecureUtil.getUserId());
|
|
|
order.setUpdateTime(new Date());
|
|
order.setUpdateTime(new Date());
|
|
|
baseMapper.updateById(order);
|
|
baseMapper.updateById(order);
|
|
@@ -476,6 +494,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
vo.setItemsVOList(list.stream().map(orderItemMapstructMapper::toVo).collect(Collectors.toList()));
|
|
vo.setItemsVOList(list.stream().map(orderItemMapstructMapper::toVo).collect(Collectors.toList()));
|
|
|
|
|
+ vo.setOrderItemsList(list);
|
|
|
return R.data(vo);
|
|
return R.data(vo);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -486,6 +505,57 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
|
|
+ public R<OrderSubmitDto> commit(OrderSubmitDto submitDto) {
|
|
|
|
|
+ submitDto.setIfShipping("船务确认");
|
|
|
|
|
+ submitDto.setUpdateUser(SecureUtil.getUserId());
|
|
|
|
|
+ submitDto.setUpdateTime(new Date());
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(submitDto.getOrderFeesList())){
|
|
|
|
|
+ submitDto.getOrderFeesList().stream().forEach(item ->{
|
|
|
|
|
+ item.setTenantId(SecureUtil.getTenantId());
|
|
|
|
|
+ if (item.getId() == null){
|
|
|
|
|
+ item.setCreateUser(SecureUtil.getUserId());
|
|
|
|
|
+ item.setCreateTime(new Date());
|
|
|
|
|
+ item.setPid(submitDto.getId());
|
|
|
|
|
+ orderFeesService.save(item);
|
|
|
|
|
+ }else {
|
|
|
|
|
+ item.setUpdateUser(SecureUtil.getUserId());
|
|
|
|
|
+ item.setUpdateTime(new Date());
|
|
|
|
|
+ orderFeesService.updateById(item);
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ }
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(submitDto.getOrderFreightList())){
|
|
|
|
|
+ submitDto.getOrderFreightList().stream().forEach(item ->{
|
|
|
|
|
+ item.setTenantId(SecureUtil.getTenantId());
|
|
|
|
|
+ if (item.getId() == null){
|
|
|
|
|
+ item.setCreateUser(SecureUtil.getUserId());
|
|
|
|
|
+ item.setCreateTime(new Date());
|
|
|
|
|
+ item.setPid(submitDto.getId());
|
|
|
|
|
+ orderFreightService.save(item);
|
|
|
|
|
+ }else {
|
|
|
|
|
+ item.setUpdateUser(SecureUtil.getUserId());
|
|
|
|
|
+ item.setUpdateTime(new Date());
|
|
|
|
|
+ orderFreightService.updateById(item);
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ }
|
|
|
|
|
+ //获取重点推荐的运费
|
|
|
|
|
+ List<OrderFreight> list = orderFreightService.list(new QueryWrapper<OrderFreight>().eq("pid", submitDto.getId()).eq("is_deleted", 0).eq("priority_referrer", 1)
|
|
|
|
|
+ .eq("tenant_id", SecureUtil.getTenantId()));
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(list)){
|
|
|
|
|
+ BigDecimal reduce = list.stream().map(OrderFreight::getOceanFreight).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+ submitDto.setReferenceOceanFreight(reduce);
|
|
|
|
|
+ }
|
|
|
|
|
+ baseMapper.updateById(submitDto);//更新原询价单信息
|
|
|
|
|
+ //获取订单明细信息
|
|
|
|
|
+ List<OrderItems> orderItemsList = this.getOrderItems(submitDto.getId(),SecureUtil.getUserId());
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(orderItemsList)) {
|
|
|
|
|
+ submitDto.setItemsVOList(orderItemsList.stream().map(orderItemMapstructMapper::toVo).collect(Collectors.toList()));
|
|
|
|
|
+ }
|
|
|
|
|
+ return R.data(submitDto);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
public R<OrderSubmitDto> savePurchase(OrderSubmitDto submitDto) {
|
|
public R<OrderSubmitDto> savePurchase(OrderSubmitDto submitDto) {
|
|
|
if (submitDto.getId()== null){
|
|
if (submitDto.getId()== null){
|
|
|
submitDto.setCreateUser(SecureUtil.getUserId());
|
|
submitDto.setCreateUser(SecureUtil.getUserId());
|