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..839fecac 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 @@ -7,10 +7,13 @@ import cn.hutool.core.lang.TypeReference; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 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.base.core.vo.PageVO; import com.nflg.product.bomnew.constant.ReportConstant; +import com.nflg.product.bomnew.pojo.dto.MaterialQueryDTO; import com.nflg.product.bomnew.pojo.entity.MaterialMainEntity; import com.nflg.product.bomnew.pojo.query.ChildBomReportQuery; import com.nflg.product.bomnew.pojo.query.CompareReportQuery; @@ -35,12 +38,8 @@ import org.ttzero.excel.entity.ListSheet; import javax.annotation.Resource; 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.Map; -import java.util.Objects; -import java.util.Set; +import java.util.*; import java.util.stream.Collectors; @Api(tags = "BOM-报表接口") @@ -290,4 +289,33 @@ public class BomReportApi extends BaseApi { }, datas); EecExcelUtil.eecExcel(name, new ListSheet<>(exportList), response); } + + + @PostMapping("queryMaterial") + @ApiOperation("物料查询") + public ResultVO> materialQuery(@RequestBody MaterialQueryDTO queryParam){ + + Page page = new PageVO<>(queryParam.getPage(), queryParam.getPageSize()); + Page result = materialMainService.getBaseMapper().queryMaterial(page , 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..7dcd7876 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 @@ -1,12 +1,11 @@ package com.nflg.product.bomnew.mapper.master; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 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 +61,6 @@ public interface MaterialMainMapper extends BaseMapper { UserInfoVO getUserInfoByUserCode(@Param("userCode")String userCode); String getUserDepartmentDptCode(@Param("rowId") Long rowId); + + Page queryMaterial(Page page, @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..6e4439d2 --- /dev/null +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/dto/MaterialQueryDTO.java @@ -0,0 +1,38 @@ +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 Long pageSize = 20L; + + // 当前页 + private Long page = 1L; + + + + 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..1ca74d19 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,43 @@ + +