pdf.vue 60 KB

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