refactor(material): 替换BomMaterialDTO为MaterialMainDTO以统一物料数据类型
- 修改DeliveryController中相关物料数据获取逻辑,使用MaterialMainDTO替代BomMaterialDTO - 更新MaterialController物料查询相关代码,改用MaterialMainDTO提高一致性 - 调整MaterialControllerService中物料导入校验逻辑,替换为MaterialMainDTO对象处理 - 精简和规范import语句,删除无用导入,优化代码结构
This commit is contained in:
parent
9136cbf3d4
commit
6ff777e808
|
|
@ -260,7 +260,7 @@ public class MaterialControllerService {
|
||||||
MaterialSearchQO qo = new MaterialSearchQO();
|
MaterialSearchQO qo = new MaterialSearchQO();
|
||||||
qo.setPageSize(Integer.MAX_VALUE);
|
qo.setPageSize(Integer.MAX_VALUE);
|
||||||
List<MaterialVO> dbMaterials = materialService.search(qo).getRecords();
|
List<MaterialVO> dbMaterials = materialService.search(qo).getRecords();
|
||||||
List<BomMaterialDTO> bomMaterials = bomMaterialService.getList(data.stream().map(MaterialExcelImportDTO::getNo).collect(Collectors.toSet()));
|
List<MaterialMainDTO> bomMaterials = bomMaterialService.getList(data.stream().map(MaterialExcelImportDTO::getNo).collect(Collectors.toSet()));
|
||||||
List<UserSupplier> suppliers = userSupplierService.list();
|
List<UserSupplier> suppliers = userSupplierService.list();
|
||||||
int index = 0;
|
int index = 0;
|
||||||
for (MaterialExcelImportDTO dto : data) {
|
for (MaterialExcelImportDTO dto : data) {
|
||||||
|
|
@ -287,7 +287,7 @@ public class MaterialControllerService {
|
||||||
if (StrUtil.isBlank(dto.getNo())) {
|
if (StrUtil.isBlank(dto.getNo())) {
|
||||||
sb.append("SAP料号不能为空;");
|
sb.append("SAP料号不能为空;");
|
||||||
} else {
|
} else {
|
||||||
BomMaterialDTO bomMaterial = bomMaterials.stream().filter(m -> StrUtil.equals(dto.getNo(), m.getMaterialNo())).findFirst().orElse(null);
|
MaterialMainDTO bomMaterial = bomMaterials.stream().filter(m -> StrUtil.equals(dto.getNo(), m.getMaterialNo())).findFirst().orElse(null);
|
||||||
if (Objects.isNull(bomMaterial)) {
|
if (Objects.isNull(bomMaterial)) {
|
||||||
sb.append("SAP料号无效;");
|
sb.append("SAP料号无效;");
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -6,14 +6,18 @@ import cn.hutool.core.util.StrUtil;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.nflg.wms.common.pojo.ApiResult;
|
import com.nflg.wms.common.pojo.ApiResult;
|
||||||
import com.nflg.wms.common.pojo.PageData;
|
import com.nflg.wms.common.pojo.PageData;
|
||||||
import com.nflg.wms.common.pojo.dto.BomMaterialDTO;
|
import com.nflg.wms.common.pojo.dto.MaterialMainDTO;
|
||||||
import com.nflg.wms.common.pojo.qo.*;
|
import com.nflg.wms.common.pojo.qo.*;
|
||||||
import com.nflg.wms.common.pojo.vo.ShipmentMaterialCodeItemVO;
|
import com.nflg.wms.common.pojo.vo.ShipmentMaterialCodeItemVO;
|
||||||
import com.nflg.wms.common.pojo.vo.ShipmentPackagingCodeVO;
|
import com.nflg.wms.common.pojo.vo.ShipmentPackagingCodeVO;
|
||||||
import com.nflg.wms.common.util.UserUtil;
|
import com.nflg.wms.common.util.UserUtil;
|
||||||
import com.nflg.wms.common.util.VUtil;
|
import com.nflg.wms.common.util.VUtil;
|
||||||
import com.nflg.wms.repository.entity.*;
|
import com.nflg.wms.repository.entity.WmsShipmentDelivery;
|
||||||
import com.nflg.wms.repository.service.*;
|
import com.nflg.wms.repository.entity.WmsShipmentDeliveryItem;
|
||||||
|
import com.nflg.wms.repository.entity.WmsShipmentPackagingCode;
|
||||||
|
import com.nflg.wms.repository.service.IWmsShipmentDeliveryItemService;
|
||||||
|
import com.nflg.wms.repository.service.IWmsShipmentDeliveryService;
|
||||||
|
import com.nflg.wms.repository.service.IWmsShipmentPackagingCodeService;
|
||||||
import com.nflg.wms.shipment.pojo.dto.CrmDeliveryDTO;
|
import com.nflg.wms.shipment.pojo.dto.CrmDeliveryDTO;
|
||||||
import com.nflg.wms.shipment.pojo.dto.DeliveryExportDTO;
|
import com.nflg.wms.shipment.pojo.dto.DeliveryExportDTO;
|
||||||
import com.nflg.wms.shipment.pojo.qo.DeliverySearchFromCRMQO;
|
import com.nflg.wms.shipment.pojo.qo.DeliverySearchFromCRMQO;
|
||||||
|
|
@ -30,7 +34,6 @@ import org.springframework.http.HttpHeaders;
|
||||||
import org.springframework.http.MediaType;
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.client.RestTemplate;
|
|
||||||
import org.ttzero.excel.entity.ListSheet;
|
import org.ttzero.excel.entity.ListSheet;
|
||||||
import org.ttzero.excel.entity.TemplateSheet;
|
import org.ttzero.excel.entity.TemplateSheet;
|
||||||
import org.ttzero.excel.entity.Workbook;
|
import org.ttzero.excel.entity.Workbook;
|
||||||
|
|
@ -39,10 +42,8 @@ import java.io.IOException;
|
||||||
import java.net.URLEncoder;
|
import java.net.URLEncoder;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.concurrent.atomic.AtomicInteger;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -76,7 +77,7 @@ public class DeliveryController extends BaseController {
|
||||||
@PostMapping("searchFromCRM")
|
@PostMapping("searchFromCRM")
|
||||||
public ApiResult<List<DeliverAddQO>> searchFromCRM(@RequestBody DeliverySearchFromCRMQO qo) {
|
public ApiResult<List<DeliverAddQO>> searchFromCRM(@RequestBody DeliverySearchFromCRMQO qo) {
|
||||||
List<CrmDeliveryDTO> datas = crmService.getDeliverys(qo);
|
List<CrmDeliveryDTO> datas = crmService.getDeliverys(qo);
|
||||||
List<BomMaterialDTO> materials = bomMaterialService.getList(datas.stream().map(CrmDeliveryDTO::getProductNumber__c).collect(Collectors.toSet()));
|
List<MaterialMainDTO> materials = bomMaterialService.getList(datas.stream().map(CrmDeliveryDTO::getProductNumber__c).collect(Collectors.toSet()));
|
||||||
return ApiResult.success(
|
return ApiResult.success(
|
||||||
datas.stream().map(d -> new DeliverAddQO()
|
datas.stream().map(d -> new DeliverAddQO()
|
||||||
.setSoNo(d.getOrderNumber())
|
.setSoNo(d.getOrderNumber())
|
||||||
|
|
@ -88,7 +89,7 @@ public class DeliveryController extends BaseController {
|
||||||
materials.stream()
|
materials.stream()
|
||||||
.filter(m -> StrUtil.equals(m.getMaterialNo(), d.getProductNumber__c()))
|
.filter(m -> StrUtil.equals(m.getMaterialNo(), d.getProductNumber__c()))
|
||||||
.findFirst()
|
.findFirst()
|
||||||
.map(BomMaterialDTO::getDrawingNo)
|
.map(MaterialMainDTO::getDrawingNo)
|
||||||
.orElse("")
|
.orElse("")
|
||||||
)
|
)
|
||||||
).toList()
|
).toList()
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.nflg.wms.common.pojo.ApiResult;
|
import com.nflg.wms.common.pojo.ApiResult;
|
||||||
import com.nflg.wms.common.pojo.PageData;
|
import com.nflg.wms.common.pojo.PageData;
|
||||||
import com.nflg.wms.common.pojo.dto.BomMaterialDTO;
|
import com.nflg.wms.common.pojo.dto.MaterialMainDTO;
|
||||||
import com.nflg.wms.common.pojo.qo.ShipmentMaterialAddQO;
|
import com.nflg.wms.common.pojo.qo.ShipmentMaterialAddQO;
|
||||||
import com.nflg.wms.common.pojo.qo.ShipmentMaterialSearchQO;
|
import com.nflg.wms.common.pojo.qo.ShipmentMaterialSearchQO;
|
||||||
import com.nflg.wms.common.pojo.qo.ShipmentMaterialSyncSaveQO;
|
import com.nflg.wms.common.pojo.qo.ShipmentMaterialSyncSaveQO;
|
||||||
|
|
@ -92,7 +92,7 @@ public class MaterialController extends BaseController {
|
||||||
.list()
|
.list()
|
||||||
.stream()
|
.stream()
|
||||||
.collect(Collectors.toMap(WmsShipmentMaterial::getNo, WmsShipmentMaterial::getId));
|
.collect(Collectors.toMap(WmsShipmentMaterial::getNo, WmsShipmentMaterial::getId));
|
||||||
List<BomMaterialDTO> dtos = bomMaterialService.getList(materialMaps.keySet());
|
List<MaterialMainDTO> dtos = bomMaterialService.getList(materialMaps.keySet());
|
||||||
if (CollectionUtil.isNotEmpty(dtos)) {
|
if (CollectionUtil.isNotEmpty(dtos)) {
|
||||||
shipmentMaterialService.updateBatchById(
|
shipmentMaterialService.updateBatchById(
|
||||||
dtos.stream().map(dto -> {
|
dtos.stream().map(dto -> {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue