fix: 修复趋势表时间范围逻辑
This commit is contained in:
@@ -97,7 +97,7 @@ public class PriceResultController {
|
|||||||
throw new NcHttpException(HttpErrorResponseEnum.PRICE_RESULT_NOT_FOUND);
|
throw new NcHttpException(HttpErrorResponseEnum.PRICE_RESULT_NOT_FOUND);
|
||||||
}
|
}
|
||||||
var query = priceResultService.getQueryByName(data.getName());
|
var query = priceResultService.getQueryByName(data.getName());
|
||||||
query = priceResultService.queryLastYear(query);
|
query = priceResultService.queryLastYear(query, data);
|
||||||
var result = priceResultService.list(query);
|
var result = priceResultService.list(query);
|
||||||
|
|
||||||
return FuHttpResponse.Builder().dataResponse(result).build();
|
return FuHttpResponse.Builder().dataResponse(result).build();
|
||||||
|
@@ -1,9 +1,9 @@
|
|||||||
package mjkf.xinke.main.service;
|
package mjkf.xinke.main.service;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import mjkf.xinke.main.model.db.PriceResult;
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import mjkf.xinke.main.model.db.PriceResult;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
@@ -32,8 +32,22 @@ public class PriceResultService extends ServiceImpl<BaseMapper<PriceResult>, Pri
|
|||||||
return this.getQuery(null, null, null, name);
|
return this.getQuery(null, null, null, name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public LambdaQueryWrapper<PriceResult> queryLastYear (LambdaQueryWrapper<PriceResult> query, PriceResult data) {
|
||||||
|
var endDate = LocalDate.of(data.getYear(), data.getMonth(), 1);
|
||||||
|
var startDate = endDate.minusYears(1);
|
||||||
|
// 过去一年
|
||||||
|
query.and(e -> e
|
||||||
|
.eq(PriceResult::getYear, startDate.getYear())
|
||||||
|
.between(PriceResult::getMonth, startDate.getMonth(), 12).or()
|
||||||
|
.eq(PriceResult::getYear, endDate.getYear())
|
||||||
|
.between(PriceResult::getMonth, 1, endDate.getMonth())
|
||||||
|
);
|
||||||
|
query.orderByAsc(PriceResult::getYear, PriceResult::getMonth);
|
||||||
|
return query;
|
||||||
|
}
|
||||||
|
|
||||||
public LambdaQueryWrapper<PriceResult> queryLastYear (LambdaQueryWrapper<PriceResult> query) {
|
public LambdaQueryWrapper<PriceResult> queryLastYear (LambdaQueryWrapper<PriceResult> query) {
|
||||||
var endDate = LocalDate.now();
|
var endDate = LocalDate.now().minusMonths(1);
|
||||||
var startDate = endDate.minusYears(1);
|
var startDate = endDate.minusYears(1);
|
||||||
// 过去一年
|
// 过去一年
|
||||||
query.and(e -> e
|
query.and(e -> e
|
||||||
|
Reference in New Issue
Block a user