targetPage.vue 73 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184
  1. <template>
  2. <div>
  3. <div v-if="pType == 2" v-loading="tabLoad">
  4. <div class="sBox_table">
  5. <div class="table_title">
  6. <div>一级指标</div>
  7. <div>二级指标</div>
  8. <div>负责部门</div>
  9. <div>分值</div>
  10. <div>审核进度</div>
  11. <div>自评平均分</div>
  12. <div>考核平均分</div>
  13. <div>数据来源</div>
  14. <div>操作</div>
  15. </div>
  16. <div class="table_Content" v-for="item in tableJsonCon" :key="item.id">
  17. <div class="twoCol">
  18. <div class="ColTit">{{ item.name }}</div>
  19. <div class="ColCon">
  20. <div class="twoCon" v-for="k in item.children" :key="k.id">
  21. <div>{{ k.name }}</div>
  22. <div>
  23. {{ k.dep.join(",") }}
  24. </div>
  25. <div>{{ k.score }}</div>
  26. <div>
  27. <div v-if="allData.length">
  28. {{ k.pum }}/{{ allData.length }}
  29. </div>
  30. </div>
  31. <div>{{ k.sco1 }}</div>
  32. <div>{{ k.sco2 }}</div>
  33. <div>
  34. <div v-if="!k.testid.test.length">/</div>
  35. <div v-else style="padding-top: 10px;">
  36. <div
  37. v-for="(item2) in k.testid.test"
  38. :key="item2.courseId"
  39. @click="lookPrize(item2.courseId)"
  40. class="orgDataCss"
  41. >
  42. {{ item2.title }}:{{ item2.num }}份
  43. </div>
  44. </div>
  45. </div>
  46. <div
  47. style="display: flex;justify-content: space-around;padding: 0 10px;box-sizing: border-box;"
  48. >
  49. <!-- <div class="TabBtn" @click="lookPrize">查看</div> -->
  50. <div
  51. class="TabBtn"
  52. @click="lookScore(k.id, item.name, k.name)"
  53. >
  54. 评分
  55. </div>
  56. </div>
  57. </div>
  58. </div>
  59. </div>
  60. </div>
  61. </div>
  62. </div>
  63. <div v-if="pType == 1" v-loading="tabLoad">
  64. <div class="sBox_table">
  65. <div class="table_title2">
  66. <div>一级指标</div>
  67. <div>二级指标</div>
  68. <div>分值</div>
  69. <div>审核进度</div>
  70. <div>自评平均分</div>
  71. <div>考核平均分</div>
  72. <div>数据来源</div>
  73. <div>操作</div>
  74. </div>
  75. <div class="table_Content2" v-for="item in tableJsonCon" :key="item.id">
  76. <div class="twoCol">
  77. <div class="ColTit2">{{ item.name }}</div>
  78. <div class="ColCon">
  79. <div class="twoCon2" v-for="k in item.children" :key="k.id">
  80. <div>{{ k.name }}</div>
  81. <div>{{ k.score }}</div>
  82. <div>
  83. <div v-if="allData.length">
  84. {{ k.pum }}/{{ allData.length }}
  85. </div>
  86. </div>
  87. <div>{{ k.sco1 }}</div>
  88. <div>{{ k.sco2 }}</div>
  89. <div>
  90. <div v-if="!k.testid.test.length">/</div>
  91. <div v-else style="padding-top: 10px;">
  92. <div
  93. v-for="(item2) in k.testid.test"
  94. :key="item2.courseId"
  95. @click="lookPrize(item2.courseId)"
  96. class="orgDataCss"
  97. >
  98. {{ item2.title }}:{{ item2.num }}份
  99. </div>
  100. </div>
  101. </div>
  102. <div
  103. style="display: flex;justify-content: space-around;padding: 0 10px;box-sizing: border-box;"
  104. >
  105. <!-- <div class="TabBtn" @click="lookPrize">查看</div> -->
  106. <div
  107. class="TabBtn"
  108. @click="lookScore(k.id, item.name, k.name)"
  109. >
  110. 评分
  111. </div>
  112. </div>
  113. </div>
  114. </div>
  115. </div>
  116. </div>
  117. </div>
  118. </div>
  119. <!-- 点击查看数据来源 -->
  120. <el-dialog
  121. title=""
  122. :visible.sync="diaIframe"
  123. :append-to-body="true"
  124. width="95%"
  125. :before-close="handleClose2"
  126. class="dialog_diy"
  127. >
  128. <div style="height: 100%;">
  129. <iframe
  130. ref="viframe"
  131. style="width: 100%; height: 99%; border: none"
  132. :src="ifmUrl"
  133. ></iframe>
  134. </div>
  135. <span slot="footer" class="dialog-footer">
  136. <el-button @click="diaIframe = false">关 闭</el-button>
  137. </span>
  138. </el-dialog>
  139. <!-- 点击评分 -->
  140. <el-dialog
  141. :title="evaOneName + ':' + evaTwoName"
  142. :visible.sync="diaScore"
  143. :append-to-body="true"
  144. width="95%"
  145. :before-close="handleClose"
  146. class="dialog_diy"
  147. v-loading="evaScoDig"
  148. >
  149. <div
  150. style="height: 100%;padding: 25px;overflow: auto; box-sizing: border-box;padding-bottom: 100px;"
  151. >
  152. <div class="diaScoreTop">
  153. <div class="diaScoreLeft">
  154. <div>自评平均分:{{ !evaScoDigSvg ? 0 : evaScoDigSvg }}</div>
  155. <div>认定平均分:{{ !evaScoDigCog ? 0 : evaScoDigCog }}</div>
  156. <div>存在分差总人数:{{ evaScoDigPerC }}</div>
  157. </div>
  158. <div class="diaScoreRight">
  159. <el-button size="small" @click="allSubmit" type="primary"
  160. >保存</el-button
  161. >
  162. </div>
  163. </div>
  164. <el-table class="scoTab" :data="tableData" style="width: 100%">
  165. <el-table-column type="index" align="center" label="序号" width="180">
  166. </el-table-column>
  167. <el-table-column
  168. prop="username"
  169. align="center"
  170. label="教师姓名"
  171. width="180"
  172. >
  173. </el-table-column>
  174. <el-table-column
  175. :show-overflow-tooltip="true"
  176. prop="tea"
  177. :filters="TeachingOptions"
  178. :filter-method="filterTea"
  179. align="center"
  180. label="教研室"
  181. >
  182. </el-table-column>
  183. <el-table-column prop="score" align="center" label="分值">
  184. </el-table-column>
  185. <el-table-column
  186. :sortable="true"
  187. :sort-method="sortEvaMethod"
  188. prop="evaSca"
  189. align="center"
  190. label="自评分数"
  191. >
  192. </el-table-column>
  193. <el-table-column
  194. prop="evaMed"
  195. :show-overflow-tooltip="true"
  196. align="center"
  197. label="自评概述"
  198. >
  199. <template slot-scope="scope">
  200. <div v-if="!scope.row.evaMed">/</div>
  201. <div
  202. v-else
  203. style="white-space: nowrap;text-overflow: ellipsis;overflow: hidden;"
  204. >
  205. {{ scope.row.evaMed }}
  206. </div>
  207. </template>
  208. </el-table-column>
  209. <el-table-column width="300px" align="center" label="数据来源">
  210. <template slot-scope="scope">
  211. <div v-if="!scope.row.orgData.length">/</div>
  212. <div v-else style="padding-top: 10px;">
  213. <div
  214. v-for="(item2) in scope.row.orgData"
  215. :key="item2.courseId"
  216. class="orgDataCss"
  217. >
  218. <div @click="lookUserPrize(scope.row, item2.courseId)">
  219. <!-- @click="lookPrize(item2.courseId)" -->
  220. {{ item2.title }}:{{ item2.num }}份
  221. </div>
  222. </div>
  223. </div>
  224. </template>
  225. </el-table-column>
  226. <el-table-column
  227. :sortable="true"
  228. :sort-method="sortCogMethod"
  229. prop="cogSco"
  230. width="200px"
  231. align="center"
  232. label="认定分数"
  233. >
  234. <template slot-scope="scope">
  235. <div class="ScoreStep">
  236. <el-input
  237. class="num_input"
  238. v-if="scope.row.judge == 1"
  239. style=" color
  240. :#A7AAB2;"
  241. @blur="Submit(scope.row)"
  242. v-model="scope.row.cogSco"
  243. type="number"
  244. v-stopMousewheel
  245. ></el-input>
  246. <el-input
  247. v-else
  248. class="num_input"
  249. :style="{
  250. color: scope.row.cogSco == scope.row.evaSca ? '#000' : 'red'
  251. }"
  252. @blur="Submit(scope.row)"
  253. v-model="scope.row.cogSco"
  254. type="number"
  255. v-stopMousewheel
  256. ></el-input>
  257. </div>
  258. </template>
  259. </el-table-column>
  260. <el-table-column
  261. width="200px"
  262. align="center"
  263. prop="cognizance"
  264. label="认定概述"
  265. >
  266. <template slot-scope="scope">
  267. <textarea
  268. @blur="Submit2(scope.row)"
  269. class="tArea"
  270. v-model.trim="scope.row.cogSummary"
  271. />
  272. </template>
  273. </el-table-column>
  274. </el-table>
  275. </div>
  276. </el-dialog>
  277. </div>
  278. </template>
  279. <script>
  280. // import Vue from 'vue';
  281. export default {
  282. directives: {
  283. stopMousewheel: {
  284. inserted: function(el) {
  285. const ele = el.tagName === "INPUT" ? el : el.querySelector("input");
  286. ele.addEventListener("mousewheel", () => {
  287. ele.blur();
  288. });
  289. }
  290. }
  291. },
  292. props: {
  293. pType: {
  294. //2专任教师 1班主任
  295. type: Number,
  296. default: 0
  297. },
  298. timeA:{
  299. type:String,
  300. default:""
  301. },
  302. timeB:{
  303. type:String,
  304. default:""
  305. },
  306. },
  307. data() {
  308. return {
  309. evaScoDig: false,
  310. evaScoDigSvg: 0,
  311. evaScoDigCog: 0,
  312. evaScoDigPerC: 0,
  313. diaIframe: false, //数据来源弹框
  314. diaScore: false, //查看分数弹框
  315. ifmUrl: "", //数据来源地址
  316. tabLoad: false, //表格加载状态
  317. secondId: "", //查看评分二级id
  318. // cogSco: "", // 评分弹框认定分数
  319. // cogSummary: "", // 评分弹框认定概述
  320. evaOneName: "", //评分一级指标
  321. evaTwoName: "", //评分二级指标
  322. userid: this.$route.query.userid, //用户id
  323. oid: this.$route.query.oid, //学校id
  324. org: this.$route.query.org, //组织id
  325. allData: [], //获取全部提交的表单
  326. // 基础页面数据
  327. tableJsonCon: [
  328. // {
  329. // id: "q",
  330. // name: "师德师风",
  331. // children: [
  332. // {
  333. // id: "1q",
  334. // sco1: "", //自评分
  335. // evaStandard: "不乱收费,不从事有偿家教,不收受家长贿赂。", //评价标准
  336. // evaMethod: "参考同行、学生、家长师德考核问卷结果", //评价方法
  337. // sco2: "", //认定分
  338. // score: 4, //分值
  339. // cogSum: "",
  340. // cueWordType: 0, //认定概述
  341. // name: "廉洁从教", //二级指标名字
  342. // dep: ["行政事务中心"], // 部门
  343. // selfSummary: "", // 自评概述
  344. // type: 1, // 判断蓝色二级指标,暂定为一
  345. // testid: {
  346. // //数据来源
  347. // type: 1,
  348. // test: []
  349. // }
  350. // },
  351. // {
  352. // id: "2q",
  353. // sco1: "", //自评分
  354. // evaStandard:
  355. // "认真负责,做好本职工作。上班时间无打游戏、炒股、刷小视频等与教学工作无关的行为。", //评价标准
  356. // evaMethod: "参考同行、学生、家长师德考核问卷结果", //评价方法
  357. // sco2: "",
  358. // cogSum: "",
  359. // cueWordType: 0,
  360. // name: "爱岗敬业",
  361. // dep: ["行政事务中心"],
  362. // score: 4,
  363. // selfSummary: "",
  364. // type: 1,
  365. // testid: {
  366. // type: 1,
  367. // test: []
  368. // }
  369. // },
  370. // {
  371. // id: "3q",
  372. // sco1: "", //自评分
  373. // evaStandard:
  374. // "尊重、关心学生,学生、家长评价高。不体罚和变相体罚学生,在岗期间无有效投诉。", //评价标准
  375. // evaMethod: "参考同行、学生、家长师德考核问卷结果", //评价方法
  376. // sco2: "",
  377. // cogSum: "",
  378. // cueWordType: 0,
  379. // name: "热爱学生",
  380. // dep: ["行政事务中心"],
  381. // score: 4,
  382. // selfSummary: "",
  383. // type: 1,
  384. // testid: {
  385. // type: 1,
  386. // test: []
  387. // }
  388. // },
  389. // {
  390. // id: "4q",
  391. // sco1: "", //自评分
  392. // evaStandard:
  393. // "履行岗位安全职责,不空堂不缺课,请假、外出学习做好工作交接,做好值周工作,无安全责任事故。", //评价标准
  394. // evaMethod: "参考值周行政巡查反馈结果", //评价方法
  395. // sco2: "",
  396. // cogSum: "",
  397. // cueWordType: 0,
  398. // name: "安全教学",
  399. // dep: ["行政事务中心"],
  400. // score: 4,
  401. // selfSummary: "",
  402. // type: 1,
  403. // testid: {
  404. // type: 1,
  405. // test: []
  406. // }
  407. // },
  408. // {
  409. // id: "5q",
  410. // sco1: "", //自评分
  411. // evaStandard:
  412. // "严于律己,服从学校正常工作安排,同事之间相互支持,友好协调。", //评价标准
  413. // evaMethod: "参考师德考核同行评价结果", //评价方法
  414. // sco2: "",
  415. // cogSum: "",
  416. // cueWordType: 0,
  417. // name: "团结协作",
  418. // dep: ["行政事务中心"],
  419. // score: 4,
  420. // selfSummary: "",
  421. // type: 1,
  422. // testid: {
  423. // type: 1,
  424. // test: []
  425. // }
  426. // }
  427. // ]
  428. // },
  429. // {
  430. // id: "1a",
  431. // name: "考勤情况",
  432. // children: [
  433. // {
  434. // id: "1a",
  435. // sco1: "", //自评分
  436. // evaStandard: "按时到岗,严格遵守请销假制度等工作纪律。", //评价标准
  437. // evaMethod: "参考学年抽查情况(行政事务中心评价)", //评价方法
  438. // sco2: "",
  439. // cogSum: "",
  440. // cueWordType: 0,
  441. // name: "日常考勤",
  442. // dep: ["行政事务中心"],
  443. // score: 2,
  444. // selfSummary: "",
  445. // type: 1,
  446. // testid: {
  447. // type: 1,
  448. // test: []
  449. // }
  450. // },
  451. // {
  452. // id: "2a",
  453. // sco1: "", //自评分
  454. // evaStandard:
  455. // "例会、升旗、全校性大型活动等按时参加,不迟到不缺席,线上会议实名入会并全程打开摄像头参会。", //评价标准
  456. // evaMethod: "参考学年会议活动签到考勤情况(行政事务中心评价)", //评价方法
  457. // sco2: "",
  458. // cogSum: "",
  459. // cueWordType: 0,
  460. // name: "会议活动考勤",
  461. // dep: ["行政事务中心"],
  462. // score: 2,
  463. // selfSummary: "",
  464. // type: 1,
  465. // testid: {
  466. // type: 1,
  467. // test: []
  468. // }
  469. // }
  470. // ]
  471. // },
  472. // {
  473. // id: "b",
  474. // name: "常规教学(备、教、改、考、评、辅)",
  475. // children: [
  476. // {
  477. // id: "1b",
  478. // sco1: "", //自评分
  479. // evaStandard: "按学校备课要求完成备课工作,及时提交教案。", //评价标准
  480. // evaMethod:
  481. // "数量足2分;结构完整2分;有反思、个性化设计2分(科组评选30%为6分)", //评价方法
  482. // sco2: "",
  483. // cogSum: "",
  484. // cueWordType: 0,
  485. // name: "备课",
  486. // dep: ["教学服务中心"],
  487. // score: 6,
  488. // selfSummary: "",
  489. // type: 1,
  490. // testid: {
  491. // type: 1,
  492. // test: []
  493. // }
  494. // },
  495. // {
  496. // id: "2b",
  497. // sco1: "", //自评分
  498. // evaStandard:
  499. // "先备课再上课,教学准备充分;遵守学校教学规范,教学秩序良好;教学方法新效果好。", //评价标准
  500. // evaMethod:
  501. // "准备2分;秩序好2分;方法效果好2分(教学服务中心评价)", //评价方法
  502. // sco2: "",
  503. // cogSum: "",
  504. // cueWordType: 0,
  505. // name: "上课",
  506. // dep: ["教学服务中心"],
  507. // score: 6,
  508. // selfSummary: "",
  509. // type: 1,
  510. // testid: {
  511. // type: 1,
  512. // test: []
  513. // }
  514. // },
  515. // {
  516. // id: "3b",
  517. // sco1: "", //自评分
  518. // evaStandard:
  519. // "学生作业量适中、书写规范;教师批改及时、认真、正确;学生错题及时订正。", //评价标准
  520. // evaMethod:
  521. // "量适中规范2分;全批全改2 分;督促订正2 分(科组评选30%为6分)", //评价方法
  522. // sco2: "",
  523. // cogSum: "",
  524. // cueWordType: 0,
  525. // name: "批改作业",
  526. // dep: ["教学服务中心"],
  527. // score: 6,
  528. // selfSummary: "",
  529. // type: 1,
  530. // testid: {
  531. // type: 1,
  532. // test: []
  533. // }
  534. // },
  535. // {
  536. // id: "4b",
  537. // sco1: "", //自评分
  538. // evaStandard:
  539. // "按学校要求,期末测试并录入系统,有批改讲评。(一、二年级组织精心组织期末游园活动,让学生在游戏中接受评价,在评价中成长)", //评价标准
  540. // evaMethod: "跟进度测试2分,全部有批改讲评4分(科组评价)", //评价方法
  541. // sco2: "",
  542. // cogSum: "",
  543. // cueWordType: 0,
  544. // name: "学科测试",
  545. // dep: ["教学服务中心"],
  546. // score: 6,
  547. // selfSummary: "",
  548. // type: 1,
  549. // testid: {
  550. // type: 1,
  551. // test: []
  552. // }
  553. // },
  554. // {
  555. // id: "5b",
  556. // sco1: "", //自评分
  557. // evaStandard:
  558. // "期初、期末按时完成并提交:计划、总结、教案、评语、听课记录、会议记录等资料。", //评价标准
  559. // evaMethod:
  560. // "迟交、少交一项扣1分,扣完6分为止。(教学服务中心评价)", //评价方法
  561. // sco2: "",
  562. // cogSum: "",
  563. // cueWordType: 0,
  564. // name: "资料提交",
  565. // dep: ["教学服务中心"],
  566. // score: 6,
  567. // selfSummary: "",
  568. // type: 1,
  569. // testid: {
  570. // type: 1,
  571. // test: [
  572. // "1b6f078b-b673-11ee-b534-005056b86db5",
  573. // "5eac308d-b66d-11ee-b534-005056b86db5"
  574. // ]
  575. // }
  576. // },
  577. // {
  578. // id: "6b",
  579. // sco1: "", //自评分
  580. // evaStandard:
  581. // "每学期教师听课12节,科组长和行政15节、主管教学的行政20节,听课后积极参与评课。", //评价标准
  582. // evaMethod: "数量足2分;有评课2分;记录完整1分(科组评价)", //评价方法
  583. // sco2: "",
  584. // cogSum: "",
  585. // cueWordType: 0,
  586. // name: "听课评课",
  587. // dep: ["教学服务中心"],
  588. // score: 5,
  589. // selfSummary: "",
  590. // type: 1,
  591. // testid: {
  592. // type: 1,
  593. // test: []
  594. // }
  595. // },
  596. // {
  597. // id: "7b",
  598. // sco1: "", //自评分
  599. // evaStandard: "综合评测上学期期末测试与本学期期中测试结果", //评价标准
  600. // evaMethod:
  601. // "平均分、优秀率、及格率均与年级平均值比:平均分+-5分,优秀率+-10%,及格率+-10%,都符合以上条件得4分。平均分>5分,优秀率>10%,及格率>10%,符合其中1个及以上得5分。同时教几个班的,自选一个班计算。(教学服务中心评价)", //评价方法
  602. // sco2: "",
  603. // cogSum: "",
  604. // cueWordType: 0,
  605. // name: "教学质量",
  606. // dep: ["教学服务中心"],
  607. // score: 5,
  608. // selfSummary: "",
  609. // type: 1,
  610. // testid: {
  611. // type: 1,
  612. // test: []
  613. // }
  614. // }
  615. // ]
  616. // },
  617. // {
  618. // id: "c",
  619. // name: "科研工作",
  620. // children: [
  621. // {
  622. // id: "1c",
  623. // sco1: "", //自评分
  624. // evaStandard:
  625. // "每学年至少上一节校级公开课(40岁以上的教师可选择给教师做讲座)", //评价标准
  626. // evaMethod:
  627. // "纳入期初计划、科组及全校观摩,提交教案、PPT(教学服务中心评价)", //评价方法
  628. // sco2: "",
  629. // cogSum: "",
  630. // cueWordType: 0,
  631. // name: "研讨课",
  632. // dep: ["教学服务中心"],
  633. // score: 5,
  634. // selfSummary: "",
  635. // type: 1,
  636. // testid: {
  637. // type: 1,
  638. // test: ["e9e6dc5a-89d1-11ee-b98c-005056b86db5"]
  639. // }
  640. // },
  641. // {
  642. // id: "2c",
  643. // sco1: "", //自评分
  644. // evaStandard: "完成本学年的继续教育学时", //评价标准
  645. // evaMethod:
  646. // "按要求完成全年学时,没完成不计分。(教师发展中心评价)", //评价方法
  647. // sco2: "",
  648. // cogSum: "",
  649. // cueWordType: 0,
  650. // name: "继续教育",
  651. // dep: ["教师发展中心"],
  652. // score: 5,
  653. // selfSummary: "",
  654. // type: 1,
  655. // testid: {
  656. // type: 1,
  657. // test: []
  658. // }
  659. // },
  660. // {
  661. // id: "3c",
  662. // sco1: "", //自评分
  663. // evaStandard:
  664. // "积极参加校(区)教研活动、汇报交流、读书沙龙等,不无故缺勤。服从安排,积极完成科组临时性任务。", //评价标准
  665. // evaMethod:
  666. // "准时,不无故缺席科组会。出席率超80%、70%、60%的分别计3、2、1分 (科组评价)", //评价方法
  667. // sco2: "",
  668. // cogSum: "",
  669. // cueWordType: 0,
  670. // name: "科组活动",
  671. // dep: ["教学服务中心"],
  672. // score: 5,
  673. // selfSummary: "",
  674. // type: 1,
  675. // testid: {
  676. // type: 1,
  677. // test: []
  678. // }
  679. // }
  680. // ]
  681. // },
  682. // {
  683. // id: "d",
  684. // name: "教学成果加分",
  685. // children: [
  686. // {
  687. // id: "1d",
  688. // sco1: "", //自评分
  689. // evaStandard:
  690. // "根据学科特点开展特色活动,如英语节,艺术节,科技节、体育节、数学文化周、读书分享等。", //评价标准
  691. // evaMethod: "特色活动中承担指导、评价、布展等工作。(科组评价)", //评价方法
  692. // sco2: "",
  693. // cogSum: "",
  694. // cueWordType: 1,
  695. // name: "学科特色活动",
  696. // dep: ["教学服务中心"],
  697. // score: 2,
  698. // selfSummary: "",
  699. // type: 1,
  700. // testid: {
  701. // type: 1,
  702. // test: []
  703. // }
  704. // },
  705. // {
  706. // id: "2d",
  707. // sco1: "", //自评分
  708. // evaStandard:
  709. // "承担省、市、区、学校对外公开课、线上课资源开发、接待课、培训讲座任务。", //评价标准
  710. // evaMethod:
  711. // "国、省、市、区、校级公开课每节(次)加5、4、3、2、1分(教学服务中心评价)", //评价方法
  712. // sco2: "",
  713. // cogSum: "",
  714. // cueWordType: 1,
  715. // name: "对外公开课、接待课、培训讲座",
  716. // dep: ["教学服务中心"],
  717. // score: 5,
  718. // selfSummary: "",
  719. // type: 1,
  720. // testid: {
  721. // type: 1,
  722. // test: ["9547874d-2fb3-11ef-bf55-005056b86db5"]
  723. // }
  724. // },
  725. // {
  726. // id: "3d",
  727. // sco1: "", //自评分
  728. // evaStandard:
  729. // "主持或参与教育教学课题研究并结题;指导学生课题并结题。以结题证书为准,一个课题只加1次分。", //评价标准
  730. // evaMethod:
  731. // "主持国家、省、市、区、校级立项课题分别加5、4、3、2、1分,参与课题相应加分减半;指导学生课题等同于主持课题,相应加分参看主持课题加分。(教师发展中心评定)", //评价方法
  732. // sco2: "",
  733. // cogSum: "",
  734. // cueWordType: 1,
  735. // name: "课题研究",
  736. // dep: ["教师发展中心"],
  737. // score: 5,
  738. // selfSummary: "",
  739. // type: 1,
  740. // testid: {
  741. // type: 1,
  742. // test: ["73546fa2-2f67-11ef-bf55-005056b86db5"]
  743. // }
  744. // },
  745. // {
  746. // id: "4d",
  747. // sco1: "", //自评分
  748. // evaStandard:
  749. // "评为省、市、区、校名师工作室主持人、学员、成员,以挂牌为准,1个工作室只加1次分。", //评价标准
  750. // evaMethod:
  751. // "省、市、区、校名师工作室主持人分别加4、3、2、1分;学员、成员分减半。(教师发展中心评定)", //评价方法
  752. // sco2: "",
  753. // cogSum: "",
  754. // cueWordType: 1,
  755. // name: "名师工作室",
  756. // dep: ["教师发展中心"],
  757. // score: 4,
  758. // selfSummary: "",
  759. // type: 1,
  760. // testid: {
  761. // type: 1,
  762. // test: []
  763. // }
  764. // },
  765. // {
  766. // id: "5d",
  767. // sco1: "", //自评分
  768. // evaStandard:
  769. // "公开发表论文等学术成果、教育网站发表学术文章或公开交流、主题发言等。公开发表需有期刊号或书号,(《深圳教育科研》等同市级期刊、《光明教育》等同区级期刊);教育网站或公开交流、主题发言等,网站、公众号、交流等分数减半。", //评价标准
  770. // evaMethod:
  771. // "国家级:2.5分/篇 省级:2分/篇市 级:1.5分/篇 区级:1分/篇校 级:0.5分/篇(教师发展中心评定)", //评价方法
  772. // sco2: "",
  773. // cogSum: "",
  774. // cueWordType: 1,
  775. // name: "老师发表学术成果",
  776. // dep: ["教师发展中心"],
  777. // score: 5,
  778. // selfSummary: "",
  779. // type: 1,
  780. // testid: {
  781. // type: 1,
  782. // test: ["218ae830-2f6c-11ef-bf55-005056b86db5"]
  783. // }
  784. // },
  785. // {
  786. // id: "6d",
  787. // sco1: "", //自评分
  788. // evaStandard: "指导学生发表论文、公众号文章等。", //评价标准
  789. // evaMethod:
  790. // "期刊、报纸上发表1分/篇,公众号、网络平台减半,封顶5分。(教师发展中心评定)", //评价方法
  791. // sco2: "",
  792. // cogSum: "",
  793. // cueWordType: 1,
  794. // name: "指导学生发表学术成果",
  795. // dep: ["教师发展中心"],
  796. // score: 5,
  797. // selfSummary: "",
  798. // type: 1,
  799. // testid: {
  800. // type: 1,
  801. // test: ["ad02ca32-2f6c-11ef-bf55-005056b86db5"]
  802. // }
  803. // },
  804. // {
  805. // id: "7d",
  806. // sco1: "", //自评分
  807. // evaStandard:
  808. // "(1)获得国家级、省级、市级、区级人民政府及教育主管部门、校级的竞赛奖项,同一成果同时获得几个奖项,以最高奖项为准;设特等奖、一、二、三等奖和优秀奖、若组织方没有设几等奖,则获第一、二名等同于一等奖,三、四名等同于二等奖,后面名次等同于三等奖。(2)获得非人民政府计分及各级教育主管部门外的竞赛奖项,加分标准如下:(同一成果同时获得几个奖项,以最高奖项为准)(只设一、二、三等奖)", //评价标准
  809. // evaMethod:
  810. // "国家级、省级、市级、区级、校级的加分依次是:一:5分、4.5分、4分、3.5分、3分 二:4分、3.5分、3分、2.5分 、2分三:3分、2.5分 、2分、1.5分、1分四:2分、1.5分、1分、0.5分、0.2五:1分、0.5分、0.2分(教师发展中心评定)国家级:2.5 2分 1.5分 省 级:2分 1.5分 1分 市 级:1.5分 1分 0.5分 区 级:1分 0.5分 0.2分(教师发展中心评定)", //评价方法
  811. // sco2: "",
  812. // cogSum: "",
  813. // cueWordType: 1,
  814. // name: "教师获奖",
  815. // dep: ["教师发展中心", "教学服务中心", "课程与创新中心"],
  816. // score: 5,
  817. // selfSummary: "",
  818. // type: 1,
  819. // testid: {
  820. // type: 1,
  821. // test: [
  822. // "d47a6ab6-8a75-11ee-b98c-005056b86db5",
  823. // "729dbb8e-292e-11ef-bee5-005056b86db5"
  824. // ]
  825. // }
  826. // },
  827. // {
  828. // id: "8d",
  829. // sco1: "", //自评分
  830. // evaStandard:
  831. // "指导学生获得国家级、省级、市级、区级人民政府及教育主管部门、校级的竞赛奖项,同一成果同时获得几个奖项,以最高奖项为准;设特等奖、一、二、三等奖和优秀奖、若组织方没有设几等奖,则获第一、二名等同于一等奖,三、四名等同于二等奖,后面名次等同于三等奖。", //评价标准
  832. // evaMethod:
  833. // "国家级、省级、市级、区级、校级的加分依次是:一:5分、4.5分、4分、3.5分、3分 二:4分、3.5分、3分、2.5分 、2分三:3分、2.5分 、2分、1.5分、1分四:2分、1.5分、1分、0.5分、0.2五:1分、0.5分、0.2分(教师发展中心评定)", //评价方法
  834. // sco2: "",
  835. // cogSum: "",
  836. // cueWordType: 1,
  837. // name: "指导学生获奖",
  838. // dep: ["教师发展中心", "教学服务中心", "课程与创新中心"],
  839. // score: 5,
  840. // selfSummary: "",
  841. // type: 1,
  842. // testid: {
  843. // type: 1,
  844. // test: ["06870865-2fb1-11ef-bf55-005056b86db5"]
  845. // }
  846. // }
  847. // ]
  848. // },
  849. // {
  850. // id: "e",
  851. // name: "特色工作加分",
  852. // children: [
  853. // {
  854. // id: "1e",
  855. // sco1: "", //自评分
  856. // evaStandard: "按时按量完成社团工作,并积极开发特色校本课程。", //评价标准
  857. // evaMethod:
  858. // "按规定完成社团工作,无违纪违规现象:3分被评为校级“优秀社团”,或承办、作为主要成员参与区级及以上活动展示:2分(课程与创新中心评价)", //评价方法
  859. // sco2: "",
  860. // cogSum: "",
  861. // cueWordType: 1,
  862. // name: "社团课程",
  863. // dep: ["课程与创新中心"],
  864. // score: 5,
  865. // selfSummary: "",
  866. // type: 1,
  867. // testid: {
  868. // type: 1,
  869. // test: []
  870. // }
  871. // },
  872. // {
  873. // id: "2e",
  874. // sco1: "", //自评分
  875. // evaStandard:
  876. // "承担学校教育教学通讯工作,撰写的新闻稿在校园网、校报、微信公众号、光明信息、光明教育等媒体上发表。", //评价标准
  877. // evaMethod:
  878. // "校级、区级、市级1篇分别加0.2、0.5分、1分,如为合作撰稿单篇分值需折算(排版与撰稿同分,审核折半计算,党建融媒中心评价)", //评价方法
  879. // sco2: "",
  880. // cogSum: "",
  881. // cueWordType: 1,
  882. // name: "新闻通讯",
  883. // dep: ["党建融媒中心"],
  884. // score: 5,
  885. // selfSummary: "",
  886. // type: 1,
  887. // testid: {
  888. // type: 1,
  889. // test: ["e65b399b-304a-11ef-b873-005056b86db5"]
  890. // }
  891. // },
  892. // {
  893. // id: "3e",
  894. // sco1: "", //自评分
  895. // evaStandard: "校园文化、设施设备、宣传布置等相关工作。", //评价标准
  896. // evaMethod: "承担一次加0.5分(课程与创新中心评价)", //评价方法
  897. // sco2: "",
  898. // cogSum: "",
  899. // cueWordType: 1,
  900. // name: "校园文化",
  901. // dep: ["课程与创新中心"],
  902. // score: 2,
  903. // selfSummary: "",
  904. // type: 1,
  905. // testid: {
  906. // type: 1,
  907. // test: ["500f1ca5-3047-11ef-b873-005056b86db5"]
  908. // }
  909. // },
  910. // {
  911. // id: "4e",
  912. // sco1: "", //自评分
  913. // evaStandard:
  914. // "积极参与义教、抗疫、捐物、献血等社区志愿活动和合唱、朗诵等党建比赛或活动。", //评价标准
  915. // evaMethod:
  916. // "自主申报志愿活动且核实参加一次记0.5分,参与党建比赛或活动组织一次记2分(党建融媒中心评价)", //评价方法
  917. // sco2: "",
  918. // cogSum: "",
  919. // cueWordType: 1,
  920. // name: "党务建设",
  921. // dep: ["党建融媒中心"],
  922. // score: 5,
  923. // selfSummary: "",
  924. // type: 1,
  925. // testid: {
  926. // type: 1,
  927. // test: ["c6efea26-304b-11ef-b873-005056b86db5"]
  928. // }
  929. // },
  930. // {
  931. // id: "5e",
  932. // sco1: "", //自评分
  933. // evaStandard: "设计和开展项目式学习", //评价标准
  934. // evaMethod:
  935. // "设计项目式学习课程至少1次,记1分(需提供课程设计单);开展项目式学习活动至少1次,记3分(需提供过程性材料)。(课程与创新中心评价)", //评价方法
  936. // sco2: "",
  937. // cogSum: "",
  938. // cueWordType: 1,
  939. // name: "项目式学习",
  940. // dep: ["课程与创新中心"],
  941. // score: 4,
  942. // selfSummary: "",
  943. // type: 1,
  944. // testid: {
  945. // type: 1,
  946. // test: ["04087db9-3048-11ef-b873-005056b86db5"]
  947. // }
  948. // },
  949. // {
  950. // id: "6e",
  951. // sco1: "", //自评分
  952. // evaStandard:
  953. // "参与学校开展的特色项目工作,如信息化赋能课例研究、游戏识字用书编写等。", //评价标准
  954. // evaMethod:
  955. // "参与至少1项特色项目,按时按量完成项目相关工作,表现积极,记3分。(由学校教学部门评价)", //评价方法
  956. // sco2: "",
  957. // cogSum: "",
  958. // cueWordType: 1,
  959. // name: "学校特色项目",
  960. // dep: ["教学服务中心", "教师发展中心", "课程与创新中心"],
  961. // score: 3,
  962. // selfSummary: "",
  963. // type: 1,
  964. // testid: {
  965. // type: 1,
  966. // test: ["23f351d6-304a-11ef-b873-005056b86db5"]
  967. // }
  968. // }
  969. // ]
  970. // },
  971. // {
  972. // id: "f",
  973. // name: "科组评价",
  974. // children: [
  975. // {
  976. // id: "1f",
  977. // sco1: "", //自评分
  978. // evaStandard: "科组长综合考量师德师风、教学成效等维度进行打分。", //评价标准
  979. // evaMethod: "优秀:5 良好:4 合格:3 不合格:1", //评价方法
  980. // sco2: "",
  981. // cogSum: "",
  982. // cueWordType: 0,
  983. // name: "学科组长打分",
  984. // dep: ["行政事务中心"],
  985. // score: 5,
  986. // selfSummary: "",
  987. // type: 2,
  988. // testid: {
  989. // type: 1,
  990. // test: []
  991. // }
  992. // }
  993. // ]
  994. // },
  995. // {
  996. // id: "g",
  997. // name: "行政巡查",
  998. // children: [
  999. // {
  1000. // id: "1g",
  1001. // sco1: "", //自评分
  1002. // evaStandard:
  1003. // "行政随机抽查,综合考量师德师风、教学成效等维度进行打分,取所有行政的平均值。", //评价标准
  1004. // evaMethod: "优秀:5 良好:4 合格:3 不合格:1", //评价方法
  1005. // sco2: "",
  1006. // cogSum: "",
  1007. // cueWordType: 0,
  1008. // name: "随机巡查",
  1009. // dep: ["行政事务中心"],
  1010. // score: 5,
  1011. // selfSummary: "",
  1012. // type: 2,
  1013. // testid: {
  1014. // type: 1,
  1015. // test: []
  1016. // }
  1017. // }
  1018. // ]
  1019. // }
  1020. ],
  1021. // TeaTabJson: [
  1022. // {
  1023. // id: "sa",
  1024. // name: "班级建设",
  1025. // children: [
  1026. // {
  1027. // id: "sa1",
  1028. // name: "德育资料",
  1029. // score: 10,
  1030. // sco1: "", //自评分
  1031. // evaStandard:
  1032. // "各学期班主任工作计划和总结(内容、目标包含心理健康教育相关内容)、升旗任务资料、班主任工作手册(纸质)", //评价标准
  1033. // evaMethod: "查看资料", //评价方法
  1034. // sco2: "",
  1035. // cogSum: "",
  1036. // cueWordType: 0,
  1037. // selfSummary: "",
  1038. // dep: [],
  1039. // type: 1,
  1040. // testid: {
  1041. // type: 1,
  1042. // test: [
  1043. // "59a4bfa7-cfcc-11ee-b534-005056b86db5",
  1044. // "7b5bb13c-cfd1-11ee-b534-005056b86db5",
  1045. // "e827e6e1-2d3c-11ef-80ee-005056b86db5"
  1046. // ]
  1047. // }
  1048. // },
  1049. // {
  1050. // id: "sa2",
  1051. // name: "班级文化",
  1052. // score: 10,
  1053. // sco1: "", //自评分
  1054. // evaStandard:
  1055. // "每学期班级板报内容突出主题,版面清晰、美观,按时完成;班容班貌评比地面整洁、物品摆放整齐有序", //评价标准
  1056. // evaMethod: "学校考评", //评价方法
  1057. // sco2: "",
  1058. // cogSum: "",
  1059. // cueWordType: 0,
  1060. // selfSummary: "",
  1061. // dep: [],
  1062. // type: 1,
  1063. // testid: {
  1064. // type: 1,
  1065. // test: [""]
  1066. // }
  1067. // },
  1068. // {
  1069. // id: "sa3",
  1070. // name: "制度建设",
  1071. // score: 5,
  1072. // sco1: "", //自评分
  1073. // evaStandard: "建立建全班级公约、班级奖励制度、家校工作计划等", //评价标准
  1074. // evaMethod: "查看资料", //评价方法
  1075. // sco2: "",
  1076. // cogSum: "",
  1077. // cueWordType: 0,
  1078. // selfSummary: "",
  1079. // dep: [],
  1080. // type: 1,
  1081. // testid: {
  1082. // type: 1,
  1083. // test: ["662ef7ef-d05a-11ee-b534-005056b86db5"]
  1084. // }
  1085. // }
  1086. // ]
  1087. // },
  1088. // {
  1089. // id: "sc",
  1090. // name: "常规活动",
  1091. // children: [
  1092. // {
  1093. // id: "sc1",
  1094. // name: "一日常规",
  1095. // score: 20,
  1096. // sco1: "", //自评分
  1097. // evaStandard: "学校常规内容星级班级评比", //评价标准
  1098. // evaMethod: "学校考评", //评价方法
  1099. // sco2: "",
  1100. // cogSum: "",
  1101. // cueWordType: 0,
  1102. // selfSummary: "",
  1103. // dep: [],
  1104. // type: 1,
  1105. // testid: {
  1106. // type: 1,
  1107. // test: []
  1108. // }
  1109. // },
  1110. // {
  1111. // id: "sc2",
  1112. // name: "班队会",
  1113. // score: 10,
  1114. // sco1: "", //自评分
  1115. // evaStandard:
  1116. // "每学期定期开展班队会课教育活动。期末上交班会活动记录表、教案、PPT、照片等材料。班会主题包括但不限于:安全教育、爱国主义教育、生命教育、心理健康教育、劳动教育等主题", //评价标准
  1117. // evaMethod: "查看资料", //评价方法
  1118. // sco2: "",
  1119. // cogSum: "",
  1120. // cueWordType: 0,
  1121. // selfSummary: "",
  1122. // dep: [],
  1123. // type: 1,
  1124. // testid: {
  1125. // type: 1,
  1126. // test: ["31c114c7-cfd2-11ee-b534-005056b86db5"]
  1127. // }
  1128. // },
  1129. // {
  1130. // id: "sc3",
  1131. // name: "家校联系",
  1132. // score: 15,
  1133. // sco1: "", //自评分
  1134. // evaStandard:
  1135. // "每学期定期召开家长会、多种渠道开展家访、电访等家校联系工作,提供线上和约访记录100%,上门家访记录30%", //评价标准
  1136. // evaMethod: "查看资料", //评价方法
  1137. // sco2: "",
  1138. // cogSum: "",
  1139. // cueWordType: 0,
  1140. // selfSummary: "",
  1141. // dep: [],
  1142. // type: 1,
  1143. // testid: {
  1144. // type: 1,
  1145. // test: ["5b836702-cfd2-11ee-b534-005056b86db5"]
  1146. // }
  1147. // },
  1148. // {
  1149. // id: "sc4",
  1150. // name: "德育工作会议",
  1151. // score: 10,
  1152. // sco1: "", //自评分
  1153. // evaStandard:
  1154. // "按时参加德育工作会议(包含市级、区级、校级、年级),按要求签到、认真做好会议记录", //评价标准
  1155. // evaMethod: "学校考评", //评价方法
  1156. // sco2: "",
  1157. // cogSum: "",
  1158. // cueWordType: 0,
  1159. // selfSummary: "",
  1160. // dep: [],
  1161. // type: 1,
  1162. // testid: {
  1163. // type: 1,
  1164. // test: []
  1165. // }
  1166. // }
  1167. // ]
  1168. // },
  1169. // {
  1170. // id: "sd",
  1171. // name: "师德师风",
  1172. // children: [
  1173. // {
  1174. // id: "sd1",
  1175. // name: "无乱收费现象",
  1176. // score: 10,
  1177. // sco1: "", //自评分
  1178. // evaStandard: "有偿补习、家教等造成学生、家长不满或乱收费行为", //评价标准
  1179. // evaMethod: "学校考评", //评价方法
  1180. // sco2: "",
  1181. // cogSum: "",
  1182. // cueWordType: 0,
  1183. // selfSummary: "",
  1184. // dep: [],
  1185. // type: 1,
  1186. // testid: {
  1187. // type: 1,
  1188. // test: []
  1189. // }
  1190. // },
  1191. // {
  1192. // id: "sd2",
  1193. // name: "体罚和变相体罚",
  1194. // score: 10,
  1195. // sco1: "", //自评分
  1196. // evaStandard:
  1197. // "体罚和变相体罚造成学生、家长不满被投诉、举报,经查情况属实的一票否决", //评价标准
  1198. // evaMethod: "学校考评", //评价方法
  1199. // sco2: "",
  1200. // cogSum: "",
  1201. // cueWordType: 0,
  1202. // selfSummary: "",
  1203. // dep: [],
  1204. // type: 1,
  1205. // testid: {
  1206. // type: 1,
  1207. // test: []
  1208. // }
  1209. // }
  1210. // ]
  1211. // },
  1212. // {
  1213. // id: "se",
  1214. // name: "奖励项目",
  1215. // children: [
  1216. // {
  1217. // id: "se1",
  1218. // name: "德育获奖",
  1219. // score: 8,
  1220. // sco1: "", //自评分
  1221. // evaStandard:
  1222. // "(1)班级学生参加德育类各项比赛。集体获奖按国省市区校等级:国家级:特等奖8分,一等奖7分,二等奖6分,三等奖5分省级:特等奖7分,一等奖6分,二等奖5分,三等奖4分市级:特等奖6分,一等奖5分,二等奖4分,三等奖3分区级:特等奖5分,一等奖4分,二等奖3分,三等奖2分校级:一等奖3分,二等奖2分,三等奖1分(2)班级学生个人获奖按省市区校3、2、1、0.5加分(超5人按5人算)(3)班主任个人参加德育类各项比赛。获奖按国省市区校等级国家级:特等奖8分,一等奖7分,二等奖6分,三等奖5分省级:特等奖7分,一等奖6分,二等奖5分,三等奖4分市级:特等奖6分,一等奖5分,二等奖4分,三等奖3分区级:特等奖5分,一等奖4分,二等奖3分,三等奖2分校级:一等奖3分,二等奖2分,三等奖1分(4)班主任、学生集体或个人获得少先队方面奖项(荣誉)按省市区等级5、3、1加分", //评价标准
  1223. // evaMethod: "查看资料", //评价方法
  1224. // sco2: "",
  1225. // cogSum: "",
  1226. // cueWordType: 1,
  1227. // selfSummary: "",
  1228. // dep: [],
  1229. // type: 1,
  1230. // testid: {
  1231. // type: 1,
  1232. // test: ["a5d2c7f9-d05a-11ee-b534-005056b86db5"]
  1233. // }
  1234. // },
  1235. // {
  1236. // id: "se2",
  1237. // name: "特色活动",
  1238. // score: 5,
  1239. // sco1: "", //自评分
  1240. // evaStandard:
  1241. // "每学期组织开展富有班级特色实践活动2-3次(包括班级值周任务、升旗任务)或班级管理经典案例;(此项视完成的情况、质量、成效进行评分)", //评价标准
  1242. // evaMethod: "查看资料", //评价方法
  1243. // sco2: "",
  1244. // cogSum: "",
  1245. // cueWordType: 1,
  1246. // selfSummary: "",
  1247. // dep: [],
  1248. // type: 1,
  1249. // testid: {
  1250. // type: 1,
  1251. // test: ["180b321b-cfd3-11ee-b534-005056b86db5"]
  1252. // }
  1253. // },
  1254. // {
  1255. // id: "se3",
  1256. // name: "示范作用",
  1257. // score: 4,
  1258. // sco1: "", //自评分
  1259. // evaStandard:
  1260. // "积极承担市、区、校级班队会观摩示范课、培训讲座、说课等大型德育展示活动4、3、2加分。积极申报市级、区级、校级班主任工作室,开展有针对性的活动4、3、2加分", //评价标准
  1261. // evaMethod: "查看资料", //评价方法
  1262. // sco2: "",
  1263. // cogSum: "",
  1264. // cueWordType: 1,
  1265. // selfSummary: "",
  1266. // dep: [],
  1267. // type: 1,
  1268. // testid: {
  1269. // type: 1,
  1270. // test: ["e345d506-b692-11ee-b534-005056b86db5"]
  1271. // }
  1272. // },
  1273. // {
  1274. // id: "se4",
  1275. // name: "教育科研",
  1276. // score: 5,
  1277. // sco1: "", //自评分
  1278. // evaStandard:
  1279. // "班主任工作论文、案例,发表或获奖(参考学校评分标准)", //评价标准
  1280. // evaMethod: "查看资料", //评价方法
  1281. // sco2: "",
  1282. // cogSum: "",
  1283. // cueWordType: 1,
  1284. // selfSummary: "",
  1285. // dep: [],
  1286. // type: 1,
  1287. // testid: {
  1288. // type: 1,
  1289. // test: ["5cf7e36e-b693-11ee-b534-005056b86db5"]
  1290. // }
  1291. // }
  1292. // ]
  1293. // },
  1294. // {
  1295. // id: "sf",
  1296. // name: "级组评价",
  1297. // children: [
  1298. // {
  1299. // id: "sf1",
  1300. // name: "年级组长打分",
  1301. // score: 5,
  1302. // sco1: "", //自评分
  1303. // evaStandard: "级组长综合考量师德师风、教学成效等维度进行打分。", //评价标准
  1304. // evaMethod: "优秀:5良好:4合格:3不合格:1", //评价方法
  1305. // sco2: "",
  1306. // cogSum: "",
  1307. // cueWordType: 0,
  1308. // selfSummary: "",
  1309. // dep: [],
  1310. // type: 2,
  1311. // testid: {
  1312. // type: 1,
  1313. // test: []
  1314. // }
  1315. // }
  1316. // ]
  1317. // },
  1318. // {
  1319. // id: "sg",
  1320. // name: "行政巡查",
  1321. // children: [
  1322. // {
  1323. // id: "sg1",
  1324. // name: "随机巡查",
  1325. // score: 5,
  1326. // sco1: "", //自评分
  1327. // evaStandard:
  1328. // "行政随机抽查,综合考量师德师风、班级管理等维度进行打分,取所有行政的平均值。", //评价标准
  1329. // evaMethod: "优秀:5良好:4合格:3不合格:1", //评价方法
  1330. // sco2: "",
  1331. // cogSum: "",
  1332. // cueWordType: 0,
  1333. // selfSummary: "",
  1334. // dep: [],
  1335. // type: 2,
  1336. // testid: {
  1337. // type: 1,
  1338. // test: []
  1339. // }
  1340. // }
  1341. // ]
  1342. // }
  1343. // ],
  1344. tableData: [], //弹框数据
  1345. TeachingOptions: [],
  1346. testExamineBaseList:[],
  1347. };
  1348. },
  1349. computed: {},
  1350. watch: {
  1351. pType(newVal, oldVal) {
  1352. this.allData = [];
  1353. this.getPageBase();
  1354. },
  1355. timeA(){
  1356. this.allData = [];
  1357. this.getPageBase();
  1358. },
  1359. timeB(){
  1360. this.allData = [];
  1361. this.getPageBase();
  1362. },
  1363. },
  1364. mounted() {
  1365. this.getPageBase();
  1366. this.getTeaList();
  1367. // console.log(JSON.stringify(this.TeaTabJson));
  1368. // console.log(JSON.stringify(this.tableJsonCon));
  1369. },
  1370. methods: {
  1371. // 禁用滚轮事件
  1372. handleWheel(event) {
  1373. event.preventDefault();
  1374. },
  1375. // 获取教研室
  1376. getTeaList() {
  1377. let params = {
  1378. oid: this.oid
  1379. };
  1380. this.ajax
  1381. .get(this.$store.state.api + "selectTeacherOfficeBySchool", params)
  1382. .then(res => {
  1383. // return console.log("this.TeachingOptions", res.data[0]);
  1384. let data = res.data[0];
  1385. let dataCopy = [];
  1386. data.forEach(e => {
  1387. if(e.parentid == '6'){
  1388. let a = {};
  1389. a.value = e.name;
  1390. a.text = e.name;
  1391. dataCopy.push(a);
  1392. }
  1393. });
  1394. this.TeachingOptions = dataCopy;
  1395. // console.log("this.TeachingOptions", this.TeachingOptions);
  1396. })
  1397. .catch(err => {
  1398. this.isLoading = false;
  1399. console.error(err);
  1400. });
  1401. },
  1402. // 获取基础页面数据
  1403. getPageBase() {
  1404. this.tabLoad = true;
  1405. let params = {
  1406. typ: this.pType,
  1407. org: this.org,
  1408. oid: this.oid,
  1409. time:this.pType=='1'?this.timeA:this.timeB
  1410. };
  1411. // console.log(params);
  1412. this.ajax
  1413. .get(this.$store.state.api + "selectTestExamineBase2", params)
  1414. .then(res => {
  1415. console.log("xxxxxxxx",res.data)
  1416. let testExamineBaseList = res.data[0];
  1417. this.testExamineBaseList = testExamineBaseList;
  1418. this.tableJsonCon = JSON.parse(res.data[0][0].json);
  1419. this.handleData();
  1420. this.getData();
  1421. })
  1422. .catch(error => {
  1423. console.log(error);
  1424. });
  1425. },
  1426. // 获取首页数据计算审核进度,自评平均分,考核平均分
  1427. getData() {
  1428. let params = {
  1429. oid: this.oid,
  1430. org: this.org,
  1431. type: this.pType,
  1432. tid:this.testExamineBaseList[0].id
  1433. };
  1434. this.ajax
  1435. .get(this.$store.state.api + "selectTestExamineAllData2", params)
  1436. .then(res => {
  1437. // pum是判断审核进度的计数器
  1438. this.tableJsonCon.forEach(e => {
  1439. e.children.forEach(i => {
  1440. i.pum = 0;
  1441. });
  1442. });
  1443. if (!res.data[0].length) return (this.tabLoad = false);
  1444. this.allData = res.data[0];
  1445. let data = res.data[0];
  1446. // 转json
  1447. data.forEach(e => {
  1448. e.json = JSON.parse(e.json);
  1449. });
  1450. console.log("data", data);
  1451. this.tableJsonCon.forEach(a => {
  1452. data.forEach(b => {
  1453. b.json.forEach(c => {
  1454. if (a.id == c.id) {
  1455. a.children.forEach((d, index) => {
  1456. if (d.id == c.children[index].id) {
  1457. // console.log('c.children[index].sco1',c.children[index].sco1);
  1458. d.sco1 = d.sco1 * 1 + c.children[index].sco1 * 1;
  1459. d.sco2 = d.sco2 * 1 + c.children[index].sco2 * 1;
  1460. if (!!c.children[index].sco2 * 1) {
  1461. d.pum++;
  1462. }
  1463. }
  1464. });
  1465. }
  1466. });
  1467. });
  1468. });
  1469. this.tableJsonCon.forEach(e => {
  1470. e.children.forEach(i => {
  1471. i.sco1 = (i.sco1 / this.allData.length).toFixed(2);
  1472. i.sco2 = (i.sco2 / this.allData.length).toFixed(2);
  1473. });
  1474. });
  1475. this.tabLoad = false;
  1476. })
  1477. .catch(error => {
  1478. console.log(error);
  1479. });
  1480. },
  1481. async handleData() {
  1482. for (const e of this.tableJsonCon) {
  1483. for (const k of e.children) {
  1484. if (k.testid.test.length > 0) {
  1485. k.testid.test = await this.computedTest(k.testid.test);
  1486. }
  1487. }
  1488. }
  1489. },
  1490. computedTest(val) {
  1491. let params = [
  1492. {
  1493. uid: "",
  1494. testId: val.join(",")
  1495. }
  1496. ];
  1497. let _fnStr = `selectExamineTestName`
  1498. if(this.testExamineBaseList[0].value){
  1499. const timeValue = JSON.parse(this.testExamineBaseList[0].value).time;
  1500. params[0].startTime = timeValue[0];
  1501. params[0].endTime = timeValue[1];
  1502. _fnStr = `selectExamineTestNameFilterTime`
  1503. }
  1504. return new Promise(resolve => {
  1505. this.ajax
  1506. .post(this.$store.state.api + _fnStr, params)
  1507. .then(res => {
  1508. // console.log("resresresres", res.data[0]);
  1509. // console.log(res.data[0]);
  1510. resolve(res.data[0]);
  1511. })
  1512. .catch(error => {
  1513. console.log(error);
  1514. });
  1515. });
  1516. },
  1517. // 查看数据来源
  1518. lookPrize(val) {
  1519. if(this.testExamineBaseList[0].value){
  1520. const timeValue = JSON.parse(this.testExamineBaseList[0].value).time;
  1521. this.ifmUrl = `https://beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/checkToTest?cid=${val}&oid=${this.oid}&org=${this.org}&userid=${this.userid}&type=2&role=0&disableBack=true&timeLimit=${timeValue}`;
  1522. }else{
  1523. this.ifmUrl = `https://beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/checkToTest?cid=${val}&oid=${this.oid}&org=${this.org}&userid=${this.userid}&type=2&role=0&disableBack=true`;
  1524. }
  1525. // this.ifmUrl = `https://beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/checkToTest?cid=${val}&oid=${this.oid}&org=${this.org}&userid=${this.userid}&type=2&role=0&disableBack=true`;
  1526. // this.ifmUrl = `https://beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/checkToTest?cid=${val}&oid=${this.oid}&org=${this.org}&userid=${this.userid}&type=2&role=0&disableBack=true&`;
  1527. // this.ifmUrl = `https://beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/test?userid=${this.userid}&oid=45facc0a-1211-11ec-80ad-005056b86db5&org=&role=0`;
  1528. this.diaIframe = true;
  1529. },
  1530. // ----------------------------首页操作与弹框操作分界线
  1531. // 按照数字大小排序 方法-
  1532. sortCogMethod(before, after) {
  1533. return Number(before.cogSco) - Number(after.cogSco);
  1534. },
  1535. sortEvaMethod(before, after) {
  1536. return Number(before.evaSca) - Number(after.evaSca);
  1537. },
  1538. // 教研室筛选
  1539. filterTea(value, row, column) {
  1540. console.log(value, row, column);
  1541. const property = column["property"];
  1542. return row[property].includes(value);
  1543. },
  1544. // 查看评分
  1545. lookScore(val, oneName, twoName) {
  1546. this.evaScoDig = true;
  1547. this.evaOneName = oneName;
  1548. this.evaTwoName = twoName;
  1549. this.tableData = [];
  1550. this.secondId = val;
  1551. this.getSecondData();
  1552. this.diaScore = true;
  1553. },
  1554. // 弹框获取这个学校所有的提交表单
  1555. getSecondData() {
  1556. let params = {
  1557. oid: this.oid,
  1558. org: this.org,
  1559. type: this.pType,
  1560. tid:this.testExamineBaseList[0].id
  1561. };
  1562. this.ajax
  1563. .get(this.$store.state.api + "selectTestExamineSecondData2", params)
  1564. .then(res => {
  1565. let data = res.data[0];
  1566. data.forEach(e => {
  1567. e.json = JSON.parse(e.json);
  1568. });
  1569. // console.log("selectTestExamineSecondData", data);
  1570. data.forEach(e => {
  1571. e.evaSca = ""; //自评分数
  1572. e.evaMed = ""; //自评概述
  1573. e.orgData = []; //数据来源
  1574. e.cogSco = ""; //认定分数
  1575. e.cogSummary = ""; //认定概述
  1576. e.score = 0; //分值
  1577. e.judge = 0; //是否填充为默认分数 1:默认等于自评分
  1578. if (!e.tea) {
  1579. e.tea = "";
  1580. }
  1581. e.json.forEach(i => {
  1582. i.children.forEach(k => {
  1583. if (k.id == this.secondId) {
  1584. e.evaSca = k.sco1;
  1585. e.evaMed = k.selfSummary;
  1586. e.orgData = k.testid.test;
  1587. e.score = k.score;
  1588. e.cogSummary = k.cogSum;
  1589. if (!!k.sco2) {
  1590. e.cogSco = k.sco2;
  1591. } else {
  1592. e.cogSco = k.sco1;
  1593. e.judge = 1;
  1594. }
  1595. }
  1596. });
  1597. });
  1598. });
  1599. this.tableData = data;
  1600. // 计算评分弹框平均值等
  1601. this.CopDigSco();
  1602. // 获取数据来源
  1603. this.handleScoData();
  1604. this.evaScoDig = false;
  1605. })
  1606. .catch(error => {
  1607. console.log(error);
  1608. });
  1609. },
  1610. // 弹框计算评分弹框平均值等
  1611. CopDigSco() {
  1612. this.evaScoDigSvg = 0; //自评平均
  1613. this.evaScoDigCog = 0; //认定平均
  1614. this.evaScoDigPerC = 0; //存在分差人数
  1615. this.tableData.forEach(e => {
  1616. this.evaScoDigSvg += e.evaSca * 1;
  1617. this.evaScoDigCog += e.cogSco * 1;
  1618. if (e.evaSca * 1 != e.cogSco * 1) {
  1619. this.evaScoDigPerC++;
  1620. }
  1621. });
  1622. this.evaScoDigSvg = (this.evaScoDigSvg / this.tableData.length).toFixed(
  1623. 2
  1624. );
  1625. this.evaScoDigCog = (this.evaScoDigCog / this.tableData.length).toFixed(
  1626. 2
  1627. );
  1628. },
  1629. // 弹框中处理数据来源
  1630. async handleScoData() {
  1631. for (const e of this.tableData) {
  1632. if (e.orgData.length > 0) {
  1633. e.orgData = await this.computedScoTest(e.orgData, e.userid);
  1634. }
  1635. }
  1636. },
  1637. computedScoTest(val, uid) {
  1638. let params = [
  1639. {
  1640. uid: uid,
  1641. testId: val.join(",")
  1642. }
  1643. ];
  1644. let _fnStr = `selectExamineTestName`
  1645. if(this.testExamineBaseList[0].value){
  1646. const timeValue = JSON.parse(this.testExamineBaseList[0].value).time;
  1647. params[0].startTime = timeValue[0];
  1648. params[0].endTime = timeValue[1];
  1649. _fnStr = `selectExamineTestNameFilterTime`
  1650. }
  1651. return new Promise(resolve => {
  1652. this.ajax
  1653. .post(this.$store.state.api + _fnStr, params)
  1654. .then(res => {
  1655. console.log("selectExamineTestName", res.data[0]);
  1656. resolve(res.data[0]);
  1657. })
  1658. .catch(error => {
  1659. console.log(error);
  1660. });
  1661. });
  1662. },
  1663. // 弹框查看数据来源
  1664. lookUserPrize(val, cid) {
  1665. // return console.log(val);
  1666. // this.ifmUrl = `https://beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/checkToTest?cid=${val}&oid=${this.oid}&org=${this.org}&type=2&role=0&peopleId=${this.userid}`;
  1667. if(this.testExamineBaseList[0].value){
  1668. const timeValue = JSON.parse(this.testExamineBaseList[0].value).time;
  1669. this.ifmUrl = `https://beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/checkToTest?cid=${cid}&oid=${val.organizeid}&userid=${this.userid}&org=${val.org}&type=2&role=0&peopleId=${val.userid}&disableBack=true&timeLimit=${timeValue}`;
  1670. }else{
  1671. this.ifmUrl = `https://beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/checkToTest?cid=${cid}&oid=${val.organizeid}&userid=${this.userid}&org=${val.org}&type=2&role=0&peopleId=${val.userid}&disableBack=true`;
  1672. }
  1673. // this.ifmUrl = `https://beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/checkToTest?cid=${cid}&oid=${val.organizeid}&userid=${this.userid}&org=${val.org}&type=2&role=0&peopleId=${val.userid}&disableBack=true`;
  1674. // this.ifmUrl = `https://beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/test?userid=${this.userid}&oid=45facc0a-1211-11ec-80ad-005056b86db5&org=&role=0`;
  1675. this.diaIframe = true;
  1676. },
  1677. //分数提交与概述提交不一个函数是因为:
  1678. // 认定分数默认等于自评分数,管理员点击到评分才会提交默认分数,点击概述则不会提交分数
  1679. // 分数提交
  1680. Submit(val) {
  1681. console.log("valvalvalvla", val);
  1682. //#region
  1683. // 修改了将页面上的分数也改变颜色,(方式改变,无用了)
  1684. // this.tableData.forEach(e => {
  1685. // if (e.id == val.id) {
  1686. // e.judge = 0;
  1687. // }
  1688. // });
  1689. //#endregion
  1690. if (val.cogSco > val.score) {
  1691. val.cogSco = val.score;
  1692. } else if (val.cogSco < 0) {
  1693. val.cogSco = "";
  1694. this.$message.error("评分不能为负数");
  1695. }
  1696. // 用来判断修改分数是否等于原先分数,如果相等就不提交
  1697. let judgeSubmit = 0;
  1698. val.json.forEach(e => {
  1699. if (judgeSubmit == 1) return;
  1700. e.children.forEach(i => {
  1701. if (i.id == this.secondId) {
  1702. if (i.sco2 == val.cogSco) {
  1703. judgeSubmit = 1;
  1704. }
  1705. }
  1706. });
  1707. });
  1708. if (judgeSubmit == 1) return;
  1709. let recordTit = "";
  1710. val.json.forEach(e => {
  1711. e.children.forEach(i => {
  1712. if (i.id == this.secondId) {
  1713. recordTit = i.name;
  1714. i.sco2 = val.cogSco;
  1715. i.cogSum = val.cogSummary;
  1716. }
  1717. });
  1718. });
  1719. let params = [
  1720. {
  1721. uid: this.userid,
  1722. tid: val.id,
  1723. typ: this.pType,
  1724. json: JSON.stringify(val.json),
  1725. rjson: JSON.stringify({
  1726. rjson: val.json,
  1727. text: `按指标,修改了${recordTit}分数`
  1728. })
  1729. }
  1730. ];
  1731. // return console.log(params);
  1732. this.ajax
  1733. .post(this.$store.state.api + "updateExamineCogDataCopy", params)
  1734. .then(res => {
  1735. this.getSecondData();
  1736. })
  1737. .catch(error => {
  1738. console.log(error);
  1739. });
  1740. },
  1741. // 概述提交
  1742. Submit2(val) {
  1743. // 用来判断修改分数是否等于原先分数,如果相等就不提交
  1744. let judgeSubmit = 0;
  1745. val.json.forEach(e => {
  1746. if (judgeSubmit == 1) return;
  1747. e.children.forEach(i => {
  1748. if (i.id == this.secondId) {
  1749. if (i.cogSum == val.cogSummary) {
  1750. judgeSubmit = 1;
  1751. }
  1752. }
  1753. });
  1754. });
  1755. if (judgeSubmit == 1) return;
  1756. let recordTit = "";
  1757. val.json.forEach(e => {
  1758. e.children.forEach(i => {
  1759. if (i.id == this.secondId) {
  1760. recordTit = i.name;
  1761. i.cogSum = val.cogSummary;
  1762. }
  1763. });
  1764. });
  1765. let params = [
  1766. {
  1767. uid: this.userid, //修改人id
  1768. tid: val.id,
  1769. typ: this.pType,
  1770. json: JSON.stringify(val.json),
  1771. rjson: JSON.stringify({
  1772. rjson: val.json,
  1773. text: `按指标,修改了${recordTit}概述`
  1774. })
  1775. }
  1776. ];
  1777. // return console.log(params);
  1778. this.ajax
  1779. .post(this.$store.state.api + "updateExamineCogDataCopy", params)
  1780. .then(res => {
  1781. this.getSecondData();
  1782. })
  1783. .catch(error => {
  1784. console.log(error);
  1785. });
  1786. },
  1787. // 一键保存:将默认分数什么一键提交
  1788. async allSubmit() {
  1789. this.$confirm("确认保存?", "提示", {
  1790. confirmButtonText: "确定",
  1791. cancelButtonText: "取消",
  1792. type: " info"
  1793. })
  1794. .then(() => {
  1795. this.evaScoDig = true;
  1796. this.handleAllSubmit();
  1797. })
  1798. .catch(() => {
  1799. this.handleData();
  1800. this.$message({
  1801. type: "info",
  1802. message: "已取消保存"
  1803. });
  1804. });
  1805. },
  1806. // 处理一键保存
  1807. async handleAllSubmit() {
  1808. for (const e of this.tableData) {
  1809. if (e.judge == 1) {
  1810. await this.computedAllSubmit(e);
  1811. }
  1812. }
  1813. this.getSecondData(); // 循环结束后执行getSecondData函数
  1814. this.$message.success("已保存");
  1815. },
  1816. computedAllSubmit(val) {
  1817. if (val.cogSco > val.score) {
  1818. val.cogSco = val.score;
  1819. }
  1820. val.json.forEach(e => {
  1821. e.children.forEach(i => {
  1822. if (i.id == this.secondId) {
  1823. i.sco2 = val.cogSco;
  1824. i.cogSum = val.cogSummary;
  1825. }
  1826. });
  1827. });
  1828. let params = [
  1829. {
  1830. uid: this.userid,
  1831. tid: val.id,
  1832. typ: this.pType,
  1833. json: JSON.stringify(val.json),
  1834. rjson: JSON.stringify({
  1835. rjson: val.json,
  1836. text: `按指标,进行了一键保存`
  1837. })
  1838. }
  1839. ];
  1840. // return console.log(params);
  1841. return new Promise(resolve => {
  1842. this.ajax
  1843. .post(this.$store.state.api + "updateExamineCogDataCopy", params)
  1844. .then(res => {
  1845. resolve(res);
  1846. })
  1847. .catch(error => {
  1848. console.log(error);
  1849. });
  1850. });
  1851. },
  1852. // 关闭评分弹框
  1853. handleClose(done) {
  1854. this.getPageBase();
  1855. done();
  1856. },
  1857. // 关闭数据来源弹框
  1858. handleClose2(done) {
  1859. this.evaScoDig = true;
  1860. this.getSecondData();
  1861. done();
  1862. }
  1863. }
  1864. };
  1865. </script>
  1866. <style scoped>
  1867. .orgDataCss {
  1868. cursor: pointer;
  1869. margin-bottom: 10px;
  1870. color: #528df6;
  1871. }
  1872. /* 取消[type='number']的input的上下箭头 */
  1873. input::-webkit-inner-spin-button {
  1874. -webkit-appearance: none !important;
  1875. }
  1876. input::-webkit-outer-spin-button {
  1877. -webkit-appearance: none !important;
  1878. }
  1879. input[type="number"] {
  1880. -moz-appearance: textfield;
  1881. }
  1882. .tArea {
  1883. box-sizing: border-box;
  1884. padding: 5px;
  1885. /* border: none; */
  1886. min-height: 50px;
  1887. width: 100%;
  1888. height: 100%;
  1889. resize: none;
  1890. outline-style: none;
  1891. border-radius: 4px;
  1892. border: 1px solid #dcdfe6 !important;
  1893. }
  1894. .scoTab >>> .cell {
  1895. line-height: normal;
  1896. }
  1897. .ScoreStep {
  1898. height: 50px;
  1899. }
  1900. .ScoreStep > input {
  1901. height: 100% !important;
  1902. outline-style: none;
  1903. padding: 5px;
  1904. box-sizing: border-box;
  1905. border-radius: 4px;
  1906. text-align: center;
  1907. border: 1px solid #dcdfe6 !important;
  1908. }
  1909. .ScoreStep >>> .el-input-number {
  1910. height: 100% !important;
  1911. }
  1912. .ScoreStep >>> .el-input {
  1913. height: 100% !important;
  1914. }
  1915. .ScoreStep >>> .el-input__inner {
  1916. height: 100%;
  1917. padding-left: 15px;
  1918. padding-right: 15px;
  1919. }
  1920. .diaScoreTop {
  1921. display: flex;
  1922. justify-content: space-between;
  1923. height: 60px;
  1924. }
  1925. .diaScoreLeft {
  1926. display: flex;
  1927. justify-content: space-between;
  1928. align-items: center;
  1929. }
  1930. .diaScoreLeft > div {
  1931. margin-right: 30px;
  1932. }
  1933. .diaScoreRight {
  1934. display: flex;
  1935. justify-content: space-between;
  1936. align-items: center;
  1937. }
  1938. .TabBtn {
  1939. cursor: pointer;
  1940. color: #528df6;
  1941. }
  1942. .sBox_table {
  1943. width: 100%;
  1944. min-width: calc(150px * 7);
  1945. margin: 0 auto;
  1946. /* min-width: 1520px; */
  1947. font-size: 14px;
  1948. border-left: 1px #ccc solid;
  1949. border-right: 1px #ccc solid;
  1950. }
  1951. .table_title {
  1952. width: 100%;
  1953. min-width: calc(150px * 9);
  1954. height: 50px;
  1955. background: #e0eafb;
  1956. border: 1px solid #d5d8df;
  1957. display: flex;
  1958. flex-direction: row;
  1959. flex-wrap: nowrap;
  1960. align-items: center;
  1961. }
  1962. .table_title > div {
  1963. width: calc(100% / 9);
  1964. min-width: 150px;
  1965. text-align: center;
  1966. height: 100%;
  1967. line-height: 50px;
  1968. border-right: 1px solid #d5d8df;
  1969. }
  1970. .table_title2 {
  1971. width: 100%;
  1972. min-width: calc(150px * 8);
  1973. height: 50px;
  1974. background: #e0eafb;
  1975. border: 1px solid #d5d8df;
  1976. display: flex;
  1977. flex-direction: row;
  1978. flex-wrap: nowrap;
  1979. align-items: center;
  1980. }
  1981. .table_title2 > div {
  1982. width: calc(100% / 8);
  1983. min-width: 150px;
  1984. text-align: center;
  1985. height: 100%;
  1986. line-height: 50px;
  1987. border-right: 1px solid #d5d8df;
  1988. }
  1989. .table_title > div:last-child {
  1990. border: none;
  1991. }
  1992. .table_Content {
  1993. width: 100%;
  1994. min-width: calc(150px * 9);
  1995. /* border: 1px solid #d5d8df; */
  1996. display: flex;
  1997. flex-direction: row;
  1998. flex-wrap: nowrap;
  1999. text-align: center;
  2000. align-items: center;
  2001. }
  2002. .table_Content2 {
  2003. width: 100%;
  2004. min-width: calc(150px * 8);
  2005. /* border: 1px solid #d5d8df; */
  2006. display: flex;
  2007. flex-direction: row;
  2008. flex-wrap: nowrap;
  2009. text-align: center;
  2010. align-items: center;
  2011. }
  2012. .twoCol {
  2013. width: 100%;
  2014. display: flex;
  2015. }
  2016. .ColTit {
  2017. width: calc(100% / 9);
  2018. min-width: 150px;
  2019. display: flex;
  2020. justify-content: center;
  2021. align-items: center;
  2022. border-bottom: 1px #ccc solid;
  2023. }
  2024. .ColTit2 {
  2025. width: calc(100% / 8);
  2026. min-width: 150px;
  2027. display: flex;
  2028. justify-content: center;
  2029. align-items: center;
  2030. border-bottom: 1px #ccc solid;
  2031. }
  2032. .twoCon {
  2033. display: flex;
  2034. }
  2035. .twoCon > div {
  2036. width: calc(100% / 8);
  2037. min-width: 150px;
  2038. min-height: 50px;
  2039. /* line-height: 50px; */
  2040. display: flex;
  2041. justify-content: center;
  2042. align-items: center;
  2043. border-left: 1px #ccc solid;
  2044. border-bottom: 1px #ccc solid;
  2045. }
  2046. .twoCon2 {
  2047. display: flex;
  2048. }
  2049. .twoCon2 > div {
  2050. width: calc(100% / 7);
  2051. min-width: 150px;
  2052. min-height: 50px;
  2053. /* line-height: 50px; */
  2054. display: flex;
  2055. justify-content: center;
  2056. align-items: center;
  2057. border-left: 1px #ccc solid;
  2058. border-bottom: 1px #ccc solid;
  2059. }
  2060. .ColCon {
  2061. flex: 1;
  2062. }
  2063. .dialog_diy >>> .el-dialog {
  2064. height: 95%;
  2065. margin: 0 auto !important;
  2066. margin-top: 20px !important;
  2067. overflow: hidden;
  2068. }
  2069. .dialog_diy >>> .el-dialog__header {
  2070. background: #454545 !important;
  2071. padding: 25px 20px;
  2072. }
  2073. .dialog_diy >>> .el-dialog__body {
  2074. height: calc(100% - 50px);
  2075. box-sizing: border-box;
  2076. padding: 0px;
  2077. }
  2078. .dialog_diy >>> .el-dialog__title {
  2079. color: #fff;
  2080. }
  2081. .dialog_diy >>> .el-dialog__headerbtn {
  2082. top: 19px;
  2083. }
  2084. .dialog_diy >>> .el-dialog__headerbtn .el-dialog__close {
  2085. color: #fff;
  2086. }
  2087. .dialog_diy >>> .el-dialog__headerbtn .el-dialog__close:hover {
  2088. color: #fff;
  2089. }
  2090. .dialog_diy >>> .el-dialog__body,
  2091. .dialog_diy >>> .el-dialog__footer {
  2092. background: #fafafa;
  2093. }
  2094. .num_input>>>input{
  2095. padding-right: 0px;
  2096. -moz-appearance: textfield;
  2097. -webkit-appearance: textfield;
  2098. line-height: 1px !important;
  2099. }
  2100. .num_input>>>input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
  2101. -webkit-appearance: none;
  2102. margin: 0;
  2103. }
  2104. </style>