index.html 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  6. <meta http-equiv="pragma" content="no-cache">
  7. <meta http-equiv="cache-control" content="no-cache">
  8. <meta http-equiv="expires" content="0">
  9. <!-- Bootstrap CSS -->
  10. <link rel="stylesheet" href="../vendor/bootstrap-4.4.1/css/bootstrap.min.css">
  11. <link rel="stylesheet" href="../vendor/fontawesome-free-5.12.1-web/css/all.min.css">
  12. <!-- <link rel="stylesheet" href="./judge.css"> -->
  13. <link rel="stylesheet" type="text/css" href="css/sindex.css"/>
  14. <!--阿里播放组件 -->
  15. <link rel="stylesheet" href="../vendor/aliplayer/aliplayer-min.css">
  16. <script type="text/javascript" charset="utf-8" src="../vendor/aliplayer/aliplayer-min.js"></script>
  17. <!--阿里播放组件 -->
  18. <!-- <link rel="stylesheet" href="https://g.alicdn.com/de/prismplayer/2.8.7/skins/default/aliplayer-min.css" /> -->
  19. <script type="text/javascript" charset="utf-8" src="./js/aliplayer-min.js"></script>
  20. <title>无纸化评分系统</title>
  21. </head>
  22. <body class="{{currStep == 'Examing' || currStep == 'ConfirmScore'?'grey':'logining'}}" ng-app="app" ng-controller="AppCtrl" ontouchstart>
  23. <div class="outside-container" id="main_div" ng-controller="LoginCtrl">
  24. <!-- 这里放弹出框 -->
  25. <!-- 评委详细信息弹窗 -->
  26. <div class="modal fade" id="judgeModal" tabindex="-1" role="dialog" aria-labelledby="judge_title" aria-hidden="true">
  27. <div class="modal-dialog" role="document">
  28. <div class="modal-content">
  29. <div class="modal-header">
  30. <h5 class="modal-title" id="judge_title">评委详细信息</h5>
  31. <button type="button" class="close" data-dismiss="modal" aria-label="Close" ng-if="getParamValue('SchoolCode') !== '10030'">
  32. <span aria-hidden="true">&times;</span>
  33. </button>
  34. </div>
  35. <div class="modal-body">
  36. <form>
  37. <div class="row">
  38. <div class="form-group col-xs-12 col-lg-12">
  39. <div class="form-group">
  40. <label class="col-form-label">考场地址:</label> <input type="text" class="form-control" value="{{room.room_addr}}" readonly>
  41. </div>
  42. </div>
  43. </div>
  44. <div class="row" style="margin-top: -20px;">
  45. <div class="form-group col-xs-6 col-lg-6">
  46. <label class="col-form-label">登录帐号:</label> <input type="text" class="form-control" value="{{judge.login_name}}" readonly>
  47. </div>
  48. <div class="form-group col-xs-6 col-lg-6">
  49. <label class="col-form-label">评委姓名:</label>
  50. <input type="text" class="form-control" ng-readonly="getParamValue('ModifyJudgeInfo') != 'Active'" placeholder="请认真输入正确姓名!" ng-model="modifyJudge.judge_name">
  51. </div>
  52. </div>
  53. <!--北外的不显示 -->
  54. <div class="row" style="margin-top: -15px;" ng-if="getParamValue('SchoolCode') !== '10030'">
  55. <div class="form-group col-xs-12 col-lg-12">
  56. <label class="col-form-label">联系电话:</label>
  57. <input type="text" class="form-control" ng-readonly="getParamValue('ModifyJudgeInfo') != 'Active'" ng-model="modifyJudge.judge_tel">
  58. </div>
  59. </div>
  60. </form>
  61. </div>
  62. <div class="modal-footer">
  63. <button type="button" class="btn btn-secondary" data-dismiss="modal" ng-if="getParamValue('SchoolCode')!=='10030'">关闭窗口</button>
  64. <button type="button" class="btn btn-primary" ng-if="getParamValue('ModifyJudgeInfo') == 'Active'" ng-click="changeJudge()">更新评委信息</button>
  65. </div>
  66. </div>
  67. </div>
  68. </div>
  69. <!-- 考题展示 -->
  70. <div class="modal fade" id="topicModal" tabindex="-1" role="dialog" aria-labelledby="judge_title" aria-hidden="true" >
  71. <div class="modal-dialog" role="document">
  72. <div class="modal-content">
  73. <div class="modal-header">
  74. <h5 class="modal-title" id="judge_title">考题展示</h5>
  75. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  76. <span aria-hidden="true">&times;</span>
  77. </button>
  78. </div>
  79. <div class="modal-body" ng-repeat="t in topic">
  80. <img ng-if="t.topic_path!=null" ng-src="{{t.topic_path}}" class="head">
  81. <span ng-if="t.topic_path==null" ng-bind-html="t.topic_content"></span>
  82. </div>
  83. </div>
  84. </div>
  85. </div>
  86. <!-- 作品展示
  87. <div class="modal fade" id="judgeModal2" tabindex="-1" role="dialog" aria-labelledby="judge_title" aria-hidden="true" style="width:1000px">
  88. <div class="modal-dialog" role="document">
  89. <div class="modal-content">
  90. <div class="modal-header">
  91. <h5 class="modal-title" id="judge_title">作品展示</h5>
  92. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  93. <span aria-hidden="true">&times;</span>
  94. </button>
  95. </div>
  96. <div class="modal-body">
  97. <img width="750px" height="600px" src="https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fimg.jj20.com%2Fup%2Fallimg%2Ftp09%2F210611094Q512b-0-lp.jpg&refer=http%3A%2F%2Fimg.jj20.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1643274538&t=c10ae5682d0883f02bb6e223eb1e5256" />
  98. </div>
  99. </div>
  100. </div>
  101. </div> -->
  102. <div class="login" ng-if="currStep == 'LoginName'">
  103. <div class="box">
  104. <div class="title">
  105. {{getParamValue('JudgeLoginTitleText','武汉启明泰和软件服务有限公司')}}
  106. </div>
  107. <div class="tips">
  108. <!-- {{getParamValue('JudgeLoginMajorText','武汉启明禾木软件服务有限公司')}} -->
  109. <br>
  110. </div>
  111. <div class="input first">
  112. <img src="img/user1.png" alt="">
  113. <input type="text" placeholder="请输入评委手机号码" id="login_name"
  114. ng-keyup="changeLogin($event)" autocomplete="off" autofocus="" tabindex="0" maxlength=11 autocorrect="off"
  115. autocapitalize="off" spellcheck="false">
  116. </div>
  117. <div class="input second" ng-if="getParamValue('ExamJudgeLoginWithPassword') == 'Active'">
  118. <img src="img/pwd.png" alt="">
  119. <input type="password" placeholder="请输入密码" id="login_pass"
  120. ng-keyup="changeLoginName($event)" placeholder="请输入密码" autocomplete="off" autofocus=""
  121. tabindex="0" maxlength=11 autocorrect="off" autocapitalize="off" spellcheck="false" />
  122. </div>
  123. <div class="btn-box">
  124. <button class="login-btn" ng-click="login()"> 登录</button>
  125. </div>
  126. </div>
  127. </div>
  128. <div class="login-confirm" ng-if="currStep == 'ConfrimJudge'">
  129. <div class="box">
  130. <div class="title">
  131. {{getParamValue('JudgeLoginTitleText','武汉启明泰和软件服务有限公司')}}
  132. </div>
  133. <div class="tips">
  134. {{getParamValue('JudgeLoginMajorText','武汉启明泰和软件服务有限公司')}}
  135. </div>
  136. <div class="info">
  137. <div class="name">评阅项目</div>
  138. <div class="text">{{group.group_name}}</div>
  139. </div>
  140. <div class="info">
  141. <div class="name">评阅场地</div>
  142. <div class="text">{{room.room_addr}}</div>
  143. </div>
  144. <div class="info">
  145. <div class="name">评阅账号</div>
  146. <div class="text">{{judge.login_name}}</div>
  147. </div>
  148. <div class="info">
  149. <div class="name">评&nbsp;&nbsp;&nbsp;&nbsp;委</div>
  150. <div class="text">{{judge.judge_name}}</div>
  151. </div>
  152. <div class="btns">
  153. <div class="confirm-login">
  154. <button ng-click="judgeLogin()">确认登录</button>
  155. </div>
  156. <div class="choose">
  157. <button ng-click="showLoginName()">重新选择</button>
  158. </div>
  159. </div>
  160. </div>
  161. </div>
  162. <div class="top-nav" ng-if="currStep == 'Examing' || currStep == 'ConfirmScore'" >
  163. <div class="logo">
  164. <!-- <img src="img/logo.png" > -->
  165. {{getParamValue('SchoolName','中央美术学院2025年附中优秀人才选拔考试')}}
  166. </div>
  167. <div>
  168. <span ng-if="groupParam && groupParam.clock_num>=1" ng-class="{'text-danger': groupParam.clock_1_seconds == clock_1_seconds, 'text-success': groupParam.clock_1_seconds !== clock_1_seconds}" ng-click="clockCountDown(groupParam.clock_1_seconds,1)"><img src="./img/clock.png" width="20" height="20" > <span class="ml-2" style="font-size:18px;cursor:pointer">{{clock_1_seconds}}</span>&nbsp;&nbsp;</span>
  169. <span ng-if="groupParam && groupParam.clock_num>=2" ng-class="{'text-danger': groupParam.clock_2_seconds == clock_2_seconds, 'text-success': groupParam.clock_2_seconds !== clock_2_seconds}" ng-click="clockCountDown(groupParam.clock_2_seconds,2)"><img src="./img/clock.png" width="20" height="20" class="ml-3"> <span class="ml-2" style="font-size:18px;cursor:pointer">{{clock_2_seconds}}</span>&nbsp;&nbsp;</span>
  170. <span ng-if="groupParam && groupParam.clock_num>=3" ng-class="{'text-danger': groupParam.clock_3_seconds == clock_3_seconds, 'text-success': groupParam.clock_3_seconds !== clock_3_seconds}" ng-click="clockCountDown(groupParam.clock_3_seconds,3)"><img src="./img/clock.png" width="20" height="20" class="ml-3"> <span class="ml-2" style="font-size:18px;cursor:pointer">{{clock_3_seconds}}</span> </span>
  171. </div>
  172. <div class="username ml-3" ng-click="showJudge()">
  173. <img src="img/user.png" >
  174. {{judge.judge_name}} {{judge.login_name}}
  175. </div>
  176. <div class="close" ng-click="exitJudge()">
  177. <img src="./img/close.png" >
  178. </div>
  179. </div>
  180. <div class="joining" ng-if="currStep == 'Examing' && currentStd ==undefined" >
  181. <div class="box">
  182. <div class="waiting">
  183. <div class="red-ling"></div>
  184. <div class="title">等待考生进场</div>
  185. <div class="last-time">上次查询时间:{{lastRequestTime}}</div>
  186. <div class="toast">
  187. 工作人员正在核实考生身份,请稍后...
  188. </div>
  189. <div class="toast1">
  190. 考生进场系统将自动刷新,无需进行其他操作!
  191. </div>
  192. </div>
  193. <div class="loading">
  194. <img src="img/load.png" >
  195. </div>
  196. </div>
  197. </div>
  198. <div class="stu-choose" ng-if="currStep == 'Examing' && currentStd !=undefined">
  199. <div class="box">
  200. <div id="stuList" class="stu-list {{ getParamValue('JudgeVideoScore') == 'Active'?'long':''}}">
  201. <div class="stu-info {{std.std_id == currentStd.std_id?'active':''}}" ng-repeat="std in StdArray"
  202. ng-click="clickChooseStd(std)">
  203. <div class="no">
  204. {{std.real_exam_echo}}
  205. </div>
  206. <div class="muce {{std['SubjectArray'].length-1 == $index?'last':''}}" ng-repeat="sb in std['SubjectArray']">
  207. <div class="name">{{sb.subject_name}} </div>
  208. <div class="value">
  209. <img src="img/okred.png" ng-if="sb.judge_score == undefined && sb.judge_avoid !='Active' && std.std_id == currentStd.std_id ">
  210. <img src="img/ok.png" ng-if="sb.judge_score == undefined && sb.judge_avoid !='Active' && std.std_id != currentStd.std_id ">
  211. <span ng-if="sb.judge_avoid == 'Active'" >回避</span>
  212. <span ng-if="sb.judge_score!= undefined && !sb.discipline_id" >{{sb.judge_score}}</span>
  213. <span ng-if="sb.discipline_id">违规 {{sb.judge_score}}</span>
  214. </div>
  215. </div>
  216. </div>
  217. </div>
  218. <div class="stu-detail">
  219. <div class="detail-box">
  220. <div class="base">
  221. <img ng-if="currentStd.std_image!=undefined" ng-src="{{currentStd.std_image}}" class="head">
  222. <div class="name-code">
  223. <div class="stu-name" ng-if="currentStd.std_name!=undefined">
  224. {{currentStd.std_name}}<span ng-if="currentStd.std_sex!=undefined">({{currentStd.std_sex}})</span>
  225. </div>
  226. <div class="stu-name">
  227. <!-- <span ng-if="currentStd.std_sex!=undefined">{{currentStd.std_sex}}&nbsp;</span>
  228. <span ng-if="currentStd.std_height!=undefined">{{currentStd.std_height}}cm&nbsp;</span>
  229. <span ng-if="currentStd.std_weight!=undefined">{{currentStd.std_weight}}kg&nbsp;</span>
  230. <span ng-if="currentStd.province_flag!=undefined && currentStd.province_flag=='Active'">省内&nbsp;</span>
  231. <span ng-if="currentStd.province_flag!=undefined && currentStd.province_flag=='InActive'">省外&nbsp;</span> -->
  232. </div>
  233. <div class="stu-no">
  234. {{currentStd.real_exam_echo}}号考生
  235. <!-- <span style="padding-left: 40px;" ng-if = "currentStd.SubjectArray.length > 1 && currentStd.totalScore">总分:<font color="red">{{currentStd.totalScore}}</font></span> -->
  236. </div>
  237. <div class="stu-no">
  238. <span style="font-size: 28px;" ng-if="std_obve_score">面试得分:<font color="red">{{std_obve_score}}分(满分40)</font></span>
  239. </div>
  240. <div ng-repeat="t in currentStd.tracksArray">
  241. <s ng-if="t.tracks_status == 'InActive'" class="text-muted">{{getBatchName(t)}}{{t.tracks_name}}<span ng-if="t.tracks_author">({{t.tracks_author}})</span></s>
  242. <span ng-if="t.tracks_status == 'Active'" class="{{getTracksClass(t)}}">{{getBatchName(t)}}{{t.tracks_name}}<span ng-if="t.tracks_author">({{t.tracks_author}})</span></span>
  243. </div>
  244. <div><span class="text-danger mt-2" ng-if="currentStd.show_topic =='Active'" ng-click="lookTopic()">查看考题</span></div>
  245. <!-- 考题展示
  246. <div>
  247. <span>{{currentStd.draw_topic}}</span>
  248. </div> -->
  249. <!-- 考题展示 -->
  250. <!-- 曲目信息 -->
  251. </div>
  252. <div class="rule">
  253. <!-- ng-if="scoreStep == 'scorePanel' || currentStd.material_file != undefined" -->
  254. <span ng-click='chooseLastStd()' class="prev" >
  255. 上个考生
  256. </span>
  257. <span ng-click='chooseNextStd()' class="next" >
  258. 下个考生
  259. </span>
  260. </div>
  261. </div>
  262. <!-- <div class="video" ng-if="currentStd.material_file !=undefined && currentStd.material_file != '' && getParamValue('JudgeVideoScore') == 'Active' && currentStd.separate_score == 'Active'">
  263. <div id="video-player">
  264. <font style="font-size:26px;margin:20px">等待视频控件加载...</font>
  265. </div>
  266. </div>-->
  267. <div ng-if="currentStd.ExVideoList !=undefined && currentStd.ExVideoList.length>0 && getParamValue('JudgeVideoScore') == 'Active' && currentStd.separate_score == 'Active'">
  268. <!-- 多科目显示科目名称 -->
  269. <div class="row display: inline;">
  270. <button ng-repeat="subj in currentStd.ExVideoList" ng-if="currentStd.ExVideoList.length > 1" ng-click="changeSubjVideo(subj,$index)" class="btn {{currentNum == $index ? 'btn-success' : 'btn-secondary' }}" style="margin-left: 20px;">{{subj.subject_name}}</button>
  271. </div>
  272. <div class="video">
  273. <div id="video-player">
  274. <font style="font-size:26px;margin:20px">等待视频控件加载...</font>
  275. </div>
  276. </div>
  277. </div>
  278. <div class="step-1" ng-if="scoreStep == 'subjectPanel'">
  279. <div class="ping-title">
  280. 评阅科目-{{currentStd.real_exam_echo}}
  281. </div>
  282. <div class="score-item" ng-repeat="sb in currentStd.SubjectArray" ng-click="chooseSubject(sb)">
  283. <div class="item-name">
  284. {{sb.subject_name}}
  285. </div>
  286. <div class="img" >
  287. <img ng-if="sb.judge_score == undefined && currentStd.avoid_flag !='Active'" src="img/ok.png" >
  288. <span class="score" ng-if="currentStd.avoid_flag =='Active'" >回避该考生</span>
  289. <span class="score" ng-if="sb.judge_score != undefined && !sb.discipline_id" >{{sb.judge_score}}</span>
  290. <span class="score" ng-if="sb.discipline_id">违规 {{sb.judge_score}}</span>
  291. </div>
  292. </div>
  293. <div class="btns {{getParamValue('ShowAppraise') == 'Active' && disciplineFlag == 'Active'?'top':''}}">
  294. <!-- <div class="prev" ng-if="currentStd.material_file == undefined">
  295. <button ng-click='chooseLastStd()' >上个考生</button>
  296. </div>
  297. <div class="next" ng-if="currentStd.material_file == undefined">
  298. <button ng-click='chooseNextStd()' >下个考生</button>
  299. </div> -->
  300. <div class="prev" ng-if="getParamValue('JudgeAvoidFlag') == 'Active' && currentStd.avoid_flag =='Active'" >
  301. <button type="button" ng-click="avoidStd()">取消回避,正常评分</button>
  302. </div>
  303. <div class="prev" ng-if="getParamValue('JudgeAvoidFlag') == 'Active' && currentStd.avoid_flag !='Active'">
  304. <button type="button" ng-click="avoidStd()">回避该考生</button>
  305. </div>
  306. <div class="prev" ng-if="scoreStdTotal>0" >
  307. <button type="button" class="btn {{scoreStdTotal == StdArray.length?'btn-success':'btn-warning'}}"ng-click='confirmScore()' style="background:#4caf50;color:#FFF">提交已评分数({{scoreStdTotal}}/{{StdArray.length}})</button>
  308. </div>
  309. </div>
  310. </div>
  311. <div class="step-2" ng-if="scoreStep == 'scorePanel'">
  312. <div class="sub-title">
  313. 评阅科目-{{currentStd.real_exam_echo}}:{{currentSubject.subject_name}} {{currentSubject.variety_name}}
  314. </div>
  315. <!-- 九宫格录入分数 -->
  316. <div ng-if="getParamValue('NineScore') == 'Active' ">
  317. <input type="text" class="numkeyboard" id ="score_cur" placeholder="分数" readonly maxlength="3" />
  318. <button class="text-danger ml-2" ng-click="backPanel()" ng-if="currentStd.SubjectArray.length>1">返回</button>
  319. </div>
  320. <!-- 九宫格录入分数 -->
  321. <!-- 选择打分 -->
  322. <div class="score-box" ng-if="getParamValue('NineScore') == 'InActive' || getParamValue('NineScore') == undefined">
  323. <div class="item {{s.score_id===currentScore.score_id?'active':''}}" ng-click="chooseScore(s)" ng-repeat="s in ExamParamMap['SubjectScore_' + currentSubject.subject_id]" ng-bind-html="showHtml(s.score_name)">
  324. <!-- {{s.score_name | showHtml}} -->
  325. </div>
  326. </div>
  327. <div class="nums" ng-if="showScore && (getParamValue('NineScore') == 'InActive' || getParamValue('NineScore') == undefined)">
  328. <div class="item {{currentSubject.judge_score == s.score_obve_value ?'active':'btn-secondary'}} " ng-repeat="s in scoreArray" ng-click="gradeScore(s.score_value)">
  329. {{s.score_value}}
  330. </div>
  331. </div>
  332. <!-- 选择打分 -->
  333. <div ng-if="getParamValue('ShowComment') == 'Active'">
  334. <textarea rows="3" cols="60" ng-model="currentSubject.discipline_notice"
  335. onfocus="if(value=='请输入评语'){value=''}" ng-blur="gradeScore(currentSubject.judge_score)">
  336. </textarea>
  337. </div>
  338. <div class="wei" ng-if="getParamValue('ShowAppraise') == 'Active' && currentSubject.disciplineFlag == 'Active'">
  339. <label ng-repeat= "dis in disArr"><input type="radio" name="optradio" value="{{dis.discipline_id}}" ng-click="gradeScore(20,dis.discipline_id)"
  340. ng-model="currentSubject.discipline_id">{{dis.discipline_value}}</label>
  341. </div>
  342. <div class="confirm-btn" >
  343. <!-- sb.discipline_id -->
  344. <div class="btn" ng-if="getParamValue('ShowAppraise') == 'Active'">
  345. <button ng-click='stdDiscipline()' ng-if="!currentSubject.discipline_id" >标记违规</button>
  346. <button ng-click='clearDiscipline()'ng-if="currentSubject.discipline_id" >清除违规标记</button>
  347. </div>
  348. <div class="btn" ng-if="getParamValue('JudgeAvoidFlag') == 'Active' && currentStd.avoid_flag =='Active' && currentStd.SubjectArray.length <= 1" >
  349. <button type="button" ng-click="avoidStd()">取消回避,正常评分</button>
  350. </div>
  351. <div class="btn" ng-if="getParamValue('JudgeAvoidFlag') == 'Active' && currentStd.avoid_flag !='Active' && currentStd.SubjectArray.length <= 1">
  352. <button type="button" ng-click="avoidStd()">回避该考生</button>
  353. </div>
  354. <div class="btn" ng-if="getParamValue('JudgeShowSubScore') == 'Active'" ng-click='lookScore()' >
  355. <button type="button" >查看评分</button>
  356. </div>
  357. <div class="btn" ng-if="scoreStdTotal>0 && currentStd.SubjectArray.length <= 1" >
  358. <button type="button" class="btn {{scoreStdTotal == StdArray.length?'btn-success':'btn-warning'}}"ng-click='confirmScore()' style="background:#4caf50;color:#FFF">提交已评分数({{scoreStdTotal}}/{{StdArray.length}})</button>
  359. </div>
  360. </div>
  361. </div>
  362. </div>
  363. </div>
  364. </div>
  365. </div>
  366. <!-- 分数回看页面 -->
  367. <div class="confirm-page" ng-if="currStep == 'LookScore'">
  368. <div class="box">
  369. <div class="opr">
  370. <div class="ths">
  371. <div class="th1">考生序号</div>
  372. <div class="th2">科目及成绩</div>
  373. </div>
  374. <div class="tds" ng-repeat="std in stdScoreArray">
  375. <div class="td1"> {{std.real_exam_seq}} </div>
  376. <div class="td2"> {{std.subject_name}} </div>
  377. </div>
  378. <div class="btns" style="margin-left: 260px;" ng-if="commitScoreFlag == undefined">
  379. <div class="clear" ng-click="cancelConfirm()">返回 </div>
  380. </div>
  381. </div>
  382. </div>
  383. </div>
  384. <!-- 分数回看页面 -->
  385. <div class="confirm-page" ng-if="currStep == 'ConfirmScore'">
  386. <div class="box">
  387. <div class="title">
  388. <!-- 确认提交分数,本次共提交<b>「{{confirmStdArray.length}}」</b>位学生 -->
  389. 本次即将提交<b>「{{confirmStdArray.length}}」</b>位考生成绩,请再次确认评阅分数,确认提交后无法修改
  390. </div>
  391. <div class="opr">
  392. <div class="ths">
  393. <div class="th1">
  394. 序号
  395. </div>
  396. <div class="th2">
  397. 科目及成绩
  398. </div>
  399. <div class="th3">状态</div>
  400. </div>
  401. <div class="tds" ng-repeat="std in confirmStdArray">
  402. <div class="td1">
  403. {{std.real_exam_echo}}
  404. </div>
  405. <div class="td2">
  406. {{std.confirm_score_value}}
  407. <!-- 目测<span>(99)</span>台词<span>(99)</span>表演<span>(99)</span> -->
  408. </div>
  409. <div class="td3">
  410. <span ng-if="std.commit_flag == true">已提交</span>
  411. </div>
  412. </div>
  413. <div class="sign" ng-if="getParamValue('ShowJudgeSign') == 'Active'">
  414. <div class="tips">
  415. 请填写签名
  416. </div>
  417. <div class="cav">
  418. <input type="hidden" value="{{judge.login_name}}" id="judgeName" />
  419. <input type="hidden" value="{{numberBetween}}" id="numberBetween" />
  420. <input type="hidden" value="{{room.ly_room_id}}" id="ly_room_id" />
  421. <input type="hidden" value="{{judge.judge_id}}" id="judge_id" />
  422. <input type="hidden" value="{{time_type}}" id="time_type" />
  423. <iframe src="sign.html" id="signature" name="signature" width="100%" height="265" frameborder="no" border="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
  424. </div>
  425. </div>
  426. <div class="btns" ng-if="commitScoreFlag == undefined">
  427. <div class="clear" ng-click="clearCanvas()" ng-if="getParamValue('ShowJudgeSign') == 'Active'">
  428. 清除签名
  429. </div>
  430. <div class="confirm" >
  431. <button ng-click="submitScore()">
  432. 确认提交
  433. </button>
  434. </div>
  435. <div class="cancel" ng-click="cancelConfirm()">
  436. 暂不提交
  437. </div>
  438. </div>
  439. </div>
  440. </div>
  441. </div>
  442. </div>
  443. <script src="../vendor/jquery-3.4.1/jquery.slim.min.js"></script>
  444. <script src="../vendor/popper-1.16.0/popper.min.js"></script>
  445. <script src="../vendor/bootstrap-4.4.1/js/bootstrap.min.js"></script>
  446. <script src="../vendor/angular-1.7.8/angular.min.js"></script>
  447. <script src="../vendor/angular-1.7.8/angular-sanitize.min.js"></script>
  448. <script src="../vendor/cryptojs-3.1.2/cryptojs.min.js"></script>
  449. <script src="../vendor/cryptojs-3.1.2/mode-ecb.js"></script>
  450. <script src="./js/angular.init.js"></script>
  451. <script src="./js/angular.app.js"></script>
  452. <script src="./js/angular.login.js?v=20200519"></script>
  453. <script type="text/javascript" charset="utf-8" src="./js/numkeyboard.js"></script>
  454. </body>
  455. </html>