您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
 
 
 

873 行
22 KiB

  1. <template>
  2. <div class="box-center">
  3. <div class="app-top">
  4. <div class="app-titel" v-if="role != 3" style="margin-bottom: 10px">
  5. <div class="titel-text">项目选择:</div>
  6. <div style="margin-left: 26px">
  7. <el-select
  8. v-model="houseId"
  9. placeholder="请选择"
  10. filterable
  11. @change="houseChange"
  12. >
  13. <el-option
  14. v-for="item in houseList"
  15. :key="item.id"
  16. :label="item.propertyName"
  17. :value="item.id"
  18. >
  19. </el-option>
  20. </el-select>
  21. </div>
  22. </div>
  23. <div class="app-titel">
  24. <div class="titel-text">接待时间:</div>
  25. <div class="toptimeqhuan">
  26. <div :class="{ tophove: dateType == 4 }" @click="tabtimetap(4)">
  27. 近7天
  28. </div>
  29. <div :class="{ tophove: dateType == 5 }" @click="tabtimetap(5)">
  30. 近15天
  31. </div>
  32. <div :class="{ tophove: dateType == 6 }" @click="tabtimetap(6)">
  33. 近30天
  34. </div>
  35. </div>
  36. <div style="margin-left: 26px">
  37. <el-date-picker
  38. v-model="customtime"
  39. @change="confirmtime()"
  40. type="daterange"
  41. range-separator="-"
  42. :default-time="['00:00:00', '23:59:59']"
  43. :clearable="false"
  44. value-format="yyyy-MM-dd"
  45. start-placeholder="开始日期"
  46. end-placeholder="结束日期"
  47. >
  48. </el-date-picker>
  49. </div>
  50. </div>
  51. <div class="app-titel" style="margin-top: 15px" v-show="isOpen">
  52. <div class="div-lab">
  53. <div style="margin-right: 20px" class="titel-text">团队:</div>
  54. <el-select
  55. v-model="deptId"
  56. filterable
  57. @change="deptChange"
  58. placeholder="请选择"
  59. class="div-inp"
  60. >
  61. <el-option
  62. v-for="item in options"
  63. :key="item.deptId"
  64. :label="item.name"
  65. :value="item.deptId"
  66. >
  67. </el-option>
  68. </el-select>
  69. </div>
  70. <div style="margin-left: 26px" class="div-lab">
  71. <div style="margin-right: 20px" class="titel-text">置业顾问:</div>
  72. <el-select
  73. v-model="accountId"
  74. filterable
  75. @change="repChange"
  76. placeholder="请选择"
  77. class="div-inp"
  78. >
  79. <el-option
  80. v-for="item in repList"
  81. :key="item.accountId"
  82. :label="item.name"
  83. :value="item.accountId"
  84. >
  85. </el-option>
  86. </el-select>
  87. </div>
  88. </div>
  89. <div class="app-titel" style="margin-top: 15px">
  90. <div style="margin-left: 30px">
  91. <el-button type="primary" size="small" @click="screen()"
  92. >筛选</el-button
  93. >
  94. <el-button type="text" size="small" @click="reset()"
  95. >清空筛选条件</el-button
  96. >
  97. <el-button style="margin-left:10px;" @click="isSystoleForm" type="text">{{isOpen?'收起':'展开'}}<i style="margin-left:5px;" :class="isOpen?'el-icon-arrow-up':'el-icon-arrow-down'"></i></el-button>
  98. </div>
  99. <div
  100. style="margin-left: auto; margin-right: 10px"
  101. v-if="sta_rec_downLoad"
  102. >
  103. <el-button @click="downLoad" icon="el-icon-download">导出</el-button>
  104. </div>
  105. </div>
  106. </div>
  107. <!-- 表格 -->
  108. <div class="cen-tab">
  109. <el-table :header-cell-style="{background:'#F5F7FA',color:'#333333'}" :data="tableData" style="width: 100%">
  110. <el-table-column prop="batchId" width="120" label="序号" align="center">
  111. <template slot-scope="scope">
  112. {{
  113. scope.$index == tableData.length - 1
  114. ? "合计/平均"
  115. : scope.$index + 1
  116. }}
  117. </template>
  118. </el-table-column>
  119. <el-table-column
  120. width="120"
  121. prop="accountName"
  122. label="日期"
  123. align="center"
  124. sortable
  125. >
  126. <template slot-scope="scope">
  127. {{
  128. scope.$index == tableData.length - 1
  129. ? scope.row.statDate
  130. : scope.row.statDate.substring(0, 10)
  131. }}
  132. </template>
  133. </el-table-column>
  134. <el-table-column
  135. prop="fraction"
  136. label="平均执行率"
  137. align="center"
  138. width="110"
  139. sortable
  140. >
  141. <template slot-scope="{ row }"> {{ row.fraction }}% </template>
  142. </el-table-column>
  143. <el-table-column
  144. prop="receptionCount"
  145. label="接待量"
  146. align="center"
  147. sortable
  148. >
  149. <template slot-scope="{ row }"> {{ row.receptionCount }}次 </template>
  150. </el-table-column>
  151. <el-table-column
  152. prop="accountNum"
  153. label="接待顾问"
  154. align="center"
  155. sortable
  156. width="100"
  157. >
  158. </el-table-column>
  159. <el-table-column
  160. prop="activeCustomer"
  161. label="有效接待"
  162. align="center"
  163. sortable
  164. width="100"
  165. >
  166. <template slot-scope="{ row }"> {{ row.activeCustomer }}次 </template>
  167. </el-table-column>
  168. <el-table-column
  169. prop="prohibitedCustomer"
  170. label="违禁接待次数"
  171. align="center"
  172. sortable
  173. width="120"
  174. >
  175. </el-table-column>
  176. <el-table-column
  177. prop="sumDurationMinutes"
  178. label="接待时长(分)"
  179. align="center"
  180. sortable
  181. width="120"
  182. >
  183. <template slot-scope="{ row }">
  184. {{ Math.floor(row.sumDurationMinutes) }}分钟
  185. </template>
  186. </el-table-column>
  187. <el-table-column
  188. prop="prohibitedZb"
  189. label="违禁接待占比"
  190. align="center"
  191. width="150"
  192. sortable
  193. >
  194. <template slot-scope="{ row }"> {{ row.prohibitedZb }}% </template>
  195. </el-table-column>
  196. <el-table-column
  197. v-for="(item, idx) in tablist"
  198. :key="idx"
  199. :prop="item.props"
  200. :label="item.label"
  201. align="center"
  202. sortable
  203. width="100"
  204. >
  205. <template slot-scope="{ row }"> {{ row[item.props] }}% </template>
  206. </el-table-column>
  207. <el-table-column label="操作" align="center">
  208. <template slot-scope="scope">
  209. <el-button
  210. v-if="scope.$index < tableData.length - 1"
  211. type="text"
  212. size="small"
  213. @click="toDetail(scope.row)"
  214. >详情</el-button
  215. >
  216. </template>
  217. </el-table-column>
  218. </el-table>
  219. <div style="display: flex; justify-content: flex-end; margin-top: 10px">
  220. <el-pagination
  221. @size-change="handleSizeChange"
  222. @current-change="handleCurrentChange"
  223. :current-page="current"
  224. :page-sizes="[10, 30, 50]"
  225. :page-size="size"
  226. layout="total, sizes, prev, pager, next, jumper"
  227. :total="total"
  228. >
  229. </el-pagination>
  230. </div>
  231. </div>
  232. <el-dialog title="详情" :visible.sync="dialogVisible" width="80%">
  233. <div class="cen-tab">
  234. <el-table
  235. :data="detailData"
  236. stripe
  237. style="width: 100%"
  238. >
  239. <el-table-column prop="batchId" label="序号" align="center">
  240. <template slot-scope="scope">
  241. {{
  242. scope.$index == detailData.length - 1
  243. ? "合计/平均"
  244. : scope.$index + 1
  245. }}
  246. </template>
  247. </el-table-column>
  248. <el-table-column prop="accountName" label="顾问" align="center">
  249. </el-table-column>
  250. <el-table-column prop="deptName" label="归属团队" align="center">
  251. </el-table-column>
  252. <el-table-column prop="fraction" label="平均执行率" align="center" >
  253. </el-table-column>
  254. <el-table-column prop="receptionCount" label="接待量" align="center" >
  255. </el-table-column>
  256. <el-table-column
  257. prop="activeCustomer"
  258. label="有效接待"
  259. align="center"
  260. >
  261. </el-table-column>
  262. <el-table-column
  263. prop="prohibitedCustomer"
  264. label="违禁接待次数"
  265. align="center"
  266. >
  267. </el-table-column>
  268. <el-table-column
  269. prop="sumDurationMinutes"
  270. label="接待时长(分)"
  271. align="center"
  272. >
  273. <template slot-scope="{ row }">
  274. {{ Math.floor(row.sumDurationMinutes) }}
  275. </template>
  276. </el-table-column>
  277. <el-table-column
  278. prop="prohibitedZb"
  279. label="违禁接待占比"
  280. align="center"
  281. >
  282. </el-table-column>
  283. <el-table-column
  284. v-for="(item, idx) in tablist1"
  285. :key="idx"
  286. :prop="item.props"
  287. :label="item.label"
  288. align="center"
  289. >
  290. </el-table-column>
  291. </el-table>
  292. <div style="display: flex; justify-content: flex-end; margin-top: 10px">
  293. <el-pagination
  294. @size-change="handleSizeChange1"
  295. @current-change="handleCurrentChange1"
  296. :current-page="current1"
  297. :page-sizes="[10, 30, 50]"
  298. :page-size="size1"
  299. layout="total, sizes, prev, pager, next, jumper"
  300. :total="total1"
  301. >
  302. </el-pagination>
  303. </div>
  304. </div>
  305. </el-dialog>
  306. </div>
  307. </template>
  308. <script>
  309. import { mapGetters } from "vuex";
  310. import { exportMethodPost } from "@/util/util";
  311. export default {
  312. data() {
  313. return {
  314. isOpen:false,
  315. houseId: "",
  316. buildingoptions: [],
  317. houseList: [],
  318. detailData: [],
  319. dateType: 2,
  320. repList: [],
  321. current: 1,
  322. current1: 1,
  323. accountId: "",
  324. size: 10,
  325. total: 20,
  326. size1: 10,
  327. total1: 20,
  328. customtime: [],
  329. tablist: [],
  330. tablist1: [],
  331. deptId: "",
  332. tableData: [],
  333. orgType: localStorage.getItem("orgType"),
  334. options: [],
  335. value: "1",
  336. statDateStart: "",
  337. statDateEnd: "",
  338. echarlist: [],
  339. echarlist1: [],
  340. echarlist2: [],
  341. echarlist3: [],
  342. teamAllLevel: [],
  343. teamAllLevelid: "",
  344. teamAllLeve2id: "",
  345. teamAllLeve2: [],
  346. statDate: "",
  347. dialogVisible: false,
  348. houseList: [],
  349. role: "",
  350. };
  351. },
  352. computed: {
  353. ...mapGetters(["permissions"]),
  354. },
  355. created() {
  356. this.sta_rec_downLoad = this.permissions["sta_rec_downLoad"];
  357. },
  358. mounted() {
  359. this.role = localStorage.getItem("orgType");
  360. if (this.role == 3) {
  361. this.houseId = localStorage.getItem("houseId");
  362. this.tabtimetap(4);
  363. this.deptFindList();
  364. } else {
  365. this.zkhousePage();
  366. }
  367. },
  368. methods: {
  369. isSystoleForm(){
  370. this.isOpen = !this.isOpen
  371. },
  372. downLoad() {
  373. let obj = {
  374. houseId: this.houseId,
  375. statDateStart: this.statDateStart,
  376. statDateEnd: this.statDateEnd,
  377. type: 1,
  378. current: 1,
  379. size: 1,
  380. deptId: this.deptId,
  381. accountId: this.accountId,
  382. dateType: this.dateType == 7 ? null : this.dateType,
  383. };
  384. exportMethodPost(
  385. "autoSR/cusStageStatistics/receptionStatisticsExport",
  386. "接待统计",
  387. obj
  388. );
  389. },
  390. houseChange() {
  391. this.customtime = [];
  392. this.TimetoAhoose = 4;
  393. this.statDateStart = "";
  394. this.deptId = "";
  395. this.accountId = "";
  396. this.statDateEnd = "";
  397. this.tabtimetap(4);
  398. this.deptFindList();
  399. },
  400. zkhousePage() {
  401. this.$api.api
  402. .findHouseByUser({
  403. orgType: localStorage.getItem("orgType"),
  404. })
  405. .then((res) => {
  406. this.houseList = res.data;
  407. this.houseId = res.data[0].id;
  408. this.tabtimetap(4);
  409. this.deptFindList();
  410. });
  411. },
  412. toDetail(row) {
  413. console.log(row);
  414. this.statDate = row.statDate.substring(0, 10);
  415. this.dialogVisible = true;
  416. this.getDetailList();
  417. },
  418. // 获取detail
  419. getDetailList() {
  420. this.$api.api
  421. .receptionStatistics({
  422. houseId: this.houseId,
  423. statDate: this.statDate,
  424. current: this.current,
  425. size: this.size,
  426. deptId: this.deptId,
  427. accountId: this.accountId,
  428. type: 2,
  429. })
  430. .then((res) => {
  431. this.detailData = res.data.records;
  432. // 数据处理
  433. // 需要两个数组,一个用来展示
  434. this.deailDate(0);
  435. this.total1 = res.data.total;
  436. });
  437. },
  438. screen() {
  439. this.current = 1;
  440. this.accountRank();
  441. },
  442. reset() {
  443. this.current = 1;
  444. this.deptId = "";
  445. this.accountId = "";
  446. this.accountRank();
  447. },
  448. handleClose(done) {
  449. this.$confirm("确认关闭?")
  450. .then((_) => {
  451. done();
  452. })
  453. .catch((_) => {});
  454. },
  455. deptFindList() {
  456. // 获取团队
  457. this.$api.http
  458. .overviewfindList({
  459. houseId: this.houseId,
  460. })
  461. .then((res) => {
  462. let userinfo = JSON.parse(sessionStorage.getItem("zk-userInfo"));
  463. if (userinfo.content.deptType == 1) {
  464. this.options.push(...res.data);
  465. this.deptId = this.options[0].deptId;
  466. } else {
  467. this.options = [
  468. {
  469. name: "全部",
  470. deptId: "",
  471. },
  472. ];
  473. this.options.push(...res.data);
  474. this.deptId = "";
  475. }
  476. this.receptionStatisticsAllAccount();
  477. this.accountRank();
  478. });
  479. },
  480. deptChange() {
  481. this.receptionStatisticsAllAccount();
  482. this.accountId = "";
  483. },
  484. receptionStatisticsAllAccount() {
  485. this.$api.api
  486. .receptionStatisticsAllAccount({
  487. houseId: this.houseId,
  488. deptId: this.deptId,
  489. })
  490. .then((res) => {
  491. console.log(res);
  492. this.repList = [];
  493. this.repList.push(...res.data);
  494. this.accountRank();
  495. });
  496. },
  497. // 获取列表
  498. repChange() {
  499. this.accountRank();
  500. },
  501. accountRank() {
  502. this.$api.api
  503. .receptionStatistics({
  504. houseId: this.houseId,
  505. statDateStart: this.statDateStart,
  506. statDateEnd: this.statDateEnd,
  507. current: this.current,
  508. size: this.size,
  509. deptId: this.deptId,
  510. accountId: this.accountId,
  511. dateType: this.dateType == 7 ? null : this.dateType,
  512. type: 1,
  513. })
  514. .then((res) => {
  515. this.tableData = res.data.records;
  516. // 数据处理
  517. // 需要两个数组,一个用来展示
  518. this.deailDate();
  519. this.total = res.data.total;
  520. });
  521. },
  522. confirmtime() {
  523. this.dateType = 7;
  524. this.statDateStart = this.customtime[0];
  525. this.statDateEnd = this.customtime[1];
  526. this.init();
  527. },
  528. init() {
  529. this.accountRank();
  530. },
  531. deailDate(idx) {
  532. if (idx) {
  533. this.tablist1 = [];
  534. // 当他是第一个 小将
  535. // console.log("第一个");
  536. this.deailDate[0].resultsList.map((item, idx) => {
  537. let obj = {};
  538. obj.label = item.name;
  539. obj.props = "str" + idx;
  540. this.tablist1.push(obj);
  541. });
  542. this.deailDate.map((item) => {
  543. this.tablist1.map((item1, idx) => {
  544. item[item1.props] = item.resultsList[idx].zxl;
  545. });
  546. });
  547. } else {
  548. this.tablist = [];
  549. // 当他是第一个 小将
  550. // console.log("第一个");
  551. this.tableData[0].resultsList.map((item, idx) => {
  552. let obj = {};
  553. obj.label = item.name;
  554. obj.props = "str" + idx;
  555. this.tablist.push(obj);
  556. });
  557. this.tableData.map((item) => {
  558. this.tablist.map((item1, idx) => {
  559. item[item1.props] = item.resultsList[idx].zxl;
  560. });
  561. });
  562. }
  563. },
  564. handleCurrentChange(e) {
  565. this.current = e;
  566. this.accountRank();
  567. },
  568. handleSizeChange(e) {
  569. this.size = e;
  570. this.accountRank();
  571. },
  572. handleCurrentChange1(e) {
  573. this.current1 = e;
  574. // this.accountRank();
  575. },
  576. handleSizeChange1(e) {
  577. this.size1 = e;
  578. // this.accountRank();
  579. },
  580. //切换时间
  581. tabtimetap(index) {
  582. this.statDateStart = "";
  583. this.statDateEnd = "";
  584. this.dateType = index;
  585. this.customtime = [];
  586. //给时间选择器赋值
  587. let num = 24 * 3600 * 1000;
  588. // 获取当前时间戳转换为日期格式
  589. if (index == 4) {
  590. num = 24 * 3600 * 1000 * 7;
  591. }
  592. if (index == 5) {
  593. num = 24 * 3600 * 1000 * 15;
  594. }
  595. if (index == 6) {
  596. num = 24 * 3600 * 1000 * 30;
  597. }
  598. this.customtime = [
  599. this.timestampToTime(new Date().getTime() - num),
  600. this.timestampToTime(new Date().getTime() - 24 * 3600 * 1000),
  601. ];
  602. this.init();
  603. },
  604. dealData(arr) {
  605. let num = Math.max.apply(
  606. Math,
  607. arr.map(function (o) {
  608. return o.zxl;
  609. })
  610. ); //结果:3
  611. arr.map((item) => {
  612. item.zxl1 = Math.floor((item.zxl / num) * 100);
  613. });
  614. return arr;
  615. },
  616. timestampToTime(timestamp) {
  617. var date = new Date(timestamp); //时间戳为10位需*1000,时间戳为13位的话不需乘1000
  618. var yyyy = date.getFullYear() + "-";
  619. var MM =
  620. (date.getMonth() + 1 < 10
  621. ? "0" + (date.getMonth() + 1)
  622. : date.getMonth() + 1) + "-";
  623. var dd = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
  624. return yyyy + MM + dd;
  625. },
  626. },
  627. };
  628. </script>
  629. <style scoped="scoped" lang="scss" >
  630. .box-center {
  631. width: 100%;
  632. padding: 5px 15px 20px;
  633. min-width: 1000px;
  634. }
  635. .cen-tab {
  636. width: 100%;
  637. padding: 15px;
  638. background: #ffffff;
  639. margin-top: 15px;
  640. }
  641. .tophove {
  642. color: #ffffff;
  643. background: #2671e2;
  644. }
  645. .app-top {
  646. width: 100%;
  647. background: #ffffff;
  648. box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.04);
  649. border-radius: 4px;
  650. padding-top: 15px;
  651. padding-bottom: 15px;
  652. .app-titel {
  653. width: 100%;
  654. display: flex;
  655. align-items: center;
  656. flex-wrap: wrap;
  657. .label {
  658. font-size: 14px;
  659. font-weight: 400;
  660. color: #32363d;
  661. line-height: 32px;
  662. text-align: right;
  663. }
  664. .titel-text {
  665. height: 100%;
  666. font-size: 16px;
  667. color: #32363d;
  668. text-indent: 30px;
  669. }
  670. .toptimeqhuan {
  671. height: 30px;
  672. background: #ffffff;
  673. display: flex;
  674. align-items: center;
  675. margin-left: 20px;
  676. }
  677. .toptimeqhuan div {
  678. padding-left: 20px;
  679. padding-right: 20px;
  680. text-align: center;
  681. line-height: 30px;
  682. font-size: 14px;
  683. margin-right: 15px;
  684. border-radius: 4px;
  685. border: 1px solid #e0e0e0;
  686. }
  687. }
  688. }
  689. .div-lab {
  690. display: flex;
  691. margin: 5px;
  692. }
  693. .div-inp {
  694. width: 250px;
  695. }
  696. .app-box-san {
  697. width: 100%;
  698. height: 400px;
  699. display: flex;
  700. margin-top: 15px;
  701. .zuo {
  702. flex: 1;
  703. height: 100%;
  704. margin-right: 15px;
  705. background: #ffffff;
  706. border-radius: 4px;
  707. .title {
  708. width: 100%;
  709. height: 55px;
  710. // border-bottom: 1px solid #e0e0e0;
  711. display: flex;
  712. align-content: center;
  713. .text1 {
  714. flex: 2;
  715. line-height: 55px;
  716. text-indent: 20px;
  717. font-weight: 500;
  718. font-size: 16px;
  719. color: #333333;
  720. display: flex;
  721. align-items: center;
  722. }
  723. .text2 {
  724. flex: 1;
  725. height: 55px;
  726. display: flex;
  727. align-items: center;
  728. }
  729. }
  730. }
  731. .you {
  732. height: 100%;
  733. flex: 1;
  734. background: #ffffff;
  735. border-radius: 4px;
  736. .title {
  737. width: 100%;
  738. height: 55px;
  739. // border-bottom: 1px solid #e0e0e0;
  740. display: flex;
  741. align-content: center;
  742. .text1 {
  743. flex: 2;
  744. line-height: 55px;
  745. text-indent: 20px;
  746. font-weight: 500;
  747. font-size: 16px;
  748. color: #333333;
  749. display: flex;
  750. align-items: center;
  751. }
  752. .text2 {
  753. flex: 1;
  754. height: 55px;
  755. display: flex;
  756. align-items: center;
  757. }
  758. }
  759. }
  760. }
  761. .hejisan {
  762. width: 92%;
  763. margin: 15px auto;
  764. display: flex;
  765. // padding-top: 10px;
  766. // padding-bottom: 10px;
  767. .text1-1 {
  768. color: #666666;
  769. }
  770. .text1-2 {
  771. color: #333333;
  772. margin-top: 10px;
  773. }
  774. }
  775. // 进度条
  776. .jinbox {
  777. width: 100%;
  778. height: 18px;
  779. line-height: 18px;
  780. display: flex;
  781. font-size: 16px;
  782. color: #2c3542;
  783. margin-top: 24px;
  784. align-items: center;
  785. .jinboxtit {
  786. width: 14%;
  787. height: 18px;
  788. padding-right: 6px;
  789. white-space: nowrap;
  790. text-overflow: ellipsis;
  791. overflow: hidden;
  792. }
  793. .jinbox-box {
  794. width: 75%;
  795. height: 100%;
  796. border-radius: 8px;
  797. background: #f2f2f2;
  798. }
  799. .boxbaifenbi {
  800. height: 100%;
  801. background: #60d7a0;
  802. border-radius: 8px;
  803. max-width: 100%;
  804. }
  805. .boxbaifenbi2 {
  806. height: 100%;
  807. max-width: 100%;
  808. background: #5b8ff9;
  809. }
  810. .jinboxbott {
  811. width: 16%;
  812. text-indent: 50px;
  813. }
  814. }
  815. .div-lab {
  816. display: flex;
  817. margin: 5px;
  818. }
  819. .div-inp {
  820. width: 200px;
  821. }
  822. .label {
  823. font-size: 14px;
  824. font-weight: 400;
  825. color: #32363d;
  826. line-height: 32px;
  827. margin-left: 15px;
  828. min-width: 40px;
  829. }
  830. /deep/ .el-table__header-wrapper{
  831. thead{
  832. tr{
  833. th{
  834. background: #F5F7FA;
  835. color: #333333;
  836. }
  837. }
  838. }
  839. }
  840. /deep/ .el-dialog--center{
  841. border-radius: 8px;
  842. .el-dialog__title{
  843. font-weight: bold;
  844. }
  845. }
  846. /deep/ .el-button--primary{
  847. background: #2671E2 !important;
  848. border: 1px solid #2671E2 !important;
  849. }
  850. /deep/ .el-button--text{
  851. color: #2671E2;
  852. }
  853. </style>