overallCommunity.vue 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <template>
  2. <div class="modelBlock">
  3. <div class="model-title">
  4. <div class="model-title-text">社区总体情况统计</div>
  5. </div>
  6. <div class="model-contents">
  7. <div
  8. class="blockmuen"
  9. :style="item.style"
  10. v-for="(item, index) in blockArr"
  11. :key="index"
  12. >
  13. <!-- @click="$router.push({ path: item.path })" -->
  14. <div class="number">{{ houseData[item.fontObj] }}</div>
  15. <div class="text">{{ item.name }}</div>
  16. </div>
  17. </div>
  18. </div>
  19. </template>
  20. <script>
  21. import allcommunit from './allcommunit';
  22. export default {
  23. mixins: [allcommunit],
  24. data () {
  25. return {
  26. houseData: {},
  27. blockArr: [
  28. {
  29. style: 'background: linear-gradient(135deg, #488fff 0%, #65dcff 100%)',
  30. name: '社区',
  31. fontObj: 'communityTotal',
  32. path: '/communityManagement/index'
  33. },
  34. {
  35. style: 'background: linear-gradient(315deg, #5EEDCC 0%, #24C3F1 100%);',
  36. name: '楼栋',
  37. fontObj: 'buildingTotal',
  38. path: '/buildingManagement/index'
  39. },
  40. {
  41. style: 'background: linear-gradient(135deg, #F0646C 0%, #F4994E 100%);',
  42. name: '房屋',
  43. fontObj: 'houseTotal',
  44. path: '/assetManagement/housingManagement/index'
  45. },
  46. {
  47. style: 'background: linear-gradient(135deg, #7178FF 0%, #D2A4FF 100%);',
  48. name: '商铺',
  49. fontObj: 'shopsTotal',
  50. path: '/assetManagement/shopManagement/index'
  51. },
  52. {
  53. style: 'background: linear-gradient(135deg, #884DD2 0%, #DF63CC 100%);',
  54. name: '住户',
  55. fontObj: 'residentTotal',
  56. path: '/ownerManagement/index'
  57. }
  58. ],
  59. mixins_query: {
  60. communityId: ''
  61. }
  62. };
  63. },
  64. methods: {
  65. // 获取房屋信息
  66. getData () {
  67. this.$http.get('/sc-community/Workbench/totalHouseInfo', this.mixins_query).then(({ data, msg, status }) => {
  68. if (status == 0) {
  69. this.houseData = data;
  70. } else {
  71. this.$message.error(msg);
  72. }
  73. });
  74. }
  75. },
  76. created () {
  77. this.getData();
  78. }
  79. };
  80. </script>
  81. <style lang="scss" scoped>
  82. @import '../style.scss';
  83. .modelBlock {
  84. .model-contents {
  85. height: 50%;
  86. margin: 5% 0;
  87. display: grid;
  88. row-gap: rem(20);
  89. column-gap: rem(20);
  90. grid-template-columns: repeat(5, minmax(0, 1fr));
  91. .blockmuen {
  92. border-radius: rem(10);
  93. box-sizing: border-box;
  94. padding-left: rem(20);
  95. padding-top: rem(20);
  96. // cursor: pointer;
  97. .number {
  98. font-size: rem(30);
  99. }
  100. }
  101. }
  102. .number {
  103. color: #ffffff;
  104. }
  105. .text {
  106. color: #ffffff;
  107. }
  108. }
  109. </style>