index.vue 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701
  1. <template>
  2. <div class="MaterialStatistics_Contain">
  3. <el-radio-group v-model="currentMenu" style="margin-bottom: 20px;" @input="toModule">
  4. <el-radio-button label="0">用料统计</el-radio-button>
  5. <!--<el-radio-button label="1">进度统计</el-radio-button>-->
  6. <!--<el-radio-button label="2">可视化统计</el-radio-button>-->
  7. <!--<el-radio-button label="3">可视化进度</el-radio-button>-->
  8. </el-radio-group>
  9. <!-- <div class="topContain">-->
  10. <div style="width: 100%;height: 100%;display: flex;">
  11. <el-form :model="queryParams" :rules="searchRules" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px" class="searchForm">
  12. <!--<el-form-item label="行政区" prop="district">-->
  13. <!--<el-select v-model="queryParams.district" placeholder="请选择行政区" clearable-->
  14. <!--@change="queryParams.areaId = undefined;getAreaList(queryParams.district)"-->
  15. <!--@clear="queryParams.areaId = undefined;areaList=[];-->
  16. <!--queryParams.buildingId = undefined;buildingList=[];-->
  17. <!--queryParams.unitId = undefined;unitList=[]">-->
  18. <!--<el-option-->
  19. <!--v-for="dict in dict.type.district"-->
  20. <!--:key="dict.value"-->
  21. <!--:label="dict.label"-->
  22. <!--:value="dict.value"-->
  23. <!--/>-->
  24. <!--</el-select>-->
  25. <!--</el-form-item>-->
  26. <!--<el-form-item label="小区名称" prop="areaId" label-width="80px">-->
  27. <!--<el-select v-model="queryParams.areaId" filterable clearable placeholder="请选择小区">-->
  28. <!--<el-option-->
  29. <!--v-for="item in areaList"-->
  30. <!--:key="item.id"-->
  31. <!--:label="item.name"-->
  32. <!--:value="item.id">-->
  33. <!--</el-option>-->
  34. <!--</el-select>-->
  35. <!--</el-form-item>-->
  36. <el-form-item label="工程类型" prop="enginType">
  37. <el-select v-model="queryParams.enginType" placeholder="请选择工程类型" clearable
  38. @change="enginTypeHasChangeds"
  39. @clear="currentEnginTypeChangeOptions1=[];queryParams.enginClassification=undefined;queryParams.enginType=undefined">
  40. <!--<el-option-->
  41. <!--v-for="dict in enginTypeOption"-->
  42. <!--:key="dict.value"-->
  43. <!--:label="dict.label"-->
  44. <!--:value="dict.value"-->
  45. <!--/>-->
  46. <el-option
  47. v-for="dict in dict.type.industry_engin_type"
  48. :key="dict.value"
  49. :label="dict.label"
  50. :value="dict.value"
  51. />
  52. </el-select>
  53. </el-form-item>
  54. <el-form-item label="工程分类" prop="enginClassification">
  55. <el-select v-model="queryParams.enginClassification" placeholder="请选择工程分类" clearable
  56. @change="nodeTypeHasChangeds"
  57. @clear="currentEnginTypeChangeOptions1=[];queryParams.enginClassification=undefined;queryParams.enginType=undefined">
  58. <!--<el-option-->
  59. <!--v-for="dict in currentEnginTypeChangeOptions1"-->
  60. <!--:key="dict.dictValue"-->
  61. <!--:label="dict.dictLabel"-->
  62. <!--:value="dict.dictValue"-->
  63. <!--/>-->
  64. <el-option
  65. v-for="dict in dict.type.engin_classification"
  66. :key="dict.value"
  67. :label="dict.label"
  68. :value="dict.value"
  69. />
  70. </el-select>
  71. </el-form-item>
  72. <!-- <el-form-item label="工程步骤" prop="enginClassification">-->
  73. <!-- <el-select v-model="queryParams.nodeType" placeholder="请选择工程步骤" clearable-->
  74. <!-- @clear="currentEnginTypeChangeOptions2=[];queryParams.enginClassification=undefined;queryParams.enginType=undefined;queryParams.nodeType=undefined">-->
  75. <!-- <el-option-->
  76. <!-- v-for="dict in currentEnginTypeChangeOptions2"-->
  77. <!-- :key="dict.dictValue"-->
  78. <!-- :label="dict.dictLabel"-->
  79. <!-- :value="dict.dictValue"-->
  80. <!-- />-->
  81. <!-- </el-select>-->
  82. <!-- </el-form-item>-->
  83. <el-form-item label="材质" prop="realityQuality" label-width="45px">
  84. <el-select v-model="queryParams.realityQuality" placeholder="请选择材质" filterable clearable
  85. @change="queryParams.realityQuality != undefined;getEnginSpecificationsList(queryParams.realityQuality)"
  86. @clear="queryParams.realityQuality = undefined;"
  87. >
  88. <el-option
  89. v-for="obj in EnginMaterialQualityList"
  90. :key="obj.id"
  91. :label="obj.name"
  92. :value="obj.id"
  93. ></el-option>
  94. </el-select>
  95. </el-form-item>
  96. <el-form-item label="规格" prop="realitySpecifications"label-width="45px">
  97. <el-select v-model="queryParams.realitySpecifications" filterable clearable placeholder="请选择规格"
  98. >
  99. <el-option
  100. v-for="item in EnginSpecificationsList"
  101. :key="item.id"
  102. :label="item.name"
  103. :value="item.id">
  104. </el-option>
  105. </el-select>
  106. </el-form-item>
  107. <!-- <el-form-item label="工程周期" prop="enginCycle" label-width="80px">-->
  108. <!-- <el-select v-model="queryParams.enginCycle" filterable clearable placeholder="请选择规格"-->
  109. <!-- >-->
  110. <!-- <el-option-->
  111. <!-- v-for="dict in dict.type.engin_cycle"-->
  112. <!-- :key="dict.value"-->
  113. <!-- :label="dict.label"-->
  114. <!-- :value="dict.value"-->
  115. <!-- />-->
  116. <!-- </el-select>-->
  117. <!-- </el-form-item>-->
  118. <el-form-item>
  119. <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
  120. <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
  121. <el-button
  122. icon="el-icon-download"
  123. @click="handleExport"
  124. size="mini"
  125. v-hasPermi="['zdsz:visual_house:export']"
  126. >导出</el-button>
  127. </el-form-item>
  128. </el-form>
  129. </div>
  130. <el-table
  131. v-if="false"
  132. class="materialStatisticsTable"
  133. :data="AreaCompletionInformationList"
  134. style="width: 100%">
  135. <el-table-column
  136. prop="areaName"
  137. width="250"
  138. label="小区"
  139. >
  140. </el-table-column>
  141. <el-table-column
  142. prop="scale"
  143. label="规模(户)"
  144. >
  145. </el-table-column>
  146. <el-table-column
  147. prop="notInstall"
  148. label="未安装(户)"
  149. >
  150. </el-table-column>
  151. <el-table-column
  152. prop="notstart"
  153. label="未施工(户)"
  154. >
  155. </el-table-column>
  156. <el-table-column
  157. prop="willDone"
  158. label="施工中(户)">
  159. </el-table-column>
  160. <el-table-column
  161. prop="done"
  162. label="竣工(户)">
  163. </el-table-column>
  164. </el-table>
  165. <div style="width: 100%; height: 100%;">
  166. <el-table
  167. class="materialStatisticsTable"
  168. :data="tableData"
  169. style="width: 100%">
  170. <!--<el-table-column-->
  171. <!--prop="areaName"-->
  172. <!--label="小区"-->
  173. <!--&gt;-->
  174. <!--</el-table-column>-->
  175. <el-table-column
  176. prop="enginName"
  177. label="工程名称">
  178. </el-table-column>
  179. <!--<el-table-column-->
  180. <!--prop="enginType"-->
  181. <!--label="工程类型">-->
  182. <!--</el-table-column>-->
  183. <el-table-column
  184. prop="enginClassification"
  185. label="工程分类">
  186. </el-table-column>
  187. <el-table-column
  188. prop="actualityPE"
  189. label="PE实际用料">
  190. </el-table-column>
  191. <el-table-column
  192. prop="anticipationPE"
  193. label="PE预计用料">
  194. </el-table-column>
  195. <el-table-column
  196. prop="percentagePE"
  197. label="PE用料占比">
  198. </el-table-column>
  199. <el-table-column
  200. prop="actualityIron"
  201. label="钢材实际用料">
  202. </el-table-column>
  203. <el-table-column
  204. prop="anticipationIron"
  205. label="钢材预计用料">
  206. </el-table-column>
  207. <el-table-column
  208. prop="percentageIron"
  209. label="钢材用料占比">
  210. </el-table-column>
  211. <!-- <el-table-column-->
  212. <!-- prop="nodeType"-->
  213. <!-- label="工程步骤">-->
  214. <!-- </el-table-column>-->
  215. <!--<el-table-column-->
  216. <!--prop="realityQuality"-->
  217. <!--label="材质"-->
  218. <!--&gt;-->
  219. <!--</el-table-column>-->
  220. <!--<el-table-column-->
  221. <!--prop="realitySpecifications"-->
  222. <!--label="规格"-->
  223. <!--&gt;-->
  224. <!--</el-table-column>-->
  225. <!--<el-table-column-->
  226. <!--prop="estimatedSize"-->
  227. <!--label="预计用料">-->
  228. <!--</el-table-column>-->
  229. <!--<el-table-column-->
  230. <!--prop="realitySize"-->
  231. <!--label="实际用料">-->
  232. <!--</el-table-column>-->
  233. </el-table>
  234. </div>
  235. <div id="zhuzhuangtu" style="width: 100%;height: 75vh"></div>
  236. </div>
  237. </template>
  238. <script>
  239. import {
  240. getAreaList, // 获取当前小区集合
  241. getBuildingList, getHousesList, // 获取当前楼栋集合
  242. getUnitList, // 获取当前单元集合
  243. } from '@/api/zdsz/enginee'
  244. import {
  245. getAreaCompletionInformationList,
  246. getEnginMaterialQualityList, getEnginSpecificationsList,
  247. materialStatistics // 获取当前单元集合
  248. } from '@/api/zdsz/countIndustry'
  249. import {getUnits} from "@/api/zdsz/unit";
  250. import {getDicts} from "@/api/system/dict/data";
  251. import * as echarts from "echarts";
  252. export default {
  253. name:'MaterialStatistics',
  254. dicts:['district','engin_cycle', 'industry_engin_type', 'engin_classification'],
  255. data(){
  256. return {
  257. currentEnginTypeChangeOptions1: [],
  258. currentEnginTypeChangeOptions2: [],
  259. buildingList: [],
  260. areaList:[],
  261. unitList: [],
  262. showSearch: true,
  263. currentDate:null,
  264. currentMenu:0, // 0:用料管理 1:进度统计 2:可视化进度
  265. typeOptions:[
  266. {
  267. value: '0',
  268. label: '市政工程'
  269. },
  270. {
  271. value: '1',
  272. label: '工业工程'
  273. },
  274. {
  275. value: '2',
  276. label: '民用工程'
  277. },
  278. {
  279. value: '3',
  280. label: '危险作业'
  281. },
  282. {
  283. value: '4',
  284. label: '顶管工程'
  285. },
  286. {
  287. value: '5',
  288. label: '基建工程'
  289. }
  290. ],
  291. communityOptions:[
  292. {
  293. value: '0',
  294. label: '领秀世家'
  295. },
  296. {
  297. value: '1',
  298. label: '上东府里'
  299. },
  300. {
  301. value: '2',
  302. label: '清华园'
  303. },
  304. {
  305. value: '3',
  306. label: '万科蓝山'
  307. },
  308. {
  309. value: '4',
  310. label: '龙腾香格里'
  311. },
  312. ],
  313. buildingOptions:[], // 楼栋集合
  314. unitOptions:[], // 单元集合
  315. currentType:null,
  316. currentDistrict:null, // 当前行政区
  317. currentCommunity:null, // 当前小区
  318. currentBuilding:null, // 当前楼宇
  319. currentUnit:null,// 当前单元
  320. AreaCompletionInformationList:[],
  321. queryParams:{
  322. pageNum:1,
  323. pageSize:10,
  324. district:null,
  325. areaId:undefined,
  326. realityQuality:undefined,
  327. realitySpecifications:undefined,
  328. enginClassification:undefined,
  329. enginType:undefined,
  330. nodeType:undefined,
  331. enginCycle:0
  332. },
  333. EnginMaterialQualityList:[],
  334. EnginSpecificationsList:[],
  335. tableData: [],
  336. searchRules:{
  337. district: [
  338. {required: true, message: "行政区不能为空", trigger: ['change']}
  339. ],
  340. areaId: [
  341. {required: true, message: "小区不能为空", trigger: ['change']}
  342. ],
  343. },
  344. enginTypeOption: [
  345. {
  346. value: 'old_renovation',
  347. label: '旧改'
  348. }, {
  349. value: 'new_built',
  350. label: '新建'
  351. },
  352. ],
  353. EngineepipeType_abandon: [
  354. {
  355. value: 'old_renovation',
  356. label: '旧改'
  357. }, {
  358. value: 'new_built',
  359. label: '新建'
  360. },
  361. ],
  362. }
  363. },
  364. mounted(){
  365. console.log(this.dict)
  366. this.getEnginMaterialQualityList()
  367. //this.getEnginSpecificationsList()
  368. },
  369. methods:{
  370. enginTypeHasChangeds(enginType = null) {
  371. if (this.queryParams.enginType == undefined || this.queryParams.enginType == null || this.queryParams.enginType == '')
  372. return
  373. this.currentCheckList = []
  374. this.queryParams.enginClassification = ''
  375. this.currentEnginTypeChangeOptions1 = []
  376. getDicts(enginType || this.queryParams1.enginType).then(res => {
  377. this.currentEnginTypeChangeOptions1 = res.data
  378. })
  379. },
  380. nodeTypeHasChangeds(enginType = null,enginClassification = null) {
  381. if ((this.queryParams.enginType == undefined || this.queryParams.enginType == null || this.queryParams.enginType == '')&&(this.queryParams.enginClassification == undefined || this.queryParams.enginClassification == null || this.queryParams.enginClassification == ''))
  382. return
  383. this.currentCheckList = []
  384. this.queryParams.nodeType = ''
  385. this.currentEnginTypeChangeOptions2 = []
  386. getDicts(enginType&&enginClassification || this.queryParams.enginType+'_'+this.queryParams.enginClassification).then(res => {
  387. this.currentEnginTypeChangeOptions2 = res.data
  388. })
  389. },
  390. enginTypeHasChanged(enginType = null) {
  391. this.currentCheckList = []
  392. this.queryParams.enginClassification = ''
  393. this.currentEnginTypeChangeOptions = []
  394. getDicts(enginType || this.queryParams.enginType).then(res => {
  395. this.currentEnginTypeChangeOptions = res.data
  396. })
  397. },
  398. getLongestCollectionLength(jsonObj) {
  399. let longestLength = 0;
  400. for (let key in jsonObj) {
  401. if (Array.isArray(jsonObj[key])) {
  402. longestLength = Math.max(longestLength, jsonObj[key].length);
  403. }
  404. }
  405. return longestLength;
  406. },
  407. getList()
  408. {
  409. // 666
  410. materialStatistics(this.queryParams).then(res=>{
  411. this.tableData=res.data;
  412. let seriesData = [];
  413. for (let item in res.data) {
  414. seriesData.push({
  415. name: res.data[item].realityQuality+'\n'+res.data[item].realitySpecifications,
  416. type: 'bar',
  417. stack: res.data[item].realityQuality,
  418. label:{
  419. show:true,
  420. formatter:'{a}\n{c}米'
  421. },
  422. data: [res.data[item].realitySize]
  423. },);
  424. }
  425. let option = {
  426. xAxis: [
  427. {
  428. type: 'category',
  429. data: ['A'],
  430. show:false,
  431. }
  432. ],
  433. yAxis: [
  434. {
  435. type: 'value'
  436. }
  437. ],
  438. series: seriesData
  439. };
  440. var myChart = echarts.init(document.getElementById('zhuzhuangtu'));
  441. myChart.clear()
  442. myChart.setOption(option);
  443. })
  444. },
  445. getAreaCompletionInformationList()
  446. {
  447. getAreaCompletionInformationList(this.queryParams).then(res=>{
  448. //this.AreaCompletionInformationList=res.total
  449. this.AreaCompletionInformationList=res.rows
  450. })
  451. },
  452. getEnginMaterialQualityList()
  453. {
  454. getEnginMaterialQualityList().then(res=>{
  455. this.EnginMaterialQualityList=res.data
  456. })
  457. },
  458. getEnginSpecificationsList(materId)
  459. {
  460. getEnginSpecificationsList(materId).then(res=>{
  461. this.EnginSpecificationsList=res.data
  462. })
  463. },
  464. /** 搜索按钮操作 */
  465. handleQuery() {
  466. this.$refs.queryForm.validate(valid => {
  467. if(valid){
  468. // 校验 pass
  469. this.getList();
  470. this.getAreaCompletionInformationList()
  471. } else {
  472. this.$message.error('请填写必填项!')
  473. }
  474. })
  475. // this.queryParams = 1;
  476. },
  477. /** 重置按钮操作 */
  478. resetQuery() {
  479. this.resetForm("queryForm");
  480. this.queryParams = {
  481. district:null,
  482. areaId:undefined,
  483. realityQuality:undefined,
  484. realitySpecifications:undefined,
  485. enginCycle:0
  486. }
  487. this.AreaCompletionInformationList=[]
  488. this.tableData=[]
  489. //this.handleQuery();
  490. },
  491. getAreaList(district) {
  492. if (district === undefined || district == null || district === '')
  493. return
  494. getAreaList({district: district}).then(res => this.areaList = res.data)
  495. },
  496. getBuildingList1(areaId) {
  497. if (areaId === undefined || areaId == null || areaId === '')
  498. return
  499. getBuildingList({areaId: areaId}).then(res => this.buildingList = res.data)
  500. },
  501. getUnitList1(buildingId) {
  502. if (buildingId === undefined || buildingId == null || buildingId === '')
  503. return
  504. getUnits(buildingId).then(res => this.unitList = res.data)
  505. },
  506. currentEnginTypeChange(val){
  507. const enginDict = val[1]
  508. const enginType = val[0]
  509. this.queryParams.enginType = enginType
  510. this.enginClassification=enginDict
  511. this.enginClassificationOption = this.dict.type[enginDict]
  512. console.log(this.value)
  513. },
  514. // 当前所选行政区发生改变 查询当前小区集合
  515. districtHasChanged(district){
  516. this.queryParams.areaId = null
  517. this.queryParams.buildingId = null
  518. this.queryParams.unitId = null
  519. getAreaList({district}).then(res => {
  520. this.communityOptions = res.data
  521. })
  522. },
  523. // 当前所选小区发生改变 查询当前楼栋集合
  524. communityHasChanged(areaId){
  525. this.queryParams.buildingId = null
  526. this.queryParams.unitId = null
  527. getBuildingList({areaId}).then(res => {
  528. this.buildingOptions = res.data
  529. })
  530. },
  531. buildingHasChanged(buildingId){
  532. console.log(buildingId)
  533. this.queryParams.unitId = null
  534. getUnitList({buildingId}).then(res => {
  535. this.unitOptions = res.data
  536. })
  537. },
  538. unitHasChanged(unitId){
  539. getHousesList({unitId}).then(res => {
  540. console.log(res)
  541. this.houseOptions = res.data
  542. })
  543. },
  544. // // 当前所选行政区发生改变 查询当前小区集合
  545. // districtHasChanged(district){
  546. // this.currentCommunity = null
  547. // getAreaList({district}).then(res => {
  548. // this.communityOptions = res.data
  549. // })
  550. // },
  551. // // 当前所选小区发生改变 查询当前楼栋集合
  552. // communityHasChanged(areaId){
  553. // this.currentBuilding = null
  554. // getBuildingList({areaId}).then(res => {
  555. // this.buildingOptions = res.data
  556. // })
  557. // },
  558. // buildingHasChanged(buildingId){
  559. // this.currentUnit = null
  560. // getUnitList({buildingId}).then(res => {
  561. // console.log(res)
  562. // this.unitOptions = res.data
  563. // })
  564. // },
  565. /** 导出按钮操作 */
  566. handleExport() {
  567. // this.download('zdsz/materialStatistics/export', {
  568. this.download('zdsz/engineeringWasteMaterial/engineeringIndustryExport', {
  569. ...this.queryParams
  570. }, `工业统计${new Date().getTime()}.xlsx`)
  571. },
  572. tableRowClassName(){
  573. // return "background:#199ED8;border: 2px solid #000066"
  574. },
  575. toModule(){
  576. console.log(this.$router)
  577. const currentPage = this.currentMenu == 0 ? 'material_statistics' : this.currentMenu == 1 ? 'progres_statistics' :this.currentMenu == 2 ? 'echarts_statistics': 'progres_visual'
  578. this.$router.push({
  579. path:`/${currentPage}`
  580. })
  581. }
  582. }
  583. }
  584. </script>
  585. <style lang="scss" scoped>
  586. ::v-deep .searchForm{
  587. .el-input__inner{
  588. width: 190px;
  589. }
  590. }
  591. .tags-view-container{
  592. display: none;
  593. }
  594. .MaterialStatistics_Contain{
  595. width: 100%;
  596. height: 100%;
  597. padding: 1%;
  598. .topContain{
  599. display: flex;
  600. justify-content: space-between;
  601. width: 100%;
  602. height: 40px;
  603. ::v-deep .projectSelect{
  604. width: 16%;
  605. .el-input__inner{
  606. // font-size: 15px;
  607. // height: 40px ;
  608. // background-color: #1890FF;
  609. background: linear-gradient(to right, #2197F2, #0BB0DE);
  610. color: #fff;
  611. }
  612. }
  613. ::v-deep .districtSelect{
  614. width: 200px;
  615. }
  616. ::v-deep .communitySelect{
  617. margin-left: 2%;
  618. width: 200px;
  619. }
  620. ::v-deep .projectSelect:not(:nth-child(1)){
  621. margin-left: 1%;
  622. }
  623. ::v-deep .projectSelect:nth-child(3){
  624. width: 10%;
  625. }
  626. ::v-deep .projectSelect:nth-child(4){
  627. width: 10%;
  628. }
  629. .projectDropDown{
  630. background-color: #1890FF;
  631. .el-select-dropdown__item{
  632. background-color: #1890FF;
  633. color: #fff;
  634. }
  635. ::v-deep .el-select-dropdown__list {
  636. padding-top: 0 !important;
  637. padding-bottom: 0;
  638. }
  639. }
  640. .projectDropDown >ul{
  641. padding-top: 0 ;
  642. padding-bottom: 0;
  643. }
  644. }
  645. .materialStatisticsTable{
  646. margin-top: 1%;
  647. // border: 2px solid #000066 !important;
  648. }
  649. .materialStatisticsTable::before{
  650. background-color:#000066 ;
  651. }
  652. .materialStatisticsTable::after{
  653. background-color:#000066 ;
  654. }
  655. }
  656. </style>
  657. <style lang="scss" scoped>
  658. .customTable{
  659. .el-table__header-wrapper th{
  660. background-color: #199ED8;
  661. }
  662. .el-table--border th.el-table__cell{
  663. // border: 2px solid #000066 !important;
  664. }
  665. .el-table__empty-block{
  666. background-color: #199ED8;
  667. }
  668. .el-table__empty-text{
  669. color: #000066;
  670. }
  671. .el-table__cell{
  672. background-color: #199ED8 ;
  673. // border: 2px solid #000066 !important;
  674. }
  675. .el-table__cell >div{
  676. text-align: center;
  677. }
  678. .el-button{
  679. background-color: #169BD5;
  680. color: #fff;
  681. }
  682. }
  683. </style>