vue-panel.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. var panel_data = [
  2. {
  3. image:"./assets/images/revit-icon.png",
  4. name:"BIM資訊系統",
  5. info:`本系統統合BIM監測查詢網及BIM支援網:<br>
  6. 1. BIM監測查詢網的目標為監測工地在各開挖階段時的工地安全,以及是否會影響到周遭環境,利用監測儀器回傳的數據以及工地模型,以視覺化的模式回饋儀器回傳的數據,可根據有異數據進行會議討論,提出處理方案。<br>
  7. 2. BIM支援網提供元件庫、API庫以及樣版庫,使用git管理元件、API以及樣板及其之版本控制,可瀏覽所有元件、API及樣板的內容及其相關屬性,以利下載自己所需之檔案。<br>`,
  8. buttons:[
  9. {
  10. name: "進入",
  11. url:"/BIM-Monitor/home.php"
  12. }
  13. ],
  14. right:0,
  15. },
  16. {
  17. image:"./assets/images/db.png",
  18. name:"設計資料庫查詢系統",
  19. info:`<p>設計圖資料庫</p>`,
  20. buttons:[
  21. {
  22. name: "進入",
  23. url:"/DataBase/index.php"
  24. }
  25. ],
  26. right:1,
  27. },
  28. {
  29. image:"./assets/images/ArcGIS.png",
  30. name:"ArcGIS 系統",
  31. info:`<p>地理資訊系統</p>`,
  32. buttons:[
  33. {
  34. name: "2D 地圖",
  35. url:"https://maaconsultants.maps.arcgis.com/apps/webappviewer/index.html?id=e95e23fbe1954895a5ded8e85972df77"
  36. },
  37. {
  38. name: "3D 地圖",
  39. url:"https://maaconsultants.maps.arcgis.com/apps/instant/3dviewer/index.html?appid=653b6a2c89db404dbcd3db359d151e0d"
  40. }
  41. ],
  42. right:1,
  43. },
  44. {
  45. image:"./assets/images/profile.png",
  46. name:"帳號管理系統",
  47. info:`本系統用於帳號管理:<br>
  48. 1.管理帳號密碼。<br>`,
  49. buttons:[
  50. {
  51. name: "進入",
  52. url:"/MyAccount/index.php"
  53. }
  54. ],
  55. right:1,
  56. },
  57. {
  58. image:"./assets/images/permission.png",
  59. name:"權限管理系統",
  60. info:`本系統用於帳號權限管理:<br>
  61. 1.管理部門帳號權限。<br>`,
  62. buttons:[
  63. {
  64. name: "進入",
  65. url:"/Authorization/index.php"
  66. }
  67. ],
  68. right:3,
  69. }
  70. ]
  71. const vm = Vue.createApp({});
  72. vm.component('panel-object', {
  73. data() {
  74. return {
  75. panel_data: panel_data,
  76. right:right,
  77. }
  78. },
  79. template: `<div v-for="panel in panel_data" class="col-md-6 col-lg-6 col-xl-4" >
  80. <section class="panel" v-if="right >= panel.right">
  81. <header class="panel-heading bg-primary">
  82. <div class="panel-heading-profile-picture">
  83. <img v-bind:src="panel.image" height="75px" alt="BIM">
  84. </div>
  85. </header>
  86. <div class="panel-body">
  87. <div class="panel-body-title">
  88. <h4 class="text-semibold mt-sm">{{panel.name}}</h4>
  89. <hr class="solid short">
  90. <a v-for="button in panel.buttons" v-bind:href="button.url"><button type="button" class="mb-xs mt-xs mr-xs btn btn-primary">{{button.name}}</button></a>
  91. </div>
  92. <div class="panel-body-info" v-html="panel.info" hidden></div>
  93. </div>
  94. </section>
  95. </div>`
  96. });