enterpriseinfo.vue 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718
  1. <template>
  2. <div>
  3. <div class="com-mobile-header">
  4. <a @click="goLastPage"><i class="iconfont icon-fanhui"></i></a>
  5. <p>企业信息
  6. <span @click="updateInfo()" v-show="isAdmin && storeState === 'look'"><i class="iconfont icon-edit"></i>编辑</span>
  7. </p>
  8. </div>
  9. <div class="user-content mobile-fix-content">
  10. <div ref="userContent" class="user-center-content">
  11. <div class="scroll">
  12. <!-- 账户管理 -->
  13. <div class="si-wrap">
  14. <ul class="infoul infoul2" :class="{'no-edit': !isAdmin}" v-if="enterpriseInfo.enName">
  15. <li class="clearfix" :class="{noupdate: storeState !== 'look'}">
  16. <div class="name pull-left" :class="{update: storeState !== 'look'}" >企业名称:</div>
  17. <div class="text pull-left" :class="{update: storeState !== 'look'}">
  18. {{enterpriseInfo.enName || '-'}}
  19. </div>
  20. </li>
  21. <li class="clearfix" :class="{noupdate: storeState !== 'look', border: storeState !== 'look'}">
  22. <div class="name pull-left" :class="{update: storeState !== 'look'}">营业执照号:</div>
  23. <div class="text pull-left" :class="{update: storeState !== 'look'}">
  24. {{enterpriseInfo.enBussinessCode || '-'}}
  25. </div>
  26. </li>
  27. <li class="clearfix" :class="{border: storeState !== 'look'}" >
  28. <div class="name pull-left" :class="{update: storeState !== 'look'}">注册地址:</div>
  29. <div class="text pull-left" v-if="storeState === 'look'">
  30. {{enterpriseInfo.enAddress || '-'}}
  31. </div>
  32. <div v-else class="text pull-left">
  33. <input v-model="enterpriseInfo.enAddress" type="text" :disabled="enterpriseInfo.enValidCode === 2"/>
  34. </div>
  35. </li>
  36. <li class="clearfix" :class="{border: storeState !== 'look'}">
  37. <div class="name pull-left" :class="{update: storeState !== 'look'}">官网地址:</div>
  38. <div class="text pull-left" v-if="storeState === 'look'">
  39. {{enterpriseInfo.enUrl || '-'}}
  40. </div>
  41. <div v-else class="text pull-left">
  42. <input v-model="enterpriseInfo.enUrl" type="text"/>
  43. </div>
  44. </li>
  45. <li class="clearfix" :class="{border: storeState !== 'look'}">
  46. <div class="name pull-left" :class="{update: storeState !== 'look'}">所属行业:</div>
  47. <div class="text pull-left" v-if="storeState === 'look'">
  48. {{enterpriseInfo.enIndustry || '-'}}
  49. </div>
  50. <div v-else class="text pull-left clearfix" @click="isShowTypeAlert = true">
  51. <div class="text pull-left update" style="width: 4rem">
  52. {{enterpriseInfo.enIndustry || '-'}}
  53. </div>
  54. <div class="moreIcon pull-right">
  55. <img src="/images/store/default/moreicon.png" />
  56. </div>
  57. </div>
  58. </li>
  59. <li class="clearfix" :class="{border: storeState !== 'look'}">
  60. <div class="name pull-left" :class="{update: storeState !== 'look'}" style="margin-top: 0.04rem;">经营范围:</div>
  61. <div class="text pull-left" v-if="storeState === 'look'" >
  62. <span v-for="item in scopeLabel" class="label">
  63. {{item}}
  64. </span>
  65. <span class="text pull-left nolabel" v-if="scopeLabel.length == 0">
  66. 无标签信息
  67. </span>
  68. </div>
  69. <div v-else class="text pull-left">
  70. <label v-for="item in scopeLabel" class="labelKuang" v-show="AddBtnShow">
  71. <span class="Updatelabel">
  72. {{item}}
  73. </span>
  74. <span class="updatespan"@click="addBtn(item)">删除</span>
  75. </label>
  76. <span class="addBtn" v-show="AddBtnShow" @click="addBtn()"></span>
  77. <div class="commit" v-show="!AddBtnShow">
  78. <input type="text" placeholder="请输入不大于10个字符" maxlength="10" class="inputText" v-model="labelText"/>
  79. <button @click="saveLabel()">确定</button>
  80. </div>
  81. </div>
  82. </li>
  83. </ul>
  84. </div>
  85. <div class="control clearfix" v-if="storeState !== 'look'">
  86. <div class="cancel" @click="storeInfosave('cancel')">取消</div>
  87. <div class="save" @click="storeInfosave()">保存</div>
  88. </div>
  89. <!-- 选择行业弹窗 -->
  90. </div>
  91. </div>
  92. </div>
  93. <!-- /end 账户管理 -->
  94. <div class="mobile-modal" v-show="isShowTypeAlert">
  95. <div class="modal-content">
  96. <div class="content-title">
  97. 所属行业
  98. <i class="el-icon-close" @click="isShowTypeAlert = false"></i>
  99. </div>
  100. <div class="content-title-label clearfix" >
  101. <div v-for="(item, index) in ContentTitleArray" @click="chooseTitle(index)">
  102. <a :class="{active: index === titleActive}">{{item}}</a>
  103. </div>
  104. </div>
  105. <div class="content-info" v-if="TypeListShow.firstListShow">
  106. <div v-for="(item, index) in TypeList.firstList" class="content-info-item" :class="{active: index === TypeListActive.firstListActive}" @click="chooseItem('firstList', item, index)" >
  107. {{item}}<img src="/images/mobile/@2x/getlabel_icon.png" v-show="index === TypeListActive.firstListActive"/>
  108. </div>
  109. </div>
  110. <div class="content-info" v-if="TypeListShow.secondsListShow">
  111. <div v-for="(item, index) in TypeList.secondsList" class="content-info-item" :class="{active: index === TypeListActive.secondsListActive}" @click="chooseItem('secondsList', item, index)" >
  112. {{item}}
  113. <img src="/images/mobile/@2x/getlabel_icon.png" v-show="index === TypeListActive.secondsListActive"/>
  114. </div>
  115. </div>
  116. <div class="content-info" v-if="TypeListShow.threetListShow">
  117. <div v-for="(item, index) in TypeList.threetList" class="content-info-item" :class="{active: index === TypeListActive.threetListActive}" @click="chooseItem('threetList', item, index)" >
  118. {{item}}
  119. <img src="/images/mobile/@2x/getlabel_icon.png" v-show="index === TypeListActive.threetListActive"/>
  120. </div>
  121. </div>
  122. </div>
  123. </div>
  124. <!-- /end 选择行业弹窗 -->
  125. <remind-box :title="collectResult" :timeoutCount="timeoutCount"></remind-box>
  126. <!--<loading v-show="isSearchSearchingMore"></loading>-->
  127. <div v-if="enterprise && false"></div>
  128. </div>
  129. </template>
  130. <script>
  131. import BScroll from 'better-scroll'
  132. import { RemindBox } from '~components/mobile/common'
  133. export default {
  134. layout: 'mobileNoHeader',
  135. middleware: 'authenticated',
  136. data() {
  137. return {
  138. timeoutCount: 0,
  139. collectResult: '',
  140. storeState: 'look',
  141. admininfo: {}, // 管理员信息
  142. labelText: '',
  143. scopeLabel: [],
  144. ContentTitleArray: ['', '', ''], // 行业数组
  145. isShowTypeAlert: false, // 是否现在所属行业弹窗
  146. TypeList: {
  147. firstList: [],
  148. secondsList: [],
  149. threetList: []
  150. },
  151. TypeListActive: {
  152. firstListActive: '',
  153. secondsListActive: '',
  154. threetListActive: ''
  155. },
  156. TypeListShow: {
  157. firstListShow: true,
  158. secondsListShow: false,
  159. threetListShow: false
  160. },
  161. enterpriseInfo: {},
  162. titleActive: '',
  163. TypeObj: {},
  164. AddBtnShow: true
  165. }
  166. },
  167. components: {
  168. RemindBox
  169. },
  170. methods: {
  171. chooseTitle(key) {
  172. if (key === 0) {
  173. this.TypeListShow = {
  174. firstListShow: true,
  175. secondsListShow: false,
  176. threetListShow: false
  177. }
  178. this.titleActive = 0
  179. } else if (key === 1) {
  180. this.TypeListShow = {
  181. firstListShow: false,
  182. secondsListShow: true,
  183. threetListShow: false
  184. }
  185. this.titleActive = 1
  186. } else if (key === 2) {
  187. this.TypeListShow = {
  188. firstListShow: false,
  189. secondsListShow: true,
  190. threetListShow: false
  191. }
  192. this.titleActive = 2
  193. }
  194. },
  195. chooseItem(listIndex, key, index) {
  196. if (listIndex === 'firstList') {
  197. this.TypeListActive.firstListActive = index
  198. this.ContentTitleArray[0] = key
  199. // alert(this.ContentTitleArray)
  200. this.TypeList.secondsList = []
  201. this.titleActive = 0
  202. if (this.TypeObj[key] instanceof Array) {
  203. this.TypeList.secondsList = this.TypeObj[key]
  204. } else {
  205. for (let i of Object.keys(this.TypeObj[key])) {
  206. this.TypeList.secondsList.push(i)
  207. }
  208. }
  209. this.TypeListShow = {
  210. firstListShow: false,
  211. secondsListShow: true,
  212. threetListShow: false
  213. }
  214. this.TypeListActive.secondsListActive = ''
  215. this.TypeListActive.threetListActive = ''
  216. for (let i = 1; i < this.ContentTitleArray.length; i++) {
  217. this.ContentTitleArray.splice(i, 1)
  218. }
  219. } else if (listIndex === 'secondsList') {
  220. this.TypeList.threetList = []
  221. this.TypeListActive.secondsListActive = index
  222. this.TypeListActive.threetListActive = ''
  223. this.ContentTitleArray[1] = key
  224. this.titleActive = 1
  225. if (this.TypeObj[this.ContentTitleArray[0]][key] instanceof Array) {
  226. this.TypeList.threetList = this.TypeObj[this.ContentTitleArray[0]][key] ? this.TypeObj[this.ContentTitleArray[0]][key] : []
  227. }
  228. for (let i = 2; i < this.ContentTitleArray.length; i++) {
  229. this.ContentTitleArray.splice(i, 1)
  230. }
  231. if (this.TypeList.threetList.length > 0) {
  232. this.TypeListShow = {
  233. firstListShow: false,
  234. secondsListShow: false,
  235. threetListShow: true
  236. }
  237. } else {
  238. this.enterpriseInfo.enIndustry = key
  239. this.isShowTypeAlert = false
  240. this.TypeListShow = {
  241. firstListShow: false,
  242. secondsListShow: true,
  243. threetListShow: false
  244. }
  245. }
  246. } else if (listIndex === 'threetList') {
  247. this.titleActive = 2
  248. this.TypeListActive.threetListActive = index
  249. this.ContentTitleArray[2] = key
  250. this.enterpriseInfo.enIndustry = key
  251. this.isShowTypeAlert = false
  252. this.TypeListShow = {
  253. firstListShow: false,
  254. secondsListShow: false,
  255. threetListShow: true
  256. }
  257. }
  258. },
  259. addBtn(text) {
  260. if (text !== undefined) {
  261. this.scopeLabel = []
  262. let ms = this.enterpriseInfo.enBusinessScope.split(',')
  263. let _newArr = ms.slice()
  264. for (let j = 0; j < ms.length; j++) {
  265. if (ms[j].trim() === text) {
  266. _newArr.splice(j, 1)
  267. }
  268. }
  269. if (_newArr.length === 0) {
  270. this.enterpriseInfo.enBusinessScope = ''
  271. this.scopeLabel = []
  272. } else {
  273. this.enterpriseInfo.enBusinessScope = _newArr.join(',')
  274. this.scopeLabel = this.enterpriseInfo.enBusinessScope.split(',')
  275. }
  276. return false
  277. }
  278. this.AddBtnShow = false
  279. },
  280. saveLabel() {
  281. if (this.labelText === '') {
  282. this.AddBtnShow = true
  283. return false
  284. }
  285. if (this.labelText.length > 10) {
  286. this.collectResult = '标签文字不能超过10个字'
  287. this.timeoutCount++
  288. return false
  289. }
  290. this.AddBtnShow = true
  291. if (this.IsChange !== '' && this.IsChange !== undefined) {
  292. let ms = this.enterpriseInfo.enBusinessScope.split(',')
  293. for (let j = 0; j < ms.length; j++) {
  294. if (ms[j].trim() === this.IsChange) {
  295. ms[j] = this.labelText
  296. }
  297. }
  298. this.enterpriseInfo.enBusinessScope = ms.join(',')
  299. } else {
  300. if (!this.enterpriseInfo.enBusinessScope) {
  301. this.enterpriseInfo.enBusinessScope = this.labelText
  302. } else {
  303. this.enterpriseInfo.enBusinessScope += ',' + this.labelText
  304. }
  305. }
  306. this.labelText = ''
  307. this.IsChange = ''
  308. this.scopeLabel = this.enterpriseInfo.enBusinessScope.split(',')
  309. // this.enterpriseInfo.enBusinessScope.push(this.labelText)
  310. },
  311. swtichTab(_tp) {
  312. this.activeType = _tp
  313. this.storeState = 'look'
  314. this.isSearchSearchingMore = true
  315. this.updateEnterpriseInfo()
  316. },
  317. updateInfo() {
  318. this.storeState = 'update'
  319. this.Islook = true
  320. this.hidelook = true
  321. this.BScroll.refresh()
  322. },
  323. storeInfosave(_tp) {
  324. if (_tp === 'cancel') {
  325. this.clearInfo()
  326. this.scopeLabel = []
  327. let str = JSON.stringify(this.$store.state.supplier.material.enUser.data)
  328. this.enterpriseInfo = JSON.parse(str)
  329. if (this.enterpriseInfo.enBusinessScope) {
  330. this.scopeLabel = this.enterpriseInfo.enBusinessScope.split(',')
  331. }
  332. return
  333. }
  334. if (!this.enterpriseInfo.enAddress) {
  335. this.collectResult = '企业地址不能为空'
  336. this.timeoutCount++
  337. return false
  338. }
  339. if (!this.enterpriseInfo.enUrl) {
  340. this.collectResult = '官网地址不能为空'
  341. this.timeoutCount++
  342. return false
  343. }
  344. this.$http.post(`/basic/enterprise/${this.user.data.enterprise.uu}/updateInfo`, this.enterpriseInfo).then(res => {
  345. this.collectResult = '保存成功'
  346. this.timeoutCount++
  347. this.storeState = 'look'
  348. }).catch(err => {
  349. this.collectResult = err.response.data
  350. this.timeoutCount++
  351. let str = JSON.stringify(this.$store.state.supplier.material.enUser.data)
  352. this.enterpriseInfo = JSON.parse(str)
  353. })
  354. },
  355. clearInfo() {
  356. this.storeState = 'look'
  357. this.labelText = ''
  358. this.IsChange = ''
  359. this.AddBtnShow = true
  360. }
  361. },
  362. computed: {
  363. enterprise() {
  364. let str = JSON.stringify(this.$store.state.supplier.material.enUser.data)
  365. this.enterpriseInfo = JSON.parse(str)
  366. return ''
  367. },
  368. isAdmin () {
  369. return this.user.data.userUU === this.user.data.enterprise.enAdminuu
  370. }
  371. },
  372. created () {
  373. this.$nextTick(() => {
  374. this.$http.get('/data/profession.json').then(response => {
  375. this.TypeObj = response.data
  376. for (let i of Object.keys(response.data)) {
  377. this.TypeList.firstList.push(i)
  378. }
  379. })
  380. this.$store.dispatch('supplier/loadEnUser', {enUU: this.user.data.enterprise.uu, filter: 'enUU'}).then(res => {
  381. this.scopeLabel = this.enterpriseInfo.enBusinessScope ? this.enterpriseInfo.enBusinessScope.split(',') : []
  382. })
  383. })
  384. },
  385. mounted() {
  386. this.$nextTick(() => {
  387. if (this.BScroll) {
  388. this.BScroll.refresh()
  389. } else {
  390. this.BScroll = new BScroll(this.$refs.userContent, {
  391. click: true
  392. })
  393. }
  394. })
  395. }
  396. }
  397. </script>
  398. <style scoped lang="scss">
  399. .com-mobile-header {
  400. i {
  401. font-size: .36rem;
  402. position: relative;
  403. top: .04rem;
  404. right: .02rem;
  405. }
  406. }
  407. .user-content{
  408. background: #f1f3f6;
  409. .si-wrap {
  410. width: 7.1rem;
  411. margin: 0 auto;
  412. background: #fff;
  413. }
  414. .user-center-content {
  415. height: 100%;
  416. overflow: hidden;
  417. }
  418. .scroll {
  419. padding-bottom: 0.4rem;
  420. }
  421. .topinfo {
  422. color: #333;
  423. font-size: 0.28rem;
  424. height: 0.8rem;
  425. line-height: 0.8rem;
  426. padding: 0 0.24rem;
  427. border-bottom: 0.01rem solid #d9d9d9;
  428. .pull-right {
  429. color: #999;
  430. font-size: 0.26rem;
  431. img {
  432. width: 0.34rem;
  433. height: 0.34rem;
  434. }
  435. }
  436. }
  437. .infoul {
  438. color: #666;
  439. font-size: 0.28rem;
  440. margin: .24rem 0;
  441. .upload {
  442. img {
  443. transform: rotate(180deg);
  444. }
  445. }
  446. li {
  447. border-bottom: 1px solid #d9d9d9;
  448. min-height: 1.16rem;
  449. line-height: normal;
  450. padding: .4rem .28rem;
  451. &.border {
  452. border-bottom: 0.01rem solid #d9d9d9;
  453. }
  454. &.noupdate {
  455. background: #fafafa;
  456. color: #999;
  457. }
  458. }
  459. .name {
  460. width: 1.6rem;
  461. text-align: right;
  462. color: #226ce7;
  463. }
  464. &.no-edit {
  465. color: #999;
  466. .name {
  467. color: #999;
  468. }
  469. }
  470. .text {
  471. width: 4.4rem;
  472. }
  473. .update {
  474. padding: 0.06rem 0 0.06rem 0rem;
  475. }
  476. input {
  477. width: 4.4rem;
  478. border: 0px solid #b4b4b4;
  479. padding: 0.06rem 0 0.06rem 0.12rem;
  480. }
  481. textarea{
  482. width: 4.4rem;
  483. padding: 0.06rem 0 0.06rem 0.12rem;
  484. min-height: 5rem;
  485. resize: none;
  486. border: 0px solid #b4b4b4;
  487. }
  488. }
  489. .control {
  490. width: 90%;
  491. margin: 0.4rem auto 0rem;
  492. height: .88rem;
  493. line-height: 0.88rem;
  494. }
  495. .save {
  496. border-radius: 3px;
  497. width: 48%;
  498. color: #fff;
  499. text-align: center;
  500. height: .88rem;
  501. line-height: 0.88rem;
  502. background: #3e82f5;
  503. float: right;
  504. }
  505. .cancel {
  506. border-radius: 3px;
  507. width: 48%;
  508. background: #acabab;
  509. color: #fff;
  510. text-align: center;
  511. height: .88rem;
  512. line-height: 0.88rem;
  513. float: left;
  514. }
  515. .infoul2 {
  516. .name {
  517. width: 1.7rem;
  518. }
  519. .text {
  520. width: 4.3rem;
  521. }
  522. input {
  523. width: 4.3rem;
  524. }
  525. .nolabel {
  526. position: relative;
  527. width: auto;
  528. text-align: center;
  529. color: #666;
  530. font-size: 0.24rem;
  531. display: inline-block;
  532. vertical-align: top;
  533. padding: 2px 4px;
  534. margin: 0.02rem 3px 0px;
  535. background: #f2f3f7;
  536. border-radius: 5px;
  537. }
  538. .label {
  539. max-width: 3rem;
  540. padding: 2px 4px;
  541. margin: 0.08rem 3px 0 3px;
  542. background: #5078cb;
  543. border-radius: 5px;
  544. text-align: center;
  545. color: #fff;
  546. font-size: 0.24rem;
  547. display: inline-block;
  548. vertical-align: top;
  549. }
  550. .labelKuang {
  551. background: #fff;
  552. border: 1px solid #b4b4b4;
  553. border-radius: 3px;
  554. overflow: hidden;
  555. height: 0.53rem;
  556. line-height: 0.53rem;
  557. display: inline-block;
  558. vertical-align: top;
  559. margin: 0px 3px 3px 3px;
  560. font-size: 0px;
  561. }
  562. .Updatelabel {
  563. padding: 0 4px;
  564. color: #666;
  565. font-size: 0.26rem;
  566. height: 100%;
  567. display: inline-block;
  568. vertical-align: top;
  569. max-width: 3rem;
  570. }
  571. .updatespan {
  572. background: #b5b5b5;
  573. color: #fff;
  574. font-size: 0.26rem;
  575. padding:0 2px;
  576. height: 100%;
  577. display: inline-block;
  578. vertical-align: top;
  579. }
  580. .addBtn {
  581. background-image: url('/images/mobile/@2x/addBtn.png');
  582. background-size: 100% 100%;
  583. width: 1.4rem;
  584. height: 0.54rem;
  585. display: inline-block;
  586. vertical-align: middle;
  587. }
  588. .commit {
  589. }
  590. .inputText {
  591. width: 3.4rem;
  592. border-top-left-radius: 3px;
  593. border-bottom-left-radius: 3px;
  594. border: 1px solid #b4b4b4;
  595. height: 0.62rem;
  596. line-height: 0.62rem;
  597. vertical-align: top;
  598. display: inline-block;
  599. }
  600. button {
  601. display: inline-block;
  602. height: 0.62rem;
  603. width: 0.8rem;
  604. line-height: 0.62rem;
  605. font-size: 14px;
  606. font-weight: 400;
  607. text-align: center;
  608. background-color: #3f84f6;
  609. border: 1px solid #3f84f6;
  610. color: #fff;
  611. border-top-right-radius: 3px;
  612. border-bottom-right-radius: 3px;
  613. vertical-align: top;
  614. margin-left: -0.1rem;
  615. }
  616. .moreIcon {
  617. margin-top: 0.06rem;
  618. position: relative;
  619. img {
  620. width: 0.17rem;
  621. height: 0.3rem;
  622. }
  623. &:after {
  624. position: absolute;
  625. left: -10px;
  626. right: -10px;
  627. top: -10px;
  628. bottom: -10px;
  629. content: ' '
  630. }
  631. }
  632. }
  633. .noborder {
  634. border-top: 1px solid #d9d9d9;
  635. }
  636. .modal-content {
  637. position: absolute;
  638. height: 10rem;
  639. bottom: 0px;
  640. left: 0px;
  641. background: #fff;
  642. width: 100%;
  643. border-radius: 0px;
  644. box-shadow: 0 -9px 9px rgba(0,0,0,.5);
  645. .content-title {
  646. color: #666;
  647. font-size: .3rem;
  648. text-align: center;
  649. height: 1rem;
  650. line-height: 1rem;
  651. position: relative;
  652. i {
  653. font-size: 0.3rem;
  654. color: #999;
  655. position: absolute;
  656. right: 0.3rem;
  657. top: 50%;
  658. margin-top: -0.15rem;
  659. }
  660. }
  661. .content-title-label {
  662. color: #3f84f6;
  663. font-size: 0.28rem;
  664. height: 0.5rem;
  665. line-height: 0.5rem;
  666. border-bottom: 0.01rem solid #999;
  667. div {
  668. width: 33.3%;
  669. float: left;
  670. text-align: center;
  671. a {
  672. height: 0.5rem;
  673. line-height: 0.5rem;
  674. color: #333 !important;
  675. display: inline-block;
  676. width: 80%;
  677. overflow: hidden;
  678. text-overflow: ellipsis;
  679. white-space: nowrap;
  680. &.active {
  681. color: #3e82f5 !important;
  682. border-bottom: 1px solid #3e82f5;
  683. }
  684. }
  685. }
  686. }
  687. .content-info {
  688. overflow-y: auto;
  689. height: 8.5rem;
  690. width: 100%;
  691. .content-info-item {
  692. height: 0.86rem;
  693. line-height: 0.86rem;
  694. color: #333;
  695. font-size: 0.28rem;
  696. padding-left: 0.3rem;
  697. &.active {
  698. color: #3f84f6 !important
  699. }
  700. img {
  701. width: 0.3rem;
  702. height: 0.18rem;
  703. margin-left: 0.3rem;
  704. }
  705. }
  706. }
  707. }
  708. }
  709. </style>