diff --git a/src/main/java/mjkf/xinke/main/service/DataFujianService.java b/src/main/java/mjkf/xinke/main/service/DataFujianService.java index 63ad859..0c7c97e 100644 --- a/src/main/java/mjkf/xinke/main/service/DataFujianService.java +++ b/src/main/java/mjkf/xinke/main/service/DataFujianService.java @@ -3,6 +3,7 @@ package mjkf.xinke.main.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import mjkf.xinke.main.model.db.DataFujian; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import mjkf.xinke.main.model.db.PriceResult; import org.springframework.stereotype.Service; import java.time.LocalDate; @@ -61,8 +62,16 @@ public class DataFujianService extends DataService, DataF var data = (DataFujian) obj; LambdaQueryWrapper query = new LambdaQueryWrapper<>(); query.eq(DataFujian::getName, data.getName()); - var date = LocalDate.of(year, month, 1); - query.between(DataFujian::getDate, date.minusYears(1), date.plusMonths(1)); + query.eq(DataFujian::getCity, data.getCity()); + query.eq(DataFujian::getSpec, data.getSpec()); + var endDate = LocalDate.of(year, month, 1).plusMonths(1); + var startDate = endDate.minusYears(1); + query.and(e -> e + .eq(DataFujian::getYear, startDate.getYear()) + .between(DataFujian::getMonth, startDate.getMonth(), 12).or() + .eq(DataFujian::getYear, endDate.getYear()) + .between(DataFujian::getMonth, 1, endDate.getMonth()) + ); return query; }