firm.vue 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. <template>
  2. <div class="body-firm">
  3. <main-title>生产经营企业介绍</main-title>
  4. <div class="box animated fadeIn">
  5. <div class="box-1">
  6. <div class="logo">
  7. <div class="img ui-absolute"></div>
  8. </div>
  9. <div class="info">
  10. <h3>{{ info.orgName || '' }}</h3>
  11. <p>{{ info.remark || '' }}</p>
  12. </div>
  13. <ul class="imgs-list">
  14. <li v-for="(src, key) in img" :key="key">
  15. <el-image class="ui-absolute" :src="src | host" :preview-src-list="src | hostList">
  16. <div slot="placeholder" class="img-loading">
  17. <i class="el-icon-loading"></i>
  18. </div>
  19. <div slot="error" class="image-slot">
  20. <i class="el-icon-picture-outline"></i>
  21. </div>
  22. </el-image>
  23. </li>
  24. </ul>
  25. </div>
  26. </div>
  27. <bottom class="animated fadeIn">
  28. <div class="box-bottom">
  29. <p>联系人:{{ info.principals || '' }}</p>
  30. <p>电话:{{ info.tel || '' }}</p>
  31. <p>地址:{{ info.orgAddress || '' }}</p>
  32. <div class="box-bottom-code">
  33. <el-image
  34. class="box-bottom-code-img"
  35. :src="info.wxQRImg | host"
  36. :preview-src-list="info.wxQRImg | hostList"
  37. >
  38. <div slot="placeholder" class="img-loading">
  39. <i class="el-icon-loading"></i>
  40. </div>
  41. <div slot="error" class="image-slot">
  42. <i class="el-icon-picture-outline"></i>
  43. </div>
  44. </el-image>
  45. <p>扫码立即关注我们</p>
  46. </div>
  47. </div>
  48. </bottom>
  49. </div>
  50. </template>
  51. <script>
  52. import bottom from '../components/bottom.vue';
  53. export default {
  54. components: {
  55. bottom
  56. },
  57. data() {
  58. return {
  59. src: 'https://weiliicimg9.pstatp.com/weili/l/708037487756836870.webp'
  60. };
  61. },
  62. computed: {
  63. info() {
  64. return this.$store.state.info;
  65. },
  66. img() {
  67. return this.info.qualificaImgs ? this.info.qualificaImgs.split(';') : [];
  68. }
  69. }
  70. };
  71. </script>
  72. <style lang="less">
  73. .body-firm {
  74. .box {
  75. margin: 0.2rem 0;
  76. &-1 {
  77. background: #f1f2f3;
  78. border-radius: 0.2rem;
  79. display: flex;
  80. flex-direction: column;
  81. align-items: center;
  82. margin-top: 1.3rem;
  83. padding-bottom: 0.4rem;
  84. > .logo {
  85. position: relative;
  86. // background: #20374d;
  87. // box-shadow: 0 0 0.2rem -0.04rem #20374d;
  88. margin-top: -0.8rem;
  89. width: 100%;
  90. height: 2.2rem;
  91. border-radius: 50%;
  92. overflow: hidden;
  93. > .img {
  94. background: url(../assets/image/logo.png) no-repeat center center;
  95. background-size: 100% 100%;
  96. }
  97. }
  98. > .info {
  99. margin-top: 0.4rem;
  100. width: 90%;
  101. font-size: 0.16rem;
  102. color: #5d6267;
  103. > h3 {
  104. color: #20374d;
  105. }
  106. p {
  107. text-indent: 2em;
  108. font-size: 300;
  109. line-height: 1.8em;
  110. margin: 0.2rem 0;
  111. }
  112. }
  113. > .imgs-list {
  114. display: flex;
  115. flex-wrap: wrap;
  116. background: #fff;
  117. box-shadow: 0 0 0.1rem 0 rgba(0, 0, 0, 0.1);
  118. border-radius: 0.1rem;
  119. width: 88%;
  120. padding: 0.2rem;
  121. > li {
  122. width: 33.33%;
  123. position: relative;
  124. &::before {
  125. content: '';
  126. padding-top: 128%;
  127. display: block;
  128. }
  129. > .el-image {
  130. margin: 0.06rem;
  131. img {
  132. width: 100%;
  133. height: 100%;
  134. }
  135. }
  136. }
  137. }
  138. }
  139. }
  140. .box-bottom {
  141. flex: 1;
  142. font-size: 12px;
  143. font-weight: 700;
  144. padding: 1em 7%;
  145. position: relative;
  146. &-code {
  147. position: absolute;
  148. right: 7%;
  149. top: -80%;
  150. display: flex;
  151. flex-direction: column;
  152. align-items: center;
  153. > p {
  154. margin-top: 0.5em;
  155. }
  156. &-img {
  157. width: 90px;
  158. height: 90px;
  159. }
  160. }
  161. }
  162. }
  163. </style>