Commit a953185e by lixinming

no message

parent 725aa859
This source diff could not be displayed because it is too large. You can view the blob instead.
#
# Wavefront material file
# Converted by Meshlab Group
#
newmtl material_0
Ka 0.200000 0.200000 0.200000
Kd 1.000000 1.000000 1.000000
Ks 1.000000 1.000000 1.000000
Tr 0.000000
illum 2
Ns 0.000000
map_Kd model.jpg
import { DATAQUEUEENUM } from "../config/enum"; import { DATAQUEUEENUM } from "../config/enum";
import { APIENUM } from "../config/interficeEnum"; import { APIENUM } from "../config/interficeEnum";
import { getQueueData, getReqApiData } from "../data/queueData"; import { getQueueData } from "../data/queueData";
import { getReqApiData } from "../data/reqData";
export async function getStudentStatsGradeLeft(gradeId:string) { export async function getStudentStatsGradeLeft(gradeId:string) {
...@@ -283,8 +284,8 @@ export async function getStudentStatsSchoolRight() { ...@@ -283,8 +284,8 @@ export async function getStudentStatsSchoolRight() {
let canGuanTongJi = []; let canGuanTongJi = [];
let huoDongTongJi = []; let huoDongTongJi = [];
let yanChuTongJi = []; let yanChuTongJi = [];
if (reqActivityData.list && Array.isArray(reqActivityData.list.list) && reqActivityData.list.list.length > 0) { if (reqActivityData && Array.isArray(reqActivityData.list) && reqActivityData.list.length > 0) {
reqActivityData.list.list.forEach(info => { reqActivityData.list.forEach(info => {
let {activityTime, activityName, activityType} = info; let {activityTime, activityName, activityType} = info;
huoDongTongJi.push({ huoDongTongJi.push({
time:activityTime||'', time:activityTime||'',
...@@ -312,8 +313,8 @@ export async function getStudentStatsSchoolRight() { ...@@ -312,8 +313,8 @@ export async function getStudentStatsSchoolRight() {
let huoJiangTongJi = []; let huoJiangTongJi = [];
let reqAwardsData:any = await getReqApiData(APIENUM.获取学生获奖列表, {pageNo:1, pageSize:50 }); let reqAwardsData:any = await getReqApiData(APIENUM.获取学生获奖列表, {pageNo:1, pageSize:50 });
if (reqAwardsData.list && Array.isArray(reqAwardsData.list.list) && reqAwardsData.list.list.length > 0) { if (reqAwardsData && Array.isArray(reqAwardsData.list) && reqAwardsData.list.length > 0) {
reqAwardsData.list.list.forEach(info => { reqAwardsData.list.forEach(info => {
let {awardTime, awardName, studentName} = info; let {awardTime, awardName, studentName} = info;
huoJiangTongJi.push({ huoJiangTongJi.push({
time:awardTime||'', time:awardTime||'',
......
...@@ -4,7 +4,8 @@ ...@@ -4,7 +4,8 @@
import { DATAQUEUEENUM, GRADEENUM } from "../config/enum"; import { DATAQUEUEENUM, GRADEENUM } from "../config/enum";
import { APIENUM } from "../config/interficeEnum"; import { APIENUM } from "../config/interficeEnum";
import { getQueueData, getReqApiData, postReqApiData } from "../data/queueData"; import { getQueueData } from "../data/queueData";
import { getReqApiData } from "../data/reqData";
import { changeEnumValue } from "../util/piecemeal"; import { changeEnumValue } from "../util/piecemeal";
...@@ -36,13 +37,11 @@ export async function selectStudentList( grade:number, classNum:number, name:str ...@@ -36,13 +37,11 @@ export async function selectStudentList( grade:number, classNum:number, name:str
if (grade) reqBody.gradeId = grade; if (grade) reqBody.gradeId = grade;
if (classNum) reqBody.classNum = classNum; if (classNum) reqBody.classNum = classNum;
if (name) reqBody.studentName = name; if (name) reqBody.studentName = name;
let reqData:any = await getReqApiData(APIENUM.获取学生列表, reqBody); let reqData:any = await getReqApiData(APIENUM.获取学生列表, reqBody, 'page');
let dataList = []; let dataList = [];
if (reqData.page && Array.isArray(reqData.page)) { if (reqData) {
let {page} = reqData; reqData.forEach(info => {
page.forEach(info => {
let {studentId, studentName, className, gradeId, studentSort} = info; let {studentId, studentName, className, gradeId, studentSort} = info;
dataList.push({ dataList.push({
studentName, studentName,
...@@ -64,10 +63,10 @@ export async function selectStudentList( grade:number, classNum:number, name:str ...@@ -64,10 +63,10 @@ export async function selectStudentList( grade:number, classNum:number, name:str
* @returns * @returns
*/ */
export async function studentStatsLeft(studentId:string) { export async function studentStatsLeft(studentId:string) {
let reqBaseData:any = await getReqApiData(APIENUM.获取学生列表, {studentId}); let reqBaseData:any = await getReqApiData(APIENUM.获取学生列表, {studentId}, 'page');
let classId = ''; let classId = '';
if (Array.isArray(reqBaseData.page) && reqBaseData.page.length > 0) { if (reqBaseData) {
let item = reqBaseData.page[0]; let item = reqBaseData[0];
classId = item.classId || ''; classId = item.classId || '';
} }
...@@ -152,33 +151,33 @@ export async function studentStatsLeft(studentId:string) { ...@@ -152,33 +151,33 @@ export async function studentStatsLeft(studentId:string) {
BMIChart:[] BMIChart:[]
}; };
let reqBIMData:any = await getReqApiData(APIENUM.学生BMI趋势, {studentId}); let reqBIMData:any = await getReqApiData(APIENUM.学生BMI趋势, {studentId});
if(Array.isArray(reqBIMData.list) && reqBIMData.list.length > 0) { if(reqBIMData) {
reqBIMData.list.forEach(info => { reqBIMData.forEach(info => {
let {name, value} = info; let {name, value} = info;
shenXinJianKang.BMIChart.push({key:name, value}); shenXinJianKang.BMIChart.push({key:name, value});
}); });
} }
let reqAllergyData:any = await getReqApiData(APIENUM.学生过敏情况, {studentId}); let reqAllergyData:any = await getReqApiData(APIENUM.学生过敏情况, {studentId});
if(Array.isArray(reqAllergyData.list) && reqAllergyData.list.length > 0) { if(reqAllergyData.length) {
let item = reqAllergyData.list[0]; let item = reqAllergyData[0];
shenXinJianKang.peculiarity = item.allergy || ''; shenXinJianKang.peculiarity = item.allergy || '';
}; };
let reqAtopyData:any = await getReqApiData(APIENUM.获取学生特异体质, {studentId}); let reqAtopyData:any = await getReqApiData(APIENUM.获取学生特异体质, {studentId});
if(Array.isArray(reqAtopyData.list) && reqAtopyData.list.length > 0) { if(reqAtopyData.length) {
let item = reqAtopyData.list[0]; let item = reqAtopyData[0];
shenXinJianKang.HPI = item.atopy || ''; shenXinJianKang.HPI = item.atopy || '';
}; };
let reqTzjkData:any = await getReqApiData(APIENUM.获取学生体质健康, {studentId}); let reqTzjkData:any = await getReqApiData(APIENUM.获取学生体质健康, {studentId});
if (Array.isArray(reqTzjkData.list) && reqTzjkData.list.length > 0) { if (reqTzjkData.length) {
let item = reqTzjkData.list[0]; let item = reqTzjkData[0];
shenXinJianKang.BMI = item.bmi || 0; shenXinJianKang.BMI = item.bmi || 0;
} }
/**美育活动 */ /**美育活动 */
let meiYuHuoDong = { pie:[], activeLog:[] }; let meiYuHuoDong = { pie:[], activeLog:[] };
let reqActivityData:any = await getReqApiData(APIENUM.获取学生活动列表, {pageNo:1, pageSize:100, studentId}); let reqActivityData:any = await getReqApiData(APIENUM.获取学生活动列表, {pageNo:1, pageSize:100, studentId});
if (reqActivityData.list && Array.isArray(reqActivityData.list.list) && reqActivityData.list.list.length > 0 ) { if (reqActivityData && Array.isArray(reqActivityData.list) && reqActivityData.list.length > 0 ) {
let item = reqActivityData.list.list; let item = reqActivityData.list;
let activityDistinctMap = {}; let activityDistinctMap = {};
item.forEach((info,index) => { item.forEach((info,index) => {
let {activityType, activityName} = info; let {activityType, activityName} = info;
...@@ -196,10 +195,10 @@ export async function studentStatsLeft(studentId:string) { ...@@ -196,10 +195,10 @@ export async function studentStatsLeft(studentId:string) {
/**劳动教育 */ /**劳动教育 */
let laoDongJiaoYu = []; let laoDongJiaoYu = [];
let reqActivityCountData:any = await getReqApiData(APIENUM.获取学生各类活动统计, {studentId}); let reqActivityCountData:any = await getReqApiData(APIENUM.获取学生各类活动统计, {studentId});
if(Array.isArray(reqActivityCountData.list) && reqActivityCountData.list.length > 0) { if(reqActivityCountData) {
let itemMax = 0; let itemMax = 0;
reqActivityCountData.list.forEach(info => {itemMax = Math.max(itemMax, info.value)}) reqActivityCountData.forEach(info => {itemMax = Math.max(itemMax, info.value)})
reqActivityCountData.list.forEach(info => { reqActivityCountData.forEach(info => {
let {name, value} = info; let {name, value} = info;
laoDongJiaoYu.push({key:name, value, max:itemMax}); laoDongJiaoYu.push({key:name, value, max:itemMax});
}); });
...@@ -216,12 +215,12 @@ export async function studentStatsLeft(studentId:string) { ...@@ -216,12 +215,12 @@ export async function studentStatsLeft(studentId:string) {
* @returns * @returns
*/ */
export async function studentStatsCenter(studentId:string) { export async function studentStatsCenter(studentId:string) {
let reqBaseData:any = await getReqApiData(APIENUM.获取学生列表, {studentId}); let reqBaseData:any = await getReqApiData(APIENUM.获取学生列表, {studentId}, 'page');
let reqModelData:any = await getReqApiData(APIENUM.获取学生模型, {studentId, type:1}); let reqModelData:any = await getReqApiData(APIENUM.获取学生模型, {studentId, type:1}, 'url');
let gradeId = '1'; let gradeId = '1';
let studentSort = ''; let studentSort = '';
if (Array.isArray(reqBaseData.page) && reqBaseData.page.length > 0) { if (reqBaseData.length > 0) {
let item = reqBaseData.page[0]; let item = reqBaseData[0];
gradeId = item.gradeId || '1'; gradeId = item.gradeId || '1';
studentSort = item.studentSort || ''; studentSort = item.studentSort || '';
} }
...@@ -239,16 +238,13 @@ export async function studentStatsCenter(studentId:string) { ...@@ -239,16 +238,13 @@ export async function studentStatsCenter(studentId:string) {
politicalOutlook:"", politicalOutlook:"",
dateOfBirth:"", dateOfBirth:"",
modelUrls:{ modelUrls:{
// jpg:reqModelData.url ? reqModelData.url+'/model.jpg':'', jpg:reqModelData.url ? reqModelData.url+'/model.jpg':'',
// mtl:reqModelData.url ? reqModelData.url+'/model.obj.mtl':'', mtl:reqModelData.url ? reqModelData.url+'/model.obj.mtl':'',
// obj:reqModelData.url ? reqModelData.url+'/model.obj':'' obj:reqModelData.url ? reqModelData.url+'/model.obj':''
jpg:'http://192.168.0.105:30001/model/model.jpg',
mtl:'http://192.168.0.105:30001/model/model.obj.mtl',
obj:'http://192.168.0.105:30001/model/model.obj'
} }
}; };
if (Array.isArray(reqTzjkData.list) && reqTzjkData.list.length > 0) { if (reqTzjkData.length) {
let item = reqTzjkData.list[0]; let item = reqTzjkData[0];
base.name = item.studentName || ''; base.name = item.studentName || '';
base.className = `${item.gradeName || ''}${item.className || ''}`; base.className = `${item.gradeName || ''}${item.className || ''}`;
base.studentId = studentSort;//这里要换成学号 base.studentId = studentSort;//这里要换成学号
...@@ -258,15 +254,14 @@ export async function studentStatsCenter(studentId:string) { ...@@ -258,15 +254,14 @@ export async function studentStatsCenter(studentId:string) {
bmi = item.bmi; bmi = item.bmi;
bmiLevel = item.bmiLevel; bmiLevel = item.bmiLevel;
} }
if (reqHobbyData.list && Array.isArray(reqHobbyData.list.list) && reqHobbyData.list.list.length > 0) { if (reqHobbyData && Array.isArray(reqHobbyData.list) && reqHobbyData.list.length > 0) {
let item = reqHobbyData.list.list[0]; let item = reqHobbyData.list[0];
base.politicalOutlook = item.isLeague == "是" ? "团员" : ""; base.politicalOutlook = item.isLeague == "是" ? "团员" : "";
} }
let reqJiuGeYiData:any = await getReqApiData(APIENUM.获取学生个人九个一工程, {studentId}); let reqJiuGeYiData:any = await getReqApiData(APIENUM.获取学生个人九个一工程, {studentId});
let jiuGeYiSelf = []; let jiuGeYiSelf = [];
if (reqJiuGeYiData.list) { if (reqJiuGeYiData) {
let item = reqJiuGeYiData.list;
let jiuGeYiConfig = [ let jiuGeYiConfig = [
{name:"完成一个课题研究", key:'project'}, {name:"完成一个课题研究", key:'project'},
{name:"阅读一本经典书籍", key:'readClassicBook'}, {name:"阅读一本经典书籍", key:'readClassicBook'},
...@@ -280,7 +275,7 @@ export async function studentStatsCenter(studentId:string) { ...@@ -280,7 +275,7 @@ export async function studentStatsCenter(studentId:string) {
]; ];
jiuGeYiConfig.forEach(info => { jiuGeYiConfig.forEach(info => {
let {name, key} = info; let {name, key} = info;
let value = item[key] || 0; let value = reqJiuGeYiData[key] || 0;
value = value > 1 ? 1 : value value = value > 1 ? 1 : value
jiuGeYiSelf.push({key:name, value:parseFloat(value)}); jiuGeYiSelf.push({key:name, value:parseFloat(value)});
}); });
...@@ -318,8 +313,8 @@ export async function studentStatsCenter(studentId:string) { ...@@ -318,8 +313,8 @@ export async function studentStatsCenter(studentId:string) {
canguan:[] canguan:[]
}; };
let reqAwardData:any = await getReqApiData(APIENUM.获取学生获奖列表, {studentId, pageNo:1, pageSize:10}); let reqAwardData:any = await getReqApiData(APIENUM.获取学生获奖列表, {studentId, pageNo:1, pageSize:10});
if (reqAwardData.list && Array.isArray(reqAwardData.list.list) && reqAwardData.list.list.length > 0) { if (reqAwardData && Array.isArray(reqAwardData.list) && reqAwardData.list.length > 0) {
reqAwardData.list.list.forEach(info => { reqAwardData.list.forEach(info => {
let {awardTime, awardLevel, awardName} = info; let {awardTime, awardLevel, awardName} = info;
dongTai.canguan.push({ dongTai.canguan.push({
time:awardTime||'', time:awardTime||'',
...@@ -329,8 +324,8 @@ export async function studentStatsCenter(studentId:string) { ...@@ -329,8 +324,8 @@ export async function studentStatsCenter(studentId:string) {
}); });
} }
let reqActivityData:any = await getReqApiData(APIENUM.获取学生活动列表, {studentId, pageNo:1, pageSize:10}); let reqActivityData:any = await getReqApiData(APIENUM.获取学生活动列表, {studentId, pageNo:1, pageSize:10});
if (reqActivityData.list && Array.isArray(reqActivityData.list.list) && reqActivityData.list.list.length > 0) { if (reqActivityData && Array.isArray(reqActivityData.list) && reqActivityData.list.length > 0) {
reqActivityData.list.list.forEach(info => { reqActivityData.list.forEach(info => {
let {activityTime, activityType, activityName} = info; let {activityTime, activityType, activityName} = info;
dongTai.canguan.push({ dongTai.canguan.push({
time:activityTime||'', time:activityTime||'',
...@@ -389,8 +384,8 @@ export async function studentStatsRight(studentId:string) { ...@@ -389,8 +384,8 @@ export async function studentStatsRight(studentId:string) {
}; };
let reqActivityData:any = await getReqApiData(APIENUM.获取学生活动列表, {pageNo:1, pageSize:10, studentId}); let reqActivityData:any = await getReqApiData(APIENUM.获取学生活动列表, {pageNo:1, pageSize:10, studentId});
if (reqActivityData.list && Array.isArray(reqActivityData.list.list) && reqActivityData.list.list.length > 0) { if (reqActivityData && Array.isArray(reqActivityData.list) && reqActivityData.list.length > 0) {
reqActivityData.list.list.forEach(info => { reqActivityData.list.forEach(info => {
let {activityTime, activityName, activityType} = info; let {activityTime, activityName, activityType} = info;
let addItem = { let addItem = {
time:activityTime||'', time:activityTime||'',
...@@ -423,8 +418,8 @@ export async function studentStatsRight(studentId:string) { ...@@ -423,8 +418,8 @@ export async function studentStatsRight(studentId:string) {
}); });
} }
let reqAwardsData:any = await getReqApiData(APIENUM.获取学生获奖列表, {pageNo:1, pageSize:10, studentId}); let reqAwardsData:any = await getReqApiData(APIENUM.获取学生获奖列表, {pageNo:1, pageSize:10, studentId});
if (reqAwardsData.list && Array.isArray(reqAwardsData.list.list) && reqAwardsData.list.list.length > 0) { if (reqAwardsData && Array.isArray(reqAwardsData.list) && reqAwardsData.list.length > 0) {
reqAwardsData.list.list.forEach(info => { reqAwardsData.list.forEach(info => {
let {awardType} = info; let {awardType} = info;
if (awardType == "健康") jiangKangSuYang.awards += 1; if (awardType == "健康") jiangKangSuYang.awards += 1;
}); });
......
...@@ -207,7 +207,14 @@ export async function getTeacherExternal() { ...@@ -207,7 +207,14 @@ export async function getTeacherExternal() {
{key:"一级教师", value:0}, {key:"一级教师", value:0},
{key:"学科导师", value:11}, {key:"学科导师", value:11},
{key:"特聘专家", value:16} {key:"特聘专家", value:16}
] ];
let teacherImgList = [];
for (let i = 1; i <= 14; i++) {
let fileType = '.png';
if (i == 14) fileType = '.jpg';
teacherImgList.push({key:i, value:`/teacherimg/${i}${fileType}`});
}
let jiaoShiZiYuan = { let jiaoShiZiYuan = {
jiaoShiShu:0, jiaoShiShu:0,
...@@ -384,7 +391,7 @@ export async function getTeacherExternal() { ...@@ -384,7 +391,7 @@ export async function getTeacherExternal() {
biaoTi, biaoTi,
jiaoShiZiYuan, jiaoShiZhengZhiMianMao, zhaoPinRenCaiLiuDong, jiaoShiZhuanYeJianShe,chuangXinXueXi, jiaoShiZiYuan, jiaoShiZhengZhiMianMao, zhaoPinRenCaiLiuDong, jiaoShiZhuanYeJianShe,chuangXinXueXi,
tePinTuanDui, zhuanJiaTuanDui, xueKeDaoShiTuanDui, kuaXueKeJiaoXue, tePinTuanDui, zhuanJiaTuanDui, xueKeDaoShiTuanDui, kuaXueKeJiaoXue,
jiaoYuPeiYu, jiaoShiFaZhanGuiHua, jiaoYuKeYan, jiaoYanHuoJiang jiaoYuPeiYu, jiaoShiFaZhanGuiHua, jiaoYuKeYan, jiaoYanHuoJiang, teacherImgList
}; };
return result; return result;
} }
\ No newline at end of file
import moment = require("moment"); import moment = require("moment");
import { APIENUM } from "../config/interficeEnum"; import { APIENUM } from "../config/interficeEnum";
import { getQueueData, getReqApiData } from "../data/queueData"; import { GRADEENUM } from "../config/enum";
import { DATAQUEUEENUM, GRADEENUM } from "../config/enum";
import { changeEnumValue } from "../util/piecemeal"; import { changeEnumValue } from "../util/piecemeal";
import { getReqApiData } from "../data/reqData";
export async function getTeacherInfo(teacherId:string) { export async function getTeacherInfo(teacherId:string) {
let base = { let base = {
...@@ -16,13 +16,13 @@ export async function getTeacherInfo(teacherId:string) { ...@@ -16,13 +16,13 @@ export async function getTeacherInfo(teacherId:string) {
}; };
let introduction = ""; let introduction = "";
let reqTeacherSubjectData:any = await getReqApiData(APIENUM.获取教师列表, {teacherId}); let reqTeacherSubjectData:any = await getReqApiData(APIENUM.获取教师列表, {teacherId});
if (Array.isArray(reqTeacherSubjectData.list) && reqTeacherSubjectData.list.length > 0) { if (reqTeacherSubjectData) {
let {subjectNames } = reqTeacherSubjectData.list[0]; let {subjectNames } = reqTeacherSubjectData[0];
base.discipline = subjectNames; base.discipline = subjectNames;
} }
let reqTeacherInfoData:any = await getReqApiData(APIENUM.教师基本信息, { teacherId}); let reqTeacherInfoData:any = await getReqApiData(APIENUM.教师基本信息, { teacherId});
if (Array.isArray(reqTeacherInfoData.list) && reqTeacherInfoData.list.length > 0) { if (reqTeacherInfoData) {
let {name, sexName, title, birthDate, remark } = reqTeacherInfoData.list[0]; let {name, sexName, title, birthDate, remark } = reqTeacherInfoData[0];
base.name = name; base.name = name;
base.sex = sexName; base.sex = sexName;
base.title = title; base.title = title;
...@@ -48,8 +48,8 @@ export async function getTeacherList(inGrade:number, discipline:string, sex:numb ...@@ -48,8 +48,8 @@ export async function getTeacherList(inGrade:number, discipline:string, sex:numb
let dataList = []; let dataList = [];
let reqTeacherInfoData:any = await getReqApiData(APIENUM.获取教师列表, selectParam); let reqTeacherInfoData:any = await getReqApiData(APIENUM.获取教师列表, selectParam);
if (reqTeacherInfoData.list && Array.isArray(reqTeacherInfoData.list) && reqTeacherInfoData.list.length > 0) { if (reqTeacherInfoData) {
reqTeacherInfoData.list.forEach(info => { reqTeacherInfoData.forEach(info => {
let {teacherName, grade, genderName, teacherUserId, subjectNames } = info; let {teacherName, grade, genderName, teacherUserId, subjectNames } = info;
dataList.push({ dataList.push({
teacherName:teacherName, teacherName:teacherName,
......
...@@ -30,5 +30,5 @@ export enum APIENUM { ...@@ -30,5 +30,5 @@ export enum APIENUM {
学生体质预警 = 'getStuBMIWarning', 学生体质预警 = 'getStuBMIWarning',
九个一预警 = 'queryEarlyWarning', 九个一预警 = 'queryEarlyWarning',
获取学生模型='queryStuModel' 获取学生模型='queryStuModel'
}
}
\ No newline at end of file
import { initStudentQueueData, initTeacherQueueData } from "./queueData";
import { updateToken } from "./reqData";
import { selectStudentList, studentStatsCenter, studentStatsLeft, studentStatsRight } from "../biz/studentInfo"; /**
import { getTeacherInfo } from "../biz/teacherInfo"; * 初始化缓存数据 和相关凭证
import { getToken, initStudentQueueData, initTeacherQueueData } from "./queueData"; */
export async function initData() { export async function initData() {
//先初始化token await updateToken();
await getToken();
await initStudentQueueData(); await initStudentQueueData();
await initTeacherQueueData(); await initTeacherQueueData();
//测试
// await selectStudentList(1, 1, '');
// await studentStatsRight('738c2ef8425b11ee98a202031519086a');
// await getTeacherInfo('0be2c9fab1bb11edb278020315b00957');
} }
...@@ -3,17 +3,12 @@ ...@@ -3,17 +3,12 @@
*/ */
import { DATAQUEUEENUM, GRADEENUM } from "../config/enum"; import { DATAQUEUEENUM, GRADEENUM } from "../config/enum";
import { ERRORENUM } from "../config/errorEnum";
import { APIENUM } from "../config/interficeEnum"; import { APIENUM } from "../config/interficeEnum";
import { initConfig, systemConfig } from "../config/serverConfig";
import { BizError } from "../util/bizError";
import { changeEnumValue } from "../util/piecemeal"; import { changeEnumValue } from "../util/piecemeal";
import { get, post, postForm } from "../util/request"; import { getReqApiData, postReqApiData } from "./reqData";
const CryptoJS = require('crypto-js');
const Crypto = require('crypto');
let queueData = {}; let queueData = {};
let token = "d9ce92cfa571447c9837a09bd65e1035";
export function getQueueData(enumValue:number, sub?) { export function getQueueData(enumValue:number, sub?) {
if (sub) { if (sub) {
...@@ -22,6 +17,10 @@ export function getQueueData(enumValue:number, sub?) { ...@@ -22,6 +17,10 @@ export function getQueueData(enumValue:number, sub?) {
return queueData[enumValue]; return queueData[enumValue];
} }
/**
* 初始化学生缓存
*/
export async function initStudentQueueData() { export async function initStudentQueueData() {
let orgId = "d8546196609a11edb903020315e22b66"; let orgId = "d8546196609a11edb903020315e22b66";
let result = await postReqApiData(APIENUM.获取班级列表信息, {orgId, start:0, end:100}); let result = await postReqApiData(APIENUM.获取班级列表信息, {orgId, start:0, end:100});
...@@ -42,7 +41,6 @@ export async function initStudentQueueData() { ...@@ -42,7 +41,6 @@ export async function initStudentQueueData() {
/**年级平均 */ /**年级平均 */
let jiuGeYiAvgData = {};//九个一年级平均 结构{"年级":{九个一} } let jiuGeYiAvgData = {};//九个一年级平均 结构{"年级":{九个一} }
let jiuGeYiAvgSchoolData = {};//九个一学校完成情况 结构{{九个一} }
let jiuGeYiBanJiAVGData = {};//学生年级_九个一班级平均情况 结构{"年级":[{key:"班级1", value:10}]} let jiuGeYiBanJiAVGData = {};//学生年级_九个一班级平均情况 结构{"年级":[{key:"班级1", value:10}]}
let jiuGeYiNianJiAVGData = [];//九个一年级平均完成情况 结构[{key:"年级", value:10}] let jiuGeYiNianJiAVGData = [];//九个一年级平均完成情况 结构[{key:"年级", value:10}]
let nianJiHuoDongStatsData = {};//年级活动统计 let nianJiHuoDongStatsData = {};//年级活动统计
...@@ -51,10 +49,9 @@ export async function initStudentQueueData() { ...@@ -51,10 +49,9 @@ export async function initStudentQueueData() {
let nianJiRenShuData = {};//年级人数 let nianJiRenShuData = {};//年级人数
let guoMinRenShuData = {};//过敏人数 let guoMinRenShuData = {};//过敏人数
for (let i = 1; i <=12; i++) { for (let i = 1; i <=12; i++) {
/**九个一 */ /**年级九个一 */
let result:any = await getReqApiData(APIENUM.获取年级平均九个一工程, {gradeId:i}); let reqJiuGeYiData:any = await getReqApiData(APIENUM.获取年级平均九个一工程, {gradeId:i});
if (result.list) { if (reqJiuGeYiData) {
let {list} = result;
let nianJiAVGItemNum = 0; let nianJiAVGItemNum = 0;
let nianJiAVGItemCount = 0; let nianJiAVGItemCount = 0;
let config = [ let config = [
...@@ -71,7 +68,7 @@ export async function initStudentQueueData() { ...@@ -71,7 +68,7 @@ export async function initStudentQueueData() {
let jiuGeYiAvgItemList = []; let jiuGeYiAvgItemList = [];
config.forEach(info => { config.forEach(info => {
let {name, key} = info; let {name, key} = info;
let value = list[key] || 0; let value = reqJiuGeYiData[key] || 0;
jiuGeYiAvgItemList.push({key:name, value:parseFloat(value)}); jiuGeYiAvgItemList.push({key:name, value:parseFloat(value)});
nianJiAVGItemNum += parseFloat(value) ; nianJiAVGItemNum += parseFloat(value) ;
nianJiAVGItemCount += 1; nianJiAVGItemCount += 1;
...@@ -82,11 +79,12 @@ export async function initStudentQueueData() { ...@@ -82,11 +79,12 @@ export async function initStudentQueueData() {
value:nianJiAVGItemCount? Math.round((nianJiAVGItemNum/nianJiAVGItemCount)*10000)/100 : 0 value:nianJiAVGItemCount? Math.round((nianJiAVGItemNum/nianJiAVGItemCount)*10000)/100 : 0
}); });
} }
/**品德发展与公民素养 */ /**品德发展与公民素养 */
let reqPinDeData:any = await getReqApiData(APIENUM.获取学生活动列表, {pageNo:1, pageSize:1000, gradeId:i, type:"参观实践,社区服务,学段公演,演讲记录"} ); let reqPinDeData:any = await getReqApiData(APIENUM.获取学生活动列表, {pageNo:1, pageSize:1000, gradeId:i, type:"参观实践,社区服务,学段公演,演讲记录"} );
if (reqPinDeData.list && reqPinDeData.list.list && Array.isArray(reqPinDeData.list.list)) { if (reqPinDeData.list && Array.isArray(reqPinDeData.list)) {
let itemList = reqPinDeData.list.list; let itemList = reqPinDeData.list;
let itemStatsMap = { let itemStatsMap = {
"参观实践":{key:"参观实践", value:0}, "参观实践":{key:"参观实践", value:0},
"社区服务":{key:"社区服务", value:0}, "社区服务":{key:"社区服务", value:0},
...@@ -103,10 +101,10 @@ export async function initStudentQueueData() { ...@@ -103,10 +101,10 @@ export async function initStudentQueueData() {
/**体质监测 */ /**体质监测 */
let reqTZJCData:any = await getReqApiData(APIENUM.获取年级体质检测, {gradeId:i}); let reqTZJCData:any = await getReqApiData(APIENUM.获取年级体质检测, {gradeId:i});
if (reqTZJCData.list && Array.isArray(reqTZJCData.list) ) { if (reqTZJCData) {
let tzjcSuccessCount = 0; let tzjcSuccessCount = 0;
let tzjcCount = 0; let tzjcCount = 0;
reqTZJCData.list.forEach(info => { reqTZJCData.forEach(info => {
let {name, value} = info; let {name, value} = info;
tzjcCount += value; tzjcCount += value;
if (name == "及格") tzjcSuccessCount += value; if (name == "及格") tzjcSuccessCount += value;
...@@ -116,6 +114,7 @@ export async function initStudentQueueData() { ...@@ -116,6 +114,7 @@ export async function initStudentQueueData() {
tzjcStatsData[i] = rate >100 ? 100 : rate; tzjcStatsData[i] = rate >100 ? 100 : rate;
} else tzjcStatsData[i] = 0; } else tzjcStatsData[i] = 0;
} }
shiLiBuLiangLvData[i] = 0; shiLiBuLiangLvData[i] = 0;
nianJiRenShuData[i] = 0; nianJiRenShuData[i] = 0;
guoMinRenShuData[i] = 0; guoMinRenShuData[i] = 0;
...@@ -125,11 +124,11 @@ export async function initStudentQueueData() { ...@@ -125,11 +124,11 @@ export async function initStudentQueueData() {
for (let j = 0; j < classData[i].length; j++) { for (let j = 0; j < classData[i].length; j++) {
let classItem = classData[i][j]; let classItem = classData[i][j];
let jiuGeYiClassItem:any = await getReqApiData(APIENUM.获取年级平均九个一工程, {gradeId:i, classNum:classItem.gradeClass}); let jiuGeYiClassItem:any = await getReqApiData(APIENUM.获取年级平均九个一工程, {gradeId:i, classNum:classItem.gradeClass});
if (jiuGeYiClassItem.list ) { if ( jiuGeYiClassItem ) {
let itemCount = 0; let itemCount = 0;
let itemNum = 0; let itemNum = 0;
for (let key in jiuGeYiClassItem.list) { for (let key in jiuGeYiClassItem) {
itemNum += parseFloat(jiuGeYiClassItem.list[key]); itemNum += parseFloat(jiuGeYiClassItem[key]);
itemCount += 1; itemCount += 1;
} }
jiuGeYiBanJiAVGList.push({ jiuGeYiBanJiAVGList.push({
...@@ -147,8 +146,8 @@ export async function initStudentQueueData() { ...@@ -147,8 +146,8 @@ export async function initStudentQueueData() {
/**视力不良率 */ /**视力不良率 */
let reqShiLiData:any = await getReqApiData(APIENUM.获取年级视力不良率, {}); let reqShiLiData:any = await getReqApiData(APIENUM.获取年级视力不良率, {});
if (reqShiLiData.list && Array.isArray(reqShiLiData.list) ) { if (reqShiLiData ) {
reqShiLiData.list.forEach(info => { reqShiLiData.forEach(info => {
let {value, name} = info;//这里的name后续要换成年级的id let {value, name} = info;//这里的name后续要换成年级的id
let gradeId = GRADEENUM[name]; let gradeId = GRADEENUM[name];
if (shiLiBuLiangLvData[gradeId] != undefined) shiLiBuLiangLvData[gradeId] = value; if (shiLiBuLiangLvData[gradeId] != undefined) shiLiBuLiangLvData[gradeId] = value;
...@@ -156,8 +155,8 @@ export async function initStudentQueueData() { ...@@ -156,8 +155,8 @@ export async function initStudentQueueData() {
} }
/**年级人数 */ /**年级人数 */
let reqNianJiRenShuData:any = await getReqApiData(APIENUM.获取各年级学生数量, {}); let reqNianJiRenShuData:any = await getReqApiData(APIENUM.获取各年级学生数量, {});
if (reqNianJiRenShuData.list && Array.isArray(reqNianJiRenShuData.list.studentNum) ) { if (reqNianJiRenShuData && Array.isArray(reqNianJiRenShuData.studentNum) ) {
reqNianJiRenShuData.list.studentNum.forEach(info => { reqNianJiRenShuData.studentNum.forEach(info => {
let {value, name} = info; let {value, name} = info;
if (nianJiRenShuData[name] != undefined) nianJiRenShuData[name] = value; if (nianJiRenShuData[name] != undefined) nianJiRenShuData[name] = value;
}); });
...@@ -165,8 +164,8 @@ export async function initStudentQueueData() { ...@@ -165,8 +164,8 @@ export async function initStudentQueueData() {
/**过敏人数 */ /**过敏人数 */
let reqXueShengGuoMin:any = await getReqApiData(APIENUM.学生过敏情况, {studentId:""}); let reqXueShengGuoMin:any = await getReqApiData(APIENUM.学生过敏情况, {studentId:""});
if (reqXueShengGuoMin.list && Array.isArray(reqXueShengGuoMin.list) ) { if ( reqXueShengGuoMin ) {
reqXueShengGuoMin.list.forEach(info => { reqXueShengGuoMin.forEach(info => {
let {gradeName} = info;//这里的name后续要换成年级的id let {gradeName} = info;//这里的name后续要换成年级的id
let gradeId = GRADEENUM[gradeName]; let gradeId = GRADEENUM[gradeName];
if (gradeId && guoMinRenShuData[gradeId] != undefined) guoMinRenShuData[gradeId] += 1; if (gradeId && guoMinRenShuData[gradeId] != undefined) guoMinRenShuData[gradeId] += 1;
...@@ -181,14 +180,14 @@ export async function initStudentQueueData() { ...@@ -181,14 +180,14 @@ export async function initStudentQueueData() {
queueData[DATAQUEUEENUM.学生年级_年级人数] = nianJiRenShuData; queueData[DATAQUEUEENUM.学生年级_年级人数] = nianJiRenShuData;
queueData[DATAQUEUEENUM.学生年级_过敏人数] = guoMinRenShuData; queueData[DATAQUEUEENUM.学生年级_过敏人数] = guoMinRenShuData;
let jiuGeYiXueXIao:any = await getReqApiData(APIENUM.获取年级平均九个一工程, {gradeId:''}); let reqJiuGeYiXueXiaoData:any = await getReqApiData(APIENUM.获取年级平均九个一工程, {gradeId:''});
let xueXiaoJiuGeAvg = 0; let xueXiaoJiuGeAvg = 0;
let jiuGeYiXueXiaoAvgList = []; let jiuGeYiXueXiaoAvgList = [];
if (jiuGeYiXueXIao.list ) { if (reqJiuGeYiXueXiaoData ) {
let itemCount = 0; let itemCount = 0;
let itemNum = 0; let itemNum = 0;
for (let key in jiuGeYiXueXIao.list) { for (let key in reqJiuGeYiXueXiaoData) {
itemNum += parseFloat(jiuGeYiXueXIao.list[key]); itemNum += parseFloat(reqJiuGeYiXueXiaoData[key]);
itemCount += 1; itemCount += 1;
} }
xueXiaoJiuGeAvg = itemCount? Math.round((itemNum/itemCount)*10000)/100 : 0; xueXiaoJiuGeAvg = itemCount? Math.round((itemNum/itemCount)*10000)/100 : 0;
...@@ -207,7 +206,7 @@ export async function initStudentQueueData() { ...@@ -207,7 +206,7 @@ export async function initStudentQueueData() {
config.forEach(info => { config.forEach(info => {
let {name, key} = info; let {name, key} = info;
let value = jiuGeYiXueXIao.list[key] || 0; let value = reqJiuGeYiXueXiaoData[key] || 0;
jiuGeYiXueXiaoAvgList.push({key:name, value:parseFloat(value)*100}); jiuGeYiXueXiaoAvgList.push({key:name, value:parseFloat(value)*100});
}); });
} }
...@@ -217,24 +216,23 @@ export async function initStudentQueueData() { ...@@ -217,24 +216,23 @@ export async function initStudentQueueData() {
let reqJiuGeYiYuJinData:any = await getReqApiData(APIENUM.九个一预警, {type:2}); let reqJiuGeYiYuJinData:any = await getReqApiData(APIENUM.九个一预警, {type:2});
let jiuGeYiYuJinData = []; let jiuGeYiYuJinData = [];
let testList = ['1.jpg', '2.jpg', '3.jpg', '4.jpg', '5.jpeg'] if (reqJiuGeYiYuJinData) {
if (reqJiuGeYiYuJinData.list && Array.isArray(reqJiuGeYiYuJinData.list)) { for (let i = 0; i < reqJiuGeYiYuJinData.length; i++) {
for (let i = 0; i < reqJiuGeYiYuJinData.list.length; i++) {
if (i > 5) break; if (i > 5) break;
let {total, studentId, studentName} = reqJiuGeYiYuJinData.list[i]; let {total, studentId, studentName} = reqJiuGeYiYuJinData[i];
let reqModelData:any = await getReqApiData(APIENUM.获取学生模型, {studentId, type:2}); let reqModelDataUrl = await getReqApiData(APIENUM.获取学生模型, {studentId, type:2}, 'url');
jiuGeYiYuJinData.push({key:studentName, value:null, imgUrl:`http://192.168.0.105:30001/${testList[i]}` || ''}); jiuGeYiYuJinData.push({key:studentName, value:null, imgUrl:reqModelDataUrl || ''});
} }
} }
let reqYouXiuXueShengData:any = await getReqApiData(APIENUM.九个一预警, {type:1}); let reqYouXiuXueShengData:any = await getReqApiData(APIENUM.九个一预警, {type:1});
let youXiuXueSHengData = []; let youXiuXueSHengData = [];
if (reqYouXiuXueShengData.list && Array.isArray(reqYouXiuXueShengData.list)) { if ( reqYouXiuXueShengData ) {
for (let i = 0; i < reqYouXiuXueShengData.list.length; i++) { for (let i = 0; i < reqYouXiuXueShengData.length; i++) {
if (i > 5) break; if (i > 5) break;
let {total, studentName, studentId} = reqYouXiuXueShengData.list[i]; let {total, studentName, studentId} = reqYouXiuXueShengData[i];
let reqModelData:any = await getReqApiData(APIENUM.获取学生模型, {studentId, type:2}); let reqModelDataUrl = await getReqApiData(APIENUM.获取学生模型, {studentId, type:2}, 'url');
youXiuXueSHengData.push({key:studentName, value:null, imgUrl:reqModelData.url || ''}); youXiuXueSHengData.push({key:studentName, value:null, imgUrl:reqModelDataUrl || ''});
} }
} }
queueData[DATAQUEUEENUM.九个一预警] = jiuGeYiYuJinData; queueData[DATAQUEUEENUM.九个一预警] = jiuGeYiYuJinData;
...@@ -242,6 +240,10 @@ export async function initStudentQueueData() { ...@@ -242,6 +240,10 @@ export async function initStudentQueueData() {
} }
/**
* 初始化教师缓存
*/
export async function initTeacherQueueData() { export async function initTeacherQueueData() {
/**教师统计 */ /**教师统计 */
let configList = [ let configList = [
...@@ -255,15 +257,15 @@ export async function initTeacherQueueData() { ...@@ -255,15 +257,15 @@ export async function initTeacherQueueData() {
for (let i = 0; i < configList.length; i++) { for (let i = 0; i < configList.length; i++) {
let { enumValue, type } = configList[i]; let { enumValue, type } = configList[i];
let reqData:any = await getReqApiData(APIENUM.获取教师统计, {type}); let reqData:any = await getReqApiData(APIENUM.获取教师统计, {type});
if (reqData.list && Array.isArray(reqData.list) && reqData.list.length > 0) { if (reqData) {
let queueItemList = []; let queueItemList = [];
reqData.list.forEach(info => { reqData.forEach(info => {
let {type, name, count} = info; let {type, name, count} = info;
let key = type || name; let key = type || name;
if(DATAQUEUEENUM.教师对内_教师资源_年龄分布) { if(DATAQUEUEENUM.教师对内_教师资源_年龄分布 && typeof key == 'string') {
key = key.replace("教龄",''); key = key.replace("教龄",'');
} }
queueItemList.push({key:key || '', value:count || 0}); if (key) queueItemList.push({key:key || '', value:count || 0});
}); });
queueData[enumValue] = queueItemList; queueData[enumValue] = queueItemList;
...@@ -274,93 +276,3 @@ export async function initTeacherQueueData() { ...@@ -274,93 +276,3 @@ export async function initTeacherQueueData() {
} }
export async function getReqApiData(url:string, body:object) {
const AppKey = systemConfig.appKey;
body["client_id"] = AppKey;
let ms = new Date().valueOf();
const SignatureStr = `${AppKey}&GET&1&${ms}`;
const Hash = CryptoJS.HmacSHA256(SignatureStr, CryptoJS.enc.Base64.parse(systemConfig.appSecret));
const Base64Str = CryptoJS.enc.Base64.stringify(Hash);
let headers = {
"TY-Stage":"1",
"TY-AppKey":AppKey,
"TY-Timestamp":ms,
"TY-Signature":Base64Str
};
let query = Object.assign(body, {client_id:AppKey});
let res = await get(`https://api-gateway.sasu.shanghaitech.edu.cn/${url}`, query, headers );
return res;
}
export async function postReqApiData(url:string, body:object) {
let ms = new Date().valueOf();
const AppKey = systemConfig.appKey;
const SignatureStr = `${AppKey}&POST&1&${ms}`;
const Hash = CryptoJS.HmacSHA256(SignatureStr, CryptoJS.enc.Base64.parse(systemConfig.appSecret));
const Base64Str = CryptoJS.enc.Base64.stringify(Hash);
let headers = {
"TY-Stage":"1",
"TY-AppKey":AppKey,
"TY-Timestamp":ms,
"TY-Signature":Base64Str
};
let query = { accessToken:token };
let res:any = await postForm(`https://api-gateway.sasu.shanghaitech.edu.cn/${url}?accessToken=${token}`, query, body, headers );
if (res.retCode != "000000") {
/**更新token */
await getToken();
res = await postForm(`https://api-gateway.sasu.shanghaitech.edu.cn/${url}?accessToken=${token}`, query, body, headers );
}
return res;
}
function hmacSHA1(data, key) {
let mac = Crypto.createHmac('sha1', Buffer.from(key, 'UTF-8'));
mac.update(Buffer.from(data, 'UTF-8'));
return mac.digest('hex');
}
export async function getToken() {
let timeStamp = new Date().valueOf();
let appId = 'A6BDC0568BAD9FF4CA933BFDE492EF21';//老的 F3D05D1E729B366ABDEFBD5380815DA7
let appKey = 'bb4a72b5398b4726b7444de589e42a2c';//老的 376f898f9ba7432f90c640d5485c194c
let data = `${appId}${appKey}${timeStamp}`;
const AppKey = systemConfig.appKey;
const SignatureStr = `${AppKey}&GET&1&${timeStamp}`;
const Hash = CryptoJS.HmacSHA256(SignatureStr, CryptoJS.enc.Base64.parse(systemConfig.appSecret));
const Base64Str = CryptoJS.enc.Base64.stringify(Hash);
let headers = {
"TY-Stage":"1",
"TY-AppKey":AppKey,
"TY-Timestamp":timeStamp,
"TY-Signature":Base64Str
};
let reqBody = {
appId,
timeStamp,
keyInfo:hmacSHA1(data, appKey),
platformCode:"999999"
}
let res:any = await post(`https://api-gateway.sasu.shanghaitech.edu.cn/getAccessToken`, {}, reqBody, headers );
if (res.retCode == '000000') {
let {accessToken} = res.tokenInfo;
console.log("token 更新=>", accessToken);
if (accessToken) token = accessToken;
else throw new BizError(ERRORENUM.TOKEN获取失败);
} else {
throw new BizError(ERRORENUM.TOKEN更新失败);
}
}
\ No newline at end of file
/**
* 获取第三方数据
*/
import { get, post, postForm } from "../util/request";
import { systemConfig } from "../config/serverConfig";
import { BizError } from "../util/bizError";
import { ERRORENUM } from "../config/errorEnum";
const CryptoJS = require('crypto-js');
const Crypto = require('crypto');
let token = "";//post 请求凭证
/**
* 封装get请求
* @param url 请求路由
* @param body 请求参数
* @returns
*/
export async function getReqApiData(url:string, body:object, dataNotInList?) {
const AppKey = systemConfig.appKey;
body["client_id"] = AppKey;
let ms = new Date().valueOf();
const SignatureStr = `${AppKey}&GET&1&${ms}`;
const Hash = CryptoJS.HmacSHA256(SignatureStr, CryptoJS.enc.Base64.parse(systemConfig.appSecret));
const Base64Str = CryptoJS.enc.Base64.stringify(Hash);
let headers = {
"TY-Stage":"1",
"TY-AppKey":AppKey,
"TY-Timestamp":ms,
"TY-Signature":Base64Str
};
let query = Object.assign(body, {client_id:AppKey});
let res:any = await get(`https://api-gateway.sasu.shanghaitech.edu.cn/${url}`, query, headers );
if (dataNotInList) return res[dataNotInList];
return res.list;
}
/**
* 封装的post请求
* @param url 请求路由
* @param body 请求参数
* @returns
*/
export async function postReqApiData(url:string, body:object) {
let ms = new Date().valueOf();
const AppKey = systemConfig.appKey;
const SignatureStr = `${AppKey}&POST&1&${ms}`;
const Hash = CryptoJS.HmacSHA256(SignatureStr, CryptoJS.enc.Base64.parse(systemConfig.appSecret));
const Base64Str = CryptoJS.enc.Base64.stringify(Hash);
let headers = {
"TY-Stage":"1",
"TY-AppKey":AppKey,
"TY-Timestamp":ms,
"TY-Signature":Base64Str
};
let query = { accessToken:token };
let res:any = await postForm(`https://api-gateway.sasu.shanghaitech.edu.cn/${url}?accessToken=${token}`, query, body, headers );
if (res.retCode != "000000") {
/**更新token */
await updateToken();
res = await postForm(`https://api-gateway.sasu.shanghaitech.edu.cn/${url}?accessToken=${token}`, query, body, headers );
}
return res;
}
function hmacSHA1(data, key) {
let mac = Crypto.createHmac('sha1', Buffer.from(key, 'UTF-8'));
mac.update(Buffer.from(data, 'UTF-8'));
return mac.digest('hex');
}
/**
* 更新token
*/
export async function updateToken() {
let timeStamp = new Date().valueOf();
let appId = 'A6BDC0568BAD9FF4CA933BFDE492EF21';//老的 F3D05D1E729B366ABDEFBD5380815DA7
let appKey = 'bb4a72b5398b4726b7444de589e42a2c';//老的 376f898f9ba7432f90c640d5485c194c
let data = `${appId}${appKey}${timeStamp}`;
const AppKey = systemConfig.appKey;
const SignatureStr = `${AppKey}&GET&1&${timeStamp}`;
const Hash = CryptoJS.HmacSHA256(SignatureStr, CryptoJS.enc.Base64.parse(systemConfig.appSecret));
const Base64Str = CryptoJS.enc.Base64.stringify(Hash);
let headers = {
"TY-Stage":"1",
"TY-AppKey":AppKey,
"TY-Timestamp":timeStamp,
"TY-Signature":Base64Str
};
let reqBody = {
appId,
timeStamp,
keyInfo:hmacSHA1(data, appKey),
platformCode:"999999"
}
let res:any = await post(`https://api-gateway.sasu.shanghaitech.edu.cn/getAccessToken`, {}, reqBody, headers );
if (res.retCode == '000000') {
let {accessToken} = res.tokenInfo;
console.log("token 更新=>", accessToken);
if (accessToken) token = accessToken;
else throw new BizError(ERRORENUM.TOKEN获取失败);
} else {
throw new BizError(ERRORENUM.TOKEN更新失败);
}
}
\ No newline at end of file
/** /**
* 总路由入口 * 总路由入口
* 分路由规则:
* 学生详情,学生整体,学生年级 属于student
* 教师对内,教师对外,教师详情,属于teacher
* 整体办学 属于whole
*/ */
import * as studentRouter from './student'; import * as studentRouter from './student';
import * as teacherRouter from './teacher'; import * as teacherRouter from './teacher';
......
/**
* 学生路由
* select 属于查询相关接口
* portrait 属于详细相关接口
* stats 属于统计相关接口
*/
import * as asyncHandler from 'express-async-handler' import * as asyncHandler from 'express-async-handler'
import { eccReqParamater } from '../tools/eccParam'; import { eccReqParamater } from '../tools/eccParam';
import { studentStatsRight, studentStatsLeft, studentStatsCenter, getClassListByGrade, selectStudentList } from '../biz/studentInfo'; import { studentStatsRight, studentStatsLeft, studentStatsCenter, getClassListByGrade, selectStudentList } from '../biz/studentInfo';
import { GRADEENUM } from '../config/enum'; import { GRADEENUM } from '../config/enum';
import { getStudentStatsGradeCenter, getStudentStatsGradeLeft, getStudentStatsGradeRight, getStudentStatsSchoolCenter, getStudentStatsSchoolLeft, getStudentStatsSchoolRight } from '../biz/student'; import { getStudentStatsGradeCenter, getStudentStatsGradeLeft, getStudentStatsGradeRight, getStudentStatsSchoolCenter, getStudentStatsSchoolLeft, getStudentStatsSchoolRight } from '../biz/student';
export function setRouter(httpServer) { export function setRouter(httpServer) {
/**搜索页 */
httpServer.post('/data/student/select/gradelist', asyncHandler(gradeList)); httpServer.post('/data/student/select/gradelist', asyncHandler(gradeList));
httpServer.post('/data/student/select/classlist', asyncHandler(classList)); httpServer.post('/data/student/select/classlist', asyncHandler(classList));
httpServer.post('/data/student/select/studentlist', asyncHandler(studentList)); httpServer.post('/data/student/select/studentlist', asyncHandler(studentList));
/**学生_详细 */
httpServer.post('/data/student/portrait/left', asyncHandler(studentLeft)); httpServer.post('/data/student/portrait/left', asyncHandler(studentLeft));
httpServer.post('/data/student/portrait/center', asyncHandler(studentCenter)); httpServer.post('/data/student/portrait/center', asyncHandler(studentCenter));
httpServer.post('/data/student/portrait/right', asyncHandler(studentRight)); httpServer.post('/data/student/portrait/right', asyncHandler(studentRight));
/**学生_学校 */
httpServer.post('/data/student/stats/school/left', asyncHandler(studentStatsSchoolLeft)); httpServer.post('/data/student/stats/school/left', asyncHandler(studentStatsSchoolLeft));
httpServer.post('/data/student/stats/school/center', asyncHandler(studentStatsSchoolCenter)); httpServer.post('/data/student/stats/school/center', asyncHandler(studentStatsSchoolCenter));
httpServer.post('/data/student/stats/school/right', asyncHandler(studentStatsSchoolRight)); httpServer.post('/data/student/stats/school/right', asyncHandler(studentStatsSchoolRight));
/**年级 */ /**学生_年级 */
httpServer.post('/data/student/stats/grade/left', asyncHandler(studentStatsGradeLeft)); httpServer.post('/data/student/stats/grade/left', asyncHandler(studentStatsGradeLeft));
httpServer.post('/data/student/stats/grade/center', asyncHandler(studentStatsGradeCenter)); httpServer.post('/data/student/stats/grade/center', asyncHandler(studentStatsGradeCenter));
httpServer.post('/data/student/stats/grade/right', asyncHandler(studentStatsGradeRight)); httpServer.post('/data/student/stats/grade/right', asyncHandler(studentStatsGradeRight));
} }
/**搜索页 */
/**
* 年级列表
* @param req
* @param res
*/
async function gradeList(req, res) { async function gradeList(req, res) {
let dataList = []; let dataList = [];
for (let key in GRADEENUM) { for (let key in GRADEENUM) {
...@@ -35,6 +46,12 @@ async function gradeList(req, res) { ...@@ -35,6 +46,12 @@ async function gradeList(req, res) {
res.success({dataList}); res.success({dataList});
} }
/**
* 根据年级id搜索班级列表
* @param req
* @param res
*/
async function classList(req, res) { async function classList(req, res) {
let reqConf = {grade: 'Number' }; let reqConf = {grade: 'Number' };
let { grade } = eccReqParamater(reqConf, req.body); let { grade } = eccReqParamater(reqConf, req.body);
...@@ -44,6 +61,12 @@ async function classList(req, res) { ...@@ -44,6 +61,12 @@ async function classList(req, res) {
res.success(result); res.success(result);
} }
/**
* 根据年级,班级,姓名,获取学生列表
* @param req
* @param res
*/
async function studentList(req, res) { async function studentList(req, res) {
let reqConf = {grade: 'Number', classNum:'Number', name:'String' }; let reqConf = {grade: 'Number', classNum:'Number', name:'String' };
let { grade, classNum, name } = eccReqParamater(reqConf, req.body, ["name", "grade", "classNum"]); let { grade, classNum, name } = eccReqParamater(reqConf, req.body, ["name", "grade", "classNum"]);
...@@ -53,7 +76,12 @@ async function studentList(req, res) { ...@@ -53,7 +76,12 @@ async function studentList(req, res) {
res.success(result); res.success(result);
} }
/**个人页 */
/**
* 学生详情-左部分
* @param req
* @param res
*/
async function studentLeft(req, res) { async function studentLeft(req, res) {
let reqConf = {studentId: 'String' }; let reqConf = {studentId: 'String' };
let { studentId } = eccReqParamater(reqConf, req.body, []); let { studentId } = eccReqParamater(reqConf, req.body, []);
...@@ -62,6 +90,12 @@ async function studentLeft(req, res) { ...@@ -62,6 +90,12 @@ async function studentLeft(req, res) {
res.success(result); res.success(result);
} }
/**
* 学生详情-中间部分
* @param req
* @param res
*/
async function studentCenter(req, res) { async function studentCenter(req, res) {
let reqConf = {studentId: 'String' }; let reqConf = {studentId: 'String' };
let { studentId } = eccReqParamater(reqConf, req.body, []); let { studentId } = eccReqParamater(reqConf, req.body, []);
...@@ -70,6 +104,12 @@ async function studentCenter(req, res) { ...@@ -70,6 +104,12 @@ async function studentCenter(req, res) {
res.success(result); res.success(result);
} }
/**
* 学生详情-右边部分
* @param req
* @param res
*/
async function studentRight(req, res) { async function studentRight(req, res) {
let reqConf = {studentId: 'String' }; let reqConf = {studentId: 'String' };
let { studentId } = eccReqParamater(reqConf, req.body, []); let { studentId } = eccReqParamater(reqConf, req.body, []);
...@@ -78,33 +118,71 @@ async function studentRight(req, res) { ...@@ -78,33 +118,71 @@ async function studentRight(req, res) {
res.success(result); res.success(result);
} }
/**学校页 */
/**
* 学生统计【学校页】-左边部分
* @param req
* @param res
*/
async function studentStatsSchoolLeft(req, res) { async function studentStatsSchoolLeft(req, res) {
let result = await getStudentStatsSchoolLeft(); let result = await getStudentStatsSchoolLeft();
res.success(result); res.success(result);
} }
/**
* 学生统计【学校页】-右边部分
* @param req
* @param res
*/
async function studentStatsSchoolRight(req, res) { async function studentStatsSchoolRight(req, res) {
let result = await getStudentStatsSchoolRight(); let result = await getStudentStatsSchoolRight();
res.success(result); res.success(result);
} }
/**
* 学生统计【学校页】-中间部分
* @param req
* @param res
*/
async function studentStatsSchoolCenter(req, res) { async function studentStatsSchoolCenter(req, res) {
let result = await getStudentStatsSchoolCenter(); let result = await getStudentStatsSchoolCenter();
res.success(result); res.success(result);
} }
/**年级页 */
/**
* 学生统计【年级页】-左边部分
* @param req
* @param res
*/
async function studentStatsGradeLeft(req, res) { async function studentStatsGradeLeft(req, res) {
let reqConf = {gradeId: 'String' }; let reqConf = {gradeId: 'String' };
let { gradeId } = eccReqParamater(reqConf, req.body, []); let { gradeId } = eccReqParamater(reqConf, req.body, []);
let result = await getStudentStatsGradeLeft(gradeId); let result = await getStudentStatsGradeLeft(gradeId);
res.success(result); res.success(result);
} }
/**
* 学生统计【年级页】-右边部分
* @param req
* @param res
*/
async function studentStatsGradeRight(req, res) { async function studentStatsGradeRight(req, res) {
let reqConf = {gradeId: 'String' }; let reqConf = {gradeId: 'String' };
let { gradeId } = eccReqParamater(reqConf, req.body, []); let { gradeId } = eccReqParamater(reqConf, req.body, []);
let result = await getStudentStatsGradeRight(gradeId); let result = await getStudentStatsGradeRight(gradeId);
res.success(result); res.success(result);
} }
/**
* 学生统计【年级页】-中间部分
* @param req
* @param res
*/
async function studentStatsGradeCenter(req, res) { async function studentStatsGradeCenter(req, res) {
let reqConf = {gradeId: 'String' }; let reqConf = {gradeId: 'String' };
let { gradeId } = eccReqParamater(reqConf, req.body, []); let { gradeId } = eccReqParamater(reqConf, req.body, []);
......
/**
* 教师路由
* select 属于查询相关接口
* stats 属于统计相关接口
*/
import * as asyncHandler from 'express-async-handler'; import * as asyncHandler from 'express-async-handler';
import { eccReqParamater } from '../tools/eccParam'; import { eccReqParamater } from '../tools/eccParam';
import { getTeacherExternal, getTeacherInternal } from '../biz/teacher'; import { getTeacherExternal, getTeacherInternal } from '../biz/teacher';
...@@ -5,19 +11,25 @@ import { getTeacherInfo, getTeacherList } from '../biz/teacherInfo'; ...@@ -5,19 +11,25 @@ import { getTeacherInfo, getTeacherList } from '../biz/teacherInfo';
import { GRADEENUM } from '../config/enum'; import { GRADEENUM } from '../config/enum';
export function setRouter(httpServer) { export function setRouter(httpServer) {
/**查询页 */
httpServer.post('/data/teacher/select/gradelist', asyncHandler(gradeList)); httpServer.post('/data/teacher/select/gradelist', asyncHandler(gradeList));
httpServer.post('/data/teacher/select/disciplinelist', asyncHandler(disciplineList)); httpServer.post('/data/teacher/select/disciplinelist', asyncHandler(disciplineList));
httpServer.post('/data/teacher/select/sexlist', asyncHandler(sexList)); httpServer.post('/data/teacher/select/sexlist', asyncHandler(sexList));
httpServer.post('/data/teacher/select/teacherlist', asyncHandler(teacherList)); httpServer.post('/data/teacher/select/teacherlist', asyncHandler(teacherList));
/**教师详情 */
httpServer.post('/data/teacher/select/teacherinfo', asyncHandler(teacherInfo)); httpServer.post('/data/teacher/select/teacherinfo', asyncHandler(teacherInfo));
/**教师对内 */
httpServer.post('/data/teacher/stats/internal', asyncHandler(teacherInternal)); httpServer.post('/data/teacher/stats/internal', asyncHandler(teacherInternal));
/**教师对外 */
httpServer.post('/data/teacher/stats/external', asyncHandler(teacherExternal)); httpServer.post('/data/teacher/stats/external', asyncHandler(teacherExternal));
} }
/**教师查询页 */ /**
* 年级列表
* @param req
* @param res
*/
async function gradeList(req, res) { async function gradeList(req, res) {
let dataList = []; let dataList = [];
for (let key in GRADEENUM) { for (let key in GRADEENUM) {
...@@ -30,6 +42,12 @@ async function gradeList(req, res) { ...@@ -30,6 +42,12 @@ async function gradeList(req, res) {
res.success({dataList}); res.success({dataList});
} }
/**
* 学科列表
* @param req
* @param res
*/
async function disciplineList(req, res) { async function disciplineList(req, res) {
let dataList = []; let dataList = [];
let disciplineTitleList = ["语文", "数学", "英语"]; let disciplineTitleList = ["语文", "数学", "英语"];
...@@ -41,6 +59,12 @@ async function disciplineList(req, res) { ...@@ -41,6 +59,12 @@ async function disciplineList(req, res) {
res.success({dataList}); res.success({dataList});
} }
/**
* 性别列表
* @param req
* @param res
*/
async function sexList(req, res) { async function sexList(req, res) {
let dataList = []; let dataList = [];
let sexTitleList = [ "女", "男"]; let sexTitleList = [ "女", "男"];
...@@ -52,6 +76,12 @@ async function sexList(req, res) { ...@@ -52,6 +76,12 @@ async function sexList(req, res) {
res.success({dataList}); res.success({dataList});
} }
/**
* 查询教师列表
* @param req
* @param res
*/
async function teacherList(req, res) { async function teacherList(req, res) {
let reqConf = {grade: 'Number', discipline:'String', sex:'Number', teacherName:'String' }; let reqConf = {grade: 'Number', discipline:'String', sex:'Number', teacherName:'String' };
let { grade, discipline, sex, teacherName } = eccReqParamater(reqConf, req.body, ["grade", "discipline", "sex", "teacherName"]); let { grade, discipline, sex, teacherName } = eccReqParamater(reqConf, req.body, ["grade", "discipline", "sex", "teacherName"]);
...@@ -61,7 +91,12 @@ async function teacherList(req, res) { ...@@ -61,7 +91,12 @@ async function teacherList(req, res) {
res.success(result); res.success(result);
} }
/**教师个人 */
/**
* 教师详情
* @param req
* @param res
*/
async function teacherInfo(req, res) { async function teacherInfo(req, res) {
let reqConf = {teacherId:'String' }; let reqConf = {teacherId:'String' };
let { teacherId } = eccReqParamater(reqConf, req.body); let { teacherId } = eccReqParamater(reqConf, req.body);
...@@ -70,11 +105,23 @@ async function teacherInfo(req, res) { ...@@ -70,11 +105,23 @@ async function teacherInfo(req, res) {
res.success(result); res.success(result);
} }
/**
* 教师画像对内
* @param req
* @param res
*/
async function teacherInternal(req, res) { async function teacherInternal(req, res) {
let result = await getTeacherInternal(); let result = await getTeacherInternal();
res.success(result); res.success(result);
} }
/**
* 教师画像对外
* @param req
* @param res
*/
async function teacherExternal(req, res) { async function teacherExternal(req, res) {
let result = await getTeacherExternal(); let result = await getTeacherExternal();
res.success(result); res.success(result);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment