print-order-info.vue 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827
  1. <template>
  2. <el-dialog
  3. :title="
  4. !dataForm.orderNumber
  5. ? this.$i18n.t('crud.addTitle')
  6. : this.$i18n.t('order.orderDetail')
  7. "
  8. :close-on-click-modal="false"
  9. :visible.sync="visible"
  10. :append-to-body="true"
  11. width="80%"
  12. @close="closeDialog"
  13. v-if="visible"
  14. top="1vh"
  15. >
  16. <div class="new-page-title">
  17. <div class="line" />
  18. <div class="text">
  19. {{
  20. !dataForm.orderNumber
  21. ? this.$i18n.t('crud.addTitle')
  22. : this.$i18n.t('order.orderDetail')
  23. }}
  24. </div>
  25. </div>
  26. <el-form
  27. :model="dataForm"
  28. ref="dataForm"
  29. @keyup.enter.native="dataFormSubmit()"
  30. label-width="auto"
  31. >
  32. <div class="mod-order-orderInfo">
  33. <div class="content">
  34. <div class="order-number">
  35. <div class="number">
  36. <span class="text">{{ $t("order.number") }}:</span>
  37. {{ dataForm.orderNumber }}
  38. </div>
  39. <div class="time">
  40. <span class="text">{{ $t("order.createTime") }}:</span>
  41. {{ dataForm.createTime }}
  42. </div>
  43. </div>
  44. <div :class="['order-info',$t('language') === 'English'?'flex-wrap':'']">
  45. <div :class="['info-item',$t('language') === 'English'?'small-width':'']" v-if="dataForm.userAddrOrder && dataForm.userAddrOrder !== null">
  46. <div class="item-tit">
  47. {{ $t("order.recipientInformation") }}
  48. </div>
  49. <div class="item">
  50. <div class="text">
  51. {{
  52. dataForm.dvyType === 2
  53. ? $t("order.deliveryPerson")
  54. : $t("publics.addressee")
  55. }}:
  56. </div>
  57. <div class="res">{{ dataForm.userAddrOrder.receiver }}</div>
  58. </div>
  59. <div class="item">
  60. <div class="text">{{ $t("shop.contactTel") }}:</div>
  61. <div class="res">{{ dataForm.userAddrOrder.mobile }}</div>
  62. </div>
  63. <div class="item" v-if="dataForm.dvyType !== 2">
  64. <div class="text">{{ $t("publics.deliveryAddr") }}:</div>
  65. <div class="res">
  66. {{ dataForm.userAddrOrder.province
  67. }}{{ dataForm.userAddrOrder.city
  68. }}{{ dataForm.userAddrOrder.area
  69. }}{{ dataForm.userAddrOrder.street
  70. }}{{ dataForm.userAddrOrder.addr }}
  71. </div>
  72. </div>
  73. </div>
  74. </div>
  75. <div class="goods-list">
  76. <el-table
  77. :data="prodList"
  78. :default-expand-all="true"
  79. header-cell-class-name="table-header"
  80. row-class-name="table-row">
  81. <el-table-column type="expand">
  82. <template slot-scope="scope">
  83. <OrderCardItem :orderItem="scope.row" :showFlagBtn="false"/>
  84. </template>
  85. </el-table-column>
  86. <el-table-column prop="" :label="this.$i18n.t('home.product')">
  87. <template slot-scope="scope">
  88. <!-- 商品信息 -->
  89. <div class="df">
  90. <prod-pic
  91. width="60"
  92. :pic="scope.row.pic"
  93. class="prod-pic"
  94. ></prod-pic>
  95. <div class="name">
  96. <div>
  97. <span v-if="scope.row.giveawayOrderItemId" class="gift-icon">{{ $t("order.giveawayPord") }}</span>
  98. <span>{{ scope.row.prodName }}</span>
  99. </div>
  100. <div
  101. class="order-status"
  102. v-if="
  103. scope.row.returnMoneySts &&
  104. scope.row.returnMoneySts < 5 &&
  105. scope.row.returnMoneySts > 0
  106. "
  107. >
  108. {{
  109. $t("order.refunding")
  110. }}
  111. </div>
  112. <div
  113. class="order-status"
  114. v-if="
  115. scope.row.returnMoneySts &&
  116. scope.row.returnMoneySts === 5
  117. "
  118. >
  119. {{
  120. $t("order.refundsuccessfully")
  121. }}
  122. </div>
  123. </div>
  124. </div>
  125. <!-- / 商品信息 -->
  126. </template>
  127. </el-table-column>
  128. <el-table-column
  129. prop="count"
  130. :label="this.$i18n.t('order.quantity')"
  131. width="180"
  132. align="center"
  133. >
  134. <template slot-scope="scope">
  135. <span>{{ scope.row.prodCount }}</span>
  136. </template>
  137. </el-table-column>
  138. <el-table-column
  139. prop="count"
  140. label=""
  141. width="180"
  142. align="center"
  143. >
  144. </el-table-column>
  145. <el-table-column
  146. prop="totalPrice"
  147. label=""
  148. width="180"
  149. align="center"
  150. >
  151. </el-table-column>
  152. </el-table>
  153. <!--<div class="goods-total">
  154. <div class="text-box">
  155. <div class="item">
  156. <div class="text">{{ $t("order.prodTotalPrice") }}:</div>
  157. <div class="number">¥{{ dataForm.total }}</div>
  158. </div>
  159. <div class="item" v-if="dataForm.reduceAmount">
  160. <div class="text">{{ $t("marketing.discountedPrice") }}:</div>
  161. <div class="number">¥{{ dataForm.reduceAmount }}</div>
  162. </div>
  163. <div class="item" v-if="dataForm.freightAmount">
  164. <div class="text">{{ $t("order.shippingFees") }}:</div>
  165. <div class="number">¥{{ dataForm.freightAmount }}</div>
  166. </div>
  167. <div class="item act-price">
  168. <div class="text">{{ $t("order.actualAmount") }}:</div>
  169. <div class="number">¥{{ dataForm.actualTotal }}{{ dataForm.score?" + "+ dataForm.score +$t("order.integral"):''}}</div>
  170. </div>
  171. </div>
  172. </div>-->
  173. </div>
  174. </div>
  175. </div>
  176. </el-form>
  177. </el-dialog>
  178. </template>
  179. <script>
  180. import OrderAddrUpdate from '@/components/order-addr-update'
  181. import OrderRemarkUpdate from '@/components/order-remark-update'
  182. import ProdPic from '@/components/prod-pic'
  183. import OrderCardItem from '@/components/order-card-item'
  184. import OrderPrintCreate from '@/components/order-print-create'
  185. import OrderPdfGenerate from '@/components/order-pdf-generate'
  186. export default {
  187. name: 'order-info',
  188. data () {
  189. return {
  190. visible: false,
  191. dataForm: {
  192. orderId: 0,
  193. virtualRemark: '',
  194. orderNumber: '',
  195. remarks: '',
  196. shopRemarks: '',
  197. total: 0,
  198. deliveryExpresses: [],
  199. actualTotal: 0,
  200. dvyType: '',
  201. status: 1,
  202. addrOrderId: 0,
  203. nickName: '',
  204. orderItems: [],
  205. orderTime: '',
  206. updateTime: '',
  207. payTime: '',
  208. dvyTime: '',
  209. finallyTime: '',
  210. cancelTime: '',
  211. orderType: '',
  212. userAddrOrder: {},
  213. shopId:null,
  214. auditStatus: 0
  215. },
  216. resourcesUrl: process.env.VUE_APP_RESOURCES_URL,
  217. // 商品列表
  218. prodList: [],
  219. }
  220. },
  221. components: {
  222. OrderAddrUpdate,
  223. ProdPic,
  224. OrderCardItem,
  225. },
  226. watch: {
  227. },
  228. created () {
  229. },
  230. methods: {
  231. closeDialog(){
  232. this.visible = false;
  233. this.$emit('printOrderClose');
  234. },
  235. init (params) {
  236. this.dataForm.orderNumber = params.orderNumber || 0
  237. this.dataForm.shopId = params.shopId || null
  238. this.orderStatus = params.status || null
  239. this.visible = true
  240. this.$nextTick(() => {
  241. this.$refs['dataForm'].resetFields()
  242. })
  243. if (this.dataForm.orderNumber) {
  244. // 修改
  245. this.$http({
  246. url: this.$http.adornUrl(`/printOrder/printOrder/findPrintOrderInfo`),
  247. method: 'GET',
  248. params: this.$http.adornParams({orderNumber: this.dataForm.orderNumber})
  249. }).then(({ data }) => {
  250. this.dataForm = data
  251. // 处理商品列表
  252. this.prodList = data.orderItemList
  253. if (data.orderItemList.length === 1 &&
  254. data.orderItemList[0].giveawayList &&
  255. data.orderItemList[0].giveawayList.length) {
  256. // 单个商品且有赠品时,将主商品和赠品放在同一级列表中展示
  257. this.prodList = [...data.orderItemList, ...data.orderItemList[0].giveawayList]
  258. }
  259. })
  260. }
  261. },
  262. }
  263. }
  264. </script>
  265. <style>
  266. .detail-dialog .el-dialog {
  267. min-width: 950px;
  268. margin-top: 10vh !important;
  269. }
  270. .detail-dialog .goods-list .has-gutter th.is-leaf {
  271. background: #f7f8fa;
  272. color: #333;
  273. border-bottom: 1px solid #ebeef5;
  274. font-weight: 400;
  275. border-right: 0;
  276. }
  277. .detail-dialog .goods-list .el-table td {
  278. border-right: 0;
  279. }
  280. .left-line {
  281. /* padding-left: 30px;
  282. padding-bottom: 10px;
  283. padding-top: 15px;
  284. margin-left: -30px;
  285. margin-top: -10px !important;
  286. background-color: #fff; */
  287. border-left: 1px solid #fff !important;
  288. }
  289. </style>
  290. <style lang="scss" scoped>
  291. .mod-order-orderInfo {
  292. height: 100%;
  293. width: 100%;
  294. font: 14px Arial, "PingFang SC", "Hiragino Sans GB", STHeiti,
  295. "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif;
  296. color: #333;
  297. .order-number {
  298. display: flex;
  299. align-items: center;
  300. font-size: 14px;
  301. margin-left: 20px;
  302. }
  303. .order-number .text {
  304. color: #999;
  305. }
  306. .order-number .number,
  307. .order-number .time {
  308. display: flex;
  309. align-items: center;
  310. }
  311. .order-number .time {
  312. margin: 0 15px;
  313. }
  314. .order-state {
  315. position: relative;
  316. margin-top: 15px;
  317. border: 1px solid #eee;
  318. display: flex;
  319. align-items: center;
  320. justify-content: center;
  321. }
  322. .order-state .state-box {
  323. padding: 20px 15px;
  324. width: 40%;
  325. border-right: 1px solid #eee;
  326. }
  327. .order-state .state-box .state {
  328. font-size: 20px;
  329. font-weight: 700;
  330. line-height: 28px;
  331. }
  332. .order-state .state-box .state-des {
  333. margin-top: 10px;
  334. color: #999;
  335. }
  336. .order-state .state-box .actions {
  337. margin-top: 15px;
  338. }
  339. .order-state .state-box .actions .item {
  340. display: flex;
  341. align-items: center;
  342. }
  343. .order-state .state-box .actions .item .el-button--text {
  344. cursor: pointer;
  345. }
  346. .order-state .state-box .actions .item .item-btn {
  347. padding: 3px 10px;
  348. border: 1px solid #eee;
  349. border-radius: 2px;
  350. }
  351. .order-state .state-steps {
  352. flex: 1;
  353. // margin-left: -80px;
  354. padding-bottom: 10px;
  355. }
  356. .order-state .state-steps .el-form-item {
  357. margin-bottom: 0;
  358. }
  359. .packages {
  360. margin-top: 15px;
  361. }
  362. .packages .p-tab {
  363. display: flex;
  364. align-items: center;
  365. width: 100%;
  366. background: #F7F8FA;
  367. border: 1px solid #E8E9EC;
  368. border-bottom: none;
  369. height: 44px;
  370. }
  371. .packages .p-tab .item {
  372. background: #F7F8FA;
  373. // border: 1px solid #EAEAEA;
  374. margin-right: -1px;
  375. margin-bottom: -1px;
  376. position: relative;
  377. text-align: center;
  378. line-height: 44px;
  379. width: 90px;
  380. cursor: pointer;
  381. font-size: 12px;
  382. font-weight: bold;
  383. height: 44px;
  384. // border-right: 1px solid #EAEAEA;
  385. }
  386. .packages .p-tab .item:first-child {
  387. // border-radius: 3px 0 0 0;
  388. border-left: none;
  389. }
  390. .packages .p-tab .item:last-child {
  391. // border-radius: 0 3px 0 0;
  392. border-left: none;
  393. }
  394. .packages .p-tab .item.active {
  395. background: #fff;
  396. // border: 1px solid #E8E9EC;
  397. }
  398. .packages .p-con {
  399. border: 1px solid #eee;
  400. padding: 20px;
  401. display: flex;
  402. }
  403. .packages .p-con .deliver-msg {
  404. width: 40%;
  405. min-width: 430px;
  406. }
  407. .packages .p-con .deliver-msg .d-item {
  408. display: flex;
  409. align-items: center;
  410. margin-bottom: 10px;
  411. }
  412. .packages .p-con .deliver-msg .d-item .text {
  413. width: 80px;
  414. }
  415. .packages .p-con .deliver-msg .d-goods {
  416. position: relative;
  417. width: 340px;
  418. margin: 30px 0 0;
  419. }
  420. .packages .p-con .deliver-msg .d-goods.over {
  421. margin: 30px 32px 0;
  422. }
  423. .packages .p-con .deliver-msg .d-goods .arrow {
  424. position: absolute;
  425. top: 28px;
  426. width: 22px;
  427. height: 22px;
  428. background: #eee;
  429. border-radius: 50%;
  430. cursor: pointer;
  431. display: none;
  432. }
  433. .packages .p-con .deliver-msg .d-goods .arrow.disable {
  434. opacity: 0.5;
  435. cursor: not-allowed;
  436. }
  437. .packages .p-con .deliver-msg .d-goods.over .arrow {
  438. display: block;
  439. }
  440. .packages .p-con .deliver-msg .d-goods .arrow.prev {
  441. left: -32px;
  442. }
  443. .packages .p-con .deliver-msg .d-goods .arrow.next {
  444. right: -32px;
  445. -webkit-transform: rotate(180deg);
  446. -moz-transform: rotate(180deg);
  447. transform: rotate(180deg);
  448. }
  449. .packages .p-con .deliver-msg .d-goods .arrow::before {
  450. position: absolute;
  451. left: 9px;
  452. top: 8px;
  453. display: block;
  454. width: 5px;
  455. height: 5px;
  456. content: " ";
  457. font-size: 0;
  458. border: 1px solid #666;
  459. border-width: 1px 1px 0 0;
  460. -webkit-transform: rotate(225deg);
  461. -moz-transform: rotate(225deg);
  462. transform: rotate(225deg);
  463. }
  464. .packages .p-con .deliver-msg .d-goods .item-goods {
  465. position: relative;
  466. width: 340px;
  467. height: 80px;
  468. overflow: hidden;
  469. }
  470. .packages .p-con .deliver-msg .d-goods .goods-box {
  471. position: absolute;
  472. left: 0;
  473. display: flex;
  474. margin-top: 0;
  475. -webkit-transition: all 0.3s;
  476. -moz-transition: all 0.3s;
  477. transition: all 0.3s;
  478. }
  479. .packages .p-con .deliver-msg .d-goods .goods-box .item {
  480. margin-right: 10px;
  481. font-size: 12px;
  482. cursor: pointer;
  483. }
  484. .packages .p-con .deliver-msg .d-goods .goods-box .item:last-child {
  485. margin: 0;
  486. }
  487. .packages .p-con .deliver-msg .d-goods .goods-box .item .img {
  488. width: 60px;
  489. height: 60px;
  490. font-size: 0;
  491. margin-bottom: 4px;
  492. position: relative;
  493. }
  494. .packages .p-con .deliver-msg .d-goods .goods-box .item .img img {
  495. width: 100%;
  496. height: 100%;
  497. }
  498. .packages .p-con .deliver-msg .d-goods .goods-box .item .img .number {
  499. position: absolute;
  500. bottom: 0;
  501. right: 0;
  502. background: rgba(0, 0, 0, 0.3);
  503. color: #fff;
  504. border-radius: 6px 0 6px 0;
  505. font-size: 12px;
  506. height: 16px;
  507. line-height: 16px;
  508. padding: 0 5px;
  509. }
  510. .packages .p-con .deliver-msg .d-goods .goods-box .item .name {
  511. width: 60px;
  512. height: 16px;
  513. line-height: 16px;
  514. white-space: nowrap;
  515. overflow: hidden;
  516. text-overflow: ellipsis;
  517. color: #999;
  518. }
  519. .packages .p-con .logistics {
  520. flex: 1;
  521. }
  522. .packages .p-con .logistics .l-tit {
  523. display: flex;
  524. }
  525. .packages .p-con .logistics .l-tit .l-state {
  526. color: #155BD4;
  527. }
  528. .packages .p-con .logistics .logistics-box {
  529. height: 175px;
  530. overflow-y: scroll;
  531. position: relative;
  532. margin-top: 15px;
  533. }
  534. .packages .p-con .logistics .logistics-box::before {
  535. position: absolute;
  536. left: 0;
  537. top: 0;
  538. display: block;
  539. width: 10px;
  540. height: 10px;
  541. content: " ";
  542. font-size: 0;
  543. background: #fff;
  544. z-index: 1;
  545. }
  546. .packages .p-con .logistics .logistics-box::after {
  547. position: absolute;
  548. left: 6px;
  549. top: 0;
  550. display: block;
  551. // width: 1px;
  552. height: 100%;
  553. content: " ";
  554. font-size: 0;
  555. background: #eee;
  556. z-index: 0;
  557. }
  558. .packages .p-con .logistics .logistics-box .item {
  559. padding: 0px 0 40px 25px;
  560. position: relative;
  561. margin-left: 6px;
  562. border-left: 1px solid #eee;
  563. }
  564. .packages .p-con .logistics .logistics-box .item::before {
  565. position: absolute;
  566. left: -10px;
  567. top: 0px;
  568. display: block;
  569. width: 19px;
  570. height: 19px;
  571. border-radius: 50%;
  572. content: " ";
  573. font-size: 0;
  574. background: #ccc;
  575. border: 5px solid #fff;
  576. z-index: 2;
  577. }
  578. .packages .p-con .logistics .logistics-box .item:first-child:before {
  579. background: #c00;
  580. }
  581. .packages .p-con .logistics .logistics-box .item .time {
  582. color: #999;
  583. }
  584. .packages .p-con .logistics .logistics-box .item .text {
  585. margin-top: 5px;
  586. width: 400px;
  587. }
  588. .order-info {
  589. background: #f7f8fa;
  590. margin-top: 15px;
  591. display: flex;
  592. padding: 20px;
  593. }
  594. .order-info .info-item {
  595. width: 25%;
  596. padding-right: 30px;
  597. }
  598. .order-info .info-item .item-tit {
  599. font-weight: 600;
  600. }
  601. .order-info .info-item .item {
  602. margin-top: 10px;
  603. display: flex;
  604. line-height: 20px;
  605. }
  606. .order-info .info-item .item .res{
  607. word-break: break-word;
  608. }
  609. .order-info .info-item .item .text {
  610. // width: 75px;
  611. white-space: nowrap;
  612. }
  613. .goods-list {
  614. margin-top: 15px;
  615. }
  616. .goods-list .df {
  617. display: flex;
  618. align-items: center;
  619. }
  620. .goods-list .df .prod-img {
  621. display: block;
  622. width: 60px !important;
  623. height: 60px !important;
  624. margin-right: 5px;
  625. }
  626. .goods-list .df .prod-pic {
  627. max-width: 60px;
  628. margin-right: 6px;
  629. flex: 1;
  630. }
  631. .goods-list .df .name {
  632. line-height: 20px;
  633. flex: 1;
  634. }
  635. .goods-list .df .gift-icon {
  636. display: inline-block;
  637. min-width: 34px;
  638. max-height: 21px;
  639. text-align: center;
  640. padding: 4px;
  641. border-radius: 4px;
  642. background: #e43130;
  643. color: #fff;
  644. font-size: 13px;
  645. line-height: 1em;
  646. margin-right: 5px;
  647. }
  648. .goods-list .goods-total {
  649. display: flex;
  650. justify-content: flex-end;
  651. margin-top: 20px;
  652. }
  653. .goods-list .goods-total .item {
  654. display: flex;
  655. align-items: center;
  656. justify-content: space-between;
  657. color: #999;
  658. margin-top: 5px;
  659. }
  660. .goods-list .goods-total .item .text {
  661. max-width: 220px;
  662. text-align: right;
  663. }
  664. .goods-list .goods-total .item .number {
  665. width: 150px;
  666. text-align: center;
  667. }
  668. .goods-list .goods-total .item.act-price {
  669. margin-top: 20px;
  670. color: #333;
  671. font-weight: 600;
  672. }
  673. .goods-list .goods-total .item.act-price .number {
  674. color: #c00;
  675. }
  676. .order-log {
  677. margin-top: 20px;
  678. border-top: 1px dashed #e9eaec;
  679. padding: 20px 10px;
  680. }
  681. .order-log .log-title {
  682. height: 30px;
  683. width: 100%;
  684. line-height: 30px;
  685. font-weight: bold;
  686. }
  687. .order-log .log-cont {
  688. color: #666666;
  689. margin-top: 10px;
  690. }
  691. .order-status {
  692. display: inline-block;
  693. width: auto;
  694. text-align: center;
  695. margin-top: 5px;
  696. padding: 0px 4px;
  697. border: 1px solid #e43130;
  698. border-radius: 2px;
  699. color: #e43130;
  700. font-size: 12px;
  701. }
  702. }
  703. // .el-step.is-horizontal .el-step__line {
  704. // top: 19px !important;
  705. // }
  706. div ::v-deep .el-step.is-center .el-step__head {
  707. display: flex;
  708. justify-content: center;
  709. align-items: center;
  710. }
  711. // 赠品
  712. .gift-prod .item {
  713. margin-top: 5px;
  714. line-height: 1em;
  715. .name {
  716. display: inline-block;
  717. margin-right: 15px;
  718. line-height: 20px;
  719. // max-width: 400px;
  720. // overflow: hidden;
  721. // text-overflow: ellipsis;
  722. // white-space: nowrap;
  723. }
  724. }
  725. // 小屏样式适配
  726. .flex-wrap {
  727. flex-wrap: wrap;
  728. }
  729. .small-width {
  730. width: 50% !important;
  731. margin-bottom: 10px;
  732. }
  733. .remarkSpan{
  734. display: inline-block;
  735. line-height: 24px;
  736. padding: 5px 0;
  737. margin-right: 10px;
  738. word-wrap: break-word;
  739. word-break: break-all;
  740. overflow: hidden;
  741. }
  742. </style>