变频器集成以及增加点动控制(0209)
This commit is contained in:
@ -3,12 +3,11 @@
|
||||
|
||||
# # 添加项目根目录到Python路径
|
||||
# sys.path.insert(0, os.path.join(os.path.dirname(__file__), ".."))
|
||||
|
||||
from dataclasses import fields
|
||||
from typing import List, Optional, Dict, Any
|
||||
from datetime import datetime
|
||||
from .models import ArtifactInfoModel, PDRecordModel
|
||||
from .dals import ArtifactDal, PDRecordDal
|
||||
from busisness.models import ArtifactInfoModel, PDRecordModel
|
||||
from busisness.dals import ArtifactDal, PDRecordDal
|
||||
|
||||
|
||||
class ArtifactBll:
|
||||
@ -26,37 +25,54 @@ class ArtifactBll:
|
||||
"""更新管片任务状态"""
|
||||
return self.dal.update_artifact(artifact_id, {"Status": status})
|
||||
|
||||
def finish_artifact_task(self, artifact_id: str,beton_volume) -> bool:
|
||||
def start_produce(self, code: str) -> bool:
|
||||
"""开始管片生产"""
|
||||
return self.dal.update_by_modulecode(code, {'Status': 2,'BeginTime':datetime.now()})
|
||||
|
||||
def finish_produce(self, code: str,weight:float) -> bool:
|
||||
"""完成管片生产"""
|
||||
return self.dal.update_by_modulecode(code, {'Status': 3,'EndTime':datetime.now(),'FBetonVolume':weight})
|
||||
|
||||
|
||||
def finish_artifact_task(self, artifact_id: str,beton_volume:float) -> bool:
|
||||
"""完成管片任务"""
|
||||
return self.dal.update_artifact(artifact_id, {"Status": 3,"BetonVolume":beton_volume,"EndTime":datetime.now()})
|
||||
|
||||
def insert_artifact_task(self,model:ArtifactInfoModel) -> bool:
|
||||
|
||||
"""插入管片任务"""
|
||||
if self.dal.exists_by_id(model.ArtifactID):
|
||||
return False
|
||||
return self.dal.insert_artifact({
|
||||
"ArtifactID": model.ArtifactID,
|
||||
"ArtifactActionID": model.ArtifactActionID,
|
||||
"ArtifactIDVice1": model.ArtifactIDVice1,
|
||||
"ProduceRingNumber": model.ProduceRingNumber,
|
||||
"MouldCode": model.MouldCode,
|
||||
"SkeletonID": model.SkeletonID,
|
||||
"RingTypeCode": model.RingTypeCode,
|
||||
"SizeSpecification": model.SizeSpecification,
|
||||
"BuriedDepth": model.BuriedDepth,
|
||||
"BlockNumber": model.BlockNumber,
|
||||
"BetonVolume": model.BetonVolume,
|
||||
"BetonTaskID": model.BetonTaskID,
|
||||
"HoleRingMarking": model.HoleRingMarking,
|
||||
"GroutingPipeMarking": model.GroutingPipeMarking,
|
||||
"PolypropyleneFiberMarking": model.PolypropyleneFiberMarking,
|
||||
"PStatus":1,
|
||||
"Status": 2,
|
||||
"Source": model.Source,
|
||||
"BeginTime": model.BeginTime,
|
||||
"OptTime": datetime.now(),
|
||||
})
|
||||
if self.dal.get_artifactid(model.MouldCode):
|
||||
return False
|
||||
return self.dal.insert_artifact(model)
|
||||
|
||||
def save_artifact_task(self,model:ArtifactInfoModel) -> int:
|
||||
|
||||
"""保存管片任务(存在ModuleCode更新,不存在插入,存在ArtifactID不处理)"""
|
||||
_artifactid=self.dal.get_artifactid(model.MouldCode)
|
||||
if _artifactid is None:
|
||||
return self.dal.insert_artifact(model)
|
||||
else:
|
||||
if not _artifactid and model.ArtifactID:
|
||||
update_dict={
|
||||
'ArtifactID':model.ArtifactID,
|
||||
'ArtifactActionID':model.ArtifactActionID,
|
||||
'ArtifactIDVice1':model.ArtifactIDVice1,
|
||||
'ProduceRingNumber':model.ProduceRingNumber,
|
||||
'SkeletonID':model.SkeletonID,
|
||||
'RingTypeCode':model.RingTypeCode,
|
||||
'SizeSpecification':model.SizeSpecification,
|
||||
'BuriedDepth':model.BuriedDepth,
|
||||
'BlockNumber':model.BlockNumber,
|
||||
'HoleRingMarking':model.HoleRingMarking,
|
||||
'GroutingPipeMarking':model.GroutingPipeMarking,
|
||||
'PolypropyleneFiberMarking':model.PolypropyleneFiberMarking,
|
||||
'BetonVolume':model.BetonVolume,
|
||||
'BetonTaskID':model.BetonTaskID,
|
||||
}
|
||||
return self.dal.update_by_modulecode(model.MouldCode, update_dict)
|
||||
|
||||
return 1
|
||||
|
||||
|
||||
def insert_artifact_bycode(self,model: dict) -> bool:
|
||||
|
||||
@ -93,24 +109,77 @@ class PDRecordBll:
|
||||
"""获取PD官片任务数据"""
|
||||
return self.dal.get_top_pd(5, "ID desc")
|
||||
|
||||
def get_last_pds(self,mould_code:str) -> List[PDRecordModel]:
|
||||
"""获取当前浇筑的后三片的派据(有可能其中一项为空,但需要保证第一条有记录)"""
|
||||
return self.dal.get_last_pds(1,mould_code)
|
||||
|
||||
def insert_PD_record(self,model:PDRecordModel) -> bool:
|
||||
"""保存PD官片任务(存在更新,不存在插入)"""
|
||||
if self.dal.exists_artifactid(model.ArtifactActionID):
|
||||
return False
|
||||
# return self.update_PD_record(model.ArtifactActionID,{"Status": model.Status,"OptTime": datetime.now()})
|
||||
else:
|
||||
return self.dal.insert_PD_record(model)
|
||||
|
||||
def finish_pd(self, code: str,status:int) -> bool:
|
||||
"""完成管片生产"""
|
||||
return self.dal.update_by_modulecode(code, {'Status': status,'EndTime':datetime.now()})
|
||||
|
||||
def start_pd(self, code: str,volumn:float) -> bool:
|
||||
"""开始管片生产"""
|
||||
return self.dal.update_by_modulecode(code, {'Status': 2,'OptTime':datetime.now(),'FBetonVolume':volumn})
|
||||
|
||||
def update_PD_record(self,artifact_action_id: int, update_fields: dict) -> bool:
|
||||
"""更新PD官片任务状态"""
|
||||
return self.dal.update_pd(artifact_action_id, update_fields)
|
||||
|
||||
def save_PD_record(self,model:PDRecordModel) -> int:
|
||||
|
||||
"""保存PD官片任务(存在ModuleCode更新,不存在插入,存在ArtifactID不处理)"""
|
||||
_artifactid=self.dal.get_artifactid(model.MouldCode)
|
||||
if _artifactid is None:
|
||||
return self.dal.insert_PD_record(model)
|
||||
else:
|
||||
if not _artifactid and model.ArtifactID:
|
||||
update_dict={
|
||||
'ArtifactID':model.ArtifactID,
|
||||
'ArtifactActionID':model.ArtifactActionID,
|
||||
'TaskID':model.TaskID,
|
||||
'ProjectName':model.ProjectName,
|
||||
'ProduceMixID':model.ProduceMixID,
|
||||
'BetonVolume':model.BetonVolume,
|
||||
'BetonGrade':model.BetonGrade,
|
||||
'BuriedDepth':model.BuriedDepth,
|
||||
'SkeletonID':model.SkeletonID,
|
||||
'RingTypeCode':model.RingTypeCode,
|
||||
'SizeSpecification':model.SizeSpecification,
|
||||
'BlockNumber':model.BlockNumber,
|
||||
'BetonVolume':model.BetonVolume,
|
||||
'PlannedVolume':model.PlannedVolume
|
||||
}
|
||||
return self.dal.update_by_modulecode(model.MouldCode, update_dict)
|
||||
|
||||
return 1
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
artifact_dal = ArtifactBll()
|
||||
# artifact_dal = ArtifactBll()
|
||||
|
||||
artifacts = artifact_dal.get_artifact_task()
|
||||
# artifacts = artifact_dal.get_artifact_task()
|
||||
|
||||
print("\n打印artifacts数据:")
|
||||
for i, artifact in enumerate(artifacts):
|
||||
artifact_id = artifact.ArtifactID
|
||||
# 如果是数据类对象,转换为字典输出
|
||||
print(artifact.MouldCode)
|
||||
if hasattr(artifact, "__dataclass_fields__"):
|
||||
print(f"第{i+1}条: {artifact.__dict__}")
|
||||
else:
|
||||
print(f"第{i+1}条: {artifact}")
|
||||
# print("\n打印artifacts数据:")
|
||||
# for i, artifact in enumerate(artifacts):
|
||||
# artifact_id = artifact.ArtifactID
|
||||
# # 如果是数据类对象,转换为字典输出
|
||||
# print(artifact.MouldCode)
|
||||
# if hasattr(artifact, "__dataclass_fields__"):
|
||||
# print(f"第{i+1}条: {artifact.__dict__}")
|
||||
# else:
|
||||
# print(f"第{i+1}条: {artifact}")
|
||||
|
||||
pdrecord_dal = PDRecordBll()
|
||||
pdrecords = pdrecord_dal.get_PD_record()
|
||||
pdrecords = pdrecord_dal.get_last_pds("SHR2B2-11")
|
||||
# print(pdrecords[0].MouldCode)
|
||||
print("\n打印pdrecords数据:")
|
||||
for i, record in enumerate(pdrecords):
|
||||
|
||||
Reference in New Issue
Block a user