56371222161d10530003e1048f465312bd1b86bc.svn-base 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737
  1. <template>
  2. <div class="dashboard-editor-container">
  3. <div style="background: #F4F4F4;height: 10px;" />
  4. <div v-if="news==1" class="news"><b>消息提醒:</b>撒料计划未分配完善,请及时进行计划分配</div>
  5. <div v-if="news==2" class="news"><b>消息提醒:</b>预混计划未分配完善,请及时进行计划分配</div>
  6. <div v-if="news==3" class="news"><b>消息提醒:</b>剩料计划未分配完善,请及时进行计划分配</div>
  7. <div class="bottom">
  8. <h4>2020-07-10</h4>
  9. <el-row :gutter="20">
  10. <el-col :span="6">
  11. <div class="grid-content one">
  12. <div class="Left">
  13. <i class="iconfont icon-shuaxin" />
  14. </div>
  15. <div class="Right">
  16. <span>昨日混料准确率:</span>80%<br>
  17. <span>近30天混料准确率:</span>90%
  18. </div>
  19. </div>
  20. </el-col>
  21. <el-col :span="6">
  22. <div class="grid-content two">
  23. <div class="Left">
  24. <i class="iconfont icon-zhunqueshuai2" />
  25. </div>
  26. <div class="Right">
  27. <span>昨日撒料准确率:</span>80%<br>
  28. <span>近30天撒料准确率:</span>90%
  29. </div>
  30. </div>
  31. </el-col>
  32. <el-col :span="6">
  33. <div class="grid-content three">
  34. <div class="Left">
  35. <i class="iconfont icon-zhinengsiwei" />
  36. </div>
  37. <div class="Right">
  38. <span>昨日撒料正确率:</span>80%<br>
  39. <span>近30天撒料正确率:</span>90%
  40. </div>
  41. </div>
  42. </el-col>
  43. <el-col :span="6">
  44. <div class="grid-content four">
  45. <div class="Left">
  46. <i class="iconfont icon-siliaotoufangjilu" />
  47. </div>
  48. <div class="Right">
  49. <span>昨日撒料偏差:</span>80 min<br>
  50. <span>近30天撒料偏差:</span>90 min
  51. </div>
  52. </div>
  53. </el-col>
  54. </el-row>
  55. <el-row :gutter="20" style="margin-top: 20px;">
  56. <el-col :span="6">
  57. <div class="grid-content" style="height:500px;background: #fff;">
  58. <div style="height: 250px; border-bottom: 1px solid #000;">
  59. <b style="padding-left: 10px;line-height: 50px">今日计划统计</b><br>
  60. <div style="text-align: center;">
  61. <b style="padding-right: 10px;">完成车次:15</b>
  62. <b>计划车次:20</b>
  63. </div>
  64. <div id="row2chartLine1" style="height: 150px;" />
  65. </div>
  66. <div style="height: 250px;">
  67. <div style="text-align: center;padding-top:50px;">
  68. <b style="padding-right: 10px;">完成重量:15</b>
  69. <b>计划重量:20</b>
  70. </div>
  71. <div id="row2chartLine2" style="height: 150px;" />
  72. </div>
  73. </div>
  74. </el-col>
  75. <el-col :span="18">
  76. <div class="grid-content" style="height:500px;">
  77. <div style="height:350px;">
  78. <div style="font-size:14px;color:#666;margin:0 auto;position: relative;">
  79. <span style="line-height:30px;position:absolute;right:190px"><i class="el-icon-caret-top" style="color:#c23531;line-height:30px;font-size:30px;" /><b style="line-height:32px;">开始重量</b></span>
  80. <span style="line-height:30px;position:absolute;right:100px"><i class="el-icon-caret-top" style="color:#2f4554;line-height:30px;font-size:30px;" /><b style="line-height:32px;">结束重量</b></span>
  81. </div>
  82. <div id="row2chartLine3" style="height: 100%;" />
  83. </div>
  84. <div class="car" style="position: relative;">
  85. <p style="position: absolute;left:50px;top:-50px;">当前车辆数:5</p>
  86. <i ref="left" class="el-icon-arrow-left" @click="handleLeft" />
  87. <el-row :gutter="20" class="carList">
  88. <el-col v-for="(item,index) in list" :key="index" :span="8">
  89. <div ref="list" class="list" @click="handleList(index)">
  90. <el-row :gutter="20">
  91. <el-col :span="12" class="list-l">
  92. <p><span>车辆:</span>{{ item.avgdim }}</p>
  93. <el-tooltip placement="top">
  94. <p slot="content"><span>饲料:</span>{{ item.avgmonthage }}</p>
  95. <p><span>饲料:</span>{{ item.avgmonthage }}</p>
  96. </el-tooltip>
  97. <p><span>计划重量:</span>{{ item.barname }}</p>
  98. <p><span>剩余重量:</span>{{ item.bigcowclass }}</p>
  99. <p><span>车辆应载重:</span>{{ item.bigcowclass }}</p>
  100. </el-col>
  101. <el-col :span="12" class="list-r">
  102. <el-tooltip placement="top">
  103. <p slot="content"><span>描述:</span>{{ item.bw }}</p>
  104. <p><span>描述:</span>{{ item.bw }}</p>
  105. </el-tooltip>
  106. <p><span>栏舍:</span>{{ item.cowclass }}</p>
  107. <p><span>完成重量:</span>{{ item.cowclassid }}</p>
  108. <p><span>完成度:</span>{{ item.cowsum }}</p>
  109. <p><span>车辆已载重:</span>{{ item.dayspre }}</p>
  110. </el-col>
  111. </el-row>
  112. </div>
  113. </el-col>
  114. </el-row>
  115. <i ref="right" class="el-icon-arrow-right" @click="handleRight" />
  116. </div>
  117. </div>
  118. </el-col>
  119. </el-row>
  120. </div>
  121. </div>
  122. </template>
  123. <script>
  124. import { GetDataByName } from '@/api/common'
  125. import Cookies from 'js-cookie'
  126. import { parseTime } from '@/utils/index.js'
  127. import echarts from 'echarts'
  128. require('echarts/theme/macarons')
  129. var myKey = 0
  130. export default {
  131. name: 'DashboardEditor',
  132. data() {
  133. return {
  134. 'list': [],
  135. news: 1,
  136. row: {},
  137. row2: {
  138. chart1: {
  139. chartLine: null,
  140. chartLine_data: {},
  141. getdataListParm: {
  142. name: 'getBarmilkList',
  143. page: 1,
  144. offset: 1,
  145. pagecount: 10,
  146. returntype: 'Map',
  147. parammaps: {
  148. pastureid: Cookies.get('pastureid'),
  149. enable: ''
  150. }
  151. },
  152. list: [],
  153. total: 0,
  154. listLoading: true
  155. },
  156. chart2: {
  157. chartLine: null,
  158. chartLine_data: {},
  159. getdataListParm: {
  160. name: 'getBarmilkList',
  161. page: 1,
  162. offset: 1,
  163. pagecount: 10,
  164. returntype: 'Map',
  165. parammaps: {
  166. pastureid: Cookies.get('pastureid'),
  167. enable: ''
  168. }
  169. },
  170. list: [],
  171. total: 0,
  172. listLoading: true
  173. },
  174. chart3: {
  175. chartLine: null,
  176. chartLine_data: {},
  177. getdataListParm: {
  178. name: 'getBarmilkList',
  179. page: 1,
  180. offset: 1,
  181. pagecount: 3,
  182. returntype: 'Map',
  183. parammaps: {
  184. pastureid: Cookies.get('pastureid'),
  185. enable: ''
  186. }
  187. },
  188. list: [],
  189. total: 0,
  190. listLoading: true,
  191. pageNum: '',
  192. pages: '',
  193. getdataListParmList: {
  194. name: 'getBarmilkList',
  195. page: 1,
  196. offset: 1,
  197. pagecount: 3,
  198. returntype: 'Map',
  199. parammaps: {
  200. pastureid: Cookies.get('pastureid'),
  201. enable: ''
  202. }
  203. },
  204. list2: [],
  205. total2: 0,
  206. listLoading2: true,
  207. pageNum2: '',
  208. pages2: ''
  209. }
  210. }
  211. }
  212. },
  213. created() {
  214. this.getChart1()
  215. this.getChart2()
  216. this.getChart3List()
  217. window.setInterval(() => {
  218. setTimeout(() => {
  219. this.$refs.list[myKey].style.background = '#009966'
  220. this.$refs.list[myKey + 1].style.background = '#36A47F'
  221. myKey = myKey + 1
  222. if (myKey == 2) {
  223. setTimeout(() => {
  224. if (this.row2.chart3.pageNum2 == this.row2.chart3.pages2) {
  225. this.row2.chart3.getdataListParmList.offset = 1
  226. this.getChart3List()
  227. } else {
  228. this.row2.chart3.getdataListParmList.offset = this.row2.chart3.getdataListParmList.offset + 1
  229. this.getChart3List()
  230. }
  231. myKey = 0
  232. this.$refs.list[myKey].style.background = '#009966'
  233. }, 5000)
  234. }
  235. console.log(myKey)
  236. }, 0)
  237. }, 5000)
  238. },
  239. methods: {
  240. getChart1() {
  241. this.row2.chart1.listLoading = true
  242. GetDataByName(this.row2.chart1.getdataListParm).then(response => {
  243. console.log('泌乳牛采食量图表数据', response.data.list)
  244. if (response.data.list !== null) {
  245. this.row2.chart1.chartLine_data = {
  246. data1: 15,
  247. data2: 20
  248. }
  249. this.row2.chart1.total = response.data.total
  250. this.roadChartLine1(this.row2.chart1.chartLine_data)
  251. } else {
  252. this.row2.chart1.list = []
  253. }
  254. setTimeout(() => {
  255. this.row2.chart1.listLoading = false
  256. }, 100)
  257. })
  258. },
  259. roadChartLine1(chartLine_data) {
  260. if (this.row2.chart1.chartLine != null) {
  261. this.row2.chart1.chartLine.dispose()
  262. }
  263. this.row2.chart1.chartLine = echarts.init(document.getElementById('row2chartLine1'))
  264. var option = {
  265. // 标题组件,包含主标题和副标题
  266. title: {
  267. show: true,
  268. x: 'center',
  269. textStyle: {
  270. fontSize: '15',
  271. color: 'green',
  272. fontWeight: 'bold'
  273. }
  274. },
  275. // 提示框组件
  276. tooltip: {
  277. // 是否显示提示框组件,包括提示框浮层和 axisPointe
  278. show: false,
  279. // 触发类型: item:数据项触发,axis:坐标轴触发
  280. trigger: 'item',
  281. formatter: '{a} <br/>{b}: {c} ({d}%)'
  282. },
  283. // 系列列表。每个系列通过 type 决定自己的图表类型
  284. series: [{
  285. // 系列名称,用于tooltip的显示,legend 的图例筛选,在 setOption 更新数据和配置项时用于指定对应的系列。
  286. name: '任务进度',
  287. type: 'pie',
  288. // 饼图的半径,数组的第一项是内半径,第二项是外半径
  289. radius: ['80%', '70%'],
  290. // 是否启用防止标签重叠策略,默认开启
  291. avoidLabelOverlap: false,
  292. hoverAnimation: false,
  293. // 标签的视觉引导线样式,在 label 位置 设置为'outside'的时候会显示视觉引导线
  294. labelLine: {
  295. normal: {
  296. show: false
  297. }
  298. },
  299. data: [{
  300. value: chartLine_data.data1, // 数据值
  301. name: '完成率', // 数据项名称
  302. selected: false, // 该数据项是否被选中
  303. // 单个扇区的标签配置
  304. label: {
  305. normal: {
  306. show: true, // 是显示标签
  307. position: 'center',
  308. fontSize: 20,
  309. // 标签内容格式器,支持字符串模板和回调函数两种形式,字符串模板与回调函数返回的字符串均支持用 \n 换行
  310. formatter: '{b}\n{d}%'
  311. }
  312. }
  313. }, {
  314. value: chartLine_data.data2 - chartLine_data.data1,
  315. label: {
  316. normal: {
  317. show: false
  318. }
  319. }
  320. }]
  321. }],
  322. color: ['#47947b', '#b8eedc']
  323. }
  324. this.row2.chart1.chartLine.setOption(option)
  325. window.onresize = function() {
  326. this.row2.chart1.chartLine.resize()
  327. }
  328. },
  329. getChart2() {
  330. this.row2.chart2.listLoading = true
  331. GetDataByName(this.row2.chart2.getdataListParm).then(response => {
  332. console.log('泌乳牛采食量图表数据', response.data.list)
  333. if (response.data.list !== null) {
  334. this.row2.chart2.chartLine_data = {
  335. data1: 15,
  336. data2: 20
  337. }
  338. this.row2.chart2.total = response.data.total
  339. this.roadChartLine2(this.row2.chart2.chartLine_data)
  340. } else {
  341. this.row2.chart2.list = []
  342. }
  343. setTimeout(() => {
  344. this.row2.chart2.listLoading = false
  345. }, 100)
  346. })
  347. },
  348. roadChartLine2(chartLine_data) {
  349. if (this.row2.chart2.chartLine != null) {
  350. this.row2.chart2.chartLine.dispose()
  351. }
  352. this.row2.chart2.chartLine = echarts.init(document.getElementById('row2chartLine2'))
  353. var option = {
  354. // 标题组件,包含主标题和副标题
  355. title: {
  356. show: true,
  357. x: 'center',
  358. textStyle: {
  359. fontSize: '15',
  360. color: 'green',
  361. fontWeight: 'bold'
  362. }
  363. },
  364. // 提示框组件
  365. tooltip: {
  366. // 是否显示提示框组件,包括提示框浮层和 axisPointe
  367. show: false,
  368. // 触发类型: item:数据项触发,axis:坐标轴触发
  369. trigger: 'item',
  370. formatter: '{a} <br/>{b}: {c} ({d}%)'
  371. },
  372. // 系列列表。每个系列通过 type 决定自己的图表类型
  373. series: [{
  374. // 系列名称,用于tooltip的显示,legend 的图例筛选,在 setOption 更新数据和配置项时用于指定对应的系列。
  375. name: '任务进度',
  376. type: 'pie',
  377. // 饼图的半径,数组的第一项是内半径,第二项是外半径
  378. radius: ['80%', '70%'],
  379. // 是否启用防止标签重叠策略,默认开启
  380. avoidLabelOverlap: false,
  381. hoverAnimation: false,
  382. // 标签的视觉引导线样式,在 label 位置 设置为'outside'的时候会显示视觉引导线
  383. labelLine: {
  384. normal: {
  385. show: false
  386. }
  387. },
  388. data: [{
  389. value: chartLine_data.data1, // 数据值
  390. name: '完成率', // 数据项名称
  391. selected: false, // 该数据项是否被选中
  392. // 单个扇区的标签配置
  393. label: {
  394. normal: {
  395. show: true, // 是显示标签
  396. position: 'center',
  397. fontSize: 20,
  398. // 标签内容格式器,支持字符串模板和回调函数两种形式,字符串模板与回调函数返回的字符串均支持用 \n 换行
  399. formatter: '{b}\n{d}%'
  400. }
  401. }
  402. }, {
  403. value: chartLine_data.data2 - chartLine_data.data1,
  404. label: {
  405. normal: {
  406. show: false
  407. }
  408. }
  409. }]
  410. }],
  411. color: ['#47947b', '#b8eedc']
  412. }
  413. this.row2.chart2.chartLine.setOption(option)
  414. window.onresize = function() {
  415. this.row2.chart2.chartLine.resize()
  416. }
  417. },
  418. getChart3() {
  419. this.row2.chart3.listLoading = true
  420. GetDataByName(this.row2.chart3.getdataListParm).then(response => {
  421. console.log('实时监控数据', response.data.list)
  422. if (response.data.list !== null) {
  423. console.log(this.$refs.list)
  424. this.$refs.list[myKey].style.background = '#36A47F'
  425. console.log(this.$refs)
  426. this.row2.chart3.chartLine_data = {
  427. data1: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
  428. data2: [220, 250, 201, 234, 290, 430, 410],
  429. data3: [120, 130, 101, 134, 90, 430, 210]
  430. }
  431. this.row2.chart3.total = response.data.total
  432. this.row2.chart3.pageNum = response.data.pageNum
  433. this.row2.chart3.pages = response.data.pages
  434. this.roadChartLine3(this.row2.chart3.chartLine_data)
  435. } else {
  436. this.row2.chart3.list = []
  437. }
  438. setTimeout(() => {
  439. this.row2.chart3.listLoading = false
  440. }, 100)
  441. })
  442. },
  443. roadChartLine3(chartLine_data) {
  444. if (this.row2.chart3.chartLine != null) {
  445. this.row2.chart3.chartLine.dispose()
  446. }
  447. this.row2.chart3.chartLine = echarts.init(document.getElementById('row2chartLine3'))
  448. var option = {
  449. title: {
  450. text: '实时监控',
  451. subtext: ''
  452. },
  453. color: ['#c23531', '#2f4554'], // 关键加上这句话,legend的颜色和折线的自定义颜色就一致了
  454. legend: {
  455. icon: 'rectangle',
  456. data: ['设计重量', '实际重量'],
  457. // right: '20%',
  458. textStyle: {
  459. fontSize: 12,
  460. color: '#666'
  461. }
  462. },
  463. /* grid:{y:15},*/
  464. tooltip: {
  465. trigger: 'axis'
  466. },
  467. calculable: true,
  468. yAxis: [
  469. {
  470. type: 'value',
  471. splitLine: { show: false }, // 去除网格线
  472. axisLabel: {
  473. show: true,
  474. textStyle: {
  475. color: '#666' // 这里用参数代替了
  476. }
  477. }
  478. }
  479. ],
  480. xAxis: [
  481. {
  482. type: 'category',
  483. splitLine: { show: false }, // 去除网格线
  484. data: chartLine_data.data1,
  485. axisLabel: {
  486. show: true,
  487. textStyle: {
  488. color: '#666' // 这里用参数代替了
  489. }
  490. }
  491. }
  492. ],
  493. series: [
  494. {
  495. name: '设计重量',
  496. type: 'line',
  497. barWidth: '37',
  498. data: chartLine_data.data2,
  499. symbol: 'triangle', symbolSize: 10,
  500. itemStyle: {
  501. normal: {
  502. lineStyle: { color: '#c23531' },
  503. color: function(param) {
  504. const colorList = ['#2f4554', '#c23531']
  505. let x = ''
  506. param.dataIndex % 2 == 0 ? x = 1 : x = 2
  507. if (x == '1') {
  508. return colorList[0]
  509. } else {
  510. return colorList[1]
  511. }
  512. }
  513. }
  514. }
  515. },
  516. {
  517. name: '实际重量',
  518. type: 'line',
  519. step: 'end',
  520. data: chartLine_data.data3,
  521. barWidth: '37',
  522. itemStyle: {
  523. normal: {
  524. lineStyle: { color: '#2f4554' }
  525. }
  526. }
  527. }
  528. ]
  529. }
  530. this.row2.chart3.chartLine.setOption(option)
  531. window.onresize = function() {
  532. this.row2.chart3.chartLine.resize()
  533. }
  534. },
  535. getChart3List() {
  536. this.row2.chart3.listLoading2 = true
  537. GetDataByName(this.row2.chart3.getdataListParmList).then(response => {
  538. console.log('实时监控数据', response.data.list)
  539. if (response.data.list !== null) {
  540. this.list = response.data.list
  541. console.log(this.$refs.list)
  542. console.log(this.$refs)
  543. this.row2.chart3.total2 = response.data.total
  544. this.row2.chart3.pageNum2 = response.data.pageNum
  545. this.row2.chart3.pages2 = response.data.pages
  546. this.getChart3()
  547. if (this.row2.chart3.getdataListParmList.offset == 1) {
  548. this.$refs.left.style.color = '#ccc'
  549. } else {
  550. this.$refs.left.style.color = '#000'
  551. }
  552. if (response.data.pageNum == response.data.pages) {
  553. this.$refs.right.style.color = '#ccc'
  554. } else {
  555. this.$refs.right.style.color = '#000'
  556. }
  557. } else {
  558. this.row2.chart3.list2 = []
  559. }
  560. setTimeout(() => {
  561. this.row2.chart3.listLoading2 = false
  562. }, 100)
  563. })
  564. },
  565. handleLeft() {
  566. console.log('左')
  567. if (this.row2.chart3.getdataListParmList.offset > 1) {
  568. this.row2.chart3.getdataListParmList.offset = this.row2.chart3.getdataListParmList.offset - 1
  569. this.getChart3List()
  570. this.$refs.list[0].style.background = '#36A47F'
  571. this.$refs.list[1].style.background = '#009966'
  572. this.$refs.list[2].style.background = '#009966'
  573. }
  574. },
  575. handleRight() {
  576. if (this.row2.chart3.pageNum2 !== this.row2.chart3.pages2) {
  577. this.row2.chart3.getdataListParmList.offset = this.row2.chart3.getdataListParmList.offset + 1
  578. this.getChart3List()
  579. this.$refs.list[0].style.background = '#36A47F'
  580. this.$refs.list[1].style.background = '#009966'
  581. this.$refs.list[2].style.background = '#009966'
  582. }
  583. },
  584. handleList(key) {
  585. console.log(key)
  586. // this.$refs.left.style.color = '#ccc'
  587. console.log(this.$refs.list)
  588. for (var i in this.$refs.list) {
  589. if (i == key) {
  590. this.$refs.list[i].style.background = '#36A47F'
  591. this.getChart3()
  592. // this.$refs.list[key].style.background = '#36A47F'
  593. } else {
  594. this.$refs.list[i].style.background = '#009966'
  595. }
  596. }
  597. }
  598. }
  599. }
  600. </script>
  601. <style lang="scss" scoped>
  602. .dashboard-editor-container {
  603. background-color: #F4F4F4;
  604. min-height: 100vh;
  605. .news{
  606. width: 70%;
  607. height: 30px;
  608. background: #fff;
  609. margin: 0 auto;
  610. border-radius: 10px;
  611. text-align: center;
  612. line-height: 30px;
  613. color: red;
  614. b{color: #000;}
  615. }
  616. .bottom{
  617. padding:0 30px;
  618. h4{text-align: right;}
  619. .grid-content{
  620. background: #fff;height: 90px;
  621. border-radius: 10px;
  622. }
  623. .one{
  624. border: 1px solid #82CBB3;
  625. .Left{
  626. float: left;
  627. width: 90px;
  628. text-align: center;
  629. i{font-size: 36px;color:#82CBB3;line-height: 90px;}
  630. }
  631. .Right{
  632. float: left;
  633. font:600 14px/32px '';
  634. margin-top:15px;
  635. span{
  636. display: inline-block;
  637. width: 150px;
  638. text-align: right;
  639. }
  640. }
  641. }
  642. .two{
  643. border: 1px solid #FF9900;
  644. .Left{
  645. float: left;
  646. width: 90px;
  647. text-align: center;
  648. i{font-size: 36px;color:#FF9900;line-height: 90px;}
  649. }
  650. .Right{
  651. float: left;
  652. font:600 14px/32px '';
  653. margin-top:15px;
  654. span{
  655. display: inline-block;
  656. width: 150px;
  657. text-align: right;
  658. }
  659. }
  660. }
  661. .three{
  662. border: 1px solid #0099FF;
  663. .Left{
  664. float: left;
  665. width: 90px;
  666. text-align: center;
  667. i{font-size: 36px;color:#0099FF;line-height: 90px;}
  668. }
  669. .Right{
  670. float: left;
  671. font:600 14px/32px '';
  672. margin-top:15px;
  673. span{
  674. display: inline-block;
  675. width: 150px;
  676. text-align: right;
  677. }
  678. }
  679. }
  680. .four{
  681. border: 1px solid #FF5C5C;
  682. .Left{
  683. float: left;
  684. width: 90px;
  685. text-align: center;
  686. i{font-size: 36px;color:#FF5C5C;line-height: 90px;}
  687. }
  688. .Right{
  689. float: left;
  690. font:600 14px/32px '';
  691. margin-top:15px;
  692. span{
  693. display: inline-block;
  694. width: 150px;
  695. text-align: right;
  696. }
  697. }
  698. }
  699. .car{
  700. width:100%;height:150px;; display:flex; display: -webkit-flex; -webkit-flex-direction:row;
  701. i{font-size: 50px;width:50px;display: block;line-height: 150px;}
  702. .carList{
  703. flex:1;height: 130px;
  704. .list{
  705. height: 130px;background: #009966;color: #fff; box-shadow: #000 0px 0px 10px;
  706. border-radius: 10px;
  707. .list-l{
  708. p{
  709. font: 12px/12px '';text-overflow: ellipsis;white-space:nowrap; overflow:hidden;
  710. }
  711. }
  712. .list-r{
  713. p{
  714. font: 12px/12px '';text-overflow: ellipsis;white-space:nowrap; overflow:hidden;
  715. }
  716. }
  717. }
  718. }
  719. }
  720. }
  721. }
  722. </style>