securityHidden.vue 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946
  1. <!-- 数据看板-安全隐患 -->
  2. <template>
  3. <view class="hazardSources">
  4. <!-- 计划列表 -->
  5. <picker @change="bindPickerChange" :value="pickerIndex" :range="pickerList" range-key="planTitle">
  6. <view class="small-title">
  7. <view class="small-title-l">{{pickerList[pickerIndex].planTitle}}</view>
  8. <img class="small-title-r" src="@/pages/images/dataBoard/icon_06.png">
  9. </view>
  10. </picker>
  11. <view class="chart">
  12. <!-- 图表选项卡 -->
  13. <view class="chart-t">
  14. <view class="chart-t-li" :class="chartIndex==index?'color-A':'color-B'" @click="chartClick(index)"
  15. v-for="(item,index) in chartTitle">{{item}}</view>
  16. </view>
  17. <!-- 安全隐患排行-图表 -->
  18. <view class="chart-b" v-if="chartIndex==0">
  19. <qiun-data-charts :canvas2d="true" type="column" :opts="opts" :echartsH5="true" :chartData="chartData" />
  20. </view>
  21. <!-- 一级指标排行-图表 -->
  22. <view class="chart-b2" v-if="chartIndex==0">
  23. <view class="chart-b2-li" v-for="(item,index) in hiddenChartBottom">
  24. <view class="chart-b2-li-t">
  25. <text>{{index+1}}</text>
  26. <text>{{item.name}}</text>
  27. </view>
  28. <view class="chart-b2-li-b">{{item.total}}</view>
  29. </view>
  30. </view>
  31. <!-- 暂无法整改-图表 -->
  32. <view class="chart-b-tow" v-if="chartIndex==1 || chartIndex==2">
  33. <qiun-data-charts :canvas2d="true" type="radar" :opts="optsTow" :echartsH5="true" :chartData="chartDataTow" />
  34. </view>
  35. </view>
  36. <!-- 选项卡 -->
  37. <scroll-view scroll-x @scrolltolower="scrollGet" v-if="chartIndex!=0">
  38. <view class="tabTitle_tow">
  39. <view class="tabTitle_tow_li" @tap="tabClickTow(item,index)" :key="index"
  40. v-for="(item,index) in tabTextTow">
  41. <view :class="{on:curTabTow==index}" class="tabTitle_tow_text">{{item}}</view>
  42. <view :class="{on:curTabTow==index}" class="tabTitle_tow_across"></view>
  43. </view>
  44. </view>
  45. </scroll-view>
  46. <!--安全隐患排行 -->
  47. <view class="table" v-if="chartIndex==0">
  48. <uni-card>
  49. <view style="height: 200px">
  50. <zb-table :columns="column" :stripe="false" :border="false" :data="dataList"></zb-table>
  51. </view>
  52. </uni-card>
  53. </view>
  54. <!-- 一级指标排行 -->
  55. <view class="table-tow" v-if="chartIndex!=0 && curTabTow==0">
  56. <uni-card>
  57. <view style="height: 200px">
  58. <zb-table :columns="column2" :stripe="false" :border="false" :data="dataListTow"></zb-table>
  59. </view>
  60. </uni-card>
  61. </view>
  62. <!--学院单位 -->
  63. <view class="table-three" v-if="chartIndex!=0 && curTabTow==1">
  64. <uni-card>
  65. <view style="height: 200px">
  66. <zb-table :columns="column3" :stripe="false" :border="false" :data="dataListThree"></zb-table>
  67. </view>
  68. </uni-card>
  69. </view>
  70. </view>
  71. </template>
  72. <script>
  73. import {
  74. config
  75. } from '@/api/request/config.js'
  76. import {
  77. securityCheckPlanPlantList,
  78. reportAppStatisticsDangerSort,
  79. securityCheckDangerNotHazardOneCollect,
  80. securityCheckDangerHazardOneCollect,
  81. } from '@/pages/api/index.js'
  82. export default {
  83. name: "hazardSources",
  84. components: {
  85. },
  86. data() {
  87. return {
  88. chartType: 3,
  89. chartTitle: ['安全隐患排行', '一级指标排行', '暂无法整改'],
  90. chartIndex: 0,
  91. opts: {
  92. color: ["#149F12", "#FF0000", "#FF9D25", ],
  93. padding: [15, 15, 4, 5],
  94. enableScroll: false,
  95. legend: {
  96. position: 'top',
  97. fontColor: '#fff',
  98. },
  99. xAxis: {
  100. disableGrid: true,
  101. disabled: true,
  102. axisLine: false,
  103. },
  104. yAxis: {
  105. disableGrid: true,
  106. data: [{
  107. disabled: true,
  108. }]
  109. },
  110. extra: {
  111. column: {
  112. type: "group",
  113. width: 14,
  114. linearType: "opacity",
  115. linearOpacity: 0.6,
  116. }
  117. }
  118. },
  119. optsTow: {
  120. color: ["#1890FF", "#91CB74", "#FAC858", "#EE6666", "#73C0DE", "#3CA272", "#FC8452", "#9A60B4",
  121. "#ea7ccc"
  122. ],
  123. padding: [5, 5, 5, 5],
  124. dataLabel: false,
  125. enableScroll: false,
  126. legend: {
  127. show: false,
  128. },
  129. extra: {
  130. radar: {
  131. gridType: "radar",
  132. gridColor: "#CCCCCC",
  133. gridCount: 3,
  134. opacity: 0.2,
  135. max: 200,
  136. labelShow: true,
  137. border: true,
  138. labelColor: '#fff',
  139. }
  140. }
  141. },
  142. chartData: {},
  143. chartDataTow: {},
  144. // 查询参数
  145. queryParams: {
  146. page: 1,
  147. pageSize: 10,
  148. },
  149. column: [{
  150. type: 'index',
  151. label: '排行',
  152. fixed: true,
  153. width: 60,
  154. align: 'center',
  155. },
  156. {
  157. name: 'deptSortName',
  158. label: '学院单位',
  159. fixed: true,
  160. width: 80,
  161. align: 'center',
  162. },
  163. {
  164. name: 'totalNum',
  165. label: '总隐患',
  166. align: 'center',
  167. },
  168. {
  169. name: 'rectifyNum',
  170. label: '已整改',
  171. align: 'center',
  172. },
  173. {
  174. name: 'notRectifyNum',
  175. label: '未整改',
  176. align: 'center',
  177. },
  178. {
  179. name: 'tempNum',
  180. label: '暂无法整改',
  181. align: 'center',
  182. },
  183. ],
  184. column2: [{
  185. type: 'index',
  186. label: '序号',
  187. fixed: true,
  188. width: 60,
  189. align: 'center',
  190. },
  191. {
  192. name: 'name',
  193. label: '一级指标',
  194. fixed: true,
  195. width: 80,
  196. align: 'center',
  197. },
  198. {
  199. name: 'num',
  200. label: '隐患数',
  201. align: 'center',
  202. },
  203. {
  204. name: 'ratio',
  205. label: '占比',
  206. align: 'center',
  207. },
  208. ],
  209. column3: [{
  210. type: 'index',
  211. label: '排行',
  212. fixed: true,
  213. width: 60,
  214. align: 'center',
  215. },
  216. {
  217. name: 'deptSortName',
  218. label: '学院单位',
  219. fixed: true,
  220. width: 80,
  221. align: 'center',
  222. },
  223. {
  224. name: 'hazardNum',
  225. label: '总隐患',
  226. align: 'center',
  227. },
  228. ],
  229. dataList: [],
  230. dataListTow: [],
  231. dataListThree: [],
  232. total: 0,
  233. tabTextTow: ['一级指标', '学院单位'],
  234. curTabTow: 0,
  235. pickerList: [],
  236. pickerIndex:0,
  237. hiddenChartBottom:[],
  238. }
  239. },
  240. created() {
  241. },
  242. beforeMount() {
  243. },
  244. mounted() {
  245. this.securityCheckPlanPlantList();
  246. },
  247. methods: {
  248. scrollGet() {
  249. },
  250. bindPickerChange(data) {
  251. console.log(data)
  252. this.pickerIndex = data.detail.value;
  253. if(this.chartIndex==0){
  254. //安全隐患排行
  255. this.reportAppStatisticsDangerSort(this.pickerList[this.pickerIndex].planId)
  256. }else if(this.chartIndex==1){
  257. //一级指标排行
  258. this.dataListTow=[];
  259. this.dataListThree=[];
  260. this.chartDataTow={};
  261. this.securityCheckDangerHazardOneCollect(this.pickerList[this.pickerIndex].planId)
  262. }else if(this.chartIndex==2){
  263. //暂无法整改
  264. this.dataListTow=[];
  265. this.dataListThree=[];
  266. this.chartDataTow={};
  267. this.securityCheckDangerNotHazardOneCollect(this.pickerList[this.pickerIndex].planId)
  268. }
  269. },
  270. chartClick(index) {
  271. this.chartIndex = index;
  272. if(this.chartIndex==0){
  273. //安全隐患排行
  274. this.reportAppStatisticsDangerSort(this.pickerList[this.pickerIndex].planId)
  275. }else if(this.chartIndex==1){
  276. //一级指标排行
  277. this.securityCheckDangerHazardOneCollect(this.pickerList[this.pickerIndex].planId)
  278. }else if(this.chartIndex==2){
  279. //暂无法整改
  280. this.securityCheckDangerNotHazardOneCollect(this.pickerList[this.pickerIndex].planId)
  281. }
  282. },
  283. //顶部tab点击
  284. tabClickTow(item, index) {
  285. this.curTabTow = index;
  286. },
  287. //计划标题
  288. async securityCheckPlanPlantList() {
  289. let self = this;
  290. const {
  291. data
  292. } = await securityCheckPlanPlantList();
  293. if (data.code == 200) {
  294. this.pickerList = data.data
  295. this.reportAppStatisticsDangerSort(this.pickerList[0].planId)
  296. }
  297. },
  298. //安全隐患列表数据
  299. async reportAppStatisticsDangerSort(planId) {
  300. let self = this;
  301. const {
  302. data
  303. } = await reportAppStatisticsDangerSort({'type':'-1','planId':planId});
  304. if (data.code == 200) {
  305. this.dataList=data.data;
  306. if(data.data[0]){
  307. let name=[];
  308. let list=[];
  309. let list2=[];
  310. let list3=[];
  311. let num=0;
  312. self.hiddenChartBottom=[];
  313. data.data.forEach(function(item,index){
  314. if(index<3){
  315. name.push(item.deptSortName)
  316. list.push(item.rectifyNum)
  317. list2.push(item.notRectifyNum)
  318. list3.push(item.tempNum)
  319. num=item.rectifyNum+item.notRectifyNum+item.tempNum
  320. self.hiddenChartBottom.push({'name':item.deptSortName,'total':num})
  321. }
  322. })
  323. let res = {
  324. categories: name,
  325. series: [{
  326. name: "已整改",
  327. textColor: '#fff',
  328. data: list
  329. },
  330. {
  331. name: "未整改",
  332. textColor: '#fff',
  333. data: list2
  334. },
  335. {
  336. name: "暂无法整改",
  337. textColor: '#fff',
  338. data: list3
  339. }
  340. ]
  341. };
  342. this.chartData = JSON.parse(JSON.stringify(res));
  343. }else{
  344. let res = {
  345. categories: ['无数据'],
  346. series: [{
  347. name: "已整改",
  348. textColor: '#fff',
  349. data: [0]
  350. },
  351. {
  352. name: "未整改",
  353. textColor: '#fff',
  354. data: [0]
  355. },
  356. {
  357. name: "暂无法整改",
  358. textColor: '#fff',
  359. data: [0]
  360. }
  361. ]
  362. };
  363. this.chartData = JSON.parse(JSON.stringify(res));
  364. }
  365. }
  366. },
  367. //一级指标
  368. async securityCheckDangerHazardOneCollect(planId) {
  369. let self = this;
  370. const {
  371. data
  372. } = await securityCheckDangerHazardOneCollect({'type':'-1','planId':planId});
  373. if (data.code == 200) {
  374. //列表
  375. this.dataListTow=data.data.head;
  376. this.dataListThree=data.data.list;
  377. if(data.data.head[0]){
  378. let name=[];
  379. let list=[];
  380. data.data.head.forEach(function(item,index){
  381. self.column3.push({
  382. name: item.code,
  383. label: item.name,
  384. align: 'center',
  385. })
  386. if(index<5){
  387. name.push(item.name)
  388. list.push(item.num)
  389. }
  390. })
  391. //图表
  392. let res = {
  393. categories:name,
  394. series: [{
  395. name: "",
  396. data: list
  397. }, ]
  398. };
  399. this.chartDataTow = JSON.parse(JSON.stringify(res));
  400. }else{
  401. //图表
  402. let res = {
  403. categories:['无数据'],
  404. series: [{
  405. name: "",
  406. data: [0]
  407. }]
  408. };
  409. this.chartDataTow = JSON.parse(JSON.stringify(res));
  410. }
  411. }
  412. },
  413. //暂无法整改
  414. async securityCheckDangerNotHazardOneCollect(planId) {
  415. let self = this;
  416. const {
  417. data
  418. } = await securityCheckDangerNotHazardOneCollect({'type':'-1','planId':planId});
  419. if (data.code == 200) {
  420. //列表
  421. this.dataListTow=data.data.head;
  422. this.dataListThree=data.data.list;
  423. if(data.data.head[0]){
  424. let name=[];
  425. let list=[];
  426. data.data.head.forEach(function(item,index){
  427. self.column3.push({
  428. name: item.code,
  429. label: item.name,
  430. align: 'center',
  431. })
  432. if(index<5){
  433. name.push(item.name)
  434. list.push(item.num)
  435. }
  436. })
  437. //图表
  438. let res = {
  439. categories:name,
  440. series: [{
  441. name: "",
  442. data: list
  443. }, ]
  444. };
  445. this.chartDataTow = JSON.parse(JSON.stringify(res));
  446. }else{
  447. //图表
  448. let res = {
  449. categories:['无数据'],
  450. series: [{
  451. name: "",
  452. data: [0]
  453. }]
  454. };
  455. this.chartDataTow = JSON.parse(JSON.stringify(res));
  456. }
  457. }
  458. },
  459. },
  460. }
  461. </script>
  462. <style lang="stylus" scoped>
  463. .hazardSources {
  464. height: 100%;
  465. width: 100%;
  466. background: #363744;
  467. .small-title {
  468. width: 750rpx;
  469. height: 80rpx;
  470. background: #3E414F;
  471. display: flex;
  472. justify-content: space-between;
  473. align-items: center;
  474. padding: 0 20rpx 0 30rpx;
  475. box-sizing: border-box;
  476. margin-top: 2rpx;
  477. .small-title-l {
  478. flex: 1;
  479. font-weight: 400;
  480. font-size: 30rpx;
  481. color: #FFFFFF;
  482. line-height: 42rpx;
  483. overflow: hidden;
  484. text-overflow: ellipsis;
  485. white-space: nowrap;
  486. }
  487. .small-title-r {
  488. width: 14rpx;
  489. height: 8rpx;
  490. }
  491. }
  492. .chart {
  493. width: 690rpx;
  494. height: 520rpx;
  495. background: #3E414F;
  496. border-radius: 20rpx 20rpx 20rpx 20rpx;
  497. margin: 20rpx 30rpx 0;
  498. overflow: hidden;
  499. .chart-t {
  500. width: 570rpx;
  501. height: 50rpx;
  502. display: flex;
  503. justify-content: flex-start;
  504. border: 1rpx solid #52545F;
  505. border-radius: 10rpx;
  506. margin: 30rpx 0 0 72rpx;
  507. .chart-t-li {
  508. width: 190rpx;
  509. font-weight: 400;
  510. font-size: 28rpx;
  511. line-height: 50rpx;
  512. text-align: center;
  513. background: none;
  514. }
  515. .chart-t-li:nth-of-type(1) {
  516. border-right: 1rpx solid #52545F;
  517. }
  518. .chart-t-li:nth-of-type(2) {
  519. border-right: 1rpx solid #52545F;
  520. }
  521. .color-A {
  522. color: #FFFFFF;
  523. background: #52545F;
  524. }
  525. .color-B {
  526. color: #999999;
  527. background: none;
  528. }
  529. }
  530. .chart-b {
  531. width: 630rpx;
  532. height: 334rpx;
  533. margin-left: 30rpx;
  534. }
  535. .chart-b2 {
  536. width: 630rpx;
  537. margin: 0 30rpx;
  538. height: 106rx;
  539. display: flex;
  540. justify-content: flex-start;
  541. align-items: center;
  542. .chart-b2-li {
  543. flex: 1;
  544. .chart-b2-li-t {
  545. margin-top: 10rpx;
  546. text-align: center;
  547. >text:nth-of-type(1) {
  548. display: inline-block;
  549. width: 24rpx;
  550. height: 24rpx;
  551. background: #FF0000;
  552. border-radius: 6rpx 6rpx 6rpx 6rpx;
  553. margin-right: 10rpx;
  554. font-weight: 400;
  555. font-size: 22rpx;
  556. color: #FFFFFF;
  557. line-height: 24rpx;
  558. text-align: center;
  559. }
  560. >text:nth-of-type(2) {
  561. font-weight: 400;
  562. font-size: 24rpx;
  563. color: #FFFFFF;
  564. line-height: 34rpx;
  565. }
  566. }
  567. .chart-b2-li-b {
  568. margin-top: 10rpx;
  569. font-weight: 400;
  570. font-size: 24rpx;
  571. color: #FFFFFF;
  572. line-height: 34rpx;
  573. text-align: center;
  574. }
  575. }
  576. }
  577. .chart-b-tow {
  578. width: 630rpx;
  579. height: 440rpx;
  580. margin-left: 30rpx;
  581. }
  582. }
  583. .tabTitle_tow {
  584. width: 750rpx;
  585. height: 80rpx;
  586. white-space: nowrap;
  587. display: inline-flex;
  588. background: #3E414F;
  589. margin-top: 20rpx;
  590. padding-left: 35rpx;
  591. .tabTitle_tow_li {
  592. position: relative;
  593. width: 152rpx;
  594. height: 80rpx;
  595. text-align center;
  596. padding-top: 18rpx;
  597. box-sizing: border-box;
  598. .tabTitle_tow_text {
  599. display: inline-block;
  600. font-size: 32rpx;
  601. font-family: PingFang SC;
  602. font-weight: 500;
  603. color: #FFFFFF;
  604. line-height: 46rpx;
  605. position: relative;
  606. &.on {
  607. color: #0183FA;
  608. }
  609. }
  610. .tabTitle_tow_across {
  611. width: 50rpx;
  612. height: 4rpx;
  613. background: #0183FA;
  614. border-radius: 2rpx;
  615. margin-left: 33%;
  616. margin-top: 16rpx;
  617. display none;
  618. &.on {
  619. display block;
  620. }
  621. }
  622. }
  623. }
  624. .table {
  625. width: 690rpx;
  626. margin-top: 20rpx;
  627. margin-left: 30rpx;
  628. border-radius: 20rpx 20rpx 0 0;
  629. overflow: hidden;
  630. }
  631. .sortOne {
  632. display: inline-block;
  633. width: 40rpx;
  634. height: 40rpx;
  635. padding: 4rpx;
  636. box-sizing: border-box;
  637. background: rgba(255, 0, 0, 0.2);
  638. font-weight: 400;
  639. font-size: 28rpx;
  640. color: #FF0000;
  641. line-height: 40rpx;
  642. text-align: center;
  643. border-radius: 20rpx;
  644. }
  645. .sortTow {
  646. display: inline-block;
  647. width: 40rpx;
  648. height: 40rpx;
  649. padding: 4rpx;
  650. box-sizing: border-box;
  651. background: rgba(255, 153, 0, 0.2);
  652. font-weight: 400;
  653. font-size: 28rpx;
  654. color: #FF9900;
  655. line-height: 40rpx;
  656. text-align: center;
  657. border-radius: 20rpx;
  658. }
  659. .sortThree {
  660. display: inline-block;
  661. width: 40rpx;
  662. height: 40rpx;
  663. padding: 4rpx;
  664. box-sizing: border-box;
  665. background: rgba(255, 242, 0, 0.2);
  666. font-weight: 400;
  667. font-size: 28rpx;
  668. color: #FFF200;
  669. line-height: 40rpx;
  670. text-align: center;
  671. border-radius: 20rpx;
  672. }
  673. .sortFive {
  674. display: inline-block;
  675. width: 40rpx;
  676. height: 40rpx;
  677. padding: 4rpx;
  678. box-sizing: border-box;
  679. background: rgba(1, 131, 250, 0.2);
  680. font-weight: 400;
  681. font-size: 28rpx;
  682. color: #0183FA;
  683. line-height: 40rpx;
  684. text-align: center;
  685. border-radius: 20rpx;
  686. }
  687. .table-tow {
  688. width: 690rpx;
  689. margin: 20rpx 0 0 30rpx;
  690. .table-border {
  691. width: auto;
  692. overflow: auto;
  693. .table-th {
  694. width: 690rpx;
  695. padding: 0 30rpx;
  696. box-sizing: border-box;
  697. background: rgba(162, 162, 162, 0.2);
  698. border-radius: 20rpx 20rpx 0rpx 0rpx;
  699. .table-th-li {
  700. height: 80rpx;
  701. display: flex;
  702. justify-content: flex-start;
  703. >view {
  704. font-weight: 400;
  705. font-size: 30rpx;
  706. color: #FFFFFF;
  707. line-height: 80rpx;
  708. text-align: center;
  709. margin-right: 38rpx;
  710. width: 120rpx;
  711. overflow: hidden;
  712. text-overflow: ellipsis;
  713. white-space: nowrap;
  714. }
  715. >view:nth-of-type(1) {
  716. width: 64rpx;
  717. text-align: left;
  718. margin-right: 0;
  719. }
  720. >view:nth-of-type(2) {
  721. width: 270rpx;
  722. }
  723. >view:last-child {
  724. margin-right: 0;
  725. }
  726. }
  727. }
  728. .table-tb {
  729. width: 690rpx;
  730. background: #3E414F;
  731. padding: 0 30rpx;
  732. box-sizing: border-box;
  733. .table-tb-li {
  734. height: 80rpx;
  735. border-bottom: 1rpx dashed rgba(216, 216, 216, 0.2);
  736. display: flex;
  737. justify-content: flex-start;
  738. >view {
  739. font-weight: 400;
  740. font-size: 28rpx;
  741. color: #FFFFFF;
  742. line-height: 80rpx;
  743. text-align: center;
  744. margin-right: 38rpx;
  745. width: 120rpx;
  746. overflow: hidden;
  747. text-overflow: ellipsis;
  748. white-space: nowrap;
  749. }
  750. >view:nth-of-type(1) {
  751. width: 64rpx;
  752. text-align: left;
  753. margin-right: 0;
  754. }
  755. >view:nth-of-type(2) {
  756. width: 270rpx;
  757. }
  758. >view:last-child {
  759. margin-right: 0;
  760. }
  761. }
  762. }
  763. }
  764. }
  765. .table-three {
  766. width: 720rpx;
  767. margin: 20rpx 0 0 30rpx;
  768. .table-border {
  769. width: auto;
  770. overflow: auto;
  771. .table-th {
  772. width: 1510rpx;
  773. padding: 0 30rpx;
  774. box-sizing: border-box;
  775. background: rgba(162, 162, 162, 0.2);
  776. border-radius: 20rpx 20rpx 0rpx 0rpx;
  777. .table-th-li {
  778. height: 80rpx;
  779. display: flex;
  780. justify-content: flex-start;
  781. >view {
  782. font-weight: 400;
  783. font-size: 30rpx;
  784. color: #FFFFFF;
  785. line-height: 80rpx;
  786. text-align: center;
  787. margin-right: 38rpx;
  788. width: 120rpx;
  789. overflow: hidden;
  790. text-overflow: ellipsis;
  791. white-space: nowrap;
  792. }
  793. >view:nth-of-type(1) {
  794. width: 116rpx;
  795. text-align: left;
  796. margin-right: 0;
  797. }
  798. >view:nth-of-type(2) {
  799. width: 168rpx;
  800. }
  801. >view:last-child {
  802. margin-right: 0;
  803. width: 228rpx;
  804. }
  805. }
  806. }
  807. .table-tb {
  808. width: 1510rpx;
  809. background: #3E414F;
  810. padding: 0 30rpx;
  811. box-sizing: border-box;
  812. .table-tb-li {
  813. height: 80rpx;
  814. border-bottom: 1rpx dashed rgba(216, 216, 216, 0.2);
  815. display: flex;
  816. justify-content: flex-start;
  817. >view {
  818. font-weight: 400;
  819. font-size: 28rpx;
  820. color: #FFFFFF;
  821. line-height: 80rpx;
  822. text-align: center;
  823. margin-right: 38rpx;
  824. width: 120rpx;
  825. overflow: hidden;
  826. text-overflow: ellipsis;
  827. white-space: nowrap;
  828. }
  829. >view:nth-of-type(1) {
  830. width: 116rpx;
  831. text-align: left;
  832. margin-right: 0;
  833. }
  834. >view:nth-of-type(2) {
  835. width: 168rpx;
  836. }
  837. >view:last-child {
  838. margin-right: 0;
  839. width: 228rpx;
  840. }
  841. }
  842. }
  843. }
  844. }
  845. }
  846. </style>