fix(monitor physical):add before in last
This commit is contained in:
@@ -24,5 +24,6 @@ class PhysicalProgressModel(BaseModel):
|
|||||||
class LastRecord(pydantic.BaseModel):
|
class LastRecord(pydantic.BaseModel):
|
||||||
project_id:Optional[uuid.UUID] = Field(description="کد شناسایی پروژه در این فیلد قرار می گیرد")
|
project_id:Optional[uuid.UUID] = Field(description="کد شناسایی پروژه در این فیلد قرار می گیرد")
|
||||||
date_at:Optional[datetime.datetime] = Field(description='تاریخ وارد شده')
|
date_at:Optional[datetime.datetime] = Field(description='تاریخ وارد شده')
|
||||||
|
id:Optional[uuid.UUID] = Field(description='شناسه رکورد')
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -34,10 +34,16 @@ class PhysicalProgressRepository(BaseRepository):
|
|||||||
|
|
||||||
async def last_record(self, _inp: LastRecord):
|
async def last_record(self, _inp: LastRecord):
|
||||||
send = {'month': {}, 'three_month': {}, 'before':{}}
|
send = {'month': {}, 'three_month': {}, 'before':{}}
|
||||||
before = await use_collection(TaskEnv.CLN_MONITOR_PYSICAL).find({
|
if _inp.id:
|
||||||
'project_id': _inp.project_id,
|
find_record = await use_collection(TaskEnv.CLN_MONITOR_PYSICAL).find_one({"_id":_inp.id})
|
||||||
'date_at': {'$lt': _inp.date_at}
|
if _inp.id:
|
||||||
}).sort("$natural", -1).to_list(None)
|
before = await use_collection(TaskEnv.CLN_MONITOR_PYSICAL).find({
|
||||||
|
'project_id': _inp.project_id,
|
||||||
|
'created_at': {'$lt': find_record['created_at']}}).sort("$natural", -1).to_list(None)
|
||||||
|
else:
|
||||||
|
before = await use_collection(TaskEnv.CLN_MONITOR_PYSICAL).find({
|
||||||
|
'project_id': _inp.project_id,
|
||||||
|
}).sort("$natural", -1).to_list(None)
|
||||||
if before:
|
if before:
|
||||||
send['before'] = before[0]
|
send['before'] = before[0]
|
||||||
last = await self.search_last(TaskEnv.CLN_MONITOR_PYSICAL, _inp, 35, 25)
|
last = await self.search_last(TaskEnv.CLN_MONITOR_PYSICAL, _inp, 35, 25)
|
||||||
|
|||||||
Reference in New Issue
Block a user