liujie
2 天以前 84e8c13e1885892631e52f71508150c0ff1ee55f
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpProcurementController.java
@@ -53,11 +53,13 @@
    private final TErpGoodsService erpGoodsService;
    private final TErpClinicWarehousingService erpClinicWarehousingService;
    private final TErpClinicWarehousingBatchService erpClinicWarehousingBatchService;
    private final TCrmSupplierService crmSupplierService;
    @Autowired
    public TErpProcurementController(TErpProcurementService erpProcurementService, TokenService tokenService,TCrmClinicService crmClinicService,TErpProcurementGoodsService erpProcurementGoodsService
    , TErpGoodsService erpGoodsService,TErpClinicWarehousingService erpClinicWarehousingService,TErpClinicWarehousingBatchService erpClinicWarehousingBatchService) {
    , TErpGoodsService erpGoodsService,TErpClinicWarehousingService erpClinicWarehousingService,TErpClinicWarehousingBatchService erpClinicWarehousingBatchService,
                                     TCrmSupplierService crmSupplierService) {
        this.erpProcurementService = erpProcurementService;
        this.tokenService = tokenService;
        this.crmClinicService = crmClinicService;
@@ -65,6 +67,7 @@
        this.erpGoodsService = erpGoodsService;
        this.erpClinicWarehousingService = erpClinicWarehousingService;
        this.erpClinicWarehousingBatchService = erpClinicWarehousingBatchService;
        this.crmSupplierService = crmSupplierService;
    }
@@ -175,33 +178,37 @@
        List<String> collect = dto.getList().stream().map(UpdateStatusProcurementDto::getId).collect(Collectors.toList());
        List<TErpProcurementGoods> list = erpProcurementGoodsService.list(new LambdaQueryWrapper<TErpProcurementGoods>().in(TErpProcurementGoods::getId, collect));
        TErpClinicWarehousing tErpClinicWarehousing = new TErpClinicWarehousing();
        tErpClinicWarehousing.setClinicId(erpProcurement.getClinicId());
        tErpClinicWarehousing.setProcurementId(erpProcurement.getId());
//        tErpClinicWarehousing.setGoodsId(erpGoods.getId());
//        tErpClinicWarehousing.setGoodsName(erpGoods.getGoodsName());
        TCrmSupplier byId = crmSupplierService.getById(erpProcurement.getSupplierId());
        tErpClinicWarehousing.setSupplierName(byId.getSupplierName());
//        tErpClinicWarehousing.setQuasiNumber(erpGoods.getQuasiNumber());
//        tErpClinicWarehousing.setSalesAmount(tErpProcurementGoods.getSalesAmount());
//        tErpClinicWarehousing.setPurchaseCount(updateStatusProcurementDto.getPurchaseCount());
        tErpClinicWarehousing.setTotalPrice(erpProcurement.getPayMoney());
//        tErpClinicWarehousing.setUnitAmount(tErpProcurementGoods.getSalesAmount());
        tErpClinicWarehousing.setWarehousingType(1);
        tErpClinicWarehousing.setType(1);
        tErpClinicWarehousing.setWarehouseNo("G"+ DateUtils.dateTimeNow());
        erpClinicWarehousingService.save(tErpClinicWarehousing);
        // goodsId分组
        for (UpdateStatusProcurementDto updateStatusProcurementDto : dto.getList()) {
            TErpProcurementGoods tErpProcurementGoods = list.stream().filter(t -> t.getId().equals(updateStatusProcurementDto.getId())).findFirst().get();
            TErpGoods erpGoods = erpGoodsService.getById(tErpProcurementGoods.getGoodsId());
            TErpClinicWarehousing tErpClinicWarehousing = new TErpClinicWarehousing();
            tErpClinicWarehousing.setClinicId(erpProcurement.getClinicId());
            tErpClinicWarehousing.setProcurementId(erpProcurement.getId());
            tErpClinicWarehousing.setGoodsId(erpGoods.getId());
            tErpClinicWarehousing.setGoodsName(erpGoods.getGoodsName());
            tErpClinicWarehousing.setSupplierName(erpGoods.getSupplierName());
            tErpClinicWarehousing.setQuasiNumber(erpGoods.getQuasiNumber());
            tErpClinicWarehousing.setSalesAmount(tErpProcurementGoods.getSalesAmount());
            tErpClinicWarehousing.setPurchaseCount(updateStatusProcurementDto.getPurchaseCount());
            tErpClinicWarehousing.setTotalPrice(tErpProcurementGoods.getSalesAmount().multiply(new BigDecimal(updateStatusProcurementDto.getPurchaseCount())));
            tErpClinicWarehousing.setUnitAmount(tErpProcurementGoods.getSalesAmount());
            tErpClinicWarehousing.setWarehousingType(1);
            tErpClinicWarehousing.setWarehouseNo("G"+ DateUtils.dateTimeNow());
            erpClinicWarehousingService.save(tErpClinicWarehousing);
            TErpClinicWarehousingBatch tErpClinicWarehousingGoods = new TErpClinicWarehousingBatch();
            tErpClinicWarehousingGoods.setWarehousingId(tErpClinicWarehousing.getId());
            tErpClinicWarehousingGoods.setWarehousingNumber(tErpClinicWarehousing.getPurchaseCount());
            tErpClinicWarehousingGoods.setWarehousingNumber(updateStatusProcurementDto.getPurchaseCount());
            tErpClinicWarehousingGoods.setBatchNumber(updateStatusProcurementDto.getBatchNumber());
            tErpClinicWarehousingGoods.setProductionDate(updateStatusProcurementDto.getProductionDate());
            tErpClinicWarehousingGoods.setExpiryDate(updateStatusProcurementDto.getExpiryDate());
            tErpClinicWarehousingGoods.setGoodsId(erpGoods.getId());
            tErpClinicWarehousingGoods.setGoodsName(erpGoods.getGoodsName());
            tErpClinicWarehousingGoods.setQuasiNumber(erpGoods.getQuasiNumber());
            tErpClinicWarehousingGoods.setSalesAmount(tErpProcurementGoods.getSalesAmount());
            erpClinicWarehousingBatchService.save(tErpClinicWarehousingGoods);
        }