mrz
This commit is contained in:
@@ -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
|
||||||
|
|||||||
@@ -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="查询异常")
|
||||||
|
|||||||
@@ -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'
|
||||||
|
|||||||
Reference in New Issue
Block a user