package cn.iocoder.yudao.module.erp.api.purchase; import cn.iocoder.yudao.module.erp.api.purchase.dto.ErpPurchasePlanCreateReqDTO; import cn.iocoder.yudao.module.erp.controller.admin.purchase.vo.plan.ErpPurchasePlanSaveReqVO; import cn.iocoder.yudao.module.erp.service.purchase.ErpPurchasePlanService; import jakarta.annotation.Resource; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import java.util.List; /** * ERP 采购计划 API 实现类 * * @author xiaoyi */ @Service @Validated public class ErpPurchasePlanApiImpl implements ErpPurchasePlanApi { @Resource private ErpPurchasePlanService purchasePlanService; @Override public Long createPurchasePlan(ErpPurchasePlanCreateReqDTO createReqDTO) { ErpPurchasePlanSaveReqVO createReqVO = new ErpPurchasePlanSaveReqVO(); createReqVO.setName(createReqDTO.getName()); createReqVO.setDemandSource(createReqDTO.getDemandSource()); createReqVO.setPlanDate(createReqDTO.getPlanDate()); createReqVO.setSupplierId(createReqDTO.getSupplierId()); createReqVO.setRemark(createReqDTO.getRemark()); createReqVO.setItems(convertItems(createReqDTO.getItems())); return purchasePlanService.createPurchasePlan(createReqVO); } private List convertItems(List items) { if (items == null) { return List.of(); } return items.stream().map(item -> { ErpPurchasePlanSaveReqVO.Item vo = new ErpPurchasePlanSaveReqVO.Item(); vo.setProductId(item.getProductId()); vo.setProductUnitId(item.getProductUnitId()); vo.setCount(item.getCount()); vo.setRemark(item.getRemark()); return vo; }).toList(); } }