APIHandler.js 32 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414
  1. let testData = [{
  2. "examInfo": {
  3. "owner": "school",
  4. "name": "评测-220419-02",
  5. "school": "hbcn",
  6. "creatorId": "张老师",
  7. "stuCount": 27, //学生数量
  8. "createTime": 1650354722557,
  9. "updateTime": 0,
  10. "startTime": 1650354722557,
  11. "endTime": 1650470399999,
  12. "year": 2022,
  13. "source": "0", // 评量模式
  14. "qamode": 0, // 是否为纸本测验
  15. "classes": [
  16. "hbcn0602",
  17. "88935be7-8e82-4f28-0f3b-c189d49af2d7",
  18. "287ff146-addf-4a67-815d-22d1f2fc8a02"
  19. ],
  20. "stuLists": [],
  21. "groupLists": [],
  22. "targets": [
  23. [
  24. "class",
  25. 0,
  26. "hbcn0602"
  27. ],
  28. [
  29. "class",
  30. 1,
  31. "88935be7-8e82-4f28-0f3b-c189d49af2d7"
  32. ],
  33. [
  34. "class",
  35. 2,
  36. "287ff146-addf-4a67-815d-22d1f2fc8a02"
  37. ]
  38. ],
  39. "papers": [{
  40. "id": "ddd7342b-05a8-fa99-d5fb-cca53f3fef24",
  41. "code": "Paper-hbcn",
  42. "name": "精进学习-个人20220228",
  43. "blob": "/exam/d32d4104-1c1b-4d42-b389-7a5c5b6a64a5/paper/8b94c6b6-2572-41e5-89b9-a82fcf13891e",
  44. "scope": "school",
  45. "multipleRule": 1,
  46. "point": [
  47. 20,
  48. 20,
  49. 20,
  50. 20,
  51. 5,
  52. 5,
  53. 10
  54. ],
  55. "answers": [
  56. [
  57. "A"
  58. ],
  59. [
  60. "C"
  61. ],
  62. [
  63. "A"
  64. ],
  65. [
  66. "A"
  67. ],
  68. [],
  69. [],
  70. []
  71. ],
  72. "knowledge": [
  73. [],
  74. [
  75. "醍摩豆"
  76. ],
  77. [
  78. "醍摩豆"
  79. ],
  80. [
  81. "语文"
  82. ],
  83. [
  84. "语文"
  85. ],
  86. [
  87. "醍摩豆"
  88. ],
  89. []
  90. ],
  91. "type": [
  92. "single",
  93. "single",
  94. "single",
  95. "single",
  96. "complete",
  97. "complete",
  98. "complete"
  99. ],
  100. "field": [
  101. 1,
  102. 1,
  103. 2,
  104. 3,
  105. 3,
  106. 1,
  107. 1
  108. ],
  109. "sheet": null,
  110. "sheetNo": null,
  111. "mode": null,
  112. "time": 0
  113. }],
  114. "type": "",
  115. "period": {
  116. "id": "463db08d-cbe7-48a0-a81a-fc39b3c1fep1",
  117. "name": "幼教test"
  118. }, // 评量学段
  119. "grades": [{
  120. "id": "0",
  121. "name": "一年级"
  122. },
  123. {
  124. "id": "1",
  125. "name": "二年级"
  126. },
  127. {
  128. "id": "2",
  129. "name": "三年级"
  130. }
  131. ],
  132. "subjects": [{
  133. "id": "8b94c6b6-2572-41e5-89b9-a82fcf13891e",
  134. "name": "语文",
  135. "classCount": 0
  136. }],
  137. "progress": "finish",
  138. "scope": "school",
  139. "examType": {
  140. "id": "662332e5-8717-8b81-cfcc-614f6ccbf0fa",
  141. "name": "期中考试"
  142. }, // 评量类型
  143. "id": "d32d4104-1c1b-4d42-b389-7a5c5b6a64a5",
  144. "code": "Exam-hbcn",
  145. "pk": "Exam",
  146. "ttl": -1
  147. }
  148. }, {
  149. "examInfo": {
  150. "owner": "school",
  151. "name": "评测-220419-03",
  152. "school": "hbcn",
  153. "creatorId": "张老师",
  154. "stuCount": 27, //学生数量
  155. "createTime": 1650354722557,
  156. "updateTime": 0,
  157. "startTime": 1650354722557,
  158. "endTime": 1650470399999,
  159. "year": 2022,
  160. "source": "0", // 评量模式
  161. "qamode": 0, // 是否为纸本测验
  162. "classes": [
  163. "hbcn0602",
  164. "88935be7-8e82-4f28-0f3b-c189d49af2d7",
  165. "287ff146-addf-4a67-815d-22d1f2fc8a02"
  166. ],
  167. "stuLists": [],
  168. "groupLists": [],
  169. "targets": [
  170. [
  171. "class",
  172. 0,
  173. "hbcn0602"
  174. ],
  175. [
  176. "class",
  177. 1,
  178. "88935be7-8e82-4f28-0f3b-c189d49af2d7"
  179. ],
  180. [
  181. "class",
  182. 2,
  183. "287ff146-addf-4a67-815d-22d1f2fc8a02"
  184. ]
  185. ],
  186. "papers": [{
  187. "id": "ddd7342b-05a8-fa99-d5fb-cca53f3fef24",
  188. "code": "Paper-hbcn",
  189. "name": "精进学习0228",
  190. "blob": "/exam/d32d4104-1c1b-4d42-b389-7a5c5b6a64a5/paper/8b94c6b6-2572-41e5-89b9-a82fcf13891e",
  191. "scope": "school",
  192. "multipleRule": 1,
  193. "point": [
  194. 20,
  195. 20,
  196. 20,
  197. 20,
  198. 5,
  199. 5,
  200. 10
  201. ],
  202. "answers": [
  203. [
  204. "A"
  205. ],
  206. [
  207. "C"
  208. ],
  209. [
  210. "A"
  211. ],
  212. [
  213. "A"
  214. ],
  215. [],
  216. [],
  217. []
  218. ],
  219. "knowledge": [
  220. [],
  221. [
  222. "醍摩豆"
  223. ],
  224. [
  225. "醍摩豆"
  226. ],
  227. [
  228. "语文"
  229. ],
  230. [
  231. "语文"
  232. ],
  233. [
  234. "醍摩豆"
  235. ],
  236. []
  237. ],
  238. "type": [
  239. "single",
  240. "single",
  241. "single",
  242. "single",
  243. "complete",
  244. "complete",
  245. "complete"
  246. ],
  247. "field": [
  248. 1,
  249. 1,
  250. 2,
  251. 3,
  252. 3,
  253. 1,
  254. 1
  255. ],
  256. "sheet": null,
  257. "sheetNo": null,
  258. "mode": null,
  259. "time": 0
  260. }],
  261. "type": "",
  262. "period": {
  263. "id": "463db08d-cbe7-48a0-a81a-fc39b3c1fep1",
  264. "name": "幼教test"
  265. }, // 评量学段
  266. "grades": [{
  267. "id": "0",
  268. "name": "一年级"
  269. },
  270. {
  271. "id": "1",
  272. "name": "二年级"
  273. },
  274. {
  275. "id": "2",
  276. "name": "三年级"
  277. }
  278. ],
  279. "subjects": [{
  280. "id": "8b94c6b6-2572-41e5-89b9-a82fcf13891e",
  281. "name": "数学",
  282. "classCount": 0
  283. }],
  284. "progress": "going",
  285. "scope": "school",
  286. "examType": {
  287. "id": "662332e5-8717-8b81-cfcc-614f6ccbf0fa",
  288. "name": "期中考试"
  289. }, // 评量类型
  290. "id": "d32d4104-1c1b-4d42-b389-7a5c5b6a64a5",
  291. "code": "Exam-hbcn",
  292. "pk": "Exam",
  293. "ttl": -1
  294. }
  295. }, {
  296. "examInfo": {
  297. "owner": "school",
  298. "name": "评测-220419-04",
  299. "school": "hbcn",
  300. "creatorId": "张老师",
  301. "stuCount": 27, //学生数量
  302. "createTime": 1650354722557,
  303. "updateTime": 0,
  304. "startTime": 1650354722557,
  305. "endTime": 1650470399999,
  306. "year": 2022,
  307. "source": "0", // 评量模式
  308. "qamode": 0, // 是否为纸本测验
  309. "classes": [
  310. "hbcn0602",
  311. "88935be7-8e82-4f28-0f3b-c189d49af2d7",
  312. "287ff146-addf-4a67-815d-22d1f2fc8a02"
  313. ],
  314. "stuLists": [],
  315. "groupLists": [],
  316. "targets": [
  317. [
  318. "class",
  319. 0,
  320. "hbcn0602"
  321. ],
  322. [
  323. "class",
  324. 1,
  325. "88935be7-8e82-4f28-0f3b-c189d49af2d7"
  326. ],
  327. [
  328. "class",
  329. 2,
  330. "287ff146-addf-4a67-815d-22d1f2fc8a02"
  331. ]
  332. ],
  333. "papers": [{
  334. "id": "ddd7342b-05a8-fa99-d5fb-cca53f3fef24",
  335. "code": "Paper-hbcn",
  336. "name": "精进学习-个人20220228",
  337. "blob": "/exam/d32d4104-1c1b-4d42-b389-7a5c5b6a64a5/paper/8b94c6b6-2572-41e5-89b9-a82fcf13891e",
  338. "scope": "school",
  339. "multipleRule": 1,
  340. "point": [
  341. 20,
  342. 20,
  343. 20,
  344. 20,
  345. 5,
  346. 5,
  347. 10
  348. ],
  349. "answers": [
  350. [
  351. "A"
  352. ],
  353. [
  354. "C"
  355. ],
  356. [
  357. "A"
  358. ],
  359. [
  360. "A"
  361. ],
  362. [],
  363. [],
  364. []
  365. ],
  366. "knowledge": [
  367. [],
  368. [
  369. "醍摩豆"
  370. ],
  371. [
  372. "醍摩豆"
  373. ],
  374. [
  375. "语文"
  376. ],
  377. [
  378. "语文"
  379. ],
  380. [
  381. "醍摩豆"
  382. ],
  383. []
  384. ],
  385. "type": [
  386. "single",
  387. "single",
  388. "single",
  389. "single",
  390. "complete",
  391. "complete",
  392. "complete"
  393. ],
  394. "field": [
  395. 1,
  396. 1,
  397. 2,
  398. 3,
  399. 3,
  400. 1,
  401. 1
  402. ],
  403. "sheet": null,
  404. "sheetNo": null,
  405. "mode": null,
  406. "time": 0
  407. }],
  408. "type": "",
  409. "period": {
  410. "id": "463db08d-cbe7-48a0-a81a-fc39b3c1fep1",
  411. "name": "幼教test"
  412. }, // 评量学段
  413. "grades": [{
  414. "id": "0",
  415. "name": "一年级"
  416. },
  417. {
  418. "id": "1",
  419. "name": "二年级"
  420. },
  421. {
  422. "id": "2",
  423. "name": "三年级"
  424. }
  425. ],
  426. "subjects": [{
  427. "id": "8b94c6b6-2572-41e5-89b9-a82fcf13891e",
  428. "name": "英语",
  429. "classCount": 0
  430. }],
  431. "progress": "going",
  432. "scope": "school",
  433. "examType": {
  434. "id": "662332e5-8717-8b81-cfcc-614f6ccbf0fa",
  435. "name": "期中考试"
  436. }, // 评量类型
  437. "id": "d32d4104-1c1b-4d42-b389-7a5c5b6a64a5",
  438. "code": "Exam-hbcn",
  439. "pk": "Exam",
  440. "ttl": -1
  441. }
  442. }]
  443. let homeworkData = [{
  444. "work": {
  445. "owner": "teacher", // teacher 个人
  446. "school": null, // 如果owner是school 那这个的值为 学校编码
  447. "name": "作业活动-01", // 活动名称
  448. "description": "<p>富文本富文本22富文本22富文本22</p>", // 活动描述富文本
  449. "creatorId": "张老师", // 创建者id
  450. "progress": "finish", // 活动进度 finish 完成 going 进行中 pending 待发布
  451. "scope": "private", // 活动范围 private 个人 school 学校
  452. "classes": [], // 活动班级行政班ID集合
  453. "stuLists": [
  454. "6a3d133b-88b3-4a82-94c9-8cbb6bc4d50d"
  455. ], // 活动教学班ID集合
  456. "targetType": "student", // 活动目标类型 student 学生
  457. "startTime": 1648208343141, // 活动开始时间
  458. "endTime": 1648310399999, // 活动结束时间
  459. "createTime": 1648208414715, // 活动创建时间
  460. "updateTime": 0, // 活动更新时间
  461. "blob": null, // 作业活动对应Blob容器的地址
  462. "status": 0, // 活动状态
  463. "allowSupply": true, // 是否允许补交作业
  464. "allowComment": true, // 是否允许学生互评
  465. "extLimit": [], // 提交作业的文件类型限制
  466. "attachments": [{
  467. "name": "文件名称313", // 文件名
  468. "url": "https://teammodeltest.blob.core.chinacloudapi.cn/hbcn/image/000222111.png", // 文件地址
  469. "size": 73360, // 文件大小
  470. "createTime": 1626864529474, // 文件创建时间
  471. "extension": "PNG", // 文件扩展名
  472. "type": "excel", // 文件类型
  473. "blob": "/image/000222111.png", // 文件地址
  474. "hash": null, // 文件hash值
  475. "duration": 0 // 文件时长
  476. }],
  477. "recordUrl": "/homework/82a124df-6d19-e987-5ae2-60af9a7d5034/record.json", // 作业记录地址
  478. "mustSubmit": true, // 是否必须提交文件
  479. "id": "82a124df-6d19-e987-5ae2-60af9a7d5034", // 作业id
  480. "code": "Homework-张老师", // 作业编码
  481. "pk": "Homework", // 作业表名
  482. "ttl": -1
  483. },
  484. "status": 200
  485. }, {
  486. "work": {
  487. "owner": "teacher", // teacher 个人
  488. "school": null, // 如果owner是school 那这个的值为 学校编码
  489. "name": "作业活动-02", // 活动名称
  490. "description": "<p>活动描述富文本富文本22富文本22</p>", // 活动描述富文本
  491. "creatorId": "张老师", // 创建者id
  492. "progress": "finish", // 活动进度 finish 完成 going 进行中 pending 待发布
  493. "scope": "private", // 活动范围 private 个人 school 学校
  494. "classes": [], // 活动班级行政班ID集合
  495. "stuLists": [
  496. "6a3d133b-88b3-4a82-94c9-8cbb6bc4d50d"
  497. ], // 活动教学班ID集合
  498. "targetType": "student", // 活动目标类型 student 学生
  499. "startTime": 1648208343141, // 活动开始时间
  500. "endTime": 1648310399999, // 活动结束时间
  501. "createTime": 1648208414715, // 活动创建时间
  502. "updateTime": 0, // 活动更新时间
  503. "blob": null, // 作业活动对应Blob容器的地址
  504. "status": 0, // 活动状态
  505. "allowSupply": true, // 是否允许补交作业
  506. "allowComment": true, // 是否允许学生互评
  507. "extLimit": [], // 提交作业的文件类型限制
  508. "attachments": [{
  509. "name": "000222111.png", // 文件名
  510. "url": "https://teammodeltest.blob.core.chinacloudapi.cn/hbcn/image/000222111.png", // 文件地址
  511. "size": 43360, // 文件大小
  512. "createTime": 1626864529474, // 文件创建时间
  513. "extension": "PNG", // 文件扩展名
  514. "type": "pdf", // 文件类型
  515. "blob": "/image/000222111.png", // 文件地址
  516. "hash": null, // 文件hash值
  517. "duration": 0 // 文件时长
  518. }, {
  519. "name": "000222111.png", // 文件名
  520. "url": "https://teammodeltest.blob.core.chinacloudapi.cn/hbcn/image/000222111.png", // 文件地址
  521. "size": 23360, // 文件大小
  522. "createTime": 1626864529474, // 文件创建时间
  523. "extension": "PNG", // 文件扩展名
  524. "type": "image", // 文件类型
  525. "blob": "/image/000222111.png", // 文件地址
  526. "hash": null, // 文件hash值
  527. "duration": 0 // 文件时长
  528. }],
  529. "recordUrl": "/homework/82a124df-6d19-e987-5ae2-60af9a7d5034/record.json", // 作业记录地址
  530. "mustSubmit": true, // 是否必须提交文件
  531. "id": "82a124df-6d19-e987-5ae2-60af9a7d5034", // 作业id
  532. "code": "Homework-张老师", // 作业编码
  533. "pk": "Homework", // 作业表名
  534. "ttl": -1
  535. },
  536. "status": 200
  537. }, {
  538. "work": {
  539. "owner": "teacher", // teacher 个人
  540. "school": null, // 如果owner是school 那这个的值为 学校编码
  541. "name": "作业活动-03", // 活动名称
  542. "description": "<p>描述富文本富文本22富文本22富文本22</p>", // 活动描述富文本
  543. "creatorId": "张老师", // 创建者id
  544. "progress": "finish", // 活动进度 finish 完成 going 进行中 pending 待发布
  545. "scope": "private", // 活动范围 private 个人 school 学校
  546. "classes": [], // 活动班级行政班ID集合
  547. "stuLists": [
  548. "6a3d133b-88b3-4a82-94c9-8cbb6bc4d50d"
  549. ], // 活动教学班ID集合
  550. "targetType": "student", // 活动目标类型 student 学生
  551. "startTime": 1648208343141, // 活动开始时间
  552. "endTime": 1648310399999, // 活动结束时间
  553. "createTime": 1648208414715, // 活动创建时间
  554. "updateTime": 0, // 活动更新时间
  555. "blob": null, // 作业活动对应Blob容器的地址
  556. "status": 0, // 活动状态
  557. "allowSupply": true, // 是否允许补交作业
  558. "allowComment": true, // 是否允许学生互评
  559. "extLimit": [], // 提交作业的文件类型限制
  560. "attachments": [{
  561. "name": "000222111.png", // 文件名
  562. "url": "https://teammodeltest.blob.core.chinacloudapi.cn/hbcn/image/000222111.png", // 文件地址
  563. "size": 143360, // 文件大小
  564. "createTime": 1626864529474, // 文件创建时间
  565. "extension": "PNG", // 文件扩展名
  566. "type": "word", // 文件类型
  567. "blob": "/image/000222111.png", // 文件地址
  568. "hash": null, // 文件hash值
  569. "duration": 0 // 文件时长
  570. }],
  571. "recordUrl": "/homework/82a124df-6d19-e987-5ae2-60af9a7d5034/record.json", // 作业记录地址
  572. "mustSubmit": true, // 是否必须提交文件
  573. "id": "82a124df-6d19-e987-5ae2-60af9a7d5034", // 作业id
  574. "code": "Homework-张老师", // 作业编码
  575. "pk": "Homework", // 作业表名
  576. "ttl": -1
  577. },
  578. "status": 200
  579. }, {
  580. "work": {
  581. "owner": "teacher", // teacher 个人
  582. "school": null, // 如果owner是school 那这个的值为 学校编码
  583. "name": "作业活动-04", // 活动名称
  584. "description": "<p>富文本11富文本22富文本22富文本22</p>", // 活动描述富文本
  585. "creatorId": "张老师", // 创建者id
  586. "progress": "going", // 活动进度 finish 完成 going 进行中 pending 待发布
  587. "scope": "private", // 活动范围 private 个人 school 学校
  588. "classes": [], // 活动班级行政班ID集合
  589. "stuLists": [
  590. "6a3d133b-88b3-4a82-94c9-8cbb6bc4d50d"
  591. ], // 活动教学班ID集合
  592. "targetType": "student", // 活动目标类型 student 学生
  593. "startTime": 1648208343141, // 活动开始时间
  594. "endTime": 1648310399999, // 活动结束时间
  595. "createTime": 1648208414715, // 活动创建时间
  596. "updateTime": 0, // 活动更新时间
  597. "blob": null, // 作业活动对应Blob容器的地址
  598. "status": 0, // 活动状态
  599. "allowSupply": true, // 是否允许补交作业
  600. "allowComment": true, // 是否允许学生互评
  601. "extLimit": [], // 提交作业的文件类型限制
  602. "attachments": [{
  603. "name": "000222111.png", // 文件名
  604. "url": "https://teammodeltest.blob.core.chinacloudapi.cn/hbcn/image/000222111.png", // 文件地址
  605. "size": 48360, // 文件大小
  606. "createTime": 1626864529474, // 文件创建时间
  607. "extension": "PNG", // 文件扩展名
  608. "type": "word", // 文件类型
  609. "blob": "/image/000222111.png", // 文件地址
  610. "hash": null, // 文件hash值
  611. "duration": 0 // 文件时长
  612. }],
  613. "recordUrl": "/homework/82a124df-6d19-e987-5ae2-60af9a7d5034/record.json", // 作业记录地址
  614. "mustSubmit": true, // 是否必须提交文件
  615. "id": "82a124df-6d19-e987-5ae2-60af9a7d5034", // 作业id
  616. "code": "Homework-张老师", // 作业编码
  617. "pk": "Homework", // 作业表名
  618. "ttl": -1
  619. },
  620. "status": 200
  621. }, {
  622. "work": {
  623. "owner": "teacher", // teacher 个人
  624. "school": null, // 如果owner是school 那这个的值为 学校编码
  625. "name": "作业活动-05", // 活动名称
  626. "description": "<p>富文本22富文本22富文本22富文本22</p>", // 活动描述富文本
  627. "creatorId": "张老师", // 创建者id
  628. "progress": "going", // 活动进度 finish 完成 going 进行中 pending 待发布
  629. "scope": "private", // 活动范围 private 个人 school 学校
  630. "classes": [], // 活动班级行政班ID集合
  631. "stuLists": [
  632. "6a3d133b-88b3-4a82-94c9-8cbb6bc4d50d"
  633. ], // 活动教学班ID集合
  634. "targetType": "student", // 活动目标类型 student 学生
  635. "startTime": 1648208343141, // 活动开始时间
  636. "endTime": 1648310399999, // 活动结束时间
  637. "createTime": 1648208414715, // 活动创建时间
  638. "updateTime": 0, // 活动更新时间
  639. "blob": null, // 作业活动对应Blob容器的地址
  640. "status": 0, // 活动状态
  641. "allowSupply": true, // 是否允许补交作业
  642. "allowComment": true, // 是否允许学生互评
  643. "extLimit": [], // 提交作业的文件类型限制
  644. "attachments": [{
  645. "name": "000222111.png", // 文件名
  646. "url": "https://teammodeltest.blob.core.chinacloudapi.cn/hbcn/image/000222111.png", // 文件地址
  647. "size": 53360, // 文件大小
  648. "createTime": 1626864529474, // 文件创建时间
  649. "extension": "PNG", // 文件扩展名
  650. "type": "image", // 文件类型
  651. "blob": "/image/000222111.png", // 文件地址
  652. "hash": null, // 文件hash值
  653. "duration": 0 // 文件时长
  654. }],
  655. "recordUrl": "/homework/82a124df-6d19-e987-5ae2-60af9a7d5034/record.json", // 作业记录地址
  656. "mustSubmit": true, // 是否必须提交文件
  657. "id": "82a124df-6d19-e987-5ae2-60af9a7d5034", // 作业id
  658. "code": "Homework-张老师", // 作业编码
  659. "pk": "Homework", // 作业表名
  660. "ttl": -1
  661. },
  662. "status": 200
  663. }]
  664. let activityData = [{
  665. "vote": {
  666. "owner": "teacher",
  667. "school": null,
  668. "name": "投票",
  669. "creatorId": "张老师",
  670. "description": "<p>家长参与的投票活动</p>",
  671. "progress": "going",
  672. "options": [{
  673. "code": "A",
  674. "value": "<p>一方案富文本</p>",
  675. "desc": null
  676. },
  677. {
  678. "code": "B",
  679. "value": "<p>二方案富文本</p>",
  680. "desc": null
  681. }
  682. ], // 投票选项
  683. "secret": false, // 是否是匿名投票
  684. "times": "once", // 投票频率 once 一次 day 一天一次 week 一周一次
  685. "voteNum": 1, // 可投票数量
  686. "repeat": false, // 是否允许重复投票
  687. "scope": "private",
  688. "classes": [],
  689. "stuLists": [
  690. "d2bb9111-d6f3-d97f-9a6d-5f6b7e653279",
  691. "d25f3dbf-c7d5-da58-6155-cc584439aac8"
  692. ],
  693. "tchLists": [],
  694. "groupLists": [],
  695. "targetType": "student",
  696. "targets": [
  697. "d2bb9111-d6f3-d97f-9a6d-5f6b7e653279",
  698. "d25f3dbf-c7d5-da58-6155-cc584439aac8"
  699. ],
  700. "startTime": 1647918299414,
  701. "createTime": 1647918299414,
  702. "endTime": 1648051199999,
  703. "updateTime": 0,
  704. "recordUrl": "/vote/2224ae0f-056b-4188-aa0e-5b5f3806d70f/record.json",
  705. "status": 0,
  706. "size": 0,
  707. "areaId": null,
  708. "pId": null,
  709. "publish": 0,
  710. "id": "2224ae0f-056b-4188-aa0e-5b5f3806d70f",
  711. "code": "Vote-张老师",
  712. "pk": "Vote",
  713. "ttl": -1
  714. },
  715. "status": 200
  716. }, {
  717. "survey": {
  718. "owner": "teacher",
  719. "school": null,
  720. "name": "问卷",
  721. "description": "<p>家长问卷示例</p>",
  722. "creatorId": "张老师",
  723. "progress": "finish",
  724. "scope": "private",
  725. "classes": [],
  726. "stuLists": [
  727. "285af18b-cc2b-7045-8726-acddd5b1a3c9"
  728. ],
  729. "tchLists": [],
  730. "groupLists": [],
  731. "targetType": "student",
  732. "targets": [
  733. "285af18b-cc2b-7045-8726-acddd5b1a3c9"
  734. ],
  735. "startTime": 1647934008496,
  736. "endTime": 1648051199999,
  737. "createTime": 1647934021458,
  738. "updateTime": 0,
  739. "blob": "/survey/710b92d4-803f-3381-cad1-6a5ebc7f7544/index.json",
  740. "recordUrl": "/survey/710b92d4-803f-3381-cad1-6a5ebc7f7544/record.json",
  741. "answers": [
  742. [
  743. "A",
  744. "B",
  745. "C",
  746. "D"
  747. ]
  748. ],
  749. "status": 0,
  750. "size": 830,
  751. "areaId": null,
  752. "pId": null,
  753. "publish": 0,
  754. "id": "710b92d4-803f-3381-cad1-6a5ebc7f7544",
  755. "code": "Survey-张老师",
  756. "pk": "Survey",
  757. "ttl": -1
  758. },
  759. "status": 200
  760. }, ]
  761. //获取完成数据
  762. let testFinishData = testData.filter(x => x.examInfo.progress === 'finish')
  763. let homeworkFinishData = homeworkData.filter(x => x.work.progress === 'finish')
  764. let activityFinishData = activityData.filter(x => x.vote && x.vote.progress === 'finish')
  765. activityFinishData.push(...activityData.filter(x => x.survey && x.survey.progress === 'finish'))
  766. //初始化App数据
  767. function initApp(phoneNumber) {
  768. //const parentDetailData = await uni.$http.post('',numData.phoneNumber)
  769. let parentDetail = {
  770. phoneNumber: phoneNumber,
  771. name: '家长姓名',
  772. childrenList: [{
  773. avatar: '/static/default-icons/boy.png',
  774. name: '张三',
  775. gender: '男',
  776. classid: '0301',
  777. class: '三年级一班',
  778. age:9,
  779. tmdid: 'tmdid01',
  780. schoolname: '研发学校'
  781. }, {
  782. avatar: '/static/default-icons/girl.png',
  783. name: '张梅',
  784. gender: '女',
  785. classid: '0504',
  786. class: '五年级四班',
  787. age:11,
  788. tmdid: 'tmdid03',
  789. schoolname: '研发学校'
  790. }, ]
  791. }
  792. this.$store.commit('m_parent/updateParentDetail', parentDetail)
  793. let semesterList = [
  794. ['21学年下学期', '21学年上学期', '20学年下学期', '20学年上学期']
  795. ]
  796. this.$store.commit('m_children/updateChildrenSemesterList', semesterList)
  797. this.$store.commit('m_children/updateChildrenSemester', semesterList[0][0])
  798. let myData = {
  799. subscribeLevel: '专业版',
  800. subscribePrivilege: '这里是订阅权益描述信息',
  801. subscribeTime: '2022.2.15-2025.2.15',
  802. msgList: [{
  803. icon: 't-icon t-icon-shuju',
  804. title: '成绩通知',
  805. msgTime: '12分钟前',
  806. content: '您的孩子【张梅】在 【青城山学校】的【2020年语文期末测试】成绩已经生成',
  807. image: 'https://image.meiye.art/pic_9ikZaVYnJE38Ao6AZlVIx?imageMogr2/thumbnail/450x/interlace/1'
  808. },
  809. {
  810. icon: 't-icon t-icon-tishi',
  811. title: '系统通知',
  812. msgTime: '20分钟前',
  813. content: '您以成功绑定【青城山学校】【五年级8班】【张梅】学生。',
  814. image: 'https://image.meiye.art/pic_ucQUd7WwkuW1vKvjbgUlv?imageMogr2/thumbnail/450x/interlace/1'
  815. },
  816. {
  817. icon: 't-icon t-icon-bianji',
  818. title: '任务通知',
  819. msgTime: '40分钟前',
  820. content: '您的孩子【张梅】班主任李老师给您发布一个新的问卷活动【周末孩子表现问卷调查】',
  821. image: 'https://image.meiye.art/pic_1628927180566LfOmH3IV5i24Mmc65BGE0?imageMogr2/thumbnail/450x/interlace/1'
  822. }
  823. ]
  824. }
  825. this.$store.commit('m_parent/updateMyData', myData)
  826. }
  827. //获取首页数据
  828. function initHome() {
  829. let classList = [{
  830. title: '文章鉴赏',
  831. name: '语文',
  832. teacher: '王老师',
  833. time: '09:00-09:50',
  834. timeFrame: '上午第一节',
  835. resource: 'https://klxxcdn.oss-cn-hangzhou.aliyuncs.com/histudy/hrm/media/bg2.mp4',
  836. }, {
  837. title: '计算练习',
  838. name: '数学',
  839. teacher: '李老师',
  840. time: '10:00-10:50',
  841. timeFrame: '上午第二节',
  842. resource: 'https://klxxcdn.oss-cn-hangzhou.aliyuncs.com/histudy/hrm/media/bg1.mp4',
  843. }, {
  844. title: '阅读专项训练',
  845. name: '外语',
  846. teacher: '张老师',
  847. time: '11:00-11:50',
  848. timeFrame: '上午第三节',
  849. resource: 'https://klxxcdn.oss-cn-hangzhou.aliyuncs.com/histudy/hrm/media/bg3.mp4',
  850. }, {
  851. title: '思想品德教育',
  852. name: '思品',
  853. teacher: '史老师',
  854. time: '11:50-14:50',
  855. timeFrame: '下午第一节',
  856. resource: 'https://klxxcdn.oss-cn-hangzhou.aliyuncs.com/histudy/hrm/media/bg2.mp4',
  857. }, {
  858. title: '户外运动锻炼',
  859. name: '体育',
  860. teacher: '李老师',
  861. time: '14:50-17:50',
  862. timeFrame: '下午第二节',
  863. resource: 'https://klxxcdn.oss-cn-hangzhou.aliyuncs.com/histudy/hrm/media/bg1.mp4',
  864. }, {
  865. title: '科学学习实验',
  866. name: '科学',
  867. teacher: '张老师',
  868. time: '17:55-20:50',
  869. timeFrame: '上午第三节',
  870. resource: 'https://klxxcdn.oss-cn-hangzhou.aliyuncs.com/histudy/hrm/media/bg3.mp4',
  871. }]
  872. this.$store.commit('m_children/updateClassList', classList)
  873. let records = [{
  874. date: 28,
  875. month: 3,
  876. year: 2022,
  877. time: '08:25'
  878. }, {
  879. date: 29,
  880. month: 3,
  881. year: 2022,
  882. time: '08:27'
  883. }, {
  884. date: 30,
  885. month: 3,
  886. year: 2022,
  887. time: '08:15'
  888. }, {
  889. date: 31,
  890. month: 3,
  891. year: 2022,
  892. time: '08:19'
  893. }, {
  894. date: 2,
  895. month: 4,
  896. year: 2022,
  897. time: '08:25'
  898. }, {
  899. date: 3,
  900. month: 4,
  901. year: 2022,
  902. time: '08:09'
  903. }, {
  904. date: 4,
  905. month: 4,
  906. year: 2022,
  907. time: '08:20'
  908. }, {
  909. date: 5,
  910. month: 4,
  911. year: 2022,
  912. time: '08:02'
  913. }, {
  914. date: 6,
  915. month: 4,
  916. year: 2022,
  917. time: '08:05'
  918. }, {
  919. date: 7,
  920. month: 4,
  921. year: 2022,
  922. time: '08:22'
  923. }, {
  924. date: 8,
  925. month: 4,
  926. year: 2022,
  927. time: '08:05'
  928. }, {
  929. date: 9,
  930. month: 4,
  931. year: 2022,
  932. time: '08:15'
  933. }, {
  934. date: 10,
  935. month: 4,
  936. year: 2022,
  937. time: '08:19'
  938. }, {
  939. date: 11,
  940. month: 4,
  941. year: 2022,
  942. time: '08:20'
  943. }, {
  944. date: 12,
  945. month: 4,
  946. year: 2022,
  947. time: '08:16'
  948. }, {
  949. date: 13,
  950. month: 4,
  951. year: 2022,
  952. time: '08:13'
  953. }, {
  954. date: 18,
  955. month: 4,
  956. year: 2022,
  957. time: '08:01'
  958. }, {
  959. date: 19,
  960. month: 4,
  961. year: 2022,
  962. time: '08:06'
  963. }, {
  964. date: 20,
  965. month: 4,
  966. year: 2022,
  967. time: '08:06'
  968. }, {
  969. date: 5,
  970. month: 5,
  971. year: 2022,
  972. time: '08:06'
  973. }, {
  974. date: 6,
  975. month: 5,
  976. year: 2022,
  977. time: '08:06'
  978. }, {
  979. date: 7,
  980. month: 5,
  981. year: 2022,
  982. time: '08:17'
  983. }]
  984. this.$store.commit('m_children/updateRecords', records)
  985. let homeChartData = {
  986. //评测进度条数据
  987. evaluationArcbar: {
  988. "series": [{
  989. "name": "评测完成",
  990. "data": '',
  991. "color": "#4169E1"
  992. }]
  993. },
  994. //作业进度条数据
  995. homeworkArcbar: {
  996. "series": [{
  997. "name": "作业完成",
  998. "data": '',
  999. "color": "#ff8caf"
  1000. }]
  1001. },
  1002. //活动进度条数据
  1003. activityArcbar: {
  1004. "series": [{
  1005. "name": "活动完成",
  1006. "data": '',
  1007. "color": "#f9c752"
  1008. }]
  1009. },
  1010. }
  1011. homeChartData.evaluationArcbar.series[0].data = (testFinishData.length / testData.length).toFixed(2)
  1012. homeChartData.homeworkArcbar.series[0].data = (homeworkFinishData.length / homeworkData.length).toFixed(2)
  1013. homeChartData.activityArcbar.series[0].data = (activityFinishData.length / activityData.length).toFixed(2)
  1014. this.$store.commit('m_chart/updateHomeChart', homeChartData)
  1015. }
  1016. //获取成绩数据
  1017. function initGrade(semester, tmdid) {
  1018. let testList = [
  1019. "开学考试",
  1020. "第一月考",
  1021. "第二月考",
  1022. "期中考试",
  1023. "第三月考",
  1024. "期末考试"
  1025. ]
  1026. let subjectList = [
  1027. "数学",
  1028. "语文",
  1029. "英语",
  1030. "体育",
  1031. "科学",
  1032. "思品"
  1033. ]
  1034. //成绩图表数据
  1035. let gradeData = {
  1036. //学期折线图数据
  1037. semesterLineChart: {
  1038. //总成绩
  1039. generalComparison: {
  1040. categories: testList,
  1041. series: [{
  1042. name: "孩子总分",
  1043. data: [
  1044. 556,
  1045. 577,
  1046. 540,
  1047. 588,
  1048. 563,
  1049. 594
  1050. ]
  1051. },
  1052. {
  1053. name: "班级平均分",
  1054. data: [
  1055. 460,
  1056. 477,
  1057. 455,
  1058. 522,
  1059. 538,
  1060. 511
  1061. ]
  1062. },
  1063. {
  1064. name: "年级平均分",
  1065. data: [
  1066. 533,
  1067. 476,
  1068. 484,
  1069. 547,
  1070. 485,
  1071. 502
  1072. ]
  1073. }
  1074. ],
  1075. },
  1076. //单科与平均对比
  1077. singleAverageComparison: '',
  1078. //单科对比
  1079. subjectComparison: {
  1080. categories: testList,
  1081. series: [{
  1082. name: subjectList[0],
  1083. data: [
  1084. 90,
  1085. 95,
  1086. 92,
  1087. 100,
  1088. 88,
  1089. 99
  1090. ]
  1091. },
  1092. {
  1093. name: subjectList[1],
  1094. data: [
  1095. 95,
  1096. 98,
  1097. 84,
  1098. 92,
  1099. 93,
  1100. 89
  1101. ]
  1102. },
  1103. {
  1104. name: subjectList[2],
  1105. data: [
  1106. 98,
  1107. 89,
  1108. 97,
  1109. 84,
  1110. 95,
  1111. 89
  1112. ]
  1113. },
  1114. {
  1115. name: subjectList[3],
  1116. data: [
  1117. 91,
  1118. 72,
  1119. 92,
  1120. 89,
  1121. 97,
  1122. 92
  1123. ]
  1124. },
  1125. {
  1126. name: subjectList[4],
  1127. data: [
  1128. 95,
  1129. 89,
  1130. 92,
  1131. 87,
  1132. 91,
  1133. 83
  1134. ]
  1135. },
  1136. {
  1137. name: subjectList[5],
  1138. data: [
  1139. 91,
  1140. 82,
  1141. 87,
  1142. 84,
  1143. 90,
  1144. 85
  1145. ]
  1146. }
  1147. ],
  1148. },
  1149. },
  1150. //近期单次考试数据
  1151. recentTestChart: {
  1152. //近两次对比
  1153. recentComparison: {
  1154. categories: subjectList,
  1155. series: [{
  1156. name: "最近成绩",
  1157. data: [
  1158. 91,
  1159. 92,
  1160. 94,
  1161. 88,
  1162. 88,
  1163. 98
  1164. ]
  1165. },
  1166. {
  1167. name: "上次成绩",
  1168. data: [
  1169. 88,
  1170. 84,
  1171. 97,
  1172. 92,
  1173. 89,
  1174. 93
  1175. ]
  1176. }
  1177. ],
  1178. },
  1179. //近期排名占比分析
  1180. recentRank: {
  1181. series: [{
  1182. name: "超过年级中",
  1183. data: 0.53,
  1184. color: "#4169E1"
  1185. },
  1186. {
  1187. name: "超过班级中",
  1188. data: 0.72,
  1189. color: "#ff8caf"
  1190. }
  1191. ],
  1192. },
  1193. recentRankComparison:{
  1194. categories: subjectList,
  1195. series: [{
  1196. name: "最近成绩超过",
  1197. data: [
  1198. 71,
  1199. 62,
  1200. 74,
  1201. 98,
  1202. 58,
  1203. 92
  1204. ]
  1205. },
  1206. {
  1207. name: "上次成绩超过",
  1208. data: [
  1209. 48,
  1210. 64,
  1211. 57,
  1212. 52,
  1213. 79,
  1214. 93
  1215. ]
  1216. }
  1217. ],
  1218. }
  1219. },
  1220. //排名占比分析
  1221. rankChart: {
  1222. //学期排名占比分析
  1223. semesterRank: {
  1224. categories: testList,
  1225. series: [{
  1226. name: "超过年级中",
  1227. data: [
  1228. 50,
  1229. 75,
  1230. 62,
  1231. 80,
  1232. 68,
  1233. 39
  1234. ]
  1235. },
  1236. {
  1237. name: "超过班级中",
  1238. data: [
  1239. 95,
  1240. 98,
  1241. 84,
  1242. 92,
  1243. 93,
  1244. 79
  1245. ]
  1246. }
  1247. ]
  1248. },
  1249. //单科学期排名
  1250. semesterSubjectRank: '',
  1251. },
  1252. //优势科目分析
  1253. advantageRoseChart: {
  1254. //近期优势科目分析
  1255. recentAdvantage: {
  1256. series: [{
  1257. data: [{
  1258. name: subjectList[0],
  1259. value: 100
  1260. },
  1261. {
  1262. name: subjectList[1],
  1263. value: 86
  1264. },
  1265. {
  1266. name: subjectList[2],
  1267. value: 100
  1268. },
  1269. {
  1270. name: subjectList[3],
  1271. value: 79
  1272. },
  1273. {
  1274. name: subjectList[4],
  1275. value: 88
  1276. },
  1277. {
  1278. name: subjectList[5],
  1279. value: 95
  1280. }
  1281. ]
  1282. }]
  1283. },
  1284. //学期综合分析
  1285. semesterAdvantage: {
  1286. series: [{
  1287. data: [{
  1288. name: subjectList[0],
  1289. value: 95
  1290. },
  1291. {
  1292. name: subjectList[1],
  1293. value: 88
  1294. },
  1295. {
  1296. name: subjectList[2],
  1297. value: 99
  1298. },
  1299. {
  1300. name: subjectList[3],
  1301. value: 80
  1302. },
  1303. {
  1304. name: subjectList[4],
  1305. value: 77
  1306. },
  1307. {
  1308. name: subjectList[5],
  1309. value: 95
  1310. }
  1311. ]
  1312. }]
  1313. },
  1314. },
  1315. //能力雷达图分析
  1316. abilityChart: {
  1317. //重要考试分析
  1318. importantAnalyse: {
  1319. categories: subjectList,
  1320. series: [{
  1321. name: "开学考试",
  1322. data: [
  1323. 90,
  1324. 89,
  1325. 98,
  1326. 88,
  1327. 95,
  1328. 89
  1329. ]
  1330. },
  1331. {
  1332. name: "期中考试",
  1333. data: [
  1334. 94,
  1335. 89,
  1336. 97,
  1337. 91,
  1338. 95,
  1339. 90
  1340. ]
  1341. },
  1342. {
  1343. name: "期末考试",
  1344. data: [
  1345. 90,
  1346. 90,
  1347. 95,
  1348. 96,
  1349. 90,
  1350. 92
  1351. ]
  1352. }
  1353. ],
  1354. },
  1355. //普通考试分析
  1356. commonAnalyse: {
  1357. categories: subjectList,
  1358. series: [{
  1359. name: "第一月考",
  1360. data: [
  1361. 90,
  1362. 100,
  1363. 77,
  1364. 78,
  1365. 75,
  1366. 95
  1367. ]
  1368. },
  1369. {
  1370. name: "第二月考",
  1371. data: [
  1372. 89,
  1373. 94,
  1374. 75,
  1375. 99,
  1376. 80,
  1377. 92
  1378. ]
  1379. },
  1380. {
  1381. name: "第三月考",
  1382. data: [
  1383. 79,
  1384. 84,
  1385. 94,
  1386. 73,
  1387. 99,
  1388. 87
  1389. ]
  1390. }
  1391. ],
  1392. },
  1393. },
  1394. }
  1395. this.$store.commit('m_chart/updateGradeChart', gradeData)
  1396. }
  1397. //获取评测,作业,活动数据
  1398. function initHomework() {
  1399. //数据
  1400. this.testData = testData
  1401. this.homeworkData = homeworkData
  1402. this.activityData = activityData
  1403. //完成数据
  1404. this.testFinish = testFinishData.length
  1405. this.homeworkFinish = homeworkFinishData.length
  1406. this.activityFinish = activityFinishData.length
  1407. }
  1408. export default {
  1409. initApp, //初始化项目数据
  1410. initHome, //初始化首页数据
  1411. initGrade, //初始化成绩数据
  1412. initHomework, //初始化作业数据
  1413. }