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