diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/controller/SectionMaterialController.java b/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/controller/SectionMaterialController.java index 68acde3..65ecb47 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/controller/SectionMaterialController.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/controller/SectionMaterialController.java @@ -3,6 +3,7 @@ package com.chinaunicom.mall.ebtp.project.sectionmaterial.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.chinaunicom.mall.ebtp.common.base.entity.BasePageResponse; import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; import com.chinaunicom.mall.ebtp.project.sectionmaterial.entity.SectionMaterial; import com.chinaunicom.mall.ebtp.project.sectionmaterial.entity.SectionMaterialVO; @@ -90,4 +91,15 @@ public class SectionMaterialController{ query.in(SectionMaterial::getSectionId,sectionIds); return BaseResponse.success(sectionMaterialService.list(query)); } + @ApiOperation("根据标段查询物资信息") + @PostMapping("/list") + public BaseResponse> list(@ApiParam(value = "对象数据", required = true) @RequestBody SectionMaterialVO sectionMaterial){ + return BaseResponse.success(sectionMaterialService.getList(sectionMaterial)); + } + + @ApiOperation("根据标段查询物资信息") + @PostMapping("/findPage") + public BasePageResponse findPage(@ApiParam(value = "对象数据", required = true) @RequestBody SectionMaterialVO sectionMaterial){ + return BasePageResponse.success(sectionMaterialService.findPage(sectionMaterial)); + } } diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/entity/SectionMaterialVO.java b/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/entity/SectionMaterialVO.java index 0f18150..47e6e8b 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/entity/SectionMaterialVO.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/entity/SectionMaterialVO.java @@ -2,10 +2,14 @@ package com.chinaunicom.mall.ebtp.project.sectionmaterial.entity; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; +import javax.validation.constraints.Min; +import javax.validation.constraints.NotNull; import java.io.Serializable; +import java.util.List; /** * 项目物资信息VO类 SectionMaterial @@ -18,4 +22,23 @@ import java.io.Serializable; @ApiModel("项目物资信息VO类") @TableName(autoResultMap = true) public class SectionMaterialVO extends SectionMaterial implements Serializable { + private List sectionIds; + + @ApiModelProperty("当前页") + @NotNull + @Min(0) + private Integer pageNo; + + @ApiModelProperty("每页显示条数") + @NotNull + @Min(0) + private Integer pageSize; + + public Integer getPageNo() { + return null == pageNo ? 0 : pageNo; + } + + public Integer getPageSize() { + return null == pageSize ? 10 : pageSize; + } } diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/service/ISectionMaterialService.java b/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/service/ISectionMaterialService.java index cca3cd3..6a125d6 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/service/ISectionMaterialService.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/service/ISectionMaterialService.java @@ -1,6 +1,7 @@ package com.chinaunicom.mall.ebtp.project.sectionmaterial.service; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.chinaunicom.mall.ebtp.common.base.service.IBaseService; import com.chinaunicom.mall.ebtp.project.sectionmaterial.entity.SectionMaterial; import com.chinaunicom.mall.ebtp.project.sectionmaterial.entity.SectionMaterialVO; @@ -37,4 +38,5 @@ public interface ISectionMaterialService extends IBaseService{ */ List getList(SectionMaterialVO sectionMaterialVO); + IPage findPage(SectionMaterialVO sectionMaterialVO); } diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/service/impl/SectionMaterialServiceImpl.java b/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/service/impl/SectionMaterialServiceImpl.java index 24fa5b6..66441a7 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/service/impl/SectionMaterialServiceImpl.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/sectionmaterial/service/impl/SectionMaterialServiceImpl.java @@ -1,7 +1,13 @@ package com.chinaunicom.mall.ebtp.project.sectionmaterial.service.impl; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.chinaunicom.mall.ebtp.common.base.service.impl.BaseServiceImpl; import com.chinaunicom.mall.ebtp.project.sectionmaterial.dao.SectionMaterialMapper; import com.chinaunicom.mall.ebtp.project.sectionmaterial.entity.SectionMaterial; @@ -10,6 +16,7 @@ import com.chinaunicom.mall.ebtp.project.sectionmaterial.service.ISectionMateria import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.List; /** @@ -35,20 +42,28 @@ public class SectionMaterialServiceImpl extends BaseServiceImpl getList(SectionMaterialVO sectionMaterialVO) { - QueryWrapper query = new QueryWrapper<>(); + LambdaQueryWrapper query = Wrappers.lambdaQuery(); //查询条件拼接 - if(null != sectionMaterialVO.getSectionId()){ - query.eq("section_id",sectionMaterialVO.getSectionId()); - } - - if(null != sectionMaterialVO.getProjectId()){ - query.eq("project_id",sectionMaterialVO.getProjectId()); - } - - if(null != sectionMaterialVO.getSectionId()){ - query.eq("section_id",sectionMaterialVO.getSectionId()); + query.eq(StringUtils.isNotBlank(sectionMaterialVO.getSectionId()),SectionMaterial::getSectionId,sectionMaterialVO.getSectionId()); + query.eq(StringUtils.isNotBlank(sectionMaterialVO.getProjectId()),SectionMaterial::getProjectId,sectionMaterialVO.getProjectId()); + query.in(sectionMaterialVO.getSectionIds()!=null,SectionMaterial::getSectionId, sectionMaterialVO.getSectionIds()); + query.like(StringUtils.isNotBlank(sectionMaterialVO.getMaterialExplain()),SectionMaterial::getMaterialExplain,sectionMaterialVO.getMaterialExplain()); + query.like(StringUtils.isNotBlank(sectionMaterialVO.getMaterialCode()),SectionMaterial::getMaterialCode,sectionMaterialVO.getMaterialCode()); + if(query.isEmptyOfWhere()){ + return new ArrayList<>() ; } return sectionMaterialMapper.selectList(query); } + + @Override + public IPage findPage(SectionMaterialVO sectionMaterialVO) { + LambdaQueryWrapper query = Wrappers.lambdaQuery(); + query.in(SectionMaterial::getSectionId, sectionMaterialVO.getSectionIds()); + query.like(StringUtils.isNotBlank(sectionMaterialVO.getMaterialExplain()),SectionMaterial::getMaterialExplain,sectionMaterialVO.getMaterialExplain()); + query.like(StringUtils.isNotBlank(sectionMaterialVO.getMaterialCode()),SectionMaterial::getMaterialCode,sectionMaterialVO.getMaterialCode()); + IPage convert= this.page(new Page<>(sectionMaterialVO.getPageNo(), sectionMaterialVO.getPageSize()),query); + return convert; + } + }