同步材料数据
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