From cabf30bc2ec7689f3f2543559c541bfef6e31f57 Mon Sep 17 00:00:00 2001 From: han0 Date: Fri, 7 Mar 2025 10:19:59 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E6=8C=89=E7=BC=96?= =?UTF-8?q?=E7=A0=81=E6=9F=A5=E8=AF=A2=E5=9C=B0=E6=9D=90=E7=9A=84=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/DataShowingController.java | 1 - .../controller/LocalMaterialController.java | 5 +++-- .../xinke/main/model/db/LocalMaterial.java | 4 +--- .../main/model/vo/LocalMaterialSummary.java | 22 ++++++++++--------- .../main/service/LocalMaterialService.java | 5 ++++- 5 files changed, 20 insertions(+), 17 deletions(-) diff --git a/src/main/java/mjkf/xinke/main/controller/DataShowingController.java b/src/main/java/mjkf/xinke/main/controller/DataShowingController.java index 1c7a2ca..26ac6f0 100644 --- a/src/main/java/mjkf/xinke/main/controller/DataShowingController.java +++ b/src/main/java/mjkf/xinke/main/controller/DataShowingController.java @@ -6,7 +6,6 @@ import io.swagger.annotations.ApiParam; import mjkf.xinke.main.common.http.FuHttpResponse; import mjkf.xinke.main.constant.PricePublishType; import mjkf.xinke.main.model.db.DataAdjacent; -import mjkf.xinke.main.model.db.LocalMaterial; import mjkf.xinke.main.model.db.PricePublish; import mjkf.xinke.main.service.DataAdjacentService; import mjkf.xinke.main.service.LocalMaterialService; diff --git a/src/main/java/mjkf/xinke/main/controller/LocalMaterialController.java b/src/main/java/mjkf/xinke/main/controller/LocalMaterialController.java index 439eaae..c74835c 100644 --- a/src/main/java/mjkf/xinke/main/controller/LocalMaterialController.java +++ b/src/main/java/mjkf/xinke/main/controller/LocalMaterialController.java @@ -50,12 +50,13 @@ public class LocalMaterialController { @ApiParam(value = "地市") @RequestParam(value="city", required=false) String city, @ApiParam(value = "区县") @RequestParam(value="county", required=false) String county, @ApiParam(value = "规格") @RequestParam(value="spec", required=false) String spec, - @ApiParam(value = "名称") @RequestParam(value="name", required=false) String name + @ApiParam(value = "名称") @RequestParam(value="name", required=false) String name, + @ApiParam(value = "材料id") @RequestParam(value="materialId", required=false) String materialId ) { // 指定月份无数据时选用最新数据 var date = localMaterialService.checkDate(year, month); - var query = localMaterialService.getQuery(date.getYear(), date.getMonth().getValue(), city, county, spec, name, null); + var query = localMaterialService.getQuery(date.getYear(), date.getMonth().getValue(), city, county, spec, name, null, materialId); query.orderByDesc(LocalMaterial::getName); List data = localMaterialService.list(query); // 按名称分组 diff --git a/src/main/java/mjkf/xinke/main/model/db/LocalMaterial.java b/src/main/java/mjkf/xinke/main/model/db/LocalMaterial.java index fcf87f6..006534b 100644 --- a/src/main/java/mjkf/xinke/main/model/db/LocalMaterial.java +++ b/src/main/java/mjkf/xinke/main/model/db/LocalMaterial.java @@ -11,8 +11,6 @@ import java.math.BigDecimal; import java.time.LocalDate; import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.databind.PropertyNamingStrategies; -import com.fasterxml.jackson.databind.annotation.JsonNaming; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; @@ -33,7 +31,7 @@ import org.apache.poi.ss.usermodel.CellType; @Setter @TableName("LOCAL_MATERIAL") @ApiModel(value = "LocalMaterial对象", description = "地材") -@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) +//@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) public class LocalMaterial extends Model { private static final long serialVersionUID = 1L; diff --git a/src/main/java/mjkf/xinke/main/model/vo/LocalMaterialSummary.java b/src/main/java/mjkf/xinke/main/model/vo/LocalMaterialSummary.java index 4c9bf8d..04d11b7 100644 --- a/src/main/java/mjkf/xinke/main/model/vo/LocalMaterialSummary.java +++ b/src/main/java/mjkf/xinke/main/model/vo/LocalMaterialSummary.java @@ -9,6 +9,7 @@ import java.util.List; @Data public class LocalMaterialSummary { + private String materialId; private String name; private String spec; private String unit; @@ -17,19 +18,20 @@ public class LocalMaterialSummary { public LocalMaterialSummary() {} public LocalMaterialSummary(List list) { + this.materialId = list.get(0).getMaterialId(); this.name = list.get(0).getName(); this.spec = list.get(0).getSpec(); this.unit = list.get(0).getUnit(); this.data = list; - LocalMaterial avg_item = new LocalMaterial(); - avg_item.setName(list.get(0).getName()); - avg_item.setSpec(list.get(0).getSpec()); - avg_item.setUnit(list.get(0).getUnit()); - avg_item.setCity(list.get(0).getCity()); - Integer id = Math.abs(HashUtil.javaDefaultHash(avg_item.getCity() + avg_item.getName() + avg_item.getSpec())); - avg_item.setId(id); - avg_item.setCounty("城区"); - avg_item.setPrice(BigDecimal.valueOf(list.stream().mapToDouble(item->item.getPrice().doubleValue()).average().orElse(0D))); - this.data.add(avg_item); +// LocalMaterial avg_item = new LocalMaterial(); +// avg_item.setName(list.get(0).getName()); +// avg_item.setSpec(list.get(0).getSpec()); +// avg_item.setUnit(list.get(0).getUnit()); +// avg_item.setCity(list.get(0).getCity()); +// Integer id = Math.abs(HashUtil.javaDefaultHash(avg_item.getCity() + avg_item.getName() + avg_item.getSpec())); +// avg_item.setId(id); +// avg_item.setCounty("城区"); +// avg_item.setPrice(BigDecimal.valueOf(list.stream().mapToDouble(item->item.getPrice().doubleValue()).average().orElse(0D))); +// this.data.add(avg_item); } } diff --git a/src/main/java/mjkf/xinke/main/service/LocalMaterialService.java b/src/main/java/mjkf/xinke/main/service/LocalMaterialService.java index 02c931e..890931c 100644 --- a/src/main/java/mjkf/xinke/main/service/LocalMaterialService.java +++ b/src/main/java/mjkf/xinke/main/service/LocalMaterialService.java @@ -83,7 +83,7 @@ public class LocalMaterialService extends DataService, } - public LambdaQueryWrapper getQuery(Integer year, Integer month, String city, String county, String spec, String name, Integer type) { + public LambdaQueryWrapper getQuery(Integer year, Integer month, String city, String county, String spec, String name, Integer type, String materialId) { var query = this.getQuery(null, year, month, null, name, type); if (city != null) { query.like(LocalMaterial::getCity, city); @@ -94,6 +94,9 @@ public class LocalMaterialService extends DataService, if(spec!= null) { query.like(LocalMaterial::getSpec, spec); } + if(materialId!= null) { + query.like(LocalMaterial::getMaterialId, materialId); + } return query; }