CommitteeCommentsAndSuggestionsDetailSubmit.vue 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939
  1. <!-- 委员会建议与意见详情提交 -->
  2. <template>
  3. <div class="autoBox box1" style="position: relative; background: #f5f5f5">
  4. <div class="center" style="margin-top: -20px">
  5. <div class="left">
  6. <div class="centerLeft1">
  7. <div class="top">
  8. <div class="top1"></div>
  9. <div class="top2"></div>
  10. <div class="allApplication">
  11. <span>{{ $t("common.commentsDetail") }}</span>
  12. </div>
  13. </div>
  14. <div class="content">
  15. <div class="title" style="text-align: center">
  16. <span>{{ this.viewsOnDetails.title }}</span>
  17. </div>
  18. <div class="nav" style="margin-top: 10px">
  19. <div class="navLeft">
  20. <span>{{ $t("common.proposer") }}:</span>
  21. <span style="margin-left: 10px">{{
  22. this.viewsOnDetails.applyPeopleName
  23. }}</span>
  24. </div>
  25. <div class="navRight" style="margin-left: 50px">
  26. <span>{{ $t("common.releaseTime") }}:</span>
  27. <span style="margin-left: 10px">{{
  28. this.viewsOnDetails.createDate
  29. }}</span>
  30. </div>
  31. </div>
  32. <div class="line"></div>
  33. <div class="text">
  34. <p>
  35. {{ this.viewsOnDetails.abstractInfo }}
  36. </p>
  37. </div>
  38. <div class="attachment">
  39. <div class="contentFirst" style="margin-left: 59px">
  40. <div class="mainBody">
  41. <span>{{ $t("common.text") }} :</span>
  42. </div>
  43. <div style="margin-left: 50px; margin-top: 20px">
  44. <!-- <ul>
  45. <li v-for="(item, index) in bodyTheList" :key="item.id">
  46. <div>
  47. <img
  48. style="
  49. display: inline-block;
  50. width: 20px;
  51. height: 20px;
  52. "
  53. src="@/assets/img/committeeWorkSpace/Frame@2x.png"
  54. alt=""
  55. />
  56. <span
  57. style="
  58. color: #569af8;
  59. text-decoration: underline;
  60. cursor: pointer;
  61. "
  62. >{{ item.fileNameDisplay }}</span
  63. >
  64. </div>
  65. </li>
  66. </ul> -->
  67. <div
  68. class="uploadContent"
  69. style="margin-left: 25px; margin-top: -30px; width: 380px"
  70. >
  71. <!-- /api/nationregioncomittee-service/nrc/nrcApplys/uploadFile -->
  72. <el-upload
  73. style="margin-left: 24px"
  74. class="upload-demo"
  75. disabled
  76. action="/api/nationregioncomittee-service/nrc/nrcCommitteeDocumentAnnouncements/uploadFile"
  77. :on-preview="handlePreview"
  78. :on-remove="handleRemove"
  79. :before-remove="beforeRemove"
  80. :before-upload="beforeUpload"
  81. :on-success="handleAvatarSuccessAnnex"
  82. multiple
  83. :limit="3"
  84. :on-exceed="handleExceed"
  85. :file-list="filesList"
  86. >
  87. </el-upload>
  88. </div>
  89. </div>
  90. </div>
  91. <div
  92. class="contentSecond"
  93. style="margin-top: 20px; margin-left: 59px"
  94. >
  95. <div class="mainBody">
  96. <span>{{ $t("common.enclosure") }} :</span>
  97. </div>
  98. <div style="margin-left: 50px; margin-top: 20px">
  99. <!-- <ul>
  100. <li v-for="(item, index) in abstractList" :key="item.id">
  101. <div>
  102. <img
  103. style="
  104. display: inline-block;
  105. width: 20px;
  106. height: 20px;
  107. "
  108. src="@/assets/img/committeeWorkSpace/Frame@2x.png"
  109. alt=""
  110. />
  111. <span
  112. style="
  113. color: #569af8;
  114. text-decoration: underline;
  115. cursor: pointer;
  116. "
  117. >{{ item.fileNameDisplay }}</span
  118. >
  119. </div>
  120. </li>
  121. </ul> -->
  122. <div
  123. class="uploadContent"
  124. style="margin-left: 25px; margin-top: -30px; width: 380px"
  125. >
  126. <el-upload
  127. style="margin-left: 24px"
  128. class="upload-demo"
  129. disabled
  130. action="/api/nationregioncomittee-service/nrc/nrcCommitteeDocumentAnnouncements/uploadFile"
  131. :on-preview="handlePreview1"
  132. :on-remove="handleRemove1"
  133. :before-remove="beforeRemove1"
  134. :before-upload="beforeUpload1"
  135. :on-success="handleAvatarSuccessAnnex1"
  136. multiple
  137. :on-exceed="handleExceed1"
  138. :file-list="filesList1"
  139. >
  140. </el-upload>
  141. </div>
  142. </div>
  143. </div>
  144. </div>
  145. </div>
  146. <div class="top2">
  147. <div class="top1"></div>
  148. <div class="top2"></div>
  149. <div class="allApplication">
  150. <p>{{ $t("common.approval") }}</p>
  151. </div>
  152. </div>
  153. <div class="table">
  154. <el-table
  155. :data="approvalHistory"
  156. :cell-style="{ textAlign: 'center' }"
  157. :header-cell-style="{
  158. textAlign: 'center',
  159. background: '#fafafa',
  160. }"
  161. border
  162. style="width: 100%"
  163. >
  164. <el-table-column
  165. prop="handleCondition"
  166. :label="$i18n.locale === 'zh' ? '环节' : 'Link'"
  167. width="width"
  168. >
  169. </el-table-column>
  170. <el-table-column
  171. prop="handlerName"
  172. :label="$i18n.locale === 'zh' ? '人员' : 'Personnel'"
  173. width="width"
  174. >
  175. </el-table-column>
  176. <el-table-column
  177. prop="handleTime"
  178. :label="$i18n.locale === 'zh' ? '处理时间' : 'Process Time'"
  179. width="width"
  180. >
  181. </el-table-column>
  182. <el-table-column
  183. prop="handleResult"
  184. :label="$i18n.locale === 'zh' ? '处理结果' : 'Process Result'"
  185. width="width"
  186. >
  187. </el-table-column>
  188. <el-table-column
  189. prop="handleNode"
  190. :label="$i18n.locale === 'zh' ? '处理情况' : 'Process State'"
  191. width="width"
  192. >
  193. </el-table-column>
  194. <el-table-column
  195. prop="handleOpinion"
  196. :label="$i18n.locale === 'zh' ? '处理意见' : 'Process Opinion'"
  197. width="width"
  198. >
  199. </el-table-column>
  200. </el-table>
  201. </div>
  202. <div class="top3">
  203. <div class="top1"></div>
  204. <div class="top2"></div>
  205. <div class="allApplication">
  206. <p>{{ $t("common.recipientReply") }}</p>
  207. </div>
  208. </div>
  209. <div v-if="showContent" class="replyResult">
  210. <ul>
  211. <li
  212. style="margin-top: 10px"
  213. v-for="(item, index) in replyList"
  214. :key="item.id"
  215. >
  216. <span
  217. style="
  218. font-weight: 500;
  219. font-size: 14px;
  220. font-family: 'Noto Sans SC';
  221. font-weight: 700;
  222. color: rgba(0, 0, 0, 0.85);
  223. "
  224. >{{ item.accepter }}</span
  225. >&nbsp;&nbsp;
  226. <span
  227. style="
  228. font-weight: 500;
  229. font-size: 14px;
  230. font-family: 'Noto Sans SC';
  231. font-weight: 700;
  232. margin: 0 10px 0 10px;
  233. color: rgba(0, 0, 0, 0.85);
  234. "
  235. >{{ item.accepterCommittee }}</span
  236. >
  237. <span
  238. style="
  239. font-weight: 500;
  240. font-size: 14px;
  241. font-family: 'Noto Sans SC';
  242. font-weight: 400;
  243. color: rgba(0, 0, 0, 0.65);
  244. "
  245. >{{ $t("common.recipient") }}:</span
  246. >
  247. <p style="color: rgba(0, 0, 0, 0.85)">
  248. {{ item.replyContent }}
  249. </p>
  250. <p
  251. style="
  252. color: rgba(0, 0, 0, 0.65);
  253. font-size: 12px;
  254. font-family: 'Noto Sans SC';
  255. font-style: normal;
  256. font-weight: 400;
  257. "
  258. >
  259. {{ item.updateDate }}
  260. </p>
  261. <div
  262. style="
  263. border: 1px solid rgba(0, 0, 0, 0.15);
  264. margin-top: 20px;
  265. "
  266. ></div>
  267. </li>
  268. </ul>
  269. </div>
  270. <div v-else class="replyResult">
  271. <el-empty :description="$t('common.noData')"></el-empty>
  272. </div>
  273. <div class="close">
  274. <el-button
  275. @click="close"
  276. style="width: 120px; height: 40px"
  277. type="primary"
  278. >{{ $t("common.close") }}</el-button
  279. >
  280. </div>
  281. </div>
  282. </div>
  283. </div>
  284. </div>
  285. </template>
  286. <script>
  287. import {
  288. getOpinionTheSuggestionDetail,
  289. uploadfile,
  290. } from "@/api/committee/committeeWorkSpace";
  291. import Screen from "@/components/screen";
  292. export default {
  293. name: "CommitteeCommentsAndSuggestionsDetailSubmit",
  294. props: ["category", "detailID"],
  295. components: {
  296. Screen,
  297. },
  298. data() {
  299. return {
  300. data: [
  301. { title: "真不错1", id: 1, time: "2021-10-31", type: "公文" },
  302. { title: "真不错2", id: 2, time: "2021-10-31", type: "公文" },
  303. // { title: "真不错3", id: 3, time: "2021-10-31", type: "公文" },
  304. // { title: "真不错4", id: 4, time: "2021-10-31", type: "公文" },
  305. // { title: "真不错5", id: 5, time: "2021-10-31", type: "公文" },
  306. ],
  307. // dataFrom: {},
  308. textarea: "",
  309. titleIndex: 0,
  310. islogin: true,
  311. commentContent: "",
  312. search: "",
  313. screen1s: {
  314. value: "common.type",
  315. item: [],
  316. },
  317. screen1def: null,
  318. screen2Item: null,
  319. fileList: [],
  320. fileList1: [],
  321. viewsOnDetails: [],
  322. approvalHistory: [],
  323. replyList: [],
  324. filesList: [],
  325. filesList1: [],
  326. bodyTheList: [],
  327. abstractList: [],
  328. showContent: null,
  329. };
  330. },
  331. watch: {
  332. "$i18n.locale"() {},
  333. },
  334. mounted() {
  335. window.scrollTo(0, 0);
  336. this.initData();
  337. },
  338. destroyed() {},
  339. methods: {
  340. initData() {
  341. this.toObtainOpinionsProposal();
  342. },
  343. // 获取意见与建议提交
  344. toObtainOpinionsProposal() {
  345. var params = this.detailID;
  346. getOpinionTheSuggestionDetail(params).then((res) => {
  347. this.viewsOnDetails = res.data.nrcApply;
  348. this.approvalHistory = res.data.nrcApprovalHistorys
  349. .reverse()
  350. .slice(0, 3);
  351. if (res.data.files) {
  352. res.data.files.forEach((item) => {
  353. if (item.type == "2") {
  354. let obj = {};
  355. obj.name = item.fileNameDisplay;
  356. obj.url = item.filePath;
  357. obj.type = item.type;
  358. this.filesList.push(obj);
  359. }
  360. if (item.type == "3") {
  361. let obj = {};
  362. obj.name = item.fileNameDisplay;
  363. obj.url = item.filePath;
  364. obj.type = item.type;
  365. this.filesList1.push(obj);
  366. }
  367. });
  368. }
  369. var data = res.data.nrcAccepterReplys;
  370. if (JSON.stringify(data) !== "{}") {
  371. if(res.data.nrcAccepterReplys){
  372. this.replyList = res.data.nrcAccepterReplys.reverse().slice(0, 2);
  373. }
  374. this.showContent = true;
  375. } else {
  376. this.showContent = false;
  377. }
  378. });
  379. },
  380. close() {
  381. if (this.category === "3") {
  382. this.$emit("commentDetail", "comments");
  383. } else {
  384. var params = {
  385. name: "workspace",
  386. type: false,
  387. };
  388. this.$emit("applicationType", params);
  389. }
  390. },
  391. handleCurrentChange() {},
  392. back() {
  393. // this.$router.go(-1);
  394. this.$router.back();
  395. },
  396. screenBack() {},
  397. changeTitle(i) {
  398. this.titleIndex = i;
  399. },
  400. handleAvatarSuccessAnnex(res, file) {
  401. let obj = {};
  402. obj.fileNameDisplay = file.name;
  403. obj.filePath = res.data.filePath;
  404. obj.type = 2;
  405. this.filename.push(obj);
  406. console.log(this.filename);
  407. },
  408. handleAvatarSuccessAnnex1(res, file) {
  409. let obj = {};
  410. obj.fileNameDisplay = file.name;
  411. obj.filePath = res.data.filePath;
  412. obj.type = 3;
  413. this.filename1.push(obj);
  414. console.log(this.filename1);
  415. },
  416. beforeUpload(file) {
  417. var FileExt = file.name.replace(/.+\./, "");
  418. if (
  419. ["zip", "pdf", "doc", "docx", "excel", "xls", "xlsx"].indexOf(
  420. FileExt.toLowerCase()
  421. ) === -1
  422. ) {
  423. this.$message({
  424. type: "warning",
  425. message: "请上传zip,pdf,word,excel的附件!",
  426. });
  427. this.fileList.splice(this.fileList.indexOf(file), 1);
  428. return false;
  429. }
  430. this.isLt2k = file.size / 1024 / 1024 < 10 ? "1" : "0";
  431. if (this.isLt2k === "0") {
  432. if (this.$i18n.locale.toUpperCase() == "ZH") {
  433. this.$message({
  434. message: "上传文件大小不能超过10M!",
  435. type: "error",
  436. });
  437. } else {
  438. this.$message({
  439. message: "Upload file size cannot exceed 10m!",
  440. type: "error",
  441. });
  442. }
  443. return false;
  444. }
  445. },
  446. beforeUpload1(file) {
  447. var FileExt = file.name.replace(/.+\./, "");
  448. if (
  449. ["zip", "pdf", "doc", "docx", "excel", "xls", "xlsx"].indexOf(
  450. FileExt.toLowerCase()
  451. ) === -1
  452. ) {
  453. this.$message({
  454. type: "warning",
  455. message: "请上传zip,pdf,word,excel的附件!",
  456. });
  457. this.fileList.splice(this.fileList.indexOf(file), 1);
  458. return false;
  459. }
  460. this.isLt2k = file.size / 1024 / 1024 < 10 ? "1" : "0";
  461. if (this.isLt2k === "0") {
  462. if (this.$i18n.locale.toUpperCase() == "ZH") {
  463. this.$message({
  464. message: "上传文件大小不能超过10M!",
  465. type: "error",
  466. });
  467. } else {
  468. this.$message({
  469. message: "Upload file size cannot exceed 10m!",
  470. type: "error",
  471. });
  472. }
  473. return false;
  474. }
  475. },
  476. handleRemove(file, fileList) {
  477. console.log(file, fileList);
  478. this.filename.forEach((item, index) => {
  479. if (file.name == item.fileNameDisplay) {
  480. this.filename.splice(index, 1);
  481. }
  482. });
  483. this.fileList.forEach((item, index) => {
  484. if (file.name == item.name) {
  485. this.fileList.splice(index, 1);
  486. }
  487. });
  488. },
  489. handleRemove1(file, fileList) {
  490. this.filename1.forEach((item, index) => {
  491. if (file.name == item.fileNameDisplay) {
  492. this.filename1.splice(index, 1);
  493. }
  494. });
  495. this.fileList1.forEach((item, index) => {
  496. if (file.name == item.name) {
  497. this.fileList1.splice(index, 1);
  498. }
  499. });
  500. console.log(file, fileList);
  501. },
  502. handlePreview(file, fileList) {
  503. console.log(file, fileList);
  504. let param = {
  505. fileName: file.name,
  506. filePath: file.url,
  507. };
  508. uploadfile(param).then((res) => {
  509. console.log(res);
  510. const content = res;
  511. if (content) {
  512. const blob = new Blob([content]); //构造一个blob对象来处理数据
  513. const fileName = decodeURIComponent(res.fileName);
  514. //对于<a>标签,只有 Firefox 和 Chrome(内核) 支持 download 属性
  515. //IE10以上支持blob但是依然不支持download
  516. if ("download" in document.createElement("a")) {
  517. //支持a标签download的浏览器
  518. const link = document.createElement("a"); //创建a标签
  519. link.download = file.name; //a标签添加属性
  520. link.style.display = "none";
  521. link.href = URL.createObjectURL(blob);
  522. document.body.appendChild(link);
  523. link.click(); //执行下载
  524. URL.revokeObjectURL(link.href); //释放url
  525. document.body.removeChild(link); //释放标签
  526. } else {
  527. //其他浏览器
  528. navigator.msSaveBlob(blob, fileName);
  529. }
  530. } else {
  531. this.$message.error("服务器繁忙");
  532. }
  533. });
  534. },
  535. handlePreview1(file, fileList) {
  536. console.log(file, fileList);
  537. let param = {
  538. fileName: file.name,
  539. filePath: file.url,
  540. };
  541. uploadfile(param).then((res) => {
  542. const content = res;
  543. if (content) {
  544. const blob = new Blob([content]); //构造一个blob对象来处理数据
  545. const fileName = decodeURIComponent(res.fileName);
  546. //对于<a>标签,只有 Firefox 和 Chrome(内核) 支持 download 属性
  547. //IE10以上支持blob但是依然不支持download
  548. if ("download" in document.createElement("a")) {
  549. //支持a标签download的浏览器
  550. const link = document.createElement("a"); //创建a标签
  551. link.download = file.name; //a标签添加属性
  552. link.style.display = "none";
  553. link.href = URL.createObjectURL(blob);
  554. document.body.appendChild(link);
  555. link.click(); //执行下载
  556. URL.revokeObjectURL(link.href); //释放url
  557. document.body.removeChild(link); //释放标签
  558. } else {
  559. //其他浏览器
  560. navigator.msSaveBlob(blob, fileName);
  561. }
  562. } else {
  563. this.$message.error("服务器繁忙");
  564. }
  565. });
  566. },
  567. handleExceed(files, fileList) {
  568. this.$message.warning(
  569. `当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${
  570. files.length + fileList.length
  571. } 个文件`
  572. );
  573. },
  574. handleExceed1(files, fileList) {
  575. this.$message.warning(
  576. `当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${
  577. files.length + fileList.length
  578. } 个文件`
  579. );
  580. },
  581. beforeRemove(file, fileList) {
  582. return this.$confirm(`确定移除 ${file.name}?`);
  583. },
  584. beforeRemove1(file, fileList) {
  585. return this.$confirm(`确定移除 ${file.name}?`);
  586. },
  587. },
  588. };
  589. </script>
  590. <style scoped>
  591. ::v-deep .el-upload-list__item-name {
  592. color: #4790f7;
  593. text-decoration: underline;
  594. }
  595. .content .title {
  596. width: 600px;
  597. height: 40px;
  598. line-height: 40px;
  599. overflow: hidden;
  600. text-overflow: ellipsis;
  601. white-space: nowrap;
  602. position: absolute;
  603. left: 290px;
  604. top: 100px;
  605. font-family: "PingFang SC";
  606. font-style: normal;
  607. font-weight: 700;
  608. font-size: 20px;
  609. line-height: 22px;
  610. font-feature-settings: "tnum" on, "lnum" on;
  611. color: rgba(0, 0, 0, 0.85);
  612. }
  613. .content .nav {
  614. width: 1180px;
  615. display: flex;
  616. flex-direction: row;
  617. flex-wrap: nowrap;
  618. justify-content: center;
  619. font-family: "PingFang SC";
  620. font-style: normal;
  621. font-weight: 400;
  622. font-size: 14px;
  623. line-height: 14px;
  624. font-feature-settings: "tnum" on, "lnum" on;
  625. color: rgba(0, 0, 0, 0.65);
  626. }
  627. .content .line {
  628. position: absolute;
  629. left: 20px;
  630. top: 196px;
  631. width: 1159px;
  632. border: 1px solid rgba(0, 0, 0, 0.1);
  633. }
  634. .content .text {
  635. position: absolute;
  636. left: 59px;
  637. top: 209px;
  638. width: 1087px;
  639. text-indent: 2em;
  640. font-family: "PingFang SC";
  641. font-style: normal;
  642. font-weight: 400;
  643. font-size: 14px;
  644. line-height: 25px;
  645. font-feature-settings: "tnum" on, "lnum" on;
  646. color: rgba(0, 0, 0, 0.65);
  647. }
  648. .attachment {
  649. height: 300px;
  650. position: relative;
  651. top: 310px;
  652. }
  653. .attachment .mainBody {
  654. /* position: absolute;
  655. left: 59px;
  656. top: 318px; */
  657. font-family: "PingFang SC";
  658. font-style: normal;
  659. font-weight: 400;
  660. font-size: 16px;
  661. line-height: 0px;
  662. display: flex;
  663. align-items: center;
  664. text-indent: 30px;
  665. font-feature-settings: "tnum" on, "lnum" on;
  666. color: rgba(0, 0, 0, 0.95);
  667. }
  668. .attachment .upload {
  669. position: absolute;
  670. left: 107px;
  671. top: 350px;
  672. }
  673. .attachment .upload1 {
  674. position: absolute;
  675. left: 107px;
  676. top: 441px;
  677. }
  678. .attachment .upload2 {
  679. position: absolute;
  680. left: 107px;
  681. top: 480px;
  682. }
  683. .attachment .mainBody1 {
  684. position: absolute;
  685. left: 59px;
  686. top: 411px;
  687. font-family: "PingFang SC";
  688. font-style: normal;
  689. font-weight: 400;
  690. font-size: 16px;
  691. line-height: 0px;
  692. display: flex;
  693. align-items: center;
  694. text-indent: 30px;
  695. font-feature-settings: "tnum" on, "lnum" on;
  696. color: rgba(0, 0, 0, 0.95);
  697. }
  698. .top2 {
  699. position: absolute;
  700. top: 603px;
  701. }
  702. .top3 {
  703. position: absolute;
  704. top: 896px;
  705. }
  706. .table {
  707. width: 1123px;
  708. background: #ddd;
  709. position: absolute;
  710. left: 33px;
  711. top: 680px;
  712. }
  713. .box1 {
  714. padding: 0 0 20px 0;
  715. position: absolute;
  716. }
  717. .center {
  718. display: flex;
  719. }
  720. .topImg img {
  721. display: inline-block;
  722. width: 1200px;
  723. height: 324px;
  724. }
  725. .centerLeft1 {
  726. height: 1300px;
  727. /* height: 100%; */
  728. width: 1200px;
  729. border-radius: 0px;
  730. background: #fff;
  731. }
  732. .centerLeft1 .tab {
  733. position: absolute;
  734. right: 100px;
  735. top: 70px;
  736. display: flex;
  737. align-items: center;
  738. }
  739. .centerLeft1 .nav {
  740. position: absolute;
  741. top: 139px;
  742. left: 19px;
  743. }
  744. .list .title {
  745. font-family: "PingFang SC";
  746. font-style: normal;
  747. font-weight: 700;
  748. font-size: 20px;
  749. line-height: 22px;
  750. align-items: center;
  751. color: rgba(0, 0, 0, 0.85);
  752. font-feature-settings: "tnum" on, "lnum" on;
  753. }
  754. .list .center {
  755. font-weight: 400;
  756. color: rgba(0, 0, 0, 0.85);
  757. font-size: 14px;
  758. text-indent: 2em;
  759. }
  760. .left {
  761. position: relative;
  762. }
  763. .top .top1 {
  764. position: absolute;
  765. width: 5.5px;
  766. height: 10.5px;
  767. left: 20px;
  768. top: 35px;
  769. background: #376ac7;
  770. z-index: 1;
  771. }
  772. .top .top2 {
  773. position: absolute;
  774. width: 5.5px;
  775. height: 15px;
  776. left: 20px;
  777. top: 35px;
  778. background: #83bd50;
  779. }
  780. .top .allApplication {
  781. position: absolute;
  782. height: 22px;
  783. left: 34px;
  784. top: 31px;
  785. }
  786. .top2 .top1 {
  787. position: absolute;
  788. width: 5.5px;
  789. height: 10.5px;
  790. left: 20px;
  791. top: 35px;
  792. background: #376ac7;
  793. z-index: 1;
  794. }
  795. .top2 .top2 {
  796. position: absolute;
  797. width: 5.5px;
  798. height: 15px;
  799. left: 20px;
  800. top: 35px;
  801. background: #83bd50;
  802. }
  803. .top2 .allApplication {
  804. position: absolute;
  805. height: 22px;
  806. left: 34px;
  807. top: 15px;
  808. }
  809. .top2 .allApplication p {
  810. width: 180px;
  811. font-family: "PingFang SC";
  812. font-style: normal;
  813. font-weight: 600;
  814. font-size: 16px;
  815. line-height: 22px;
  816. color: #375586;
  817. }
  818. /* */
  819. .top3 .top1 {
  820. position: absolute;
  821. width: 5.5px;
  822. height: 10.5px;
  823. left: 20px;
  824. top: 35px;
  825. background: #376ac7;
  826. z-index: 1;
  827. }
  828. .top3 .top2 {
  829. position: absolute;
  830. width: 5.5px;
  831. height: 15px;
  832. left: 20px;
  833. top: 35px;
  834. background: #83bd50;
  835. }
  836. .top3 .allApplication {
  837. position: absolute;
  838. height: 22px;
  839. left: 34px;
  840. top: 15px;
  841. }
  842. .top3 .allApplication p {
  843. width: 180px;
  844. font-family: "PingFang SC";
  845. font-style: normal;
  846. font-weight: 600;
  847. font-size: 16px;
  848. line-height: 22px;
  849. color: #375586;
  850. }
  851. /* */
  852. .replyResult {
  853. width: 1123px;
  854. height: 292px;
  855. position: absolute;
  856. top: 970px;
  857. left: 33px;
  858. /* background: #ddd; */
  859. }
  860. .replyText {
  861. position: absolute;
  862. left: 67px;
  863. top: 1115px;
  864. }
  865. .replyText .textImg {
  866. /* position: absolute;
  867. left: 49px;
  868. top: 1115px; */
  869. margin-top: 17px;
  870. margin-right: 5px;
  871. }
  872. .replyText p {
  873. font-family: "Noto Sans SC";
  874. font-style: normal;
  875. font-weight: 400;
  876. font-size: 12px;
  877. line-height: 22px;
  878. font-feature-settings: "tnum" on, "lnum" on;
  879. color: rgba(0, 0, 0, 0.45);
  880. }
  881. .close {
  882. position: absolute;
  883. top: 1250px;
  884. left: 535px;
  885. }
  886. .top .allApplication span {
  887. font-family: "PingFang SC";
  888. font-style: normal;
  889. font-weight: 600;
  890. font-size: 16px;
  891. line-height: 22px;
  892. color: #375586;
  893. }
  894. .top .notice {
  895. position: absolute;
  896. height: 22px;
  897. left: 160px;
  898. top: 32px;
  899. }
  900. .top .notice span {
  901. font-family: "PingFang SC";
  902. font-style: normal;
  903. font-weight: 600;
  904. font-size: 16px;
  905. line-height: 22px;
  906. color: rgba(10, 10, 10, 0.85);
  907. }
  908. .top .more span {
  909. font-family: "Roboto";
  910. font-style: normal;
  911. font-weight: 500;
  912. font-size: 14px;
  913. line-height: 16px;
  914. color: #4790f7;
  915. }
  916. /* ::v-deep .el-input__inner {
  917. height: 146px;
  918. } */
  919. .lowerBotton {
  920. position: absolute;
  921. bottom: 0;
  922. right: 70px;
  923. }
  924. </style>