ballotBillDirectoryInfo.vue 24 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096
  1. <template>
  2.  
  3. <div>
  4. <banners-zh v-if="language.value == 'CN'"></banners-zh>
  5. <banners-en v-if="language.value == 'EN'"></banners-en>
  6. <banners-fr v-if="language.value == 'FR'"></banners-fr>
  7. <banners-ru v-if="language.value == 'RU'"></banners-ru>
  8. <!-- 顶部图片 -->
  9. <div class="topimg">
  10. <img src="@/assets/ballot/未标题-6_画板 1.png" />
  11. <!-- <div class="backButton" @click="toHome">
  12. <img src="@/assets/ballot/编组 16.png" >
  13. </div> -->
  14. </div>
  15. <!-- 选择区域 -->
  16. <div class="body-info">
  17. <div class="select-info">
  18. <el-select v-model="language.value" @change="getLanguage">
  19. <el-option
  20. v-for="item in options"
  21. :key="item.value"
  22. :label="item.label"
  23. :value="item.value"
  24. >
  25. </el-option>
  26. </el-select>
  27. </div>
  28. <div class="main-info" v-if="language.value == 'CN'">
  29. <div class="table-box"></div>
  30. <div class="table-info">
  31. <div class="table-title">
  32. <div class="title-text-cn">
  33. 候选单位名单(候选单位按英文首字母顺序排列)
  34. </div>
  35. <div class="table-action">
  36. <span>赞成</span><span>反对</span><span>弃权</span>
  37. </div>
  38. </div>
  39. <div
  40. class="table-detail"
  41. v-for="(item, index) in optionList"
  42. :key="index"
  43. >
  44. <div class="detail-text-cn">{{ item.name }}</div>
  45. <div class="only-first" v-if="index == 0">
  46. <span class="action-only">
  47. <img src="@/assets/ballot/圆圈.png" />
  48. </span>
  49. </div>
  50. <div class="detail-action" v-if="index != 0">
  51. <span class="action-1">
  52. <img src="@/assets/ballot/圆圈 (1).png" v-if="item.type != 0" />
  53. <img src="@/assets/ballot/圆圈.png" v-else />
  54. </span>
  55. <span class="action-2">
  56. <img src="@/assets/ballot/叉.png" v-if="item.type != 1" />
  57. <img src="@/assets/ballot/叉 (1).png" v-else />
  58. </span>
  59. <span class="action-3">
  60. <img src="@/assets/ballot/分割线.png" v-if="item.type != 2" />
  61. <img src="@/assets/ballot/分割线 (1).png" v-else />
  62. </span>
  63. </div>
  64. </div>
  65. </div>
  66. <div class="return-btn">
  67. <div class="return-sub" @click="toSuccess">返回</div>
  68. </div>
  69. <div class="table-bottom"></div>
  70. <div class="user-btn" v-if="selectBtn">
  71. <div class="user-btn-text1" v-if="num">
  72. 您已选择:赞成{{ agreeNum }}项;反对{{ disNum }}项;弃权{{
  73. noNum
  74. }}项,是否确认提交?
  75. </div>
  76. <div class="user-btn-text1" v-else>
  77. 您已选择:赞成{{ agreeNumInfo }}项;反对0项;弃权0项,是否确认提交?
  78. </div>
  79. <div class="btn-user-info">
  80. <el-button
  81. class="btn-user-info-ok"
  82. @click="sureToGet"
  83. :disabled="disabled"
  84. >确认</el-button
  85. >
  86. <div class="btn-user-info-canel" @click="notToGet">取消</div>
  87. </div>
  88. </div>
  89. <div class="big-success" v-if="successUp">
  90. <img src="@/assets/ballot/success-ui.png" class="pic-model" />
  91. <div class="text-success">提交成功!</div>
  92. </div>
  93. </div>
  94. <div class="main-info" v-if="language.value == 'EN'">
  95. <div class="table-box"></div>
  96. <div class="table-info">
  97. <div class="table-title">
  98. <div class="title-text">
  99. Candidates for the Second Council of GEIDCO (The candidates for
  100. group Council members are listed in alphabetical order)
  101. </div>
  102. <div class="table-action">
  103. <span>Agree</span><span>Disagree</span><span>Abstain</span>
  104. </div>
  105. </div>
  106. <div
  107. class="table-detail"
  108. v-for="(item, index) in optionList"
  109. :key="index"
  110. >
  111. <div class="detail-text">
  112. {{ item.nameEn }}
  113. </div>
  114. <div class="only-first" v-if="index == 0">
  115. <span class="action-only">
  116. <img src="@/assets/ballot/圆圈.png" />
  117. </span>
  118. </div>
  119. <div class="detail-action" v-if="index != 0">
  120. <span class="action-1">
  121. <img src="@/assets/ballot/圆圈 (1).png" v-if="item.type != 0" />
  122. <img src="@/assets/ballot/圆圈.png" v-else />
  123. </span>
  124. <span class="action-2">
  125. <img src="@/assets/ballot/叉.png" v-if="item.type != 1" />
  126. <img src="@/assets/ballot/叉 (1).png" v-else />
  127. </span>
  128. <span class="action-3">
  129. <img src="@/assets/ballot/分割线.png" v-if="item.type != 2" />
  130. <img src="@/assets/ballot/分割线 (1).png" v-else />
  131. </span>
  132. </div>
  133. </div>
  134. </div>
  135. <div class="return-btn">
  136. <div class="return-sub" @click="toSuccess">Back</div>
  137. </div>
  138. <div class="table-bottom"></div>
  139. <div class="user-btn" v-if="selectBtn">
  140. <div class="user-btn-text" v-if="num">
  141. You've selected: Agree {{ agreeNum }}; Disagree {{ disNum }};
  142. Abstain {{ noNum }}. Are you sure you want to submit?
  143. </div>
  144. <div class="user-btn-text" v-else>
  145. You've selected: approve {{ agreeNumInfo }}; Against 0; 0
  146. abstentions, do you confirm submission?
  147. </div>
  148. <div class="btn-user-info1">
  149. <el-button
  150. class="btn-user-info-ok"
  151. @click="sureToGet"
  152. :disabled="disabled"
  153. >Confirm</el-button
  154. >
  155. <div class="btn-user-info-canel" @click="notToGet">Cancel</div>
  156. </div>
  157. </div>
  158. <div class="big-success" v-if="successUp">
  159. <img src="@/assets/ballot/success-ui.png" class="pic-model" />
  160. <div class="text-success">Submission successful!</div>
  161. </div>
  162. </div>
  163. <div class="main-info" v-if="language.value == 'FR'">
  164. <div class="table-box"></div>
  165. <div class="table-info">
  166. <div class="table-title-info">
  167. <div class="title-text-info">
  168. Candidats au 2ème Conseil de la GEIDCO (Les candidats aux postes
  169. de membres du Conseil sont classés par ordre alphabétique)
  170. </div>
  171. <div class="table-action-info">
  172. <span>D'accord</span><span>S'opposer</span><span>S'abstenir</span>
  173. </div>
  174. </div>
  175. <div
  176. class="table-detail"
  177. v-for="(item, index) in optionList"
  178. :key="index"
  179. >
  180. <div class="detail-text-info">
  181. {{ item.nameFr }}
  182. </div>
  183. <div class="only-first" v-if="index == 0">
  184. <span class="action-only-fr">
  185. <img src="@/assets/ballot/圆圈.png" />
  186. </span>
  187. </div>
  188. <div class="detail-action-info" v-if="index != 0">
  189. <span class="action-1">
  190. <img src="@/assets/ballot/圆圈 (1).png" v-if="item.type != 0" />
  191. <img src="@/assets/ballot/圆圈.png" v-else />
  192. </span>
  193. <span class="action-2">
  194. <img src="@/assets/ballot/叉.png" v-if="item.type != 1" />
  195. <img src="@/assets/ballot/叉 (1).png" v-else />
  196. </span>
  197. <span class="action-3">
  198. <img src="@/assets/ballot/分割线.png" v-if="item.type != 2" />
  199. <img src="@/assets/ballot/分割线 (1).png" v-else />
  200. </span>
  201. </div>
  202. </div>
  203. </div>
  204. <div class="return-btn">
  205. <div class="return-sub" @click="toSuccess">Retour</div>
  206. </div>
  207. <div class="table-bottom"></div>
  208. <div class="user-btn" v-if="selectBtn">
  209. <div class="user-btn-text" v-if="num">
  210. Vous avez choisi : D'accord {{ agreeNum }} ; S'opposer
  211. {{ disNum }} ; S'abstenir {{ noNum }}. Etes-vous sûr de vouloir
  212. soumettre ?
  213. </div>
  214. <div class="user-btn-text" v-else>
  215. Vous avez sélectionné: pour {{ agreeNumInfo }}; 0 objections;
  216. Renonciation 0 articles. Est-ce que la soumission est confirmée?
  217. </div>
  218. <div class="btn-user-info">
  219. <el-button
  220. class="btn-user-info-ok"
  221. @click="sureToGet"
  222. :disabled="disabled"
  223. >Confirmer
  224. </el-button>
  225. <div class="btn-user-info-canel" @click="notToGet">Annuler</div>
  226. </div>
  227. </div>
  228. <div class="big-success" v-if="successUp">
  229. <img src="@/assets/ballot/success-ui.png" class="pic-model" />
  230. <div class="text-success">Soumission réussie!</div>
  231. </div>
  232. </div>
  233. <div class="main-info" v-if="language.value == 'RU'">
  234. <div class="table-box"></div>
  235. <div class="table-info">
  236. <div class="table-title-info">
  237. <div class="title-text-info-fr">
  238. Кандидаты на должность директоров совета второго созыва GEIDCO
  239. (в алфавитном порядке)
  240. </div>
  241. <div class="table-action-info">
  242. <span>Согласиться</span><span>Несогласиться</span
  243. ><span>Воздержаться</span>
  244. </div>
  245. </div>
  246. <div
  247. class="table-detail"
  248. v-for="(item, index) in optionList"
  249. :key="index"
  250. >
  251. <div class="detail-text-info">
  252. {{ item.nameRu }}
  253. </div>
  254. <div class="only-first" v-if="index == 0">
  255. <span class="action-only-fr">
  256. <img src="@/assets/ballot/圆圈.png" />
  257. </span>
  258. </div>
  259. <div class="detail-action-info" v-if="index != 0">
  260. <span class="action-1">
  261. <img src="@/assets/ballot/圆圈 (1).png" v-if="item.type != 0" />
  262. <img src="@/assets/ballot/圆圈.png" v-else />
  263. </span>
  264. <span class="action-2">
  265. <img src="@/assets/ballot/叉.png" v-if="item.type != 1" />
  266. <img src="@/assets/ballot/叉 (1).png" v-else />
  267. </span>
  268. <span class="action-3">
  269. <img src="@/assets/ballot/分割线.png" v-if="item.type != 2" />
  270. <img src="@/assets/ballot/分割线 (1).png" v-else />
  271. </span>
  272. </div>
  273. </div>
  274. </div>
  275. <div class="return-btn">
  276. <div class="return-sub" @click="toSuccess">Назад</div>
  277. </div>
  278. <div class="table-bottom"></div>
  279. <div class="user-btn" v-if="selectBtn">
  280. <div class="user-btn-text" v-if="num">
  281. Вы выбрали: Согласен {{ agreeNum }}; Не согласен {{ disNum }};
  282. Воздержаться {{ noNum }}. Вы уверены, что хотите отправить?
  283. </div>
  284. <div class="user-btn-text" v-else>
  285. Вы выбрали: {{ agreeNumInfo }} голоса за;Возражение по пункту
  286. 0;Воздержание по пункту 0 подтверждено?
  287. </div>
  288. <div class="btn-user-info">
  289. <el-button
  290. class="btn-user-info-ok"
  291. @click="sureToGet"
  292. :disabled="disabled"
  293. >Подтвердить
  294. </el-button>
  295. <div class="btn-user-info-canel" @click="notToGet">Отменить</div>
  296. </div>
  297. </div>
  298. <div class="big-success" v-if="successUp">
  299. <img src="@/assets/ballot/success-ui.png" class="pic-model" />
  300. <div class="text-success">Вы успешно оформили!</div>
  301. </div>
  302. </div>
  303. </div>
  304. <div class="body-box"></div>
  305. <!-- 底部图片 -->
  306. <footer-zh v-if="language.value == 'CN'"></footer-zh>
  307. <footer-en v-if="language.value == 'EN'"></footer-en>
  308. <footer-fr v-if="language.value == 'FR'"></footer-fr>
  309. <footer-ru v-if="language.value == 'RU'"></footer-ru>
  310. </div>
  311. </template>
  312. <script>
  313. import { getToken } from '@/api/token'
  314. import footerZh from '@/components/footersNewZH'
  315. import footerEn from '@/components/footersNewEN'
  316. import footerFr from '@/components/footersNewFR'
  317. import footerRu from '@/components/footersNewRU'
  318. import bannersZh from '@/components/ballotTopBannerZH'
  319. import bannersEn from '@/components/ballotTopBannerEN'
  320. import bannersFr from '@/components/ballotTopBannerFR'
  321. import bannersRu from '@/components/ballotTopBannerRU'
  322. import { getMeetingGeidcoLeaders, saveOrUpdateLeader } from '@/api/vote/council'
  323. export default {
  324. name: 'ballotBillDirectoryInfo',
  325. components: {
  326. footerZh,
  327. footerEn,
  328. footerFr,
  329. footerRu,
  330. bannersZh,
  331. bannersEn,
  332. bannersFr,
  333. bannersRu,
  334. },
  335. data() {
  336. return {
  337. num: true,
  338. disabled: false,
  339. agreeNum: 0,
  340. disNum: 0,
  341. noNum: 0,
  342. agreeNumInfo: 0,
  343. firstId: undefined,
  344. typeArr: [],
  345. selectBtn: false,
  346. first: undefined,
  347. second: undefined,
  348. third: undefined,
  349. successUp: false,
  350. options: [
  351. {
  352. value: 'CN',
  353. label: '中文',
  354. },
  355. {
  356. value: 'EN',
  357. label: 'English',
  358. },
  359. {
  360. value: 'FR',
  361. label: 'Français',
  362. },
  363. {
  364. value: 'RU',
  365. label: 'Русский',
  366. },
  367. ],
  368. language: {
  369. value: 'CN',
  370. },
  371. optionList: [],
  372. }
  373. },
  374. mounted() {
  375. let user = JSON.parse(sessionStorage.getItem('mettingUser'))
  376. console.log(user)
  377. if (user == null) {
  378. this.$router.push({ path: 'home' })
  379. } else {
  380. console.log('你好')
  381. }
  382. let language = sessionStorage.getItem('language')
  383. this.language.value = language
  384. this.initData()
  385. },
  386. methods: {
  387. //全部赞成
  388. getAgrees() {
  389. this.num = false
  390. this.optionList.forEach((itema, index, array) => {
  391. if (itema.type != 0) {
  392. itema.type = 0
  393. this.agreeNumInfo += 1
  394. } else {
  395. this.agreeNumInfo += 1
  396. }
  397. })
  398. },
  399. allAgree() {
  400. let id = JSON.parse(sessionStorage.getItem('mettingUser')).id
  401. let params = {
  402. language: this.language.value,
  403. meetingGeidcoUserId: id,
  404. }
  405. getMeetingGeidcoLeaders(params).then((res) => {
  406. console.log(res)
  407. console.log(this.language.value)
  408. this.optionList = res.data.meetingGeidcoLeaders
  409. this.firstId = res.data.meetingGeidcoLeaders[0].id
  410. //初始化投票
  411. this.optionList.forEach((itema, index, arry) => {
  412. this.typeArr.push({
  413. leaderId: itema.id,
  414. type: 0,
  415. language: this.language.value,
  416. })
  417. // console.log(this.typeArr);
  418. })
  419. })
  420. },
  421. getLanguage() {
  422. let language = this.language.value
  423. sessionStorage.setItem('language', language)
  424. console.log(this.language.value)
  425. if (language == 'CN') {
  426. console.log(111)
  427. this.$message.success('正在切换语言...')
  428. }
  429. if (language == 'EN') {
  430. this.$message.success('Switching languages...')
  431. }
  432. if (language == 'FR') {
  433. this.$message.success('Changer de langue...')
  434. }
  435. if (language == 'RU') {
  436. this.$message.success('Он меняет язык.')
  437. }
  438. setTimeout(() => {
  439. location.reload()
  440. }, 500)
  441. this.initData()
  442. },
  443. toSuccess() {
  444. this.$router.push({ path: 'ballotDrawingBoardPalette' })
  445. },
  446. initData() {
  447. let id = JSON.parse(sessionStorage.getItem('mettingUser')).id
  448. let params = {
  449. language: this.language.value,
  450. meetingGeidcoUserId: id,
  451. }
  452. getMeetingGeidcoLeaders(params).then((res) => {
  453. console.log(res)
  454. console.log(this.language.value)
  455. this.optionList = res.data.meetingGeidcoLeaders
  456. this.firstId = res.data.meetingGeidcoLeaders[0].id
  457. //初始化投票
  458. this.optionList.forEach((itema, index, arry) => {
  459. this.typeArr.push({
  460. leaderId: itema.id,
  461. type: itema.type,
  462. language: this.language.value,
  463. })
  464. // console.log(this.typeArr);
  465. })
  466. })
  467. },
  468. // 返回首页
  469. toHome() {
  470. this.$router.push({ path: 'home' })
  471. },
  472. getSuccess() {
  473. this.selectBtn = true
  474. this.typeArr.forEach((itema, index, array) => {
  475. if (itema.type == 0) {
  476. this.agreeNum += 1
  477. } else if (itema.type == 1) {
  478. this.disNum += 1
  479. } else if (itema.type == 2) {
  480. this.noNum += 1
  481. }
  482. console.log(this.agreeNum, this.disNum, this.noNum, '事项总结')
  483. })
  484. },
  485. sureToGet() {
  486. let id = JSON.parse(sessionStorage.getItem('mettingUser')).id
  487. let meetingGeidcoLeaderNumDetail = this.typeArr
  488. getToken()
  489. .then((res) => {
  490. let token = res.data
  491. console.log('token====', token)
  492. saveOrUpdateLeader(
  493. JSON.stringify(meetingGeidcoLeaderNumDetail),
  494. id,
  495. token
  496. ).then((res) => {
  497. console.log(res)
  498. this.successUp = true
  499. this.selectBtn = false
  500. // this.$message.success('投票成功')
  501. this.disabled = true
  502. setTimeout(() => {
  503. this.$router.push({ path: 'ballotDrawingBoardPalette' })
  504. }, 1500)
  505. })
  506. })
  507. .catch((error) => {})
  508. // submitHandler((token) => {
  509. // saveOrUpdateLeader(JSON.stringify(meetingGeidcoLeaderNumDetail), id, token).then((res) => {
  510. // console.log(res);
  511. // this.successUp = true
  512. // this.selectBtn = false
  513. // // this.$message.success('投票成功')
  514. // this.disabled = true
  515. // setTimeout(() => {
  516. // this.$router.push({ path: 'ballotDrawingBoardPalette' });
  517. // }, 1500)
  518. // })
  519. // })
  520. this.disabled = true
  521. },
  522. notToGet() {
  523. this.selectBtn = false
  524. this.agreeNum = 0
  525. this.disNum = 0
  526. this.noNum = 0
  527. },
  528. },
  529. }
  530. </script>
  531. <style scoped>
  532. * {
  533. padding: 0;
  534. margin: 0;
  535. box-sizing: border-box;
  536. /* vertical-align: text-top; */
  537. }
  538. html,
  539. body,
  540. #app {
  541. width: 100%;
  542. height: 100%;
  543. }
  544. .action-details1 {
  545. display: inline-block;
  546. width: 32px;
  547. height: 32px;
  548. text-align: center;
  549. transform: translateX(-83px) translateY(20px);
  550. }
  551. .action-details2 {
  552. display: inline-block;
  553. width: 32px;
  554. height: 32px;
  555. text-align: center;
  556. transform: translateX(-83px) translateY(20px);
  557. }
  558. .action-details3 {
  559. display: inline-block;
  560. width: 32px;
  561. height: 32px;
  562. text-align: center;
  563. transform: translateX(-115px) translateY(20px);
  564. }
  565. .action-details4 {
  566. display: inline-block;
  567. width: 32px;
  568. height: 32px;
  569. text-align: center;
  570. transform: translateX(-115px) translateY(20px);
  571. }
  572. .action-details1 > img {
  573. width: 100%;
  574. height: 100%;
  575. }
  576. .action-details2 > img {
  577. width: 100%;
  578. height: 100%;
  579. }
  580. .action-details3 > img {
  581. width: 100%;
  582. height: 100%;
  583. }
  584. .action-details4 > img {
  585. width: 100%;
  586. height: 100%;
  587. }
  588. .topimg {
  589. width: 100%;
  590. /* height: 450px; */
  591. background-color: #cdebf7;
  592. }
  593. .topimg > img {
  594. width: 100%;
  595. padding: 0;
  596. position: relative;
  597. }
  598. .backButton {
  599. width: 134px;
  600. height: 41px;
  601. position: absolute;
  602. top: 46px;
  603. right: 380px;
  604. }
  605. .backButton:hover {
  606. cursor: pointer;
  607. }
  608. .backButton > img {
  609. width: 100%;
  610. height: 100%;
  611. }
  612. .body-info {
  613. padding: 0;
  614. width: 100%;
  615. background-color: #f2f2f2;
  616. }
  617. .body-box {
  618. width: 100%;
  619. height: 50px;
  620. background-color: #f2f2f2;
  621. }
  622. .main-info {
  623. width: 1178px;
  624. margin: 0 auto;
  625. transform: translateY(20px);
  626. background-color: #ffffff;
  627. position: relative;
  628. }
  629. .bottom-list {
  630. width: 100%;
  631. height: 300px;
  632. background-color: #f2f2f2;
  633. }
  634. .select-info {
  635. margin-left: 68%;
  636. margin-bottom: 70px;
  637. transform: translateY(40px);
  638. }
  639. .table-box {
  640. width: 100%;
  641. height: 39px;
  642. }
  643. .table-info {
  644. width: 1100px;
  645. margin: 0 auto;
  646. }
  647. .table-bottom {
  648. width: 100%;
  649. height: 50px;
  650. }
  651. .table-title {
  652. width: 100%;
  653. height: 77px;
  654. background-color: #e9e9e9;
  655. border: 1px solid #d3d3d3;
  656. display: flex;
  657. }
  658. .table-title-info {
  659. width: 100%;
  660. height: 90px;
  661. background-color: #e9e9e9;
  662. border: 1px solid #d3d3d3;
  663. display: flex;
  664. }
  665. .title-text {
  666. width: 72%;
  667. height: 77px;
  668. font-size: 25px;
  669. padding-left: 15px;
  670. font-family: AlibabaPuHuiTiR;
  671. font-weight: 400;
  672. color: #666666;
  673. word-wrap: break-word;
  674. overflow: hidden;
  675. }
  676. .title-text-cn {
  677. width: 72%;
  678. height: 77px;
  679. line-height: 77px;
  680. text-align: center;
  681. font-size: 25px;
  682. padding-left: 15px;
  683. font-family: AlibabaPuHuiTiR;
  684. font-weight: 400;
  685. color: #666666;
  686. word-wrap: break-word;
  687. overflow: hidden;
  688. }
  689. .table-action {
  690. width: 28%;
  691. height: 77px;
  692. line-height: 77px;
  693. font-size: 22px;
  694. font-family: AlibabaPuHuiTiR;
  695. font-weight: 400;
  696. color: #666666;
  697. border-left: 1px solid #d3d3d3;
  698. display: flex;
  699. justify-content: space-around;
  700. }
  701. .table-detail:nth-child(2n + 1) {
  702. width: 100%;
  703. height: 77px;
  704. border-left: 1px solid #d3d3d3;
  705. border-right: 1px solid #d3d3d3;
  706. background-color: #f0f9fd;
  707. display: flex;
  708. }
  709. .table-detail {
  710. width: 100%;
  711. height: 77px;
  712. border-left: 1px solid #d3d3d3;
  713. border-right: 1px solid #d3d3d3;
  714. background-color: #fff;
  715. display: flex;
  716. }
  717. .table-detail:last-child {
  718. border-bottom: 1px solid #d3d3d3;
  719. }
  720. .detail-text {
  721. width: 72%;
  722. height: 77px;
  723. font-size: 20px;
  724. font-family: AlibabaPuHuiTiR;
  725. font-weight: 400;
  726. color: #666666;
  727. padding-top: 18px;
  728. margin-left: 30px;
  729. padding-right: 35px;
  730. word-wrap: break-word;
  731. overflow: hidden;
  732. }
  733. .detail-text-cn {
  734. width: 72%;
  735. height: 77px;
  736. line-height: 77px;
  737. font-size: 20px;
  738. font-family: AlibabaPuHuiTiR;
  739. font-weight: 400;
  740. color: #666666;
  741. margin-left: 30px;
  742. padding-right: 35px;
  743. word-wrap: break-word;
  744. overflow: hidden;
  745. }
  746. .title-text-info {
  747. width: 60%;
  748. height: 90px;
  749. font-size: 22px;
  750. padding-left: 15px;
  751. font-family: AlibabaPuHuiTiR;
  752. font-weight: 400;
  753. color: #666666;
  754. word-wrap: break-word;
  755. overflow: hidden;
  756. }
  757. .title-text-info-fr {
  758. width: 60%;
  759. height: 90px;
  760. font-size: 22px;
  761. padding-left: 15px;
  762. padding-top: 18px;
  763. font-family: AlibabaPuHuiTiR;
  764. font-weight: 400;
  765. color: #666666;
  766. word-wrap: break-word;
  767. overflow: hidden;
  768. }
  769. .table-action-info {
  770. width: 40%;
  771. height: 90px;
  772. line-height: 90px;
  773. font-size: 20px;
  774. font-family: AlibabaPuHuiTiR;
  775. font-weight: 400;
  776. color: #666666;
  777. border-left: 1px solid #d3d3d3;
  778. display: flex;
  779. justify-content: space-around;
  780. }
  781. .detail-text-info {
  782. width: 60%;
  783. height: 77px;
  784. font-size: 20px;
  785. font-family: AlibabaPuHuiTiR;
  786. font-weight: 400;
  787. color: #666666;
  788. padding-top: 18px;
  789. margin-left: 30px;
  790. padding-right: 60px;
  791. word-wrap: break-word;
  792. overflow: hidden;
  793. }
  794. .detail-action-info {
  795. width: 40%;
  796. height: 77px;
  797. display: flex;
  798. margin-left: -30px;
  799. justify-content: space-around;
  800. border-left: 1px solid #d3d3d3;
  801. }
  802. .detail-action {
  803. width: 28%;
  804. height: 77px;
  805. display: flex;
  806. margin-left: -30px;
  807. justify-content: space-around;
  808. border-left: 1px solid #d3d3d3;
  809. }
  810. .only-first {
  811. width: 28%;
  812. height: 77px;
  813. margin-left: -30px;
  814. border-left: 1px solid #d3d3d3;
  815. }
  816. .action-only {
  817. width: 30px;
  818. height: 30px;
  819. }
  820. .action-only-fr {
  821. width: 30px;
  822. height: 30px;
  823. }
  824. .action-only > img {
  825. margin-left: 35px;
  826. transform: translateY(23px);
  827. width: 10%;
  828. height: 40%;
  829. }
  830. .action-only-fr > img {
  831. margin-left: 59px;
  832. transform: translateY(23px);
  833. width: 10%;
  834. height: 40%;
  835. }
  836. .action-1 {
  837. transform: translateY(23px);
  838. width: 30px;
  839. height: 30px;
  840. }
  841. .action-1 > img {
  842. width: 100%;
  843. height: 100%;
  844. }
  845. .action-2 {
  846. transform: translateY(26px);
  847. width: 24px;
  848. height: 24px;
  849. }
  850. .action-2 > img {
  851. width: 100%;
  852. height: 100%;
  853. }
  854. .action-3 {
  855. transform: translateY(23px);
  856. width: 30px;
  857. height: 20px;
  858. }
  859. .action-3 > img {
  860. width: 100%;
  861. height: 150%;
  862. }
  863. .sub-btn {
  864. width: 100%;
  865. height: 60px;
  866. margin-top: 45px;
  867. display: flex;
  868. }
  869. .return-btn {
  870. width: 100%;
  871. height: 60px;
  872. margin-top: 45px;
  873. cursor: pointer;
  874. }
  875. .return-sub {
  876. width: 200px;
  877. height: 60px;
  878. line-height: 60px;
  879. text-align: center;
  880. font-size: 25px;
  881. font-family: AlibabaPuHuiTiR;
  882. font-weight: 400;
  883. color: #ffffff;
  884. background: #ff7648;
  885. border-radius: 10px;
  886. margin-left: 50%;
  887. transform: translateX(-50%);
  888. }
  889. .success-btn {
  890. width: 200px;
  891. height: 60px;
  892. line-height: 60px;
  893. text-align: center;
  894. background: #0099ff;
  895. border-radius: 10px;
  896. font-size: 22px;
  897. font-family: AlibabaPuHuiTiM;
  898. font-weight: 400;
  899. color: #ffffff;
  900. margin-left: 316px;
  901. }
  902. .up-sub {
  903. width: 200px;
  904. height: 60px;
  905. line-height: 60px;
  906. text-align: center;
  907. font-size: 25px;
  908. font-family: AlibabaPuHuiTiM;
  909. font-weight: 400;
  910. color: #ffffff;
  911. background: #ff7648;
  912. border-radius: 10px;
  913. /* margin-left: 139px; */
  914. margin-left: 50%;
  915. transform: translateX(-50%);
  916. }
  917. .big-success {
  918. width: 406px;
  919. height: 300px;
  920. background: #ffffff;
  921. box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.35);
  922. z-index: 999 !important;
  923. border-radius: 20px;
  924. position: relative;
  925. position: absolute;
  926. top: 70%;
  927. left: 387px;
  928. }
  929. .user-btn {
  930. width: 406px;
  931. height: 300px;
  932. background: #ffffff;
  933. box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.35);
  934. z-index: 999 !important;
  935. border-radius: 20px;
  936. position: relative;
  937. position: absolute;
  938. top: 70%;
  939. left: 387px;
  940. }
  941. .user-btn-text1 {
  942. width: 100%;
  943. padding: 0 30px;
  944. text-align: center;
  945. margin-top: 18%;
  946. font-size: 20px;
  947. font-family: PingFangSC-Medium, PingFang SC;
  948. font-weight: 600;
  949. color: rgba(0, 0, 0, 0.85);
  950. }
  951. .btn-user-info1 {
  952. width: 100%;
  953. height: 40px;
  954. display: flex;
  955. justify-content: space-around;
  956. margin-top: 15%;
  957. }
  958. .user-btn-text {
  959. width: 100%;
  960. padding: 0 30px;
  961. text-align: center;
  962. margin-top: 10%;
  963. font-size: 20px;
  964. font-family: PingFangSC-Medium, PingFang SC;
  965. font-weight: 600;
  966. color: rgba(0, 0, 0, 0.85);
  967. }
  968. .btn-user-info {
  969. width: 100%;
  970. height: 40px;
  971. display: flex;
  972. justify-content: space-around;
  973. margin-top: 12%;
  974. }
  975. .btn-user-info-ok {
  976. width: 106px;
  977. height: 56px;
  978. background: #00b4ff;
  979. border-radius: 6px;
  980. text-align: center;
  981. line-height: 56px;
  982. font-size: 20px;
  983. font-family: PingFangSC-Regular, PingFang SC;
  984. color: #fff;
  985. cursor: pointer;
  986. }
  987. .btn-user-info-canel {
  988. width: 106px;
  989. height: 56px;
  990. background: #c0c0c0;
  991. border-radius: 6px;
  992. text-align: center;
  993. line-height: 56px;
  994. font-size: 20px;
  995. font-family: PingFangSC-Regular, PingFang SC;
  996. color: #fff;
  997. cursor: pointer;
  998. }
  999. .pic-model {
  1000. width: 86px;
  1001. height: 85px;
  1002. margin-left: 50%;
  1003. transform: translateX(-50%);
  1004. margin-top: 15%;
  1005. }
  1006. .text-success {
  1007. width: 406px;
  1008. height: 24px;
  1009. line-height: 24px;
  1010. font-size: 25px;
  1011. text-align: center;
  1012. margin-top: 30px;
  1013. font-family: AlibabaPuHuiTiR;
  1014. font-weight: 400;
  1015. color: #65c823;
  1016. }
  1017. .pic-model > img {
  1018. width: 100%;
  1019. height: 100%;
  1020. }
  1021. .success-btn:hover {
  1022. cursor: pointer;
  1023. }
  1024. .up-sub:hover {
  1025. cursor: pointer;
  1026. }
  1027. </style>