list.vue 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834
  1. <template>
  2. <view class="container product clearfix">
  3. <view class="container-fiexd-top">
  4. <view class="club-search clearfix">
  5. <view class="search-from name">
  6. <text class="iconfont icon-iconfonticonfontsousuo1"></text>
  7. <input
  8. class="input"
  9. type="text"
  10. confirm-type="search"
  11. v-model="listQuery.keyWord"
  12. @input="onShowClose"
  13. @confirm="getUserClubRemarksList"
  14. placeholder="搜索关键词/咨询人/机构名称/手机号"
  15. maxlength="16"
  16. />
  17. <text class="iconfont icon-shanchu1" v-if="isShowClose" @click="delInputText()"></text>
  18. </view>
  19. <view class="search-screen" @click="showScreenDrawer">
  20. <text class="iconfont icon-gengduo1"></text> 筛选
  21. </view>
  22. </view>
  23. <view class="fiexd-top-title">
  24. <view class="top-left">
  25. 共 <text>{{ totalRecord }}</text> 条咨询记录
  26. </view>
  27. <view class="top-right">
  28. <view class="top-right-btn" @click="handlerGoReportList">查看报备记录</view>
  29. </view>
  30. </view>
  31. </view>
  32. <view class="remarks-content" :style="{ paddingBottom: isIphoneX ? '216rpx' : '168rpx' }">
  33. <view :class="{ 'tui-order-list': scrollTop >= 0 }" class="clearfix">
  34. <!-- 空白页 -->
  35. <view class="empty-container" v-if="isEmpty">
  36. <image class="empty-container-image" :src="StaticUrl + '/icon/icon-remarks-empty@2x.png'"></image>
  37. <text class="error-text">暂无任何数据~</text>
  38. </view>
  39. <!-- 列表 -->
  40. <view
  41. class="tui-remarks-cell tui-mtop clearfix"
  42. v-for="(remark, index) in remarksList"
  43. :key="index"
  44. :class="{ orange: remark.followup == 1, blue: remark.followup == 2, grey: remark.followup == 3 }"
  45. @click.stop="details(remark.remarksId)"
  46. >
  47. <view class="tui-remarks-title">
  48. <view class="tui-remarks-title-top">
  49. <view class="tui-remarks-time tt" :style="{ paddingLeft: remark.newDeal === 1 ? '90rpx' : '0rpx' }"
  50. >
  51. <text class="tags" v-if="remark.newDeal === 1">新分配</text>
  52. {{ remark.clubName }}
  53. </view
  54. >
  55. <view class="tui-remarks-time sm" v-if="remark.followup">
  56. <text
  57. :class="{
  58. orange: remark.followup == 1,
  59. blue: remark.followup == 2,
  60. grey: remark.followup == 3
  61. }"
  62. >{{ remark.followup | followupFilters }}</text
  63. >
  64. </view>
  65. </view>
  66. <view class="tui-remarks-title-bot">
  67. <view class="tui-remarks-text-view">
  68. <view class="tui-remarks-text h"
  69. ><text class="iconfont icon-bianji"></text>记录人:{{ remark.recordName }}</view
  70. >
  71. </view>
  72. <view class="tui-remarks-text-view" v-if="listQuery.manager >= 0">
  73. <view class="tui-remarks-text h"
  74. ><text class="iconfont icon-guanliyuan"></text>管理员:{{
  75. remark.leaderName ? remark.leaderName : ''
  76. }}</view
  77. >
  78. <view class="tui-remarks-text y">{{ remark.addTime }}</view>
  79. </view>
  80. </view>
  81. </view>
  82. <view class="tui-remarks-name">
  83. <view class="tui-remarks-name-text h">
  84. 咨询人:{{ remark.questionMan ? remark.questionMan : '' }}
  85. </view>
  86. <view class="tui-remarks-name-text y">
  87. 咨询类别:{{ remark.consultBack ? remark.consultBack : '无' }}
  88. </view>
  89. </view>
  90. <view class="tui-remarks-name none" v-if="remark.satisfied">
  91. <view class="tui-remarks-name-text h">
  92. 意向程度:<text class="red">{{ remark.satisfied | intenActionsFilters }}</text>
  93. </view>
  94. <view class="tui-remarks-name-text y" v-if="remark.status">
  95. 报备状态:<text
  96. :class="{
  97. reviewed: remark.status == 1,
  98. approved: remark.status == 2,
  99. failed: remark.status == 3
  100. }"
  101. >{{ remark.status | statusFilters }}</text
  102. >
  103. </view>
  104. </view>
  105. <view class="tui-remarks-content">
  106. <text class="tui-remarks-span" v-for="(label, labelIndex) in remark.remarks" :key="labelIndex">
  107. {{ label.label }}
  108. </text>
  109. </view>
  110. <view class="tui-remarks-button" v-if="remark.createServiceProviderId === listQuery.serviceProviderId">
  111. <view class="btn edit" @click.stop="handEditRemark(remark.remarksId)">修改</view>
  112. <view class="btn del" @click.stop="deleteRemark(remark.remarksId)">删除</view>
  113. </view>
  114. </view>
  115. <!--加载loadding-->
  116. <tui-loadmore :visible="loadding" :index="3" type="black" />
  117. <tui-nomore :visible="!pullUpOn" :backgroundColor="'#F7F7F7'" :text="nomoreText" />
  118. <!--加载loadding-->
  119. </view>
  120. </view>
  121. <!-- 取消收藏操作 -->
  122. <tui-bottom-popup :radius="false" :mask="false" :show="popupShow">
  123. <view class="tui-popup-box clearfix">
  124. <view class="tui-right-flex tui-popup-btn" :style="{ paddingBottom: isIphoneX ? '68rpx' : '34rpx' }">
  125. <view class="tui-flex-1">
  126. <view class="tui-button" @click="handleShowClubpopup">添加已注册客户记录</view>
  127. </view>
  128. <view class="tui-flex-1">
  129. <view class="tui-button-text" @click="handleAllUnder">未注册客户咨询记录 ></view>
  130. </view>
  131. </view>
  132. </view>
  133. </tui-bottom-popup>
  134. <!-- 筛选抽屉 -->
  135. <cm-screenDrawer
  136. ref="screendrawer"
  137. :popupType="1"
  138. :rightDrawer="isScreenDrawer"
  139. @handSearchConfirm="handSearchConfirmData"
  140. >
  141. </cm-screenDrawer>
  142. <!-- 添加记录 -->
  143. <cm-clubpopup
  144. ref="clubpopup"
  145. v-if="isClubpopupShow"
  146. :show="isClubpopupShow"
  147. @handleChoiceaClub="handleChoiceaClubData"
  148. >
  149. </cm-clubpopup>
  150. <!-- 弹窗提示 -->
  151. <tui-modal
  152. :show="modal"
  153. @click="handleClick"
  154. @cancel="hideMobel"
  155. :content="contentModalText"
  156. :button="modalButton"
  157. color="#333"
  158. :size="32"
  159. shape="circle"
  160. :maskClosable="false"
  161. >
  162. </tui-modal>
  163. </view>
  164. </template>
  165. <script>
  166. import cmClubpopup from '../components/cm-clubpopup'
  167. import cmScreenDrawer from '../components/cm-screen-drawer'
  168. import { mapState, mapMutations } from 'vuex'
  169. const defaultListQuery = {
  170. startAddTime: '',
  171. endAddTime: '',
  172. consult: '',
  173. pinceSensitve: 0, //价格敏感度
  174. satisfied: 0, // 意向程度
  175. followup: 0, // 跟进状态
  176. leaderId: 0,
  177. groupId: 0,
  178. manager: 0,
  179. newDeal: 0, // 新增分配机构
  180. status: 0, // 报备状态
  181. serviceProviderId: 0,
  182. pageNum: 1,
  183. pageSize: 10
  184. }
  185. export default {
  186. components: {
  187. cmClubpopup,
  188. cmScreenDrawer
  189. },
  190. data() {
  191. return {
  192. StaticUrl: this.$Static,
  193. isIphoneX: this.$store.state.isIphoneX,
  194. modalButton: [
  195. {
  196. text: '取消',
  197. type: 'gray',
  198. plain: true //是否空心
  199. },
  200. {
  201. text: '确认',
  202. customStyle: {
  203. color: '#fff',
  204. bgColor: 'linear-gradient(90deg, #F28F31 0%, #FF5B00 100%)'
  205. },
  206. plain: false
  207. }
  208. ],
  209. totalRecord: 0,
  210. popupShow: true,
  211. popupShow1: false,
  212. listQuery: Object.assign({}, defaultListQuery),
  213. remarksList: [],
  214. scrollTop: 0,
  215. isEmpty: false,
  216. loadding: false,
  217. pullUpOn: true,
  218. pullFlag: true,
  219. hasNextPage: false,
  220. navbarHeight: '',
  221. nomoreText: '上拉显示更多',
  222. contentModalText: '', //操作文字提示语句
  223. modal: false,
  224. handleRemarksId: 0,
  225. isClubpopupShow: false,
  226. isScreenDrawer: false
  227. }
  228. },
  229. onLoad() {},
  230. filters: {
  231. statusFilters(value) {
  232. // 订单来源
  233. const map = {
  234. 1: '待审核',
  235. 2: '审核通过',
  236. 3: '审核未通过'
  237. }
  238. return map[value]
  239. },
  240. followupFilters(value) {
  241. // 订单来源
  242. const map = {
  243. 1: '跟进中',
  244. 2: '跟进完成',
  245. 3: '已放弃'
  246. }
  247. return map[value]
  248. },
  249. intenActionsFilters(value) {
  250. // 意向
  251. if (value) {
  252. const map = {
  253. 1: '意向强烈',
  254. 2: '意向一般',
  255. 3: '意向平淡',
  256. 4: '随便看看'
  257. }
  258. return map[value]
  259. } else {
  260. return ''
  261. }
  262. }
  263. },
  264. computed: {
  265. ...mapState(['hasLogin', 'userInfo'])
  266. },
  267. methods: {
  268. ...mapMutations(['login', 'logout']),
  269. async initGetStotage() {
  270. const userInfo = await this.$api.getStorage()
  271. this.listQuery.serviceProviderId = userInfo.serviceProviderId ? userInfo.serviceProviderId : 0
  272. this.listQuery.manager = userInfo.manager ? userInfo.manager : 0
  273. this.getUserClubRemarksList()
  274. },
  275. getUserClubRemarksList() {
  276. this.remarksList = []
  277. this.listQuery.pageNum = 1
  278. this.UserService.getUserClubRemarksList(this.listQuery)
  279. .then(response => {
  280. let data = response.data
  281. if (data.results && data.results.length > 0) {
  282. this.isEmpty = false
  283. this.hasNextPage = data.hasNextPage
  284. this.totalRecord = data.totalRecord
  285. this.remarksList = data.results
  286. this.pullFlag = false
  287. setTimeout(() => {
  288. this.pullFlag = true
  289. }, 500)
  290. if (this.hasNextPage) {
  291. this.pullUpOn = false
  292. this.nomoreText = '上拉显示更多'
  293. } else {
  294. if (this.remarksList.length < 8) {
  295. this.pullUpOn = true
  296. } else {
  297. this.pullUpOn = false
  298. this.loadding = false
  299. this.nomoreText = '已至底部'
  300. }
  301. }
  302. } else {
  303. this.isEmpty = true
  304. }
  305. this.isRequest = true
  306. })
  307. .catch(error => {
  308. this.$util.msg(error.msg, 2000)
  309. })
  310. },
  311. GetOnReachBottomData(index) {
  312. //上拉加载
  313. this.listQuery.pageNum += 1
  314. this.UserService.getUserClubRemarksList(this.listQuery)
  315. .then(response => {
  316. let data = response.data
  317. if (data.results && data.results.length > 0) {
  318. this.hasNextPage = data.hasNextPage
  319. this.remarksList = this.remarksList.concat(data.results)
  320. this.pullFlag = false // 防上拉暴滑
  321. setTimeout(() => {
  322. this.pullFlag = true
  323. }, 500)
  324. if (this.hasNextPage) {
  325. this.pullUpOn = false
  326. this.nomoreText = '上拉显示更多'
  327. } else {
  328. this.pullUpOn = false
  329. this.loadding = false
  330. this.nomoreText = '已至底部'
  331. }
  332. }
  333. })
  334. .catch(error => {
  335. this.$util.msg(error.msg, 2000)
  336. })
  337. },
  338. deleteRemark(remarksId) {
  339. this.handleRemarksId = remarksId
  340. this.modal = true
  341. this.contentModalText = '确定删除这条记录吗?'
  342. },
  343. handEditRemark(remarksId) {
  344. //跳转修改客户咨询记录
  345. this.$api.navigateTo(`/pages/seller/remarks/add?type=edit&remarksId=${remarksId}`)
  346. },
  347. handleAllUnder() {
  348. //跳转未注册客户咨询记录也
  349. this.$api.navigateTo('/pages/seller/remarks/record-list')
  350. },
  351. handleShowClubpopup() {
  352. //显示已注册机构弹窗
  353. this.isClubpopupShow = true
  354. },
  355. handleChoiceaClubData(data) {
  356. //跳转添加记录
  357. this.$api.navigateTo(`/pages/seller/remarks/add?userId=${data.userId}`)
  358. },
  359. handSearchConfirmData(data) {
  360. console.log('确定筛选', data)
  361. //确定筛选
  362. this.listQuery.startAddTime = data.startAddTime
  363. this.listQuery.endAddTime = data.endAddTime
  364. this.listQuery.consult = data.consult
  365. this.listQuery.leaderId = data.leaderId
  366. this.listQuery.groupId = data.groupId
  367. this.listQuery.pinceSensitve = data.pinceSensitve
  368. this.listQuery.satisfied = data.satisfied
  369. this.listQuery.followup = data.followup
  370. this.listQuery.newDeal = data.newDeal
  371. this.listQuery.status = data.status
  372. this.getUserClubRemarksList()
  373. },
  374. showScreenDrawer() {
  375. //显示筛选抽屉
  376. this.isScreenDrawer = true
  377. },
  378. handleClick(e) {
  379. //确认删除
  380. if (e.index == 1) {
  381. this.handleDeleteUserLike()
  382. }
  383. this.modal = false
  384. },
  385. handleDeleteUserLike() {
  386. //操作删除资料备注
  387. this.UserService.getUserClubRemarksDelete({
  388. remarksId: this.handleRemarksId
  389. })
  390. .then(response => {
  391. this.$util.msg('已删除', 2000, true, 'success')
  392. setTimeout(() => {
  393. this.getUserClubRemarksList()
  394. }, 2000)
  395. })
  396. .catch(error => {
  397. this.$util.msg(error.msg, 2000)
  398. })
  399. },
  400. onShowClose() {
  401. //输入框失去焦点时触发
  402. if (this.listQuery.keyWord != '') {
  403. this.isShowClose = true
  404. } else {
  405. this.isShowClose = false
  406. this.listQuery.pageNum = 1
  407. this.getUserClubRemarksList()
  408. }
  409. },
  410. delInputText() {
  411. //清除输入框内容
  412. this.listQuery.keyWord = ''
  413. this.isShowClose = false
  414. this.listQuery.pageNum = 1
  415. this.getUserClubRemarksList()
  416. },
  417. hideMobel() {
  418. this.modal = false
  419. },
  420. details(remarksId) {
  421. this.$api.navigateTo(`/pages/seller/remarks/details?remarksId=${remarksId}`)
  422. },
  423. handlerGoReportList() {
  424. this.$api.navigateTo('/pages/seller/remarks/report-list')
  425. }
  426. },
  427. onPageScroll(e) {
  428. //实时获取到滚动的值
  429. },
  430. onReachBottom() {
  431. if (this.hasNextPage) {
  432. this.loadding = true
  433. this.pullUpOn = true
  434. this.GetOnReachBottomData()
  435. }
  436. },
  437. onPullDownRefresh() {
  438. setTimeout(() => {
  439. this.listQuery.pageNum = 1
  440. uni.stopPullDownRefresh()
  441. }, 200)
  442. },
  443. onShow() {
  444. this.initGetStotage()
  445. }
  446. }
  447. </script>
  448. <style lang="scss">
  449. @import '@/uni.scss';
  450. page {
  451. background: #f7f7f7;
  452. }
  453. .empty-container {
  454. z-index: 99;
  455. }
  456. .container-fiexd-top {
  457. width: 100%;
  458. height: 208rpx;
  459. background: #f5f5f5;
  460. box-sizing: border-box;
  461. position: fixed;
  462. top: 0;
  463. left: 0;
  464. z-index: 982;
  465. .club-search {
  466. width: 100%;
  467. height: 112rpx;
  468. padding: 24rpx;
  469. background: #ffffff;
  470. box-sizing: border-box;
  471. .search-screen {
  472. width: 152rpx;
  473. height: 64rpx;
  474. float: right;
  475. box-sizing: border-box;
  476. padding: 0 20rpx;
  477. border: 1px solid #999999;
  478. line-height: 64rpx;
  479. border-radius: 32rpx;
  480. color: #333333;
  481. text-align: center;
  482. font-size: 28rpx;
  483. .icon-gengduo1 {
  484. font-size: 30rpx;
  485. margin-right: 10rpx;
  486. }
  487. }
  488. .search-from {
  489. width: 526rpx;
  490. height: 100%;
  491. background: #f7f7f7;
  492. border-radius: 32rpx;
  493. float: left;
  494. position: relative;
  495. .input {
  496. width: 420rpx;
  497. height: 64rpx;
  498. float: left;
  499. line-height: 64rpx;
  500. color: $text-color;
  501. font-size: $font-size-24;
  502. }
  503. .icon-iconfonticonfontsousuo1 {
  504. width: 64rpx;
  505. height: 64rpx;
  506. line-height: 64rpx;
  507. text-align: center;
  508. display: block;
  509. font-size: $font-size-38;
  510. float: left;
  511. color: #999999;
  512. }
  513. .icon-shanchu1 {
  514. font-size: $font-size-32;
  515. color: #999999;
  516. position: absolute;
  517. width: 64rpx;
  518. height: 64rpx;
  519. line-height: 64rpx;
  520. text-align: center;
  521. top: 0;
  522. right: 0;
  523. z-index: 10;
  524. }
  525. }
  526. }
  527. .fiexd-top-title {
  528. width: 100%;
  529. height: 96rpx;
  530. box-sizing: border-box;
  531. padding: 24rpx;
  532. .top-left {
  533. float: left;
  534. line-height: 48rpx;
  535. font-size: 26rpx;
  536. color: #666666;
  537. text {
  538. color: #FF5B00;
  539. }
  540. }
  541. .top-right {
  542. float: right;
  543. .top-right-btn {
  544. height: 48rpx;
  545. padding: 0 20rpx;
  546. box-sizing: border-box;
  547. border: 1px solid #FF5B00;
  548. font-size: 26rpx;
  549. text-align: center;
  550. line-height: 48rpx;
  551. color: #FF5B00;
  552. border-radius: 24rpx;
  553. }
  554. }
  555. }
  556. }
  557. .remarks-content {
  558. width: 100%;
  559. height: auto;
  560. position: relative;
  561. padding: 0;
  562. box-sizing: border-box;
  563. padding: 24rpx;
  564. padding-top: 232rpx;
  565. .empty-container-image {
  566. width: 260rpx;
  567. height: 260rpx;
  568. margin-top: -300rpx;
  569. }
  570. .tui-remarks-cell {
  571. width: 100%;
  572. border-radius: 16rpx;
  573. margin-bottom: 24rpx;
  574. background: #ffffff;
  575. box-sizing: border-box;
  576. padding: 0 24rpx 24rpx 24rpx;
  577. &.orange {
  578. background: #ffffff linear-gradient(180deg, #ffede5 0%, rgba(255, 255, 255, 0) 50%);
  579. }
  580. &.blue {
  581. background: #ffffff linear-gradient(180deg, #deefff 0%, rgba(255, 255, 255, 0) 50%);
  582. }
  583. &.grey {
  584. background: #ffffff linear-gradient(180deg, #ececec 0%, rgba(255, 255, 255, 0) 50%);
  585. }
  586. .tui-remarks-title {
  587. width: 100%;
  588. height: auto;
  589. box-sizing: border-box;
  590. padding: 20rpx 0;
  591. border-bottom: 1px solid #e1e1e1;
  592. float: left;
  593. .tui-remarks-title-top {
  594. width: 100%;
  595. height: 56rpx;
  596. line-height: 56rpx;
  597. float: left;
  598. .tui-remarks-time {
  599. float: left;
  600. box-sizing: border-box;
  601. position: relative;
  602. &.tt {
  603. width: 58%;
  604. font-size: $font-size-32;
  605. color: #333333;
  606. text-align: left;
  607. text-overflow: ellipsis;
  608. overflow: hidden;
  609. display: -webkit-box;
  610. -webkit-line-clamp: 1;
  611. line-clamp: 1;
  612. -webkit-box-orient: vertical;
  613. font-weight: bold;
  614. .tags {
  615. display: inline-block;
  616. padding: 0 10rpx;
  617. border-radius: 8rpx;
  618. line-height: 36rpx;
  619. font-size: 22rpx;
  620. background-color: #f94b4b;
  621. color: #ffffff;
  622. text-align: center;
  623. font-weight: normal;
  624. position: absolute;
  625. left: 0;
  626. top: 10rpx;
  627. }
  628. }
  629. &.sm {
  630. width: 40%;
  631. font-size: $font-size-26;
  632. color: #999999;
  633. text-align: right;
  634. .orange {
  635. display: inline-block;
  636. padding: 0 15rpx;
  637. border-radius: 24rpx;
  638. line-height: 48rpx;
  639. font-size: 24rpx;
  640. background-color: #FF5B00;
  641. color: #ffffff;
  642. text-align: center;
  643. }
  644. .blue {
  645. display: inline-block;
  646. padding: 0 15rpx;
  647. border-radius: 24rpx;
  648. line-height: 48rpx;
  649. font-size: 24rpx;
  650. background-color: #1890f9;
  651. color: #ffffff;
  652. text-align: center;
  653. }
  654. .grey {
  655. display: inline-block;
  656. padding: 0 15rpx;
  657. border-radius: 24rpx;
  658. line-height: 48rpx;
  659. font-size: 24rpx;
  660. background-color: #e1e1e1;
  661. color: #999999;
  662. text-align: center;
  663. }
  664. }
  665. }
  666. }
  667. .tui-remarks-title-bot {
  668. width: 100%;
  669. height: auto;
  670. float: left;
  671. .tui-remarks-text-view {
  672. width: 100%;
  673. height: 48rpx;
  674. .tui-remarks-text {
  675. width: 50%;
  676. height: 48rpx;
  677. line-height: 48rpx;
  678. box-sizing: border-box;
  679. text-align: left;
  680. font-size: $font-size-26;
  681. color: #999999;
  682. float: left;
  683. text-overflow: ellipsis;
  684. overflow: hidden;
  685. display: -webkit-box;
  686. -webkit-line-clamp: 1;
  687. line-clamp: 1;
  688. -webkit-box-orient: vertical;
  689. &.a {
  690. width: 100%;
  691. }
  692. &.y {
  693. text-align: right;
  694. }
  695. }
  696. }
  697. }
  698. }
  699. .tui-remarks-name {
  700. width: 100%;
  701. height: 48rpx;
  702. line-height: 48rpx;
  703. font-size: $font-size-26;
  704. color: #666666;
  705. text-align: left;
  706. margin-bottom: 10rpx;
  707. margin-top: 20rpx;
  708. float: left;
  709. &.none {
  710. margin-top: 0;
  711. margin-bottom: 20rpx;
  712. }
  713. .tui-remarks-name-text {
  714. height: 48rpx;
  715. box-sizing: border-box;
  716. text-align: left;
  717. font-size: $font-size-26;
  718. color: #333333;
  719. float: left;
  720. text-overflow: ellipsis;
  721. overflow: hidden;
  722. display: -webkit-box;
  723. -webkit-line-clamp: 1;
  724. line-clamp: 1;
  725. -webkit-box-orient: vertical;
  726. .red {
  727. color: #f94b4b;
  728. }
  729. &.a {
  730. width: 100%;
  731. }
  732. &.h {
  733. width: 40%;
  734. padding-right: 24rpx;
  735. }
  736. &.y {
  737. width: 60%;
  738. padding-left: 24rpx;
  739. .reviewed{
  740. color: #FF5B00;
  741. }
  742. .approved{
  743. color: #0DB26D;
  744. }
  745. .failed{
  746. color: #F94B4B;
  747. }
  748. }
  749. }
  750. }
  751. .tui-remarks-content {
  752. width: 100%;
  753. height: auto;
  754. .tui-remarks-span {
  755. height: 48rpx;
  756. line-height: 48rpx;
  757. text-align: center;
  758. padding: 0 20rpx;
  759. background-color: #f7f7f7;
  760. font-size: $font-size-26;
  761. color: #666666;
  762. border-radius: 25rpx;
  763. display: inline-block;
  764. margin-right: 24rpx;
  765. margin-bottom: 24rpx;
  766. &:nth-child(4n) {
  767. margin-right: none;
  768. }
  769. }
  770. }
  771. .tui-remarks-button {
  772. width: 100%;
  773. height: 68rpx;
  774. border-top: 1px solid #e1e1e1;
  775. padding-top: 20rpx;
  776. .btn {
  777. width: 50%;
  778. line-height: 48rpx;
  779. box-sizing: border-box;
  780. text-align: center;
  781. font-size: $font-size-34;
  782. float: left;
  783. font-weight: bold;
  784. &.edit {
  785. color: #1890f9;
  786. border-right: 1px solid #e1e1e1;
  787. }
  788. &.del {
  789. color: #f94b4b;
  790. }
  791. }
  792. }
  793. }
  794. }
  795. .tui-popup-box {
  796. position: relative;
  797. box-sizing: border-box;
  798. min-height: 100rpx;
  799. padding: 6rpx 24rpx;
  800. .tui-popup-content {
  801. padding-top: 30rpx;
  802. }
  803. }
  804. .tui-popup-btn {
  805. width: 100%;
  806. height: auto;
  807. float: left;
  808. box-sizing: border-box;
  809. margin-top: 30rpx;
  810. .tui-button {
  811. width: 600rpx;
  812. height: 88rpx;
  813. background: $btn-confirm;
  814. line-height: 88rpx;
  815. text-align: center;
  816. color: #ffffff;
  817. font-size: $font-size-28;
  818. border-radius: 44rpx;
  819. margin: 0 auto;
  820. }
  821. .tui-button-text {
  822. width: 600rpx;
  823. height: 48rpx;
  824. line-height: 48rpx;
  825. text-align: center;
  826. color: #FF5B00;
  827. font-size: $font-size-26;
  828. margin: 0 auto;
  829. margin-top: 15rpx;
  830. }
  831. }
  832. </style>