Commit 595428cd89e1f2779a96b55ea9dc0dc48fc0ee4d

Authored by tongzhonghao
1 parent 7d58db88

修复 历史单据和出/入单据 时间不一致问题。

src/main/java/com/huaheng/pc/monitor/job/task/RyTask.java
... ... @@ -37,12 +37,14 @@ import com.huaheng.pc.receipt.receiptDetail.domain.ReceiptDetail;
37 37 import com.huaheng.pc.receipt.receiptDetail.service.ReceiptDetailService;
38 38 import com.huaheng.pc.receipt.receiptHeader.domain.ReceiptHeader;
39 39 import com.huaheng.pc.receipt.receiptHeader.service.ReceiptHeaderService;
  40 +import com.huaheng.pc.receipt.receiptHeaderHistory.domain.ReceiptHeaderHistory;
40 41 import com.huaheng.pc.receipt.receiptHeaderHistory.service.ReceiptHeaderHistoryService;
41 42 import com.huaheng.pc.shipment.shipmentContainerHeader.service.ShipmentContainerHeaderService;
42 43 import com.huaheng.pc.shipment.shipmentDetail.domain.ShipmentDetail;
43 44 import com.huaheng.pc.shipment.shipmentDetail.service.ShipmentDetailService;
44 45 import com.huaheng.pc.shipment.shipmentHeader.domain.ShipmentHeader;
45 46 import com.huaheng.pc.shipment.shipmentHeader.service.ShipmentHeaderService;
  47 +import com.huaheng.pc.shipment.shipmentHeaderHistory.domain.ShipmentHeaderHistory;
46 48 import com.huaheng.pc.shipment.shipmentHeaderHistory.service.ShipmentHeaderHistoryService;
47 49 import com.huaheng.pc.system.user.service.IUserService;
48 50 import com.huaheng.pc.task.taskHeader.domain.TaskHeader;
... ... @@ -53,6 +55,7 @@ import org.apache.commons.collections.MapUtils;
53 55 import org.springframework.stereotype.Component;
54 56  
55 57 import javax.annotation.Resource;
  58 +import java.math.BigDecimal;
56 59 import java.util.*;
57 60 import java.util.stream.Collectors;
58 61  
... ... @@ -464,5 +467,69 @@ public class RyTask extends BaseController {
464 467 }
465 468 }
466 469  
  470 + public void restoreHistoryDate(){
  471 + receiptRestore();
  472 + shipmentRestore();
  473 + }
  474 +
  475 + public void receiptRestore(){
  476 + LambdaQueryWrapper<ReceiptHeaderHistory> query = Wrappers.lambdaQuery();
  477 + query.eq(ReceiptHeaderHistory::getVersion,0)
  478 + .orderByAsc(ReceiptHeaderHistory::getId)
  479 + .last("LIMIT 20");
  480 + List<ReceiptHeaderHistory> list = receiptHeaderHistoryService.list(query);
  481 +
  482 + Set<String> codes = list.stream().map(ReceiptHeaderHistory::getCode).collect(Collectors.toSet());
  483 +
  484 + LambdaQueryWrapper<ReceiptHeader> query1 = Wrappers.lambdaQuery();
  485 + query1.in(ReceiptHeader::getCode,codes);
  486 + List<ReceiptHeader> receiptHeaders = receiptHeaderService.list(query1);
  487 +
  488 + HashMap<String,ReceiptHeader> map = new HashMap<>();
  489 + for (ReceiptHeader receiptHeader : receiptHeaders) {
  490 + map.put(receiptHeader.getCode(),receiptHeader);
  491 + }
  492 + List<ReceiptHeaderHistory> histories = new ArrayList<>();
  493 + for (ReceiptHeaderHistory receiptHeaderHistory : list) {
  494 + ReceiptHeader receiptHeader = map.get(receiptHeaderHistory.getCode());
  495 + if(receiptHeader !=null){
  496 + receiptHeaderHistory.setLastUpdated(receiptHeader.getLastUpdated());
  497 + receiptHeaderHistory.setCreated(receiptHeader.getCreated());
  498 + receiptHeaderHistory.setVersion(BigDecimal.ONE.intValue());
  499 + histories.add(receiptHeaderHistory);
  500 + }
  501 + }
  502 + receiptHeaderHistoryService.updateBatchById(histories);
  503 + }
  504 +
  505 + public void shipmentRestore(){
  506 + LambdaQueryWrapper<ShipmentHeaderHistory> query = Wrappers.lambdaQuery();
  507 + query.eq(ShipmentHeaderHistory::getVersion,0)
  508 + .orderByAsc(ShipmentHeaderHistory::getId)
  509 + .last("LIMIT 20");
  510 + List<ShipmentHeaderHistory> shipmentHeaderHistorys = shipmentHeaderHistoryService.list(query);
  511 +
  512 + Set<String> codes = shipmentHeaderHistorys.stream().map(ShipmentHeaderHistory::getCode).collect(Collectors.toSet());
  513 +
  514 + LambdaQueryWrapper<ShipmentHeader> query1 = Wrappers.lambdaQuery();
  515 + query1.in(ShipmentHeader::getCode,codes);
  516 + List<ShipmentHeader> ShipmentHeaders = shipmentHeaderService.list(query1);
  517 +
  518 + HashMap<String,ShipmentHeader> map = new HashMap<>();
  519 + for (ShipmentHeader shipmentHeader : ShipmentHeaders) {
  520 + map.put(shipmentHeader.getCode(),shipmentHeader);
  521 + }
  522 + List<ShipmentHeaderHistory> histories = new ArrayList<>();
  523 + for (ShipmentHeaderHistory shipmentHeaderHistory : shipmentHeaderHistorys) {
  524 + ShipmentHeader shipmentHeader = map.get(shipmentHeaderHistory.getCode());
  525 + if(shipmentHeader !=null){
  526 + shipmentHeaderHistory.setLastUpdated(shipmentHeader.getLastUpdated());
  527 + shipmentHeaderHistory.setCreated(shipmentHeader.getCreated());
  528 + shipmentHeaderHistory.setVersion(BigDecimal.ONE.intValue());
  529 + histories.add(shipmentHeaderHistory);
  530 + }
  531 + }
  532 + shipmentHeaderHistoryService.updateBatchById(histories);
  533 + }
467 534  
468 535 }
... ...