pdf.vue 60 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911
  1. <template>
  2. <div>
  3. <!-- 封面 -->
  4. <div class="cd_box fm" style="border: none;margin-top: 20px;height: 868px;">
  5. <div class="cb_db adf">
  6. <div class="cb_db_l">{{ datetime }}</div>
  7. </div>
  8. <img class="fm_img" src="@/assets/images/agent/pdf_logo.png">
  9. <div class="fm_title">
  10. <div class="pt_p">PERILL</div>
  11. <div class="pt_name">团队诊断报告</div>
  12. <div class="pt_tip">{{ reportData?.cover?.title }}</div>
  13. </div>
  14. <div class="fm_pre adfac" style="margin-top: 165px;">
  15. <div class="fmp_l">报告撰写人:</div>
  16. <!-- <div class="fmp_r">{{ reportData?.cover?.realName }}</div> -->
  17. <div class="fmp_r">创衡AI教练助手</div>
  18. </div>
  19. <div class="fm_pre adfac">
  20. <div class="fmp_l">项目名称:</div>
  21. <div class="fmp_r">{{ reportData?.cover?.programName }}</div>
  22. </div>
  23. <div class="fm_pre adfac">
  24. <div class="fmp_l">客户名称:</div>
  25. <div class="fmp_r">{{ reportData?.cover?.enterpriseName }}</div>
  26. </div>
  27. <div class="fm_pre adfac">
  28. <div class="fmp_l">团队名称:</div>
  29. <div class="fmp_r">{{ reportData?.cover?.teamName }}</div>
  30. </div>
  31. <div class="fm_pre adfac">
  32. <div class="fmp_l">成员人数:</div>
  33. <div class="fmp_r">{{ reportData?.cover?.userNum }}</div>
  34. </div>
  35. <div class="fm_pre adfac">
  36. <div class="fmp_l">报告时间:</div>
  37. <div class="fmp_r">{{ reportData?.cover?.genDate }}</div>
  38. </div>
  39. <div class="cd_page" style="color: #FFFFFF;">1/{{ pageNum }}</div>
  40. </div>
  41. <!-- 介绍 -->
  42. <div class="cd_box js" style="border: none;">
  43. <div class="cb_db adf">
  44. <div class="cb_db_l cdl">{{ datetime }}</div>
  45. </div>
  46. <div class="cb_content">
  47. <div class="mddj_title adfac">
  48. <img src="@/assets/images/agent/pdf_title.png">
  49. <span>介绍</span>
  50. </div>
  51. <p>PERILL模型由发展辅导领域的先驱、全球顶尖教练以及管理思维与团队绩效领域的权威David Clutterbuck教授研发。该模型运用复杂、适应性思维,通过 PERILL 六大支柱对团队进行分析。这六大支柱概括了相互作用、推动或阻碍团队绩效的六大关键影响因素。</p>
  52. <p>以下报告提取了参与 PERILL 诊断问卷的团队成员提供的评分,并将其应用于 PERILL 模型。报告旨在总结团队的高绩效领域与潜在功能失调领域,以助力提升团队整体绩效。</p>
  53. <p>这份 PERILL 报告的结果可帮助企业与团队更好地了解自身优势、存在的问题、差距或需要克服的潜在挑战,从而提升团队绩效、声誉与协作能力。</p>
  54. <div class="big_title">PERILL的六大支柱</div>
  55. <p>PERILL 诊断提供了一个复杂的团队系统概览,它并非针对孤立的问题,也不是简单的优缺点,而是着眼于团队系统的复杂性。它通过 6 个影响因素(如下所述)提出问题,以揭示团队系统各要素之间的联系,以及这些联系如何影响团队的高效运作能力。</p>
  56. <div class="js_boxs">
  57. <div class="jb_pre jp1">
  58. <div class="jbp_zm">P</div>
  59. <img src="@/assets/images/agent/pdf_img_p.png">
  60. <div class="jbp_title" style="line-height: 30px;">目的与动机</div>
  61. <p style="margin-top: 0;">是否存在一个明确的存在理由和清晰的方向,能够激发团队成员的动力并抓住他们的想象力?</p>
  62. <p>个人身份和集体身份是否围绕共同目标达成一致?</p>
  63. </div>
  64. <div class="jb_pre jp2">
  65. <div class="jbp_zm">E</div>
  66. <img src="@/assets/images/agent/pdf_img_e.png">
  67. <div class="jbp_title" style="line-height: 12px;">外部流程及系统与架构</div>
  68. <p style="margin-top: 0;">团队如何与其各类利益相关者互动?</p>
  69. <p>团队如何理解这些利益相关者以及利益相关者如何理解团队?此外,团队又该如何管理相互冲突的期望、获取资源等?</p>
  70. </div>
  71. <div class="jb_pre jp3">
  72. <div class="jbp_zm">R</div>
  73. <img src="@/assets/images/agent/pdf_img_r.png">
  74. <div class="jbp_title" style="line-height: 30px;">关系</div>
  75. <p style="margin-top: 0;">团队成员之间是否相互信任和尊重?</p>
  76. <p>团队成员之间是否相互信任和尊重?</p>
  77. <p>团队成员之间的关系是否有助于实现真正紧密的协作?</p>
  78. </div>
  79. <div class="jb_pre jp4">
  80. <div class="jbp_zm">I</div>
  81. <img src="@/assets/images/agent/pdf_img_i.png">
  82. <div class="jbp_title" style="line-height: 12px;">内部流程及系统与架构</div>
  83. <p style="margin-top: 0;">团队在平衡责任与自主权方面是如何实现功能性协作的?</p>
  84. <p>它的敏捷性如何,沟通方式怎样,决策流程的运作效果有多好?</p>
  85. </div>
  86. <div class="jb_pre jp5">
  87. <div class="jbp_zm">L</div>
  88. <img src="@/assets/images/agent/pdf_img_l.png">
  89. <div class="jbp_title" style="line-height: 30px;">学习</div>
  90. <p style="margin-top: 0;">团队如何提高绩效,提高技能和资源,以应对当前和未来的任务?</p>
  91. <p>它如何管理能力和提高效率?</p>
  92. </div>
  93. </div>
  94. <div class="js_single_box adf">
  95. <div class="jsb_zm">L</div>
  96. <div class="jsb_l adffcacjc">
  97. <img src="@/assets/images/agent/pdf_img_l.png">
  98. <p>领导力</p>
  99. </div>
  100. <div class="jsb_r adffcacjc">
  101. 领导力的特质与行为如何对团队运作及其他因素产生调节影响,且这种影响是正向还是负向的?
  102. </div>
  103. </div>
  104. </div>
  105. <div class="cd_page">2/{{ pageNum }}</div>
  106. </div>
  107. <!-- 总体诊断分析 -->
  108. <div class="cd_box">
  109. <div class="cb_db adf">
  110. <div class="cb_db_l cdl">{{ datetime }}</div>
  111. </div>
  112. <div class="cb_content">
  113. <div class="mddj_title adfac">
  114. <img src="@/assets/images/agent/pdf_title.png">
  115. <span>总体诊断分析</span>
  116. </div>
  117. <p class="p2" style="margin-top: 43px;">{{ reportData?.overall?.diagResult }}</p>
  118. <div class="pdfEchart" id="zttdznRef" ref="zttdznRef" style="width: 100%; height: 350px;margin-top: 20px;"></div>
  119. <div class="bp" style="margin-top: 40px;">诊断结果</div>
  120. <p style="margin-top: 10px;">{{ reportData?.overall?.overall_analysis }}</p>
  121. </div>
  122. <div class="cd_page">3/{{ pageNum }}</div>
  123. </div>
  124. <!-- 多维度 -->
  125. <template v-if="reportData?.dimensionAnalysis?.length">
  126. <div v-for="(rd,ridx) in reportData.dimensionAnalysis" :key="ridx">
  127. <!-- 第四页 目的与动机 -->
  128. <div class="cd_box">
  129. <div class="cb_db adf">
  130. <div class="cb_db_l cdl">{{ datetime }}</div>
  131. </div>
  132. <div class="cb_content">
  133. <div class="mddj_title adfac">
  134. <img src="@/assets/images/agent/pdf_title.png">
  135. <span>{{ rd?.performanceRatings?.title }}</span>
  136. </div>
  137. <p class="p2" style="margin-top: 43px;">在目标与动机支柱中,我们旨在探究是否存在一个清晰的存在理由和明确的方向,能够激发团队成员的动力并吸引他们的想象力,以及个人与集体的身份认同是否围绕共同目标达成一致。</p>
  138. <p class="p3" style="margin-top: 42px;">为了帮助我们理解这一点,我们将从 5 个关键主题的角度审视团队的运作情况,具体如下:</p>
  139. <div class="mddj_boxs" v-if="rd?.performanceRatings?.title=='目的和动机'">
  140. <div class="mb_item" style="border-top: 1px dotted #833478;">
  141. <div class="mbi_title">一致性:</div>
  142. <div class="mbi_text">存在共同的目标和使命意识。个人目标与集体目标之间具有凝聚力。团队成员共享价值观,且集体议程优先于个人议程。</div>
  143. </div>
  144. <div class="mb_item">
  145. <div class="mbi_title">清晰度:</div>
  146. <div class="mbi_text">团队对个人及集体的角色和职责有高度清晰的认知。他们清楚地理解自身未来的方向、目标和使命。</div>
  147. </div>
  148. <div class="mb_item">
  149. <div class="mbi_title">热情与贡献:</div>
  150. <div class="mbi_text">团队对自身的工作目的有强烈的认同感,并展现出高昂的热情,以应对既定的挑战和目标。他们认为自己的工作富有意义,并感觉正在为世界贡献特殊的价值。</div>
  151. </div>
  152. <div class="mb_item">
  153. <div class="mbi_title">愉悦感:</div>
  154. <div class="mbi_text">团队从工作角色中获得快乐和 / 或满足感,欣赏并与团队中的同事保持联结。</div>
  155. </div>
  156. <div class="mb_item">
  157. <div class="mbi_title">支持与协作:</div>
  158. <div class="mbi_text">团队成员拥有团结感和高度的同志情谊。他们对团队目标有着共同的承诺,并愿意相互支持以实现这些目标。</div>
  159. </div>
  160. </div>
  161. <div class="mddj_boxs" v-else-if="rd?.performanceRatings?.title=='外部流程及系统与架构'">
  162. <div class="mb_item" style="border-top: 1px dotted #833478;">
  163. <div class="mbi_title">环境意识:</div>
  164. <div class="mbi_text">该团队拥有环境扫描和竞争对手监控的流程,并对相关情况有强烈的意识。在更广泛的环境中正在发生的事情。他们对更广泛市场背景下的宏观和微观趋势有所了解,这有助于团队做出明智、合理且富有成效的商业决策。</div>
  165. </div>
  166. <div class="mb_item">
  167. <div class="mbi_title">利益相关者与客户协同:</div>
  168. <div class="mbi_text">该团队拥有良好的系统,使他们能够与客户保持良好且定期的互动利益相关者,并确保他们的优先事项、目标和价值观保持一致。</div>
  169. </div>
  170. <div class="mb_item">
  171. <div class="mbi_title">人才与资源获取:</div>
  172. <div class="mbi_text">团队在需要时能够获取额外或替代的人才和资源,并且他们了解这一流程他们需要遵循这些规则才能获得成功。这有助于团队实现平稳高效的运营。</div>
  173. </div>
  174. <div class="mb_item">
  175. <div class="mbi_title">利益相关者与客户沟通:</div>
  176. <div class="mbi_text">该团队建立了强大的系统,以便随时向利益相关者和客户通报其工作进展,以及为什么。他们愿意倾听并从利益相关者和客户那里学习,以支持他们实现目标目标并提升绩效。</div>
  177. </div>
  178. <div class="mb_item">
  179. <div class="mbi_title">关系中的信任与诚信:</div>
  180. <div class="mbi_text">利益相关者对团队及其能力充满信心,团队也因其行事方式而受到尊重他们自己的行为。</div>
  181. </div>
  182. </div>
  183. <div class="mddj_boxs" v-else-if="rd?.performanceRatings?.title=='关系'">
  184. <div class="mb_item" style="border-top: 1px dotted #833478;">
  185. <div class="mbi_title">技能和专业知识:</div>
  186. <div class="mbi_text">团队具备恰当的技能与专业能力平衡,以实现团队目标。成员彼此信任,认为各自具备互补的优势与劣势,能支持目标达成。<br/>尊重与信任团队成员无论在私下还是公开场合都高度尊重彼此。他们信任对方会言行一致,并相互欣赏。</div>
  187. </div>
  188. <div class="mb_item">
  189. <div class="mbi_title">情谊与凝聚力</div>
  190. <div class="mbi_text">团队成员彼此关怀,情谊深厚。任何冲突或挑战都具有建设性,成员期望彼此获得成功。</div>
  191. </div>
  192. <div class="mb_item">
  193. <div class="mbi_title">人才与资源获取:</div>
  194. <div class="mbi_text">团队在需要时能够获取额外或替代的人才和资源,并且他们了解这一流程他们需要遵循这些规则才能获得成功。这有助于团队实现平稳高效的运营。</div>
  195. </div>
  196. <div class="mb_item">
  197. <div class="mbi_title">安全沟通环境:</div>
  198. <div class="mbi_text">团队内部具备高度的心理安全感。成员之间能坦诚相待、善于倾听,敢于暴露自身脆弱之处并承认错误。</div>
  199. </div>
  200. <div class="mb_item">
  201. <div class="mbi_title">重视多样性与包容性:</div>
  202. <div class="mbi_text">团队高度重视多样性与包容性。所有成员都认为自己的声音被倾听与尊重,可自由提问与质疑,并在适当情况下欣然认同彼此的技能、价值观与经验。</div>
  203. </div>
  204. </div>
  205. <div class="mddj_boxs" v-else-if="rd?.performanceRatings?.title=='内部流程及系统与架构'">
  206. <div class="mb_item" style="border-top: 1px dotted #833478;">
  207. <div class="mbi_title">合理资源配置:</div>
  208. <div class="mbi_text">团队拥有实现目标所需的合理资源配置,具备恰当的能力与知识平衡,并能在必要时补充额外技能。<br/>尊重与信任团队成员无论在私下还是公开场合都高度尊重彼此。他们信任对方会言行一致,并相互欣赏。</div>
  209. </div>
  210. <div class="mb_item">
  211. <div class="mbi_title">团队敏捷性:</div>
  212. <div class="mbi_text">团队能够高效且迅速地响应外部变化,并实现快速创新。必要时,团队可分担责任,相互支持以减轻任务负担。</div>
  213. </div>
  214. <div class="mb_item">
  215. <div class="mbi_title">问责机制:</div>
  216. <div class="mbi_text">团队内部在问责制与自主权之间实现了良好平衡。成员可在自身专业领域承担领导角色,并负责相互同步信息(而非依赖团队领导者)。</div>
  217. </div>
  218. <div class="mb_item">
  219. <div class="mbi_title">系统效能:</div>
  220. <div class="mbi_text">团队建立了完善的系统,并定期审视系统背后的假设及其有效性。团队通过可靠的流程支持科学决策,避免决策偏差。</div>
  221. </div>
  222. <div class="mb_item">
  223. <div class="mbi_title">团队保护:</div>
  224. <div class="mbi_text">团队领导者助力成员专注于工作,确保将外部干扰降至最低,团队韧性较强。</div>
  225. </div>
  226. </div>
  227. <div class="mddj_boxs" v-else-if="rd?.performanceRatings?.title=='学习'">
  228. <div class="mb_item" style="border-top: 1px dotted #833478;">
  229. <div class="mbi_title">发展规划:</div>
  230. <div class="mbi_text">团队认识到学习与成长的重要性,所有成员均制定了个人发展计划。团队还制定了全员认同的团队发展计划,聚焦团队在未来 12-24 个月需实现的整体进化方向。</div>
  231. </div>
  232. <div class="mb_item">
  233. <div class="mbi_title">学习相关性:</div>
  234. <div class="mbi_text">团队重视根据环境变化的需求持续提升技能和重新学习技能。发展方向反映了市场和业务战略的演变。</div>
  235. </div>
  236. <div class="mb_item">
  237. <div class="mbi_title">嵌入式学习:</div>
  238. <div class="mbi_text">团队内部拥有根深蒂固的学习文化,并高度重视持续学习。他们开展相互辅导,并将学习作为团队会议议程的常规议题。</div>
  239. </div>
  240. <div class="mb_item">
  241. <div class="mbi_title">发展导向:</div>
  242. <div class="mbi_text">团队频繁挑战自身假设,并主动邀请外部挑战。他们专注于效能与创新,并投资构建支持这一目标的网络。</div>
  243. </div>
  244. <div class="mb_item">
  245. <div class="mbi_title">反思性学习:</div>
  246. <div class="mbi_text">团队分配时间进行反思性学习,拥有完善的流程和实践,可对错误和挫折进行回顾、反思与学习,并利用所学主动实施积极变革。</div>
  247. </div>
  248. </div>
  249. <div class="mddj_boxs" v-else-if="rd?.performanceRatings?.title=='领导力'">
  250. <div class="mb_item" style="border-top: 1px dotted #833478;">
  251. <div class="mbi_title">愿景与背景:</div>
  252. <div class="mbi_text">团队明确自身的发展方向及原因。团队领导者专注于阐释目标背后的背景,并帮助每位成员理解自身目标。协作赋能型领导力团队与领导者就合适的管理风格达成共识。成员被赋予自主权与问责制,且在需要时可承担领导角色。</div>
  253. </div>
  254. <div class="mb_item">
  255. <div class="mbi_title">协作赋能型领导力:</div>
  256. <div class="mbi_text">团队与领导者就合适的管理风格达成共识。成员被赋予自主权与问责制,且在需要时可承担领导角色。</div>
  257. </div>
  258. <div class="mb_item">
  259. <div class="mbi_title">人际领导力:</div>
  260. <div class="mbi_text">团队成员与领导者沟通时感到自在,他们关心并尊重领导者,而领导者也展现出对成员的关怀。</div>
  261. </div>
  262. <div class="mb_item">
  263. <div class="mbi_title">领导勇气:</div>
  264. <div class="mbi_text">领导者展现出勇气,具备即便面临个人风险也坚持做正确之事的能力。他们保护团队免受外部过度干扰,专注于提升团队声誉与公信力。</div>
  265. </div>
  266. <div class="mb_item">
  267. <div class="mbi_title">启发性领导力:</div>
  268. <div class="mbi_text">团队领导者是成员的榜样,以身作则践行团队的价值观与行为准则。领导者关注团队的使命与目标,其经验与才智深受成员尊敬与重视。</div>
  269. </div>
  270. </div>
  271. </div>
  272. <div class="cd_page">{{ridx*7+4}}/{{ pageNum }}</div>
  273. </div>
  274. <!-- 第五页 绩效评级目的与动机 -->
  275. <div class="cd_box">
  276. <div class="cb_db adf">
  277. <div class="cb_db_l cdl">{{ datetime }}</div>
  278. </div>
  279. <div class="cb_content jxpjmddj">
  280. <div class="mddj_title adfac">
  281. <img src="@/assets/images/agent/pdf_title.png">
  282. <span>{{ rd?.performanceRatings?.title }}</span>
  283. </div>
  284. <div class="bp" style="margin-top: 24px;">评分总体分布</div>
  285. <div :id="'pfztfbRef'+ridx" style="width: 100%; height: 200px;" class="pdfEchart"></div>
  286. <div class="bp" style="margin-top: 7px;">均分及差异分析</div>
  287. <div class="cyfx_boxs">
  288. <div class="cyfxb_box" style="border-left: none;">
  289. <div class="cbb_top">均分前五</div>
  290. <div class="cbb_bottom">
  291. <div class="cbbb_item" v-for="rph in rd?.performanceRatings?.highestMeanScores">
  292. <div class="ci_l">{{ rph?.question }}</div>
  293. <div class="ci_r">
  294. <div class="circle">
  295. <div class="semi-circle" :style="{'--percentage': rph?.score}"></div>
  296. <div class="number">{{ rph?.score }}</div>
  297. </div>
  298. </div>
  299. </div>
  300. </div>
  301. </div>
  302. <div class="cyfxb_box">
  303. <div class="cbb_top red">均分后五</div>
  304. <div class="cbb_bottom">
  305. <div class="cbbb_item" v-for="rph in rd?.performanceRatings?.lowestMeanScores">
  306. <div class="ci_l">{{ rph?.question }}</div>
  307. <div class="ci_r">
  308. <div class="circle">
  309. <div class="semi-circle red" :style="{'--percentage': rph?.score}"></div>
  310. <div class="number red">{{ rph?.score }}</div>
  311. </div>
  312. </div>
  313. </div>
  314. </div>
  315. </div>
  316. <div class="cyfxb_box">
  317. <div class="cbb_top">方差前五</div>
  318. <div class="cbb_bottom">
  319. <div class="cbbb_item" v-for="rph in rd?.performanceRatings?.highestVarianceScores">
  320. <div class="ci_l">{{ rph?.question }}</div>
  321. <div class="ci_r">
  322. <div class="circle">
  323. <div class="semi-circle" :style="{'--percentage': rph?.score}"></div>
  324. <div class="number">{{ rph?.score }}</div>
  325. </div>
  326. </div>
  327. </div>
  328. </div>
  329. </div>
  330. <div class="cyfxb_box">
  331. <div class="cbb_top red">方差后五</div>
  332. <div class="cbb_bottom">
  333. <div class="cbbb_item" v-for="rph in rd?.performanceRatings?.lowestVarianceScores">
  334. <div class="ci_l">{{ rph?.question }}</div>
  335. <div class="ci_r">
  336. <div class="circle">
  337. <div class="semi-circle red" :style="{'--percentage': rph?.score}"></div>
  338. <div class="number red">{{ rph?.score }}</div>
  339. </div>
  340. </div>
  341. </div>
  342. </div>
  343. </div>
  344. </div>
  345. </div>
  346. <div class="cd_page">{{ridx*7+5}}/{{ pageNum }}</div>
  347. </div>
  348. <!-- 第六页 绩效评级目的与动机 -->
  349. <div class="cd_box">
  350. <div class="cb_db adf">
  351. <div class="cb_db_l cdl">{{ datetime }}</div>
  352. </div>
  353. <div class="cb_content">
  354. <div class="mddj_title adfac">
  355. <img src="@/assets/images/agent/pdf_title.png">
  356. <span>{{ rd?.performanceRatings?.title }}</span>
  357. </div>
  358. <div class="bp" style="margin-top: 44px;">诊断分析</div>
  359. <p style="margin-top: 17px;">{{ rd?.diagAnalysis?.summary }}</p>
  360. <div class="jxpjmddj_box">
  361. <div class="jb_title">主题:纬度评价分:{{ rd?.diagAnalysis?.avgScore }}<span style="margin-left: 17px;">标准方差:{{ rd?.diagAnalysis?.variance }}</span></div>
  362. </div>
  363. <div class="jxpjmddj_box">
  364. <div class="jb_title2">诊断结果:</div>
  365. <div class="jb_text" v-html="rd?.diagAnalysis?.diagResult.replace(/(\r\n|\n|\r)+/g, '<br>')"></div>
  366. </div>
  367. <div class="jxpjmddj_box">
  368. <div class="jb_title2">建议:</div>
  369. <div class="jb_text" v-for="(t,i) in rd?.diagAnalysis?.suggestion" :key="i">{{ t }}</div><br>
  370. </div>
  371. </div>
  372. <div class="cd_page">{{ridx*7+6}}/{{ pageNum }}</div>
  373. </div>
  374. <!-- 第七页 问卷题目详细分析 -->
  375. <div class="cd_box">
  376. <div class="cb_db adf">
  377. <div class="cb_db_l cdl">{{ datetime }}</div>
  378. </div>
  379. <div class="cb_content">
  380. <div class="mddj_title adfac">
  381. <img src="@/assets/images/agent/pdf_title.png">
  382. <span>{{ rd?.performanceRatings?.title }}</span>
  383. </div>
  384. <div class="bp" style="margin-top: 20px;">问卷题目详细分析</div>
  385. <p class="p2" style="margin-top: 21px;padding-left: 8px;">以下问题均与 “{{rd?.performanceRatings?.title}}” 这一核心支柱以及上述分析中强调的主题紧密相关。</p>
  386. <p class="p3" style="margin-top: 10px;padding-left: 8px;">此处的线性图示将从总体上展示团队的绩效得分情况、得分之间的差异百分比,同时以可视化方式呈现这些分数及其范围。</p>
  387. <div class="xxfx_title adfac">
  388. <div class="xt_pre">问题</div>
  389. <div class="xt_pre">平均分</div>
  390. <div class="xt_pre">方差</div>
  391. </div>
  392. <div class="xxfx_list">
  393. <div class="xl_item adfac" v-for="(rda,index) in rd?.dataAnalysis?.slice(0,9)" :key="index">
  394. <div class="xli_l adfac">
  395. <div class="xl_pre">{{ index+1 }}</div>
  396. <div class="xl_pre red">{{ rda?.avgScore }}</div>
  397. <div class="xl_pre">{{ rda?.variance }}</div>
  398. </div>
  399. <div class="xli_r">
  400. <div class="xr_p">{{ rda?.question }}</div>
  401. <div class="xr_tb adfac">
  402. <div class="xt_pre p1"></div>
  403. <div class="xt_pre p2"></div>
  404. <div class="xt_pre p3"></div>
  405. <div class="xt_score adfac" :style="{'left':rda?.lowestScore==50?'calc(100% - 63px)':rda?.lowestScore*2+'%','width':((rda?.highestScore-rda?.lowestScore)*2)+'%'}">
  406. <div class="xts_num red">{{ rda?.lowestScore }}</div>
  407. <div class="xts_box"></div>
  408. <div class="xts_num green">{{ rda?.highestScore }}</div>
  409. </div>
  410. </div>
  411. </div>
  412. </div>
  413. </div>
  414. </div>
  415. <div class="cd_page">{{ridx*7+7}}/{{ pageNum }}</div>
  416. </div>
  417. <!-- 第八页 问卷题目详细分析 -->
  418. <div class="cd_box">
  419. <div class="cb_db adf">
  420. <div class="cb_db_l cdl">{{ datetime }}</div>
  421. </div>
  422. <div class="cb_content">
  423. <div class="xxfx_list">
  424. <div class="xl_item adfac" v-for="(rda,index) in rd?.dataAnalysis?.slice(9,rd?.dataAnalysis?.length)" :key="index">
  425. <div class="xli_l adfac">
  426. <div class="xl_pre">{{ index+10 }}</div>
  427. <div class="xl_pre red">{{ rda?.avgScore }}</div>
  428. <div class="xl_pre">{{ rda?.variance }}</div>
  429. </div>
  430. <div class="xli_r">
  431. <div class="xr_p">{{ rda?.question }}</div>
  432. <div class="xr_tb adfac">
  433. <div class="xt_pre p1"></div>
  434. <div class="xt_pre p2"></div>
  435. <div class="xt_pre p3"></div>
  436. <div class="xt_score adfac" :style="{'left':rda?.lowestScore==50?'calc(100% - 63px)':rda?.lowestScore*2+'%','width':((rda?.highestScore-rda?.lowestScore)*2)+'%'}">
  437. <div class="xts_num red">{{ rda?.lowestScore }}</div>
  438. <div class="xts_box"></div>
  439. <div class="xts_num green">{{ rda?.highestScore }}</div>
  440. </div>
  441. </div>
  442. </div>
  443. </div>
  444. </div>
  445. </div>
  446. <div class="cd_page">{{ridx*7+8}}/{{ pageNum }}</div>
  447. </div>
  448. <!-- 第九页 团队成员回答分数 -->
  449. <div class="cd_box">
  450. <div class="cb_db adf">
  451. <div class="cb_db_l cdl">{{ datetime }}</div>
  452. </div>
  453. <div class="cb_content">
  454. <div class="mddj_title adfac">
  455. <img src="@/assets/images/agent/pdf_title.png">
  456. <span>{{ rd?.performanceRatings?.title }}</span>
  457. </div>
  458. <div class="bp" style="margin-top: 20px;">团队成员回答分数</div>
  459. <p style="margin-top: 28px;font-size: 14px;font-weight: bold;" >下表向您展示了每位团队成员在每个问题上的得分情况,以及由此得出的总分和方差。</p>
  460. <div class="mddj_top adf">
  461. <div class="tt_pre adf">
  462. <div class="ttp_l tl1"></div>
  463. <div class="ttp_r">在个人得分和总分方面,这表明功能得分为低。在方差方面,这表明个人得分之间的方差较高。</div>
  464. </div>
  465. <div class="tt_pre adf">
  466. <div class="ttp_l tl2"></div>
  467. <div class="ttp_r">在个人得分和总分方面,这表明功能得分为中等。在方差方面,这表明个人得分之间的方差为中等。</div>
  468. </div>
  469. <div class="tt_pre adf">
  470. <div class="ttp_l tl3"></div>
  471. <div class="ttp_r">在个人得分和总分方面,这表明功能得分为高。在方差方面,这表明个人得分之间的方差较低。</div>
  472. </div>
  473. </div>
  474. <div class="mddj_table">
  475. <div class="mt_top adf">
  476. <div class="mt_l adfac">问题</div>
  477. <div class="mt_r adf">
  478. <div class="mr_pre" v-for="(name,index) in rd?.userNames" :key="index">{{ name }}</div>
  479. <!-- <div class="mr_pre">总评分</div> -->
  480. <div class="mr_pre">均分</div>
  481. <div class="mr_pre">方差</div>
  482. </div>
  483. </div>
  484. <div class="mt_list">
  485. <div class="ml_pre adf" v-for="(tms,index) in rd?.teamMemberScores?.slice(0,7)" :key="index">
  486. <div class="mt_l adfac">{{ tms.question }}</div>
  487. <div class="mt_r adfac">
  488. <div class="mp_pre adffcacjc" :class="{'mp1':score<16,'mp2':(score<36&&score>=15),'mp3':score>35}" v-for="(score,idx) in tms.scores" :key="idx">{{ score }}</div>
  489. </div>
  490. </div>
  491. </div>
  492. </div>
  493. </div>
  494. <div class="cd_page">{{ridx*7+9}}/{{ pageNum }}</div>
  495. </div>
  496. <!-- 第十页 团队成员回答分数 -->
  497. <div class="cd_box">
  498. <div class="cb_db adf">
  499. <div class="cb_db_l cdl">{{ datetime }}</div>
  500. </div>
  501. <div class="cb_content">
  502. <div class="mddj_table" style="margin-top: 0;">
  503. <div class="mt_top adf">
  504. <div class="mt_l adfac">问题</div>
  505. <div class="mt_r adf">
  506. <div class="mr_pre" v-for="(name,index) in rd?.userNames" :key="index">{{ name }}</div>
  507. <!-- <div class="mr_pre">总评分</div> -->
  508. <div class="mr_pre">均分</div>
  509. <div class="mr_pre">方差</div>
  510. </div>
  511. </div>
  512. <div class="mt_list">
  513. <div class="ml_pre adf" v-for="(tms,index) in rd?.teamMemberScores?.slice(7,rd?.teamMemberScores?.length)" :key="index">
  514. <div class="mt_l adfac">{{ tms.question }}</div>
  515. <div class="mt_r adfac">
  516. <div class="mp_pre adffcacjc" :class="{'mp1':score<16,'mp2':(score<36&&score>=15),'mp3':score>35}" v-for="(score,idx) in tms.scores" :key="idx">{{ score }}</div>
  517. </div>
  518. </div>
  519. </div>
  520. </div>
  521. </div>
  522. <div class="cd_page">{{ridx*7+10}}/{{ pageNum }}</div>
  523. </div>
  524. </div>
  525. </template>
  526. <!-- 下一步措施 -->
  527. <div class="cd_box">
  528. <div class="cb_db adf">
  529. <div class="cb_db_l cdl">{{ datetime }}</div>
  530. </div>
  531. <div class="cb_content" style="padding: 18px 22px 0">
  532. <div class="mddj_title adfac">
  533. <img src="@/assets/images/agent/pdf_title.png">
  534. <span>团队总结分析及教练建议</span>
  535. </div>
  536. <p style="margin-top: 18px;">综合上述PERILL六大维度的诊断分析,相信您对团队的情况已经有了初步的了解。</p>
  537. <p style="margin-top: 10px;">至此,PERILL团队诊断流程已初步完成,团队成员均以反馈各自评分,并已生成了诊断报告。</p>
  538. <p style="margin-top: 10px;">您是本次诊断评估的发起方,我们诚挚地建议您结合此次PERILL诊断流程对于团队当下的现状,可能存在的问题以及机遇,与团队共同启动下一阶段的团队教练实践。</p>
  539. <p style="margin-top: 10px;">最终的推进方向需要由团队决策,我们也相信您作为为始终在支持这个团队的团队教练,对于团队的风格、问题、机遇也一定很了解。但我们也基于创衡对于PERILL模型以及团队教练的深厚理解,通过创衡AI教练助手为您生成了一份教练方案建议,供您参考。</p>
  540. <div class="next_box">
  541. <div class="nb_title">指导原则:</div>
  542. <div class="nb_p">1.您可以根据需要,将PERILL诊断报告中的主要诊断结果,有选择的发送团队成员研读,以便其有时间思考诊断结果,以及下一步团队教练的目标和宗旨。</div>
  543. <div class="nb_p">2.我们建议的团队教练方案是以1天(8小时)线下工作坊为目标做的设计,你也可以根据实际需要做调整,更短的工作坊、线上的团队教练会议等形式都是可选的,一切以最合适团队的需要为归依;但我们建议这一教练过程不少于1小时,确保团队可以通过这一过程:</div>
  544. <div class="nb_sj">a.对PERILL诊断成果做深度剖析,审视、了解团队当前面临的挑战与机遇;</div>
  545. <div class="nb_sj">b.促成团队共识,明确优先级最高的核心攻坚目标(建议采用分阶段推进的策略,合理规划,避免全量多任务并行)</div>
  546. <div class="nb_p">3.在下一次的团队教练中,我们建议应当完成如下的议程:</div>
  547. <div class="nb_sj">a.制定团队层面的行动计划及责任承诺;</div>
  548. <div class="nb_sj">b.构建双向监督机制并达成共识;</div>
  549. <div class="nb_sj">c.编制可落地执行的协同工作方案;</div>
  550. <div class="nb_sj">d.定义清晰、量化的成功验证标准。</div>
  551. <div class="nb_p">4.在初始会议后,需要定期安排进度跟进时间,回顾和评估工作成效,确保PERILL行动计划融入正常工作流程。</div>
  552. <div class="nb_p">5.建议在6个月周期后重启诊断评估,对表团队效能提升目标与协作生态改善成效,并同步收集相关方反馈以验证改进成果。</div>
  553. </div>
  554. <div class="next_box">
  555. <div class="nb_title">如何推动与PERILL相关的工作会议:</div>
  556. <div class="nb_p">确保所有团队成员明确团队教练目标,并提前研读相关材料,以便在会前预留思考时间。</div>
  557. <div class="nb_p">重申团队教练的基本原则,支持团队回顾团队教练契约。</div>
  558. <div class="nb_p">团队教练进程中,应确保每次聚焦单一议题,维持讨论的专注度。</div>
  559. <div class="nb_p">合理调控讨论节奏,确保每位成员的观点均被听取,尤其需引导发言较少的成员表达意见。</div>
  560. <div class="nb_p">践行积极倾听原则,支持团队清晰梳理并总结讨论要点,支持团队共同确认每一个团队成员的总结内容建立共识,为后续制定行动计划奠定基础。</div>
  561. <div class="nb_p">通过认可团队成员的各自观点及其视角,协助团队化解冲突议题。</div>
  562. <div class="nb_p">运用适用性工具辅助头脑风暴及想法记录(例如:在核心议题下以便利贴分类记录观点、设置专项区域记录待跟进的旁支议题;只要教练与团队意见一致,可以灵活采取小组讨论、世界咖啡等工具和形式)。</div>
  563. <div class="nb_p">高效管理会议时间分配。</div>
  564. <div class="nb_p">请确保形成关于行动和决策的书面跟进记录。</div>
  565. </div>
  566. <div class="next_tip">如需了解更多背景和细节,可以向创衡团队寻求支持。联系:William@transcend-intl.cn</div>
  567. </div>
  568. <div class="cd_page">{{(((reportData?.dimensionAnalysis?.length)*7)||0)+4}}/{{ pageNum }}</div>
  569. </div>
  570. <!-- 团队情况概述 -->
  571. <div class="cd_box">
  572. <div class="cb_db adf">
  573. <div class="cb_db_l cdl">{{ datetime }}</div>
  574. </div>
  575. <div class="cb_content">
  576. <div class="mddj_title adfac">
  577. <img src="@/assets/images/agent/pdf_title.png">
  578. <span>团队情况概述</span>
  579. </div>
  580. <div class="team_title">公司名称:</div>
  581. <div class="team_p">{{ reportData?.nextSteps?.teamInfo?.company }}</div>
  582. <div class="team_title">公司背景:</div>
  583. <div class="team_p" style="min-height: 60px;">{{ reportData?.nextSteps?.teamInfo?.company_brief }}</div>
  584. <div class="team_title">团队类型:</div>
  585. <div class="team_p">{{ reportData?.nextSteps?.teamInfo?.team }}</div>
  586. <div class="team_title">团队故事:</div>
  587. <div class="team_p" style="min-height: 180px;">{{ reportData?.nextSteps?.teamInfo?.teamStory }}</div>
  588. <div class="team_title">团队诊断总结:</div>
  589. <div class="team_p" style="min-height: 80px;">{{ reportData?.nextSteps?.teamInfo?.overall_analysis }}</div>
  590. <!-- <div class="team_title">团队教练:</div>
  591. <div class="team_p">{{ '' }}</div> -->
  592. </div>
  593. <div class="cd_page">{{(((reportData?.dimensionAnalysis?.length)*7)||0)+5}}/{{ pageNum }}</div>
  594. </div>
  595. <!-- 团队情况概述2 -->
  596. <div class="cd_box">
  597. <div class="cb_db adf">
  598. <div class="cb_db_l cdl">{{ datetime }}</div>
  599. </div>
  600. <div class="cb_content">
  601. <div class="bp">团队成员</div>
  602. <div class="team_table">
  603. <table>
  604. <tr class="th">
  605. <td>姓名</td>
  606. <td>类型</td>
  607. <td>人物简介</td>
  608. <td>人物故事</td>
  609. </tr>
  610. <tr v-for="(item,index) in reportData?.nextSteps?.teamInfo?.team_info?.slice(0,4)" :key="index">
  611. <td class="mw">{{ item.name }}</td>
  612. <td class="mw">{{ UserCategory.find(u=>u.value==item.type)?.label }}</td>
  613. <td class="tc">{{item.brief}}</td>
  614. <td class="tc">{{item.story}}</td>
  615. </tr>
  616. </table>
  617. </div>
  618. </div>
  619. <div class="cd_page">{{(((reportData?.dimensionAnalysis?.length)*7)||0)+6}}/{{ pageNum }}</div>
  620. </div>
  621. <template v-if="membersPageCount>1">
  622. <div class="cd_box" v-for="(n,i) in membersPageCount-1" :key="i">
  623. <div class="cb_db adf">
  624. <div class="cb_db_l cdl">{{ datetime }}</div>
  625. </div>
  626. <div class="cb_content">
  627. <div class="bp">团队成员</div>
  628. <div class="team_table">
  629. <table>
  630. <tr class="th">
  631. <td>姓名</td>
  632. <td>类型</td>
  633. <td>人物简介</td>
  634. <td>人物故事</td>
  635. </tr>
  636. <tr v-for="(item,index) in reportData?.nextSteps?.teamInfo?.team_info?.slice(4*n,4*(n+1))" :key="index">
  637. <td class="mw">{{ item.name }}</td>
  638. <td class="mw">{{ UserCategory.find(u=>u.value==item.type)?.label }}</td>
  639. <td class="tc">{{item.brief}}</td>
  640. <td class="tc">{{item.story}}</td>
  641. </tr>
  642. </table>
  643. </div>
  644. </div>
  645. <div class="cd_page">{{(((reportData?.dimensionAnalysis?.length)*7)||0)+6+n}}/{{ pageNum }}</div>
  646. </div>
  647. </template>
  648. <!-- 团队教练目标及方案 -->
  649. <div class="cd_box">
  650. <div class="cb_db adf">
  651. <div class="cb_db_l cdl">{{ datetime }}</div>
  652. </div>
  653. <div class="cb_content" style="padding: 22px 10px;">
  654. <div class="mddj_title adfac">
  655. <img src="@/assets/images/agent/pdf_title.png">
  656. <span>团队教练目标及方案</span>
  657. </div>
  658. <div class="bp" style="margin-top: 20px;">团队教练目标</div>
  659. <p style="margin-top: 10px;" v-html="reportData?.nextSteps?.coachGoal?.summary.replace(/(\r\n|\n|\r)+/g, '<br>').replaceAll(';', ';<br>')"></p>
  660. <p class="bp">教练计划建议</p>
  661. <div class="cc_table">
  662. <table>
  663. <tr>
  664. <td colspan="2" class="red th">教练阶段</td>
  665. <td class="red th">阶段教练方案详述</td>
  666. <td class="red th">备注</td>
  667. </tr>
  668. <template v-for="(rncc,ridx) in reportData?.nextSteps?.coachPlans?.slice(0,5)">
  669. <tr v-if="!rncc.format&&!rncc.purpose&!rncc.questions">
  670. <td colspan="4" class="yellow">{{ rncc?.stagename }} {{ rncc?.duration }}</td>
  671. </tr>
  672. <template v-else>
  673. <tr>
  674. <td rowspan="4" class="pink" style="width: 80px;">{{ rncc?.stagename }}</td>
  675. <td class="pink" style="width: 70px;">阶段教练目标</td>
  676. <td>{{ rncc?.purpose }}</td>
  677. <!-- 备注暂时为空 -->
  678. <td style="width: 150px;">{{ '' }}</td>
  679. </tr>
  680. <tr>
  681. <td class="pink">环节时长建议</td>
  682. <td>{{ rncc?.duration }}</td>
  683. <!-- 备注暂时为空 -->
  684. <td>{{ '' }}</td>
  685. </tr>
  686. <tr>
  687. <td class="pink">教练形式建议</td>
  688. <td>{{ rncc?.format }}</td>
  689. <!-- 备注暂时为空 -->
  690. <td>{{ '' }}</td>
  691. </tr>
  692. <tr>
  693. <td class="pink">推荐教练问题</td>
  694. <td>
  695. <div v-for="(rq,ri) in rncc?.questions" :key="ri">
  696. <div v-html="rq.replace(/(\r\n|\n|\r)+/g, '<br>')"></div>
  697. </div>
  698. </td>
  699. <!-- 备注暂时为空 -->
  700. <td>{{ '' }}</td>
  701. </tr>
  702. </template>
  703. </template>
  704. </table>
  705. </div>
  706. </div>
  707. <div class="cd_page">{{(((reportData?.dimensionAnalysis?.length)*7)||0)+7+(membersPageCount-1)}}/{{ pageNum }}</div>
  708. </div>
  709. <!-- 团队教练目标及方案2 -->
  710. <div class="cd_box">
  711. <div class="cb_db adf">
  712. <div class="cb_db_l cdl">{{ datetime }}</div>
  713. </div>
  714. <div class="cb_content" style="padding: 22px 10px;">
  715. <div class="mddj_title adfac">
  716. <img src="@/assets/images/agent/pdf_title.png">
  717. <span>团队教练目标及方案</span>
  718. </div>
  719. <p class="bp">教练计划建议</p>
  720. <div class="cc_table">
  721. <table>
  722. <tr>
  723. <td colspan="2" class="red th">教练阶段</td>
  724. <td class="red th">阶段教练方案详述</td>
  725. <td class="red th">备注</td>
  726. </tr>
  727. <template v-for="(rncc,ridx) in reportData?.nextSteps?.coachPlans?.slice(5,reportData?.nextSteps?.coachPlans?.length)">
  728. <tr v-if="!rncc.format&&!rncc.purpose&!rncc.questions">
  729. <td colspan="4" class="yellow">{{ rncc?.stagename }} {{ rncc?.duration }}</td>
  730. </tr>
  731. <template v-else>
  732. <tr>
  733. <td rowspan="4" class="pink" style="width: 80px;">{{ rncc?.stagename }}</td>
  734. <td class="pink" style="width: 70px;">阶段教练目标</td>
  735. <td>{{ rncc?.purpose }}</td>
  736. <!-- 备注暂时为空 -->
  737. <td style="width: 150px;">{{ '' }}</td>
  738. </tr>
  739. <tr>
  740. <td class="pink">环节时长建议</td>
  741. <td>{{ rncc?.duration }}</td>
  742. <!-- 备注暂时为空 -->
  743. <td>{{ '' }}</td>
  744. </tr>
  745. <tr>
  746. <td class="pink">教练形式建议</td>
  747. <td>{{ rncc?.format }}</td>
  748. <!-- 备注暂时为空 -->
  749. <td>{{ '' }}</td>
  750. </tr>
  751. <tr>
  752. <td class="pink">推荐教练问题</td>
  753. <td>
  754. <!-- <span v-for="(rq,ridx) in rncc?.questions" :key="ridx">{{ rq }}<br/></span> -->
  755. <div v-for="(rq,ri) in rncc?.questions" :key="ri">
  756. <div v-html="rq.replace(/(\r\n|\n|\r)+/g, '<br>')"></div>
  757. </div>
  758. </td>
  759. <!-- 备注暂时为空 -->
  760. <td>{{ '' }}</td>
  761. </tr>
  762. </template>
  763. </template>
  764. </table>
  765. </div>
  766. </div>
  767. <div class="cd_page">{{(((reportData?.dimensionAnalysis?.length)*7)||0)+8+(membersPageCount-1)}}/{{ pageNum }}</div>
  768. </div>
  769. </div>
  770. </template>
  771. <script setup name="">
  772. const props = defineProps({
  773. reportData:{
  774. type: Object,
  775. default: () => {}
  776. }
  777. })
  778. import * as echarts from "echarts";
  779. import { ref, getCurrentInstance, onMounted, nextTick } from 'vue'
  780. const { proxy } = getCurrentInstance();
  781. const reportData = ref(null);
  782. const zttdznRef = ref(null)
  783. const pjgxRef = ref(null);
  784. const pageNum = ref('');
  785. const membersPageCount = ref(0);
  786. const optionsMap = new Map();
  787. const datetime = proxy.parseTime(new Date(), '{yy}-{mm}-{dd} {hh}:{ii}');
  788. const { UserCategory} = proxy.useDict("UserCategory");
  789. const emits = defineEmits(['optionsMaps']);
  790. const initZttdznChart = () => {
  791. let myChart = echarts.init(zttdznRef.value);
  792. let option = {
  793. tooltip: {
  794. trigger: 'axis',
  795. axisPointer: {
  796. type: 'shadow'
  797. }
  798. },
  799. legend: {},
  800. grid: {
  801. left: '3%',
  802. right: '8%',
  803. bottom: '1%',
  804. containLabel: true
  805. },
  806. xAxis: {
  807. type: 'value',
  808. boundaryGap: [0, 0.01]
  809. },
  810. yAxis: {
  811. type: 'category',
  812. data: reportData.value?.overall?.aggregateTeamScore.map(d=>d.dimension)||[]
  813. },
  814. series: [
  815. {
  816. name: '团队总分',
  817. type: 'bar',
  818. data: reportData.value?.overall?.aggregateTeamScore.map(d=>d.score)||[],
  819. itemStyle:{
  820. color: function(params) {
  821. var colorList = ['#484EAE','#B6C38D', '#61B7C8', '#5D7EE5', '#8C95DC','#9374B5'];
  822. return colorList[params.dataIndex]
  823. }
  824. }
  825. }
  826. ]
  827. };
  828. optionsMap.set("zttdznRef_copy", option);
  829. myChart.setOption(option)
  830. }
  831. const initPfztfbChart = (dom,report,id) => {
  832. let myChart = echarts.init(dom);
  833. let option = {
  834. tooltip: {
  835. trigger: 'axis',
  836. axisPointer: {
  837. type: 'shadow'
  838. }
  839. },
  840. legend: {},
  841. grid: {
  842. left: '8%',
  843. right: '13%',
  844. bottom: '5%',
  845. top: '10%',
  846. containLabel: true
  847. },
  848. xAxis: {
  849. type: 'value',
  850. boundaryGap: [0, 0.01]
  851. },
  852. yAxis: {
  853. type: 'category',
  854. data: report?.performanceRatings?.avgByTheme.map(d=>d.theme)||[]
  855. },
  856. series: [
  857. {
  858. name: '',
  859. type: 'bar',
  860. data: report?.performanceRatings?.avgByTheme.map(d=>d.score)||[],
  861. itemStyle:{
  862. color: function(params) {
  863. var colorList = ['#484EAE','#B6C38D', '#61B7C8', '#5D7EE5', '#8C95DC'];
  864. return colorList[params.dataIndex]
  865. }
  866. }
  867. }
  868. ]
  869. };
  870. optionsMap.set(id+'_copy', option);
  871. myChart.setOption(option)
  872. }
  873. onMounted(() => {
  874. reportData.value = props.reportData;
  875. membersPageCount.value = Math.ceil(reportData.value?.nextSteps?.teamInfo?.team_info?.length/4);
  876. pageNum.value = reportData.value?.dimensionAnalysis?.length*7+7+(membersPageCount.value);
  877. reportData.value?.dimensionAnalysis?.forEach(item=>{
  878. item.userNames = item?.teamMemberScores[0]?.memberScores?.map(d=>d.realName)||[];
  879. item?.teamMemberScores.forEach((tms,idx)=>{
  880. tms.scores = tms?.memberScores?.map(d=>d.score)||[];
  881. tms.scores = [...tms.scores,tms.avgScore,tms.variance]
  882. })
  883. })
  884. initZttdznChart();
  885. if(reportData.value?.dimensionAnalysis?.length){
  886. nextTick(()=>{
  887. reportData.value?.dimensionAnalysis?.forEach((item,index)=>{
  888. let dom = document.getElementById(`pfztfbRef${index}`)
  889. initPfztfbChart(dom,item,`pfztfbRef${index}`);
  890. if(index===reportData.value?.dimensionAnalysis?.length-1){
  891. emits('optionsMaps', optionsMap);
  892. }
  893. })
  894. })
  895. }
  896. })
  897. </script>
  898. <style scoped lang="scss">
  899. @import url(./pdf.scss);
  900. .cd_box{
  901. width: 100%;
  902. height: 891px;
  903. color: #A1A1A1;
  904. }
  905. </style>