This commit is contained in:
maruizhi
2026-09-22 15:34:10 +08:00
parent 13278d38c7
commit 0c099b5f9c
3 changed files with 13 additions and 7 deletions
+1 -1
View File
@@ -44,4 +44,4 @@ def get_emp(db=Depends(get_db)):
@StatisticsAPI.get('/salaries',summary='统计薪资分布') @StatisticsAPI.get('/salaries',summary='统计薪资分布')
def get_salaries(db=Depends(get_db)): def get_salaries(db=Depends(get_db)):
s=classify_salary(db) s=classify_salary(db)
return s return s
+10 -4
View File
@@ -23,16 +23,22 @@ def select_all(db):
try: try:
l1 = db.query(Student_Model.class_id,Student_Model.gender,func.count(1).label('cnt'))\ l1 = db.query(Student_Model.class_id,Student_Model.gender,func.count(1).label('cnt'))\
.group_by(Student_Model.class_id,Student_Model.gender).all() .group_by(Student_Model.class_id,Student_Model.gender).all()
all_cnt = sum(i.cnt for i in l1)
d1 = {}
for i in l1:
if i.class_id not in d1:
d1[i.class_id] = 0
d1[i.class_id] += i.cnt
l2 = [] l2 = []
for i in l1: for i in l1:
l2.append({ l2.append({
"all_cnt": all_cnt, "all_cnt": d1[i.class_id],
"class_id": i.class_id, "class_id": i.class_id,
"gender": i.gender, "gender": i.gender,
"cnt": i.cnt "cnt": i.cnt
}) })
return l2 return l2
except Exception: except Exception:
raise HTTPException(status_code=500,detail="查询异常") raise HTTPException(status_code=500,detail="查询异常")
@@ -69,11 +75,11 @@ def select_score(min_score,max_score,db):
# 实现统计每次考试每个班级的平均分并排序的功能 # 实现统计每次考试每个班级的平均分并排序的功能
def select_avg_score(db): def select_avg_score(db):
try: try:
l1 = db.query(Student_Model.class_id,func.avg(WlScore.score).label('avg_score'))\ l1 = db.query(Student_Model.class_id,func.round(func.avg(WlScore.score),1).label('avg_score'))\
.join(Student_Model,WlScore.stu_id == Student_Model.stu_id)\ .join(Student_Model,WlScore.stu_id == Student_Model.stu_id)\
.filter(WlScore.delete_status==0,Student_Model.delete_status == 0)\ .filter(WlScore.delete_status==0,Student_Model.delete_status == 0)\
.group_by(Student_Model.class_id)\ .group_by(Student_Model.class_id)\
.order_by(func.avg(WlScore.score)).all() .order_by(func.round(func.avg(WlScore.score),1)).all()
return l1 return l1
except Exception: except Exception:
raise HTTPException(status_code=500,detail="查询异常") raise HTTPException(status_code=500,detail="查询异常")
+2 -2
View File
@@ -72,7 +72,7 @@ class ClassManagement(Base):
delete_status = Column(Integer,default=0,comment='删除状态:0未删除,1已删除') delete_status = Column(Integer,default=0,comment='删除状态:0未删除,1已删除')
delete_time = Column(DATETIME,default=datetime.now,onupdate=datetime.now,comment='删除时间') delete_time = Column(DATETIME,comment='删除时间')
class Teacher_Model(Base): class Teacher_Model(Base):
__tablename__ = 'wl_teacher' __tablename__ = 'wl_teacher'
@@ -149,7 +149,7 @@ class Employment_info(Base):
delete_status = Column( delete_status = Column(
Integer,default=0,comment='删除状态:0未删除,1已删除') Integer,default=0,comment='删除状态:0未删除,1已删除')
delete_time = Column(DATETIME,default=None,comment='删除时间') delete_time = Column(DATETIME,comment='删除时间')
class WlScore(Base): class WlScore(Base):
__tablename__ = 'wl_score' __tablename__ = 'wl_score'