From 788d9d0b2866b8b839b074cd5054d1160f5345fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=A7=E7=B1=B3?= <470431449@qq.com> Date: Fri, 11 Oct 2024 11:53:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=89=A9=E6=96=99=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=8E=A5=E5=8F=A3-=E6=8C=89=E6=90=9C=E7=B4=A2?= =?UTF-8?q?=E5=85=B3=E9=94=AE=E5=AD=97=E5=8C=B9=E9=85=8D=E5=BA=A6=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../product/bomnew/api/user/BomReportApi.java | 34 ++++++++++- .../mapper/master/MaterialMainMapper.java | 8 +-- .../bomnew/pojo/dto/MaterialQueryDTO.java | 32 +++++++++++ .../bomnew/pojo/vo/MaterialQueryResult.java | 56 +++++++++++++++++++ .../mapper/master/MaterialMainMapper.xml | 16 ++++++ 5 files changed, 140 insertions(+), 6 deletions(-) create mode 100644 nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/dto/MaterialQueryDTO.java create mode 100644 nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/MaterialQueryResult.java diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/BomReportApi.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/BomReportApi.java index b7685d68..fe3e6cdd 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/BomReportApi.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/BomReportApi.java @@ -11,6 +11,8 @@ import com.google.common.collect.ImmutableList; import com.nflg.product.base.core.api.BaseApi; import com.nflg.product.base.core.exception.NflgBusinessException; import com.nflg.product.bomnew.constant.ReportConstant; +import com.nflg.product.bomnew.pojo.dto.MaterialQueryDTO; +import com.nflg.product.bomnew.pojo.dto.PdateLogDTO; import com.nflg.product.bomnew.pojo.entity.MaterialMainEntity; import com.nflg.product.bomnew.pojo.query.ChildBomReportQuery; import com.nflg.product.bomnew.pojo.query.CompareReportQuery; @@ -20,6 +22,7 @@ import com.nflg.product.bomnew.service.CompareReportService; import com.nflg.product.bomnew.service.ForwardReportService; import com.nflg.product.bomnew.service.MaterialMainService; import com.nflg.product.bomnew.service.ReverseReportService; +import com.nflg.product.bomnew.util.CompareUtils; import com.nflg.product.bomnew.util.EecExcelUtil; import com.nflg.product.bomnew.util.VUtils; import io.swagger.annotations.Api; @@ -37,9 +40,9 @@ import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import javax.xml.transform.Result; import java.io.IOException; -import java.util.List; +import java.util.*; import java.util.Map; -import java.util.Objects; +import java.util.stream.Collectors; import java.util.Set; import java.util.stream.Collectors; @@ -290,4 +293,31 @@ public class BomReportApi extends BaseApi { }, datas); EecExcelUtil.eecExcel(name, new ListSheet<>(exportList), response); } + + + @PostMapping("queryMaterial") + @ApiOperation("物料查询") + public ResultVO> materialQuery(@RequestBody MaterialQueryDTO queryParam){ + List result = materialMainService.getBaseMapper().queryMaterial(queryParam); + //排序 + if(StrUtil.isNotBlank(queryParam.getMaterialNo())) { + result.forEach(u->{ + u.setOrderNo(StrUtil.replace(u.getMaterialNo(),queryParam.getMaterialNo(),"0")); + }); + + } + if(StrUtil.isNotBlank(queryParam.getDrawingNo())) { + result.forEach(u->{ + u.setOrderNo(StrUtil.replace(u.getDrawingNo(),queryParam.getDrawingNo(),"0")); + }); + } + if(StrUtil.isNotBlank(queryParam.getMaterialDesc())) { + result.forEach(u->{ + u.setOrderNo(StrUtil.replace(u.getMaterialDesc(),queryParam.getMaterialDesc(),"0")); + }); + } + result= result.stream().sorted( Comparator.comparing(MaterialQueryResult::getOrderNo)).collect(Collectors.toList()); + return ResultVO.success(result); + + } } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/MaterialMainMapper.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/MaterialMainMapper.java index 04e059fb..ec9de059 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/MaterialMainMapper.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/MaterialMainMapper.java @@ -2,11 +2,9 @@ package com.nflg.product.bomnew.mapper.master; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.nflg.product.bomnew.pojo.dto.CategoryExcelDTO; +import com.nflg.product.bomnew.pojo.dto.MaterialQueryDTO; import com.nflg.product.bomnew.pojo.entity.MaterialMainEntity; -import com.nflg.product.bomnew.pojo.vo.BaseMaterialVO; -import com.nflg.product.bomnew.pojo.vo.MaterialMateVO; -import com.nflg.product.bomnew.pojo.vo.RolePostVo; -import com.nflg.product.bomnew.pojo.vo.UserInfoVO; +import com.nflg.product.bomnew.pojo.vo.*; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -62,4 +60,6 @@ public interface MaterialMainMapper extends BaseMapper { UserInfoVO getUserInfoByUserCode(@Param("userCode")String userCode); String getUserDepartmentDptCode(@Param("rowId") Long rowId); + + List queryMaterial(@Param("query") MaterialQueryDTO query); } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/dto/MaterialQueryDTO.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/dto/MaterialQueryDTO.java new file mode 100644 index 00000000..2056d648 --- /dev/null +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/dto/MaterialQueryDTO.java @@ -0,0 +1,32 @@ +package com.nflg.product.bomnew.pojo.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * 物料查询 + */ +@Data +public class MaterialQueryDTO implements Serializable { + + + @ApiModelProperty(value = "物料分类") + private String materialCategoryCode; + + + @ApiModelProperty(value = "物料编码") + private String materialNo; + + @ApiModelProperty("图号") + private String drawingNo; + + + @ApiModelProperty(value = "物料描述") + private String materialDesc; + + + + private static final long serialVersionUID = 1L; +} diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/MaterialQueryResult.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/MaterialQueryResult.java new file mode 100644 index 00000000..1a1e26e1 --- /dev/null +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/MaterialQueryResult.java @@ -0,0 +1,56 @@ +package com.nflg.product.bomnew.pojo.vo; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.google.common.collect.ImmutableList; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class MaterialQueryResult { + + /** + * 物料编码 + */ + @TableField(value = "material_no") + @ApiModelProperty(value = "物料编码") + private String materialNo; + + + @ApiModelProperty(value = "图号") + private String drawingNo; + + /** + * 物料名称 + */ + @TableField(value = "material_name") + @ApiModelProperty(value = "物料名称") + private String materialName; + + /** + * 物料描述 + */ + @TableField(value = "material_desc") + @ApiModelProperty(value = "物料描述") + private String materialDesc; + + @ApiModelProperty(value = "基本计量单位") + private String materialUnit; + + @ApiModelProperty(value = "物料状态 1:激活 2:禁止采购 3:售后专用 4:冻结 5:完全弃用") + private Integer materialState; + + @ApiModelProperty("排序号") + private String orderNo; + + + private String materialStateName; + + public String getMaterialStateName() { + ImmutableList of = ImmutableList.of("", "激活", "禁止采购", "售后专用", "冻结", "完全弃用"); + if(materialState!=null) { + return of.get(materialState); + } + return ""; + } +} diff --git a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/MaterialMainMapper.xml b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/MaterialMainMapper.xml index 96234d55..9497fd59 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/MaterialMainMapper.xml +++ b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/MaterialMainMapper.xml @@ -201,4 +201,20 @@ + +