StepsMyBox.vue 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693
  1. <template>
  2. <!-- 全流程管理组件 -->
  3. <div class="StepsMyBox">
  4. <el-dialog
  5. custom-class="myMission"
  6. title="详细信息"
  7. :append-to-body="true"
  8. :modal="true"
  9. :visible.sync="dialogVisible"
  10. width="70%"
  11. height="60%"
  12. :before-close="handleClose"
  13. >
  14. <div>
  15. <div class="dialog_title_info">
  16. <div>立项年度:{{ formData && formData.c_lxndwt ? formData.c_lxndwt : "--" }}</div>
  17. <div>被审计镇:{{ clickData.c_owning_street_town_str ? clickData.c_owning_street_town_str : "--" }}</div>
  18. </div>
  19. <div class="dialog_title_info">问题金额(万元):{{ formData && formData.c_wtjewt ? formData.c_wtjewt : "--" }}</div>
  20. <div class="dialog_title">审计报告中的问题反映情况</div>
  21. <div v-for="(item, index) in dialogData" :key="index" class="dialog_table">
  22. <div>{{ item.title }}</div>
  23. <div>{{ formData && formData[item.columnName] ? formData[item.columnName] : "--" }}</div>
  24. </div>
  25. <div class="dialog_title3">
  26. <el-button size="mini" type="primary" class="infoBut" @click="gotoView(formData)">查看疑点图斑</el-button>
  27. </div>
  28. </div>
  29. </el-dialog>
  30. <div style="padding: 10px">
  31. <el-button type="primary" icon="el-icon-arrow-left" @click="backEvent()">返回上级</el-button>
  32. </div>
  33. <!-- 全流程管理主题 -->
  34. <div class="StepsMyBox_main">
  35. <!-- 左侧项目明细 -->
  36. <div class="StepsMyBox_main_left">
  37. <div class="StepsMyBox_main_left_main">
  38. <div class="StepsMyBox_main_left_main_title">{{ clickData.c_project_name ? clickData.c_project_name : "--" }}</div>
  39. <div class="StepsMyBox_main_left_main_info">基本信息</div>
  40. <div class="StepsMyBox_main_left_main_info">
  41. <div>立项日期:</div>
  42. <div>{{ clickData.c_create_date ? $dayjs(clickData.c_create_date).format("YYYY-MM-DD") : "--" }}</div>
  43. </div>
  44. <div class="StepsMyBox_main_left_main_info">
  45. <div>项目类型:</div>
  46. <div>{{ clickData.c_task_type_str ? clickData.c_task_type_str : "--" }}</div>
  47. </div>
  48. <div class="StepsMyBox_main_left_main_info">
  49. <div>涉及街镇:</div>
  50. <div>{{ clickData.c_owning_street_town_str ? clickData.c_owning_street_town_str : "--" }}</div>
  51. </div>
  52. <div class="StepsMyBox_main_left_main_info">
  53. <div>牵头部门:</div>
  54. <div>资环处</div>
  55. </div>
  56. <div class="StepsMyBox_main_left_main_info">
  57. <div>项目组长:</div>
  58. <div>谢康</div>
  59. </div>
  60. <div class="StepsMyBox_main_left_main_info">
  61. <div>项目主审:</div>
  62. <div>庞杰</div>
  63. </div>
  64. <div class="StepsMyBox_main_left_main_info">
  65. <div>参与人员:</div>
  66. <div>李同</div>
  67. </div>
  68. <div class="StepsMyBox_main_left_main_info">
  69. <div>追踪问题:</div>
  70. <div>29个</div>
  71. </div>
  72. </div>
  73. </div>
  74. <!-- 右侧流程明细 -->
  75. <div class="StepsMyBox_main_right">
  76. <div>
  77. <el-steps :active="stepsIndexNow" style="margin: 40px 40px 40px 80px">
  78. <el-step v-for="(item, index) in stepsList" :key="index">
  79. <template slot="icon">
  80. <el-image
  81. style="width: 20px; height: 20px"
  82. :src="'/static/images/stepsIcon/' + item.status + '.png'"
  83. fit="cover"
  84. ></el-image>
  85. </template>
  86. <template slot="title">
  87. <div
  88. class="stepsTitle"
  89. :style="{ background: stepsIndex == index + 1 ? '#00aaff' : '' }"
  90. @click="changeStepsIndex(index + 1)"
  91. >
  92. {{ item.title }}
  93. </div>
  94. </template>
  95. <template slot="description">
  96. <div class="stepsDescription">
  97. {{ item.time ? item.time : "" }}
  98. </div>
  99. </template>
  100. </el-step>
  101. </el-steps>
  102. </div>
  103. <div class="stepsInfoBox">
  104. <!-- 流程明细文字描述 -->
  105. <div>
  106. {{ stepsList[stepsIndex - 1].info.text ? clickData.c_project_name + stepsList[stepsIndex - 1].info.text : "" }}
  107. </div>
  108. <!-- 流程明细文件预览(通知和报告会用到文件预览) -->
  109. <FilePreView ref="filePreview" v-show="fileView" style="height: calc(100% - 30px)" />
  110. <!-- 流程明细-实施列表 -->
  111. <div v-if="stepsList[stepsIndex - 1].info.infos">
  112. <div v-for="(item, index) in stepsList[stepsIndex - 1].info.infos" :key="item.index" style="padding-bottom: 1rem">
  113. <span
  114. :style="{ fontWeight: index != 0 ? 'none' : 'bold', paddingLeft: index != 0 ? '1rem' : '0px' }"
  115. class="infoTitle"
  116. ><div v-if="index != 0" class="infoIcon"></div>
  117. {{ item.title }}</span
  118. ><el-button
  119. v-if="item.id"
  120. size="mini"
  121. type="primary"
  122. class="infoBut"
  123. style="margin-left: 2rem"
  124. @click="getInfoById(item.id)"
  125. >查看详情</el-button
  126. >
  127. </div>
  128. </div>
  129. <!-- 流程明细-整改表格 -->
  130. <div v-if="stepsList[stepsIndex - 1].info.tableData">
  131. <div class="flexBox">
  132. <div v-for="(value, key) in stepsList[stepsIndex - 1].info.props" :key="key">
  133. <div class="tableTitle">{{ value }}</div>
  134. </div>
  135. </div>
  136. <div
  137. v-for="(item, index) in stepsList[stepsIndex - 1].info.tableData"
  138. :key="item.id"
  139. class="flexBox"
  140. style="padding: 0.5rem 0"
  141. >
  142. <div v-for="(value, key) in stepsList[stepsIndex - 1].info.props" :key="key">
  143. <span v-if="key != 'opt'">{{ stepsList[stepsIndex - 1].info.tableData[index][key] }}</span>
  144. <el-button
  145. v-else
  146. size="mini"
  147. type="primary"
  148. class="infoBut"
  149. @click="getInfoById(stepsList[stepsIndex - 1].info.tableData[index])"
  150. >
  151. 查看详情
  152. </el-button>
  153. </div>
  154. </div>
  155. </div>
  156. </div>
  157. </div>
  158. </div>
  159. </div>
  160. </template>
  161. <script>
  162. /**
  163. * 头部菜单(全流程管理)组件
  164. * @author: LiuMengxiang
  165. * @Date: 2022年11月21-25日
  166. */
  167. import FilePreView from "./FilePreView.vue";
  168. export default {
  169. name: "StepsMyBox",
  170. components: { FilePreView },
  171. data() {
  172. return {
  173. // 当前或默认选中的步骤条下标加一
  174. stepsIndex: 6,
  175. stepsIndexNow: 6,
  176. // 是否显示在线文档预览
  177. fileView: false,
  178. // 整改中的查看详情弹窗状态
  179. dialogVisible: false,
  180. // 该项目关联任务列表
  181. tableData: [],
  182. // 暂存对象
  183. formData: {},
  184. // 参与人员
  185. countUser: 0,
  186. dialogData: [
  187. { title: "问题分类", columnName: "c_wtflwt", info: "--" },
  188. { title: "问题定性一级", columnName: "c_wtdx1wt", info: "--" },
  189. { title: "问题定性二级", columnName: "c_wtdx2wt", info: "--" },
  190. { title: "问题事项", columnName: "c_wtsxwt", info: "--" },
  191. { title: "使用法条", columnName: "c_syftwt", info: "--" },
  192. { title: "边审边改情况", columnName: "c_bsbgqkwt", info: "--" }
  193. ],
  194. // 步骤条列表
  195. stepsList: [
  196. { title: "立项", info: { text: "完成立项!" }, status: 200, time: "2022-02-22" },
  197. {
  198. title: "通知",
  199. info: { text: "项目审计通知书.pdf", filePath: "./static/word/审计通知书.pdf" },
  200. status: 200,
  201. time: "2022-08-30"
  202. },
  203. {
  204. title: "方案",
  205. info: { text: "项目实施方案.pdf", filePath: "./static/word/实施方案.pdf" },
  206. status: 200,
  207. time: "2022-09-07"
  208. },
  209. {
  210. title: "实施",
  211. info: {
  212. infos: [
  213. { title: "李同 共完成了248处疑点审计" },
  214. { title: "2022.09.13 12:00 创建任务" },
  215. { title: "2022.09.14 12:00 登录系统" },
  216. { title: "2022.09.14 15:23 完成了疑点标记(打开图层:永久基本农田、2020年森林 底图:2022年一季度卫星影像图)" },
  217. { title: "2022.09.14 15:24 完成了疑点标记(打开图层:永久基本农田,2020年森林 底图:2021年四季度卫星影像图)" },
  218. { title: "2022.09.15 15:24 完成了疑点标记(打开图层:永久基本农田,2020年森林 底图:2021年四季度卫星影像图)" },
  219. { title: "2022.09.15 16:00 完成了疑点审计(打开图层:永久基本农田、2018年森林)" },
  220. { title: "2022.09.15 16:34 对2022年一季度及2019年四季度卫星影像图进行同屏比对,并打印结果" },
  221. { title: "2022.09.15 09:34 对2022年一季度及2019年四季度卫星影像图进行卷帘比对" },
  222. { title: "2022.09.16 15:34 发送了标记疑点给用户23452dddy的手机端" },
  223. { title: "2022.09.16 08:45 上传了泥潭数据.geojson" }
  224. ]
  225. },
  226. status: 200,
  227. time: ""
  228. },
  229. {
  230. title: "报告",
  231. info: { text: "项目审计意见.docx", filePath: "./static/word/审计意见.pdf" },
  232. status: 200,
  233. time: "2022-12-15"
  234. },
  235. {
  236. title: "整改",
  237. info: {
  238. tableData: [
  239. {
  240. desc: "基本农田非粮化",
  241. status: "整改中",
  242. endTime: "2023-03-15"
  243. },
  244. {
  245. desc: "一般耕地非粮化",
  246. status: "整改中",
  247. endTime: "2023-03-15"
  248. },
  249. {
  250. desc: "河长巡河流于形式",
  251. status: "整改中",
  252. endTime: "2023-03-15"
  253. },
  254. {
  255. desc: "部分河道监管不到位",
  256. status: "整改中",
  257. endTime: "2023-03-15"
  258. },
  259. {
  260. desc: "个别生态环境督察事项整改机制落实不到位",
  261. status: "整改中",
  262. endTime: "2023-03-15"
  263. },
  264. {
  265. desc: "部分监测不合格地块用作水稻种植等",
  266. status: "整改中",
  267. endTime: "2023-03-15"
  268. },
  269. {
  270. desc: "部分地块抛荒闲置",
  271. status: "整改中",
  272. endTime: "2023-03-15"
  273. },
  274. {
  275. desc: "复垦新增耕地地块面积较小,难以耕种",
  276. status: "整改中",
  277. endTime: "2023-03-15"
  278. },
  279. {
  280. desc: "复垦新增耕地零碎化,难以耕种",
  281. status: "整改中",
  282. endTime: "2023-03-15"
  283. },
  284. {
  285. desc: "复垦地块覆土质量不高",
  286. status: "整改中",
  287. endTime: "2023-03-15"
  288. },
  289. {
  290. desc: "个别地块拆除整治不到位",
  291. status: "整改中",
  292. endTime: "2023-03-15"
  293. },
  294. {
  295. desc: "部分地块拆后堆物等,环境效益低",
  296. status: "整改中",
  297. endTime: "2023-03-15"
  298. },
  299. {
  300. desc: "部分已拆除复垦地块荒置",
  301. status: "整改中",
  302. endTime: "2023-03-15"
  303. },
  304. {
  305. desc: "部分重大环保事项集体决策程序履行不到位",
  306. status: "整改中",
  307. endTime: "2023-03-15"
  308. },
  309. {
  310. desc: "垃圾中转站选址决策不合理",
  311. status: "整改中",
  312. endTime: "2023-03-15"
  313. },
  314. {
  315. desc: "工业节能目标任务未完成",
  316. status: "整改中",
  317. endTime: "2023-03-15"
  318. },
  319. {
  320. desc: "个别单位建筑能耗超标",
  321. status: "整改中",
  322. endTime: "2023-03-15"
  323. },
  324. {
  325. desc: "机关办公建筑能耗申报不完整",
  326. status: "整改中",
  327. endTime: "2023-03-15"
  328. },
  329. {
  330. desc: "违规占用设置堆点",
  331. status: "整改中",
  332. endTime: "2023-03-15"
  333. },
  334. {
  335. desc: "垃圾违规堆放、导致多支付处置费用",
  336. status: "整改中",
  337. endTime: "2023-03-15"
  338. },
  339. {
  340. desc: "备案堆点监管不到位",
  341. status: "整改中",
  342. endTime: "2023-03-15"
  343. },
  344. {
  345. desc: "部分泥库在基本农田内实施",
  346. status: "整改中",
  347. endTime: "2023-03-15"
  348. },
  349. {
  350. desc: "部分泥库重复列入土地平整项目",
  351. status: "整改中",
  352. endTime: "2023-03-15"
  353. },
  354. {
  355. desc: "拆分项目,规避公开招标",
  356. status: "整改中",
  357. endTime: "2023-03-15"
  358. },
  359. {
  360. desc: "过程监管缺失,底泥来源及处置去向不明。",
  361. status: "整改中",
  362. endTime: "2023-03-15"
  363. },
  364. {
  365. desc: "部分设施农用地备案过期",
  366. status: "整改中",
  367. endTime: "2023-03-15"
  368. },
  369. {
  370. desc: "对项目招投标工作监管不到位,个别项目串通投标",
  371. status: "整改中",
  372. endTime: "2023-03-15"
  373. },
  374. {
  375. desc: "建设程序管理不到位,部分项目先实施后签合同",
  376. status: "整改中",
  377. endTime: "2023-03-15"
  378. },
  379. {
  380. desc: "个别地块公益林建后管理养护不到位",
  381. status: "整改中",
  382. endTime: "2023-03-15"
  383. }
  384. ],
  385. props: { desc: "问题描述", status: "当前状态", endTime: "整改期限", opt: "操作" }
  386. },
  387. status: 400,
  388. time: "进行中"
  389. }
  390. ]
  391. };
  392. },
  393. props: ["clickData"],
  394. mounted() {},
  395. watch: {
  396. clickData: {
  397. handler(newValue, oldValue) {
  398. if (newValue != oldValue) {
  399. this.$nextTick(() => {
  400. // 获取项目基本信息
  401. this.stepsList[0].info.text =
  402. this.$dayjs(this.clickData.check_time).format("YYYY-MM-DD") +
  403. ": " +
  404. this.clickData.c_project_name +
  405. "(通过立项!)";
  406. // 获取项目关联任务信息
  407. this.getAllTasks();
  408. // 获取项目流程数据
  409. // console.log("全流程管理详情", newValue, oldValue);
  410. });
  411. this.changeStepsIndex(6);
  412. }
  413. },
  414. deep: true,
  415. immediate: false
  416. }
  417. },
  418. methods: {
  419. gotoView(fromData) {
  420. // 调用全局事件总线中的指定事件
  421. this.$bus.$emit("openMyView", [fromData.c_sjlbwt, fromData.c_bsjzwt]);
  422. this.dialogVisible = false;
  423. this.$store.commit("changeNavSelect", {
  424. "index": "3",
  425. "name": "综合分析"
  426. });
  427. },
  428. // 流程管理【实施】节点,根据id查看详情
  429. getInfoById(val) {
  430. let searchParam = [];
  431. // 立项年度
  432. if (val.desc) {
  433. let paramTime = {
  434. field: "c_wtdx2wt",
  435. // 等值查询
  436. searchType: "1",
  437. content: {
  438. value: val.desc
  439. }
  440. };
  441. searchParam.push(paramTime);
  442. }
  443. let params = new FormData();
  444. params = {
  445. columnId: 1127,
  446. states: "0,1,2,3",
  447. pageSize: 1,
  448. page: 0,
  449. search: JSON.stringify(searchParam)
  450. };
  451. this.$Post(this.urlsCollection.selectContentList, params).then(res => {
  452. if (res.code === 200 && res.content.data.length > 0) {
  453. this.formData = res.content.data[0];
  454. this.dialogVisible = true;
  455. }
  456. });
  457. },
  458. // 返回上级
  459. backEvent() {
  460. this.$emit("hideStepsMyBoxState");
  461. },
  462. // 切换步骤条
  463. changeStepsIndex(index) {
  464. this.stepsIndex = index;
  465. if (this.fileView) {
  466. this.$refs.filePreview.cancel();
  467. this.fileView = false;
  468. }
  469. // 判断流程明细是否存在文件,存在的话自动请求文件并渲染
  470. if (this.stepsList[this.stepsIndex - 1].info.filePath) {
  471. this.fileView = true;
  472. this.$refs.filePreview.showView(this.stepsList[this.stepsIndex - 1].info.filePath);
  473. }
  474. },
  475. handleClose() {
  476. this.dialogVisible = false;
  477. },
  478. // 查询事件
  479. getAllTasks() {
  480. let params = new FormData();
  481. this.countUser = 0;
  482. params.append("columnId", "48");
  483. params.append("states", "2,3");
  484. params.append("pageSize", 999);
  485. params.append("page", 0);
  486. let searchParam = [];
  487. if (this.clickData.id) {
  488. let param1 = {
  489. field: "c_associated_item_ids",
  490. searchType: "2",
  491. content: {
  492. value: this.clickData.id
  493. }
  494. };
  495. searchParam.push(param1);
  496. }
  497. params.append("search", JSON.stringify(searchParam));
  498. this.$Post(this.urlsCollection.selectContentList, params).then(
  499. res => {
  500. if (res.code === 200 && res.content.data.length > 0) {
  501. this.tableData = res.content.data;
  502. if (this.tableData.length > 0) {
  503. let usersList = [];
  504. this.tableData.forEach(item => {
  505. if (usersList.indexOf(item.author_id) < 0) {
  506. usersList.push(item.author_id);
  507. this.countUser++;
  508. }
  509. });
  510. }
  511. } else {
  512. this.tableData = [];
  513. this.countUser = 0;
  514. }
  515. },
  516. error => {
  517. this.tableData = [];
  518. this.countUser = 0;
  519. }
  520. );
  521. }
  522. }
  523. };
  524. </script>
  525. <style lang="less" scoped>
  526. .StepsMyBox {
  527. padding: 0;
  528. position: absolute;
  529. display: flex;
  530. background: #001220 !important;
  531. z-index: 999;
  532. width: 100%;
  533. height: 100%;
  534. -moz-user-select: none;
  535. -webkit-user-select: none;
  536. -ms-user-select: none;
  537. -khtml-user-select: none;
  538. user-select: none;
  539. overflow: hidden;
  540. flex-direction: column;
  541. &_main {
  542. padding: 10px;
  543. width: calc(100% - 20px);
  544. height: calc(100% - 80px);
  545. display: flex;
  546. justify-content: space-between;
  547. &_left {
  548. width: calc(25% - 5px);
  549. height: 100%;
  550. background: #001d3c !important;
  551. &_main {
  552. margin: 20px 30px;
  553. display: flex;
  554. flex-direction: column;
  555. &_title {
  556. font-size: 20px;
  557. font-family: pingfangSC;
  558. font-weight: 400;
  559. color: #4dc3ff;
  560. line-height: 58px;
  561. }
  562. &_info {
  563. display: flex;
  564. padding: 10px 0;
  565. font-size: 18px;
  566. font-family: pingfangSC;
  567. font-weight: bold;
  568. color: #ffffff;
  569. line-height: 60px;
  570. div {
  571. font-size: 16px;
  572. font-family: pingfangSC;
  573. font-weight: 400;
  574. color: #ffffff;
  575. line-height: 50px;
  576. width: 50%;
  577. }
  578. }
  579. }
  580. }
  581. &_right {
  582. width: calc(75% - 5px);
  583. height: 100%;
  584. background: #001d3c !important;
  585. .stepsTitle {
  586. margin-top: 10px;
  587. transform: translate(-30%, 0%);
  588. width: 2rem;
  589. cursor: pointer;
  590. padding: 0px 20px;
  591. // border: 1px solid #00aaff;
  592. border-radius: 3px;
  593. color: #ffffff;
  594. font-weight: bold;
  595. }
  596. .stepsDescription {
  597. margin-top: 10px;
  598. transform: translateX(-40px);
  599. padding: 0px 20px;
  600. font-size: 16px;
  601. color: #375787;
  602. font-weight: bold;
  603. }
  604. .stepsInfoBox {
  605. width: calc(100% - 80px);
  606. height: calc(100% - 220px);
  607. margin: 40px;
  608. margin-top: 0px;
  609. font-size: 18px;
  610. overflow-y: auto;
  611. // font-weight: bold;
  612. font-family: pingfangSC;
  613. line-height: 30px;
  614. color: #ffffff;
  615. .flexBox {
  616. display: flex;
  617. width: 100%;
  618. justify-content: space-evenly;
  619. align-items: center;
  620. align-content: space-around;
  621. flex-wrap: nowrap;
  622. flex-direction: row;
  623. .tableTitle {
  624. font-size: 20px;
  625. font-family: pingfangSC;
  626. font-weight: 400;
  627. color: #4dc3ff;
  628. padding-bottom: 0.5rem;
  629. }
  630. & > div {
  631. width: 100%;
  632. }
  633. }
  634. }
  635. }
  636. }
  637. }
  638. .infoTitle {
  639. position: relative;
  640. .infoIcon {
  641. position: absolute;
  642. left: 2px;
  643. top: 10px;
  644. width: 7px;
  645. height: 7px;
  646. border-radius: 50%;
  647. background: #fff;
  648. }
  649. }
  650. .dialog_title {
  651. font-size: 20px;
  652. font-weight: bold;
  653. color: #fff;
  654. padding-bottom: 1.5rem;
  655. &2 {
  656. font-weight: 100;
  657. font-size: 18px;
  658. color: #fff;
  659. padding-top: 1.5rem;
  660. }
  661. &3 {
  662. display: flex;
  663. justify-content: center;
  664. padding-top: 1.5rem;
  665. }
  666. &_info {
  667. display: flex;
  668. justify-content: space-between;
  669. align-items: center;
  670. font-size: 18px;
  671. font-weight: 400px;
  672. color: #dcdfe6;
  673. padding: 1rem 0;
  674. }
  675. }
  676. .dialog_table {
  677. display: flex;
  678. justify-content: space-between;
  679. div {
  680. width: 50%;
  681. text-align: center;
  682. background-color: #00000064 !important;
  683. margin: 1px;
  684. padding: 5px 10px;
  685. display: flex;
  686. justify-content: center;
  687. color: #dcdfe6;
  688. border: 1px solid #001d3c00;
  689. }
  690. }
  691. </style>