|
@@ -8,12 +8,16 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.fjhx.common.utils.Assert;
|
|
import com.fjhx.common.utils.Assert;
|
|
import com.fjhx.item.entity.product.po.ProductInfo;
|
|
import com.fjhx.item.entity.product.po.ProductInfo;
|
|
import com.fjhx.item.service.product.ProductInfoService;
|
|
import com.fjhx.item.service.product.ProductInfoService;
|
|
|
|
+import com.fjhx.wms.entity.arrival.po.ArrivalStockRecords;
|
|
|
|
+import com.fjhx.wms.entity.arrival.po.ArrivalStockRecordsDetails;
|
|
import com.fjhx.wms.entity.stock.dto.StockJournalDetailsDto;
|
|
import com.fjhx.wms.entity.stock.dto.StockJournalDetailsDto;
|
|
import com.fjhx.wms.entity.stock.dto.StockJournalSelectDto;
|
|
import com.fjhx.wms.entity.stock.dto.StockJournalSelectDto;
|
|
import com.fjhx.wms.entity.stock.po.*;
|
|
import com.fjhx.wms.entity.stock.po.*;
|
|
import com.fjhx.wms.entity.stock.vo.StockJournalDetailsVo;
|
|
import com.fjhx.wms.entity.stock.vo.StockJournalDetailsVo;
|
|
import com.fjhx.wms.entity.stock.vo.StockWaitVo;
|
|
import com.fjhx.wms.entity.stock.vo.StockWaitVo;
|
|
import com.fjhx.wms.mapper.stock.StockJournalDetailsMapper;
|
|
import com.fjhx.wms.mapper.stock.StockJournalDetailsMapper;
|
|
|
|
+import com.fjhx.wms.service.arrival.ArrivalStockRecordsDetailsService;
|
|
|
|
+import com.fjhx.wms.service.arrival.ArrivalStockRecordsService;
|
|
import com.fjhx.wms.service.stock.*;
|
|
import com.fjhx.wms.service.stock.*;
|
|
import com.ruoyi.common.exception.ServiceException;
|
|
import com.ruoyi.common.exception.ServiceException;
|
|
import com.ruoyi.common.utils.wrapper.IWrapper;
|
|
import com.ruoyi.common.utils.wrapper.IWrapper;
|
|
@@ -50,6 +54,10 @@ public class StockJournalDetailsServiceImpl extends ServiceImpl<StockJournalDeta
|
|
private StockJournalDetailsEditRecordService stockJournalDetailsEditRecordService;
|
|
private StockJournalDetailsEditRecordService stockJournalDetailsEditRecordService;
|
|
@Autowired
|
|
@Autowired
|
|
private StockWaitDetailsService stockWaitDetailsService;
|
|
private StockWaitDetailsService stockWaitDetailsService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private ArrivalStockRecordsDetailsService arrivalStockRecordsDetailsService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private ArrivalStockRecordsService arrivalStockRecordsService;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public Page<StockJournalDetailsVo> getPage(StockJournalSelectDto dto) {
|
|
public Page<StockJournalDetailsVo> getPage(StockJournalSelectDto dto) {
|
|
@@ -183,19 +191,21 @@ public class StockJournalDetailsServiceImpl extends ServiceImpl<StockJournalDeta
|
|
throw new ServiceException("操作失败请重试");
|
|
throw new ServiceException("操作失败请重试");
|
|
}
|
|
}
|
|
//修改待出入库数据
|
|
//修改待出入库数据
|
|
- Long businessDetailsId = stockJournalDetails.getBusinessDetailsId();
|
|
|
|
- Assert.notEmpty(businessDetailsId,"无法关联入库信息,操作失败");
|
|
|
|
- StockWaitDetails stockWaitDetails = stockWaitDetailsService.getById(businessDetailsId);
|
|
|
|
- Assert.notEmpty(stockWaitDetails,"无法查询到关联待入库信息,操作失败");
|
|
|
|
- StockWait stockWait = stockWaitService.getById(stockWaitDetails.getStockWaitId());
|
|
|
|
|
|
+ Long stockWaitDetailsId = stockJournalDetails.getBusinessDetailsId();
|
|
|
|
+ Assert.notEmpty(stockWaitDetailsId,"无法关联入库信息,操作失败");
|
|
|
|
+
|
|
|
|
|
|
boolean update1 = stockWaitDetailsService.update(q -> q
|
|
boolean update1 = stockWaitDetailsService.update(q -> q
|
|
- .eq(StockWaitDetails::getId, stockWaitDetails.getId())
|
|
|
|
|
|
+ .eq(StockWaitDetails::getId, stockWaitDetailsId)
|
|
.setSql("receipt_quantity = receipt_quantity+"+subtract)
|
|
.setSql("receipt_quantity = receipt_quantity+"+subtract)
|
|
);
|
|
);
|
|
if (!update1) {
|
|
if (!update1) {
|
|
throw new ServiceException("操作失败请重试");
|
|
throw new ServiceException("操作失败请重试");
|
|
}
|
|
}
|
|
|
|
+ //修改待入库状态
|
|
|
|
+ StockWaitDetails stockWaitDetails = stockWaitDetailsService.getById(stockWaitDetailsId);
|
|
|
|
+ Assert.notEmpty(stockWaitDetails,"无法查询到关联待入库信息,操作失败");
|
|
|
|
+ StockWait stockWait = stockWaitService.getById(stockWaitDetails.getStockWaitId());
|
|
|
|
|
|
if (stockWait.getStatus()!=3) {
|
|
if (stockWait.getStatus()!=3) {
|
|
if (stockWaitDetails.getQuantity().compareTo(stockWaitDetails.getReceiptQuantity()) <= 0) {
|
|
if (stockWaitDetails.getQuantity().compareTo(stockWaitDetails.getReceiptQuantity()) <= 0) {
|
|
@@ -206,9 +216,32 @@ public class StockJournalDetailsServiceImpl extends ServiceImpl<StockJournalDeta
|
|
stockWait.setStatus(1);
|
|
stockWait.setStatus(1);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-
|
|
|
|
stockWaitService.updateById(stockWait);
|
|
stockWaitService.updateById(stockWait);
|
|
|
|
|
|
|
|
+ //修改待质检数量
|
|
|
|
+ boolean update2 = arrivalStockRecordsDetailsService.update(q -> q
|
|
|
|
+ .eq(ArrivalStockRecordsDetails::getBusinessDetailsId, stockWaitDetailsId)
|
|
|
|
+ .setSql("quantity = quantity+"+subtract)
|
|
|
|
+ );
|
|
|
|
+ if (!update2) {
|
|
|
|
+ throw new ServiceException("操作失败请重试");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //修改质检状态
|
|
|
|
+ ArrivalStockRecordsDetails arrivalStockRecordsDetails = arrivalStockRecordsDetailsService.getOne(q -> q
|
|
|
|
+ .eq(ArrivalStockRecordsDetails::getBusinessDetailsId, stockWaitDetailsId)
|
|
|
|
+ );
|
|
|
|
+ ArrivalStockRecords arrivalStockRecords = arrivalStockRecordsService.getById(arrivalStockRecordsDetails.getArrivalStockRecordsId());
|
|
|
|
+ if (arrivalStockRecordsDetails.getQuantity().compareTo(arrivalStockRecordsDetails.getQualityQuantity()) <= 0) {
|
|
|
|
+ //完全质检
|
|
|
|
+ arrivalStockRecords.setQualityStatus(2);
|
|
|
|
+ } else {
|
|
|
|
+ //部分质检
|
|
|
|
+ arrivalStockRecords.setQualityStatus(1);
|
|
|
|
+ }
|
|
|
|
+ arrivalStockRecordsService.updateById(arrivalStockRecords);
|
|
|
|
+
|
|
|
|
+
|
|
stockJournalDetails.setQuantity(dto.getQuantity());
|
|
stockJournalDetails.setQuantity(dto.getQuantity());
|
|
this.updateById(stockJournalDetails);
|
|
this.updateById(stockJournalDetails);
|
|
}
|
|
}
|