|
|
@@ -22,6 +22,7 @@ import com.trade.purchase.order.enums.OrderTypeEnum;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import org.aspectj.weaver.ast.Or;
|
|
|
import org.springblade.client.entity.GoodsDesc;
|
|
|
+import org.springblade.client.entity.GoodsType;
|
|
|
import org.springblade.client.feign.IGoodsDescClient;
|
|
|
import org.springblade.client.vo.GoodsDescVO;
|
|
|
import org.springblade.core.secure.utils.SecureUtil;
|
|
|
@@ -31,16 +32,20 @@ import org.springblade.mocha.feign.IPriceItemClient;
|
|
|
import org.springblade.purchase.sales.entity.Order;
|
|
|
import org.springblade.purchase.sales.entity.OrderItems;
|
|
|
import org.springblade.purchase.sales.entity.OrderParts;
|
|
|
+import org.springblade.purchase.sales.excel.OrderItemsExcel;
|
|
|
import org.springblade.purchase.sales.mapper.OrderPartsMapper;
|
|
|
import org.springblade.purchase.sales.vo.OrderItemsVO;
|
|
|
import org.springblade.purchase.sales.mapper.OrderItemsMapper;
|
|
|
import org.springblade.purchase.sales.service.IOrderItemsService;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import org.springblade.stock.entity.StockGoods;
|
|
|
+import org.springblade.stock.feign.IStockGoodsClient;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.math.BigDecimal;
|
|
|
+import java.math.BigInteger;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
@@ -56,6 +61,7 @@ import java.util.List;
|
|
|
public class OrderItemsServiceImpl extends ServiceImpl<OrderItemsMapper, OrderItems> implements IOrderItemsService {
|
|
|
private IGoodsDescClient goodsDescClient;//获取商品信息
|
|
|
private IPriceItemClient priceItemClient;//价格管理对外接口
|
|
|
+ private IStockGoodsClient stockGoodsClient;//库存
|
|
|
|
|
|
@Resource
|
|
|
private OrderPartsMapper orderPartsMapper;
|
|
|
@@ -69,6 +75,38 @@ public class OrderItemsServiceImpl extends ServiceImpl<OrderItemsMapper, OrderIt
|
|
|
return page.setRecords( baseMapper.orderItemsList(page,orderNo,corpId,orderStartDate,orderEndDate,tradeType,billType,tenantId));
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public R<List<OrderItems>> importUser(List<OrderItemsExcel> data, Boolean isCovered) {
|
|
|
+ List<OrderItems> list = new ArrayList<>();
|
|
|
+ data.stream().forEach(item ->{
|
|
|
+ R<GoodsDesc> goods = goodsDescClient.GoodsByCode(item.getCode());
|
|
|
+ if (goods.isSuccess() && goods.getData() != null){
|
|
|
+ OrderItems orderItems = new OrderItems();
|
|
|
+ orderItems.setCode(item.getCode());
|
|
|
+ orderItems.setOrderQuantity(item.getOrderQuantity());
|
|
|
+ orderItems.setCname(goods.getData().getCname());//商品名称
|
|
|
+ orderItems.setItemId(goods.getData().getId());//商品id
|
|
|
+ orderItems.setTypeno(goods.getData().getTypeno());//商品规格
|
|
|
+ orderItems.setPriceCategory("一般");//价格类别
|
|
|
+ orderItems.setCorpId(goods.getData().getCorpId());//供应id
|
|
|
+ orderItems.setCorpName(goods.getData().getCorpName());//供应商名称
|
|
|
+ GoodsType goodsType = goodsDescClient.goodTypeId(goods.getData().getId());
|
|
|
+ orderItems.setPriceCategory(goodsType.getCname());//商品类别名称
|
|
|
+ StockGoods stockGoods = new StockGoods();
|
|
|
+ stockGoods.setGoodsId(goods.getData().getId());
|
|
|
+ stockGoods.setItemType(goods.getData().getTypeno());
|
|
|
+ R<?> stock = stockGoodsClient.getStock(stockGoods);
|
|
|
+ if (stock.isSuccess()){
|
|
|
+ orderItems.setStorageQuantity((BigDecimal) stock.getData());
|
|
|
+ }else {
|
|
|
+ orderItems.setStorageQuantity(new BigDecimal(BigInteger.ZERO));
|
|
|
+ }
|
|
|
+ list.add(orderItems);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ return R.data(list);
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 保存订单明细信息
|
|
|
* @param list 订单明细
|