operationOverviewModel.vue 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  1. <template>
  2. <view class="model">
  3. <view class="model-content">
  4. <view class="model-content-1">
  5. <view class="title">今日营收</view>
  6. <view class="total">
  7. <view class="total-title">936.67元</view>
  8. <view>
  9. <u-icon label="" size="53" name="./../../../static/images/1.png"></u-icon>
  10. </view>
  11. </view>
  12. </view>
  13. <view class="model-content-2">
  14. <view class="model-content-2-item">
  15. <view>393 <text>元</text> </view>
  16. <view>今日欠费</view>
  17. </view>
  18. <view class="model-content-2-item">
  19. <view>1485 <text>次</text> </view>
  20. <view>今日停车</view>
  21. </view>
  22. <view class="model-content-2-item">
  23. <view>85 <text>次</text> </view>
  24. <view>今日扫码</view>
  25. </view>
  26. </view>
  27. <view class="model-content-1">
  28. <view class="title">路段总数</view>
  29. <view class="total">
  30. <view class="total-title red">25个</view>
  31. <view>
  32. <u-icon label="" size="53" name="./../../../static/images/2.png"></u-icon>
  33. </view>
  34. </view>
  35. </view>
  36. <view class="model-content-1">
  37. <view class="title">泊位总数</view>
  38. <view class="total">
  39. <view class="total-title orange">1247个</view>
  40. <view>
  41. <u-icon label="" size="53" name="./../../../static/images/3.png"></u-icon>
  42. </view>
  43. </view>
  44. </view>
  45. </view>
  46. <view class="model-line">
  47. <view class="report-header">
  48. <view class="report-header-left">
  49. 营收趋势分析
  50. </view>
  51. <view class="report-header-right">
  52. <view class="report-header-right-item" :class="{'current': current === 1}" @click="current = 1">日
  53. </view>
  54. <view class="report-header-right-item" :class="{'current': current === 2}" @click="current = 2">月
  55. </view>
  56. <view class="report-header-right-item" :class="{'current': current === 3}" @click="current = 3">年
  57. </view>
  58. </view>
  59. </view>
  60. <view class="charts-box">
  61. <qiun-data-charts type="line" :chartData="chartData" :opts="opts" />
  62. </view>
  63. </view>
  64. </view>
  65. </template>
  66. <script>
  67. export default {
  68. data() {
  69. return {
  70. current: 3,
  71. chartData: {
  72. categories: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
  73. series: [{
  74. name: '收益',
  75. data: [0,
  76. 0,
  77. 0,
  78. 0,
  79. 0,
  80. 0,
  81. 0,
  82. 0,
  83. 227834.88,
  84. 279992.99,
  85. 284646.33,
  86. 182900.91
  87. ]
  88. }],
  89. },
  90. opts: {
  91. xAxis: {},
  92. yAxis: {
  93. showTitle: true,
  94. splitNumber: 6,
  95. data: [{
  96. title: '收益(元)',
  97. max: 300000,
  98. min: 0
  99. }]
  100. },
  101. legend: {
  102. show: false
  103. },
  104. padding: [10, 0, 10, 0],
  105. dataLabel: false
  106. }
  107. }
  108. },
  109. methods: {
  110. }
  111. }
  112. </script>
  113. <style lang="scss" scoped>
  114. .model {
  115. padding: 34rpx;
  116. font-family: SourceHanSansSC-regular;
  117. &-content {
  118. background-color: #EAE7E7;
  119. border-radius: 20rpx;
  120. padding: 22rpx 14rpx;
  121. &-1 {
  122. background-color: #fff;
  123. border-radius: 16rpx;
  124. padding: 46rpx 30rpx;
  125. margin-bottom: 24rpx;
  126. .title {
  127. color: #AEAEB2;
  128. font-size: 36rpx;
  129. }
  130. .total {
  131. display: flex;
  132. justify-content: space-between;
  133. align-items: center;
  134. &-title {
  135. color: #5756D7;
  136. font-size: 56rpx;
  137. font-family: SourceHanSansSC-bold;
  138. }
  139. .red {
  140. color: #FF3A30;
  141. }
  142. .orange {
  143. color: #FF9502;
  144. }
  145. }
  146. }
  147. &-2 {
  148. background-color: #fff;
  149. border-radius: 16rpx;
  150. padding: 52rpx 18rpx;
  151. margin-bottom: 24rpx;
  152. display: flex;
  153. justify-content: space-between;
  154. align-items: center;
  155. &-item {
  156. border-right: solid 1px #bbb;
  157. width: 33%;
  158. text-align: center;
  159. &:last-child {
  160. border-right: none;
  161. }
  162. view {
  163. font-size: 34rpx;
  164. color: #AEAEB2;
  165. &:first-child {
  166. font-size: 46rpx;
  167. color: #000;
  168. font-family: SourceHanSansSC-bold;
  169. font-weight: 600;
  170. margin-bottom: 20rpx;
  171. text {
  172. font-size: 34rpx;
  173. }
  174. }
  175. }
  176. }
  177. }
  178. }
  179. &-line {
  180. margin-top: 50rpx;
  181. .report-header {
  182. display: flex;
  183. align-items: center;
  184. &-left {
  185. border-left: solid 4px #EC0D0D;
  186. padding-left: 10rpx;
  187. color: #101010;
  188. font-size: 30rpx;
  189. margin-right: 40rpx;
  190. }
  191. &-right {
  192. display: flex;
  193. &-item {
  194. width: 100rpx;
  195. height: 60rpx;
  196. line-height: 60rpx;
  197. text-align: center;
  198. border: solid 1px #008CFF;
  199. border-right: none;
  200. &:last-child {
  201. border-radius: 0 8rpx 8rpx 0;
  202. border-right: solid 1px #008CFF;
  203. }
  204. &:first-child {
  205. border-radius: 8rpx 0 0 8rpx;
  206. }
  207. }
  208. .current {
  209. background-color: #008CFF;
  210. color: #fff;
  211. }
  212. }
  213. }
  214. .charts-box {
  215. margin-top: 30rpx;
  216. width: 100%;
  217. height: 700rpx;
  218. }
  219. }
  220. }
  221. </style>