fix: 修复材料半年均价计算错误的问题
This commit is contained in:
@@ -1,7 +1,8 @@
|
||||
import datetime
|
||||
from operator import and_
|
||||
|
||||
from dateutil.relativedelta import relativedelta
|
||||
from sqlalchemy import Column, Integer, String, Numeric
|
||||
from sqlalchemy import Column, Integer, String, Numeric, or_
|
||||
|
||||
from commons.models.mixin.base import BaseModelMixin
|
||||
from commons.models.mixin.operation_track import OperationTrackMixin
|
||||
@@ -71,10 +72,10 @@ class PricePublish(db.Model, Model, OperationTrackMixin, BaseModelMixin):
|
||||
@classmethod
|
||||
def query_previous_month(cls, query, start_date: datetime.date, count=6):
|
||||
condition = False
|
||||
for i in range(count):
|
||||
for i in range(0, count):
|
||||
date = start_date - relativedelta(months=i)
|
||||
condition = condition or (cls.year == date.year and cls.month == date.month)
|
||||
query.filter(condition)
|
||||
condition = or_(condition, and_(cls.year == str(date.year), cls.month == str(date.month)))
|
||||
query = query.filter(condition)
|
||||
return query
|
||||
|
||||
@classmethod
|
||||
|
Reference in New Issue
Block a user