_Help.cshtml 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. <button id="vb_help_toggle" class=" btn btn-sm bg-body btn-color-gray-700 btn-active-primary shadow-sm position-fixed px-5 fw-bolder z-index-2 top-50 mt-10 end-0 transform-90 fs-6 rounded-top-0" title="系统帮助" data-bs-toggle="tooltip" data-bs-placement="right" data-bs-trigger="hover">
  2. <span id="vb_help_toggle_label">Help</span>
  3. </button>
  4. <div id="vb_help" class="bg-body drawer drawer-end" data-kt-drawer="true" data-kt-drawer-name="help" data-kt-drawer-activate="true" data-kt-drawer-overlay="true" data-kt-drawer-width="{default:'350px', 'lg': '475px'}" data-kt-drawer-direction="end" data-kt-drawer-toggle="#vb_help_toggle" data-kt-drawer-close="#vb_help_close">
  5. <div class="card shadow-none rounded-0 w-100">
  6. <div class="card-header" id="vb_help_header">
  7. <h3 class="card-title fw-bolder text-gray-700">系统帮助</h3>
  8. <div class="card-toolbar">
  9. <button type="button" class="btn btn-sm btn-icon btn-active-light-primary me-n5" id="vb_help_close">
  10. <!--begin::Svg Icon | path: icons/duotone/Navigation/Close.svg-->
  11. <span class="svg-icon svg-icon-2">
  12. <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24px" height="24px" viewBox="0 0 24 24" version="1.1">
  13. <g transform="translate(12.000000, 12.000000) rotate(-45.000000) translate(-12.000000, -12.000000) translate(4.000000, 4.000000)" fill="#000000">
  14. <rect fill="#000000" x="0" y="7" width="16" height="2" rx="1"></rect>
  15. <rect fill="#000000" opacity="0.5" transform="translate(8.000000, 8.000000) rotate(-270.000000) translate(-8.000000, -8.000000)" x="0" y="7" width="16" height="2" rx="1"></rect>
  16. </g>
  17. </svg>
  18. </span>
  19. </button>
  20. </div>
  21. </div>
  22. <div class="card-body" id="vb_help_body">
  23. <div id="vb_help_scroll" class="scroll-y me-n5 pe-5" data-kt-scroll="true" data-kt-scroll-height="auto" data-kt-scroll-wrappers="#vb_help_body" data-kt-scroll-dependencies="#vb_help_header" data-kt-scroll-offset="5px">
  24. <div class="mb-0" id="vb_help_body-container">
  25. </div>
  26. </div>
  27. </div>
  28. </div>
  29. </div>
  30. <script>
  31. $(function() {
  32. var $bodyContainer = $('#vb_help_body-container');
  33. var helpDrawer = KTDrawer.getInstance(document.querySelector("#vb_help"));
  34. helpDrawer.on('kt.drawer.show', ()=> {
  35. if (!$('#vb_help').data("init")) {
  36. $.vbAjax4({
  37. url: abp.appUrl + "Query/QueryHelpByPerm?id=@(ViewBag.ActiveMenu)",
  38. success: function (res) {
  39. formatter(res);
  40. $('#vb_help').data("init", true);
  41. }
  42. });
  43. }
  44. });
  45. function formatter(data) {
  46. if (data && data.length) {
  47. var i = 0;
  48. $bodyContainer.empty();
  49. data.forEach(function (h) {
  50. i++;
  51. let str = "",style=i%3==1?'primary':i%3==2?'warning':'success';
  52. str += `<div class="rounded border d-flex flex-column flex-center mb-5">
  53. <div class="alert bg-light-${style} d-flex flex-column w-100 m-0 p-5">
  54. <div class="d-flex align-items-center my-2 text-${style} fw-bolder fs-3"><span class="bullet bullet-vertical h-30px bg-${style}"></span><span class="ps-3">${i}.</span>${h.title}</div>
  55. <div class="help-content" data-id="${h.id}">
  56. <div class="w-100 h-100px d-flex justify-content-center align-items-center fs-4 text-${style}">
  57. 加载中... <span class="spinner-border spinner-border-sm align-middle ms-2"></span>
  58. </div>
  59. </div>
  60. </div>
  61. </div>`;
  62. $bodyContainer.append(str);
  63. });
  64. $bodyContainer.find('.help-content').each(function () {
  65. let $this = $(this);
  66. let id = $(this).data('id');
  67. $.vbAjax4({
  68. url: abp.appUrl + "Query/QueryHelpDto?id=" + id,
  69. success: function(res) {
  70. $this.hide().addClass("ps-4").html(res.content).fadeIn();
  71. }
  72. });
  73. });
  74. } else {
  75. $bodyContainer.html(`<div class="rounded d-flex flex-column flex-center p-0" style="padding-top:50%!important;">
  76. <div class="alert border bg-light-danger d-flex flex-center flex-column w-100 m-0">
  77. <!--Svg Icon | path: icons/duotone/Code/Warning-2.svg-->
  78. <span class="svg-icon svg-icon-5tx svg-icon-danger mb-5">
  79. <svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24" version="1.1">
  80. <path d="M11.1669899,4.49941818 L2.82535718,19.5143571 C2.557144,19.9971408 2.7310878,20.6059441 3.21387153,20.8741573 C3.36242953,20.9566895 3.52957021,21 3.69951446,21 L21.2169432,21 C21.7692279,21 22.2169432,20.5522847 22.2169432,20 C22.2169432,19.8159952 22.1661743,19.6355579 22.070225,19.47855 L12.894429,4.4636111 C12.6064401,3.99235656 11.9909517,3.84379039 11.5196972,4.13177928 C11.3723594,4.22181902 11.2508468,4.34847583 11.1669899,4.49941818 Z" fill="#000000" opacity="0.3"></path>
  81. <rect fill="#000000" x="11" y="9" width="2" height="7" rx="1"></rect>
  82. <rect fill="#000000" x="11" y="17" width="2" height="2" rx="1"></rect>
  83. </svg>
  84. </span>
  85. <div class="text-center">
  86. <h1 class="fw-bolder mb-5 text-danger">当前页面没有帮助信息!</h1>
  87. </div>
  88. </div>
  89. </div>`);
  90. }
  91. }
  92. })
  93. </script>