同步材料数据
This commit is contained in:
@ -0,0 +1,89 @@
|
|||||||
|
package org.dromara.test;
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.dromara.materials.domain.MatMaterialIssue;
|
||||||
|
import org.dromara.materials.domain.MatMaterialReceive;
|
||||||
|
import org.dromara.materials.domain.MatMaterials;
|
||||||
|
import org.dromara.materials.domain.MatMaterialsInventory;
|
||||||
|
import org.dromara.materials.domain.enums.MatMaterialsInventoryOutPutEnum;
|
||||||
|
import org.dromara.materials.service.IMatMaterialIssueService;
|
||||||
|
import org.dromara.materials.service.IMatMaterialReceiveService;
|
||||||
|
import org.dromara.materials.service.IMatMaterialsInventoryService;
|
||||||
|
import org.dromara.materials.service.IMatMaterialsService;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.springframework.boot.test.context.SpringBootTest;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author lilemy
|
||||||
|
* @date 2025-10-30 15:58
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
@SpringBootTest
|
||||||
|
public class MaterialsTest {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 长顺项目id
|
||||||
|
*/
|
||||||
|
private static final Long PROJECT_ID = 1897161054676336641L;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IMatMaterialsService materialsService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IMatMaterialsInventoryService materialsInventoryService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IMatMaterialReceiveService materialReceiveService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IMatMaterialIssueService materialIssueService;
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void test() {
|
||||||
|
List<MatMaterials> materials = materialsService.lambdaQuery()
|
||||||
|
.eq(MatMaterials::getProjectId, PROJECT_ID)
|
||||||
|
.list();
|
||||||
|
log.info("材料数据:{}", materials);
|
||||||
|
for (MatMaterials material : materials) {
|
||||||
|
String formCode = material.getFormCode();
|
||||||
|
// 查看入库数据
|
||||||
|
MatMaterialReceive receive = materialReceiveService.lambdaQuery()
|
||||||
|
.eq(MatMaterialReceive::getFormCode, formCode)
|
||||||
|
.one();
|
||||||
|
// 查看出库数据
|
||||||
|
List<MatMaterialsInventory> inventoryList = materialsInventoryService.lambdaQuery()
|
||||||
|
.eq(MatMaterialsInventory::getMaterialsId, material.getId())
|
||||||
|
.eq(MatMaterialsInventory::getOutPut, MatMaterialsInventoryOutPutEnum.OUT.getValue())
|
||||||
|
.list();
|
||||||
|
if (CollUtil.isEmpty(inventoryList)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
// 创建领料出库数据
|
||||||
|
List<MatMaterialIssue> issueList = inventoryList.stream().map(inventory -> {
|
||||||
|
MatMaterialIssue issue = new MatMaterialIssue();
|
||||||
|
issue.setProjectId(PROJECT_ID);
|
||||||
|
issue.setMaterialSource("2");
|
||||||
|
issue.setFormCode(receive.getFormCode());
|
||||||
|
issue.setProjectName(receive.getProjectName());
|
||||||
|
issue.setMaterialName(receive.getMaterialName());
|
||||||
|
issue.setOrderingUnit(receive.getOrderingUnit());
|
||||||
|
issue.setSupplierUnit(receive.getSupplierUnit());
|
||||||
|
issue.setIssueUnit(inventory.getRecipient());
|
||||||
|
issue.setIssueUnitId(inventory.getRecipientId());
|
||||||
|
issue.setShipper(inventory.getShipper());
|
||||||
|
// issue.setStorageUnit();
|
||||||
|
issue.setCertCount(0);
|
||||||
|
issue.setReportCount(0);
|
||||||
|
issue.setTechDocCount(0);
|
||||||
|
issue.setLicenseCount(0);
|
||||||
|
log.info("领料出库数据:{}", issue);
|
||||||
|
log.info("=============================");
|
||||||
|
return issue;
|
||||||
|
}).toList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user