AI销管
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

1022 lines
24 KiB

  1. <template>
  2. <view class="box">
  3. <!-- 搜索框点击跳转 -->
  4. <!-- <view>
  5. <view class="search-box">
  6. <view class="search" @click="goSearch">
  7. <view class="search-img">
  8. <image class="search-img1" src="../../../static/images/search.png" mode=""></image>
  9. </view>
  10. <view class="search-text">输入客户姓名/手机号</view>
  11. </view>
  12. </view>
  13. </view>
  14. -->
  15. <!-- 选择器 -->
  16. <view class="boxtittab">
  17. <view class="tabbox" @click="taptimeisshow">
  18. {{ startFilterTime }}<u-icon name="arrow-down" size="24" style="padding-left: 12rpx;"></u-icon>
  19. </view>
  20. <view class="tabbox" @click="taptimetuisshow">
  21. {{ receptionDuration }}<u-icon name="arrow-down" size="24" style="padding-left: 12rpx;"></u-icon>
  22. </view>
  23. <view class="tabbox" @click="tapsoltishow">
  24. {{ sortText }}<u-icon name="arrow-down" size="24" style="padding-left: 12rpx;"></u-icon>
  25. </view>
  26. <view class="tabbox" @click="screenshow">
  27. 更多筛选<u-icon name="arrow-down" size="24" style="padding-left: 12rpx;"></u-icon>
  28. </view>
  29. </view>
  30. <!-- 筛选后的数量 -->
  31. <view class="count" v-if="recordList.length > 0">
  32. 筛选结果:<text>{{totalRecords}} </text>条
  33. </view>
  34. <view class="content">
  35. <view v-if="recordList.length == 0"
  36. style="width: 100%;height: 100%;display: flex;align-items: center;background: #FFFFFF;">
  37. <view style="width: 100%;padding-top: 200rpx;">
  38. <view style="width: 100%;text-align: center;">
  39. <image style="width: 220rpx;height: 200rpx;"
  40. src="https://static.quhouse.com/zhikong_xcx_img/nodatalist.png" mode=""></image>
  41. </view>
  42. <view style="text-align: center;width: 100%;margin-top: 20rpx;color: #999999;">暂无数据</view>
  43. </view>
  44. </view>
  45. <view v-if="recordList.length!=0" class="content-tips" v-for="(item,index) in recordList" :key='index'
  46. @click="tapThevisiting(item)">
  47. <view class="content-first">
  48. <view class="left">
  49. <view class="adviser">顾</view>
  50. <view class="name">{{item.agentName}}</view>
  51. <!-- <view class="status" v-if="item.replaceReception==1">代接待</view> -->
  52. </view>
  53. <view class="right" v-if="item.recording!=0">
  54. <view v-if="item.receptionStatusName" style="margin-right: 6rpx;color: red;">{{item.receptionStatusName.slice(0, 2) || ''}}</view>
  55. <text style="margin-right: 6rpx;" v-if="item.receptionStatusName"> |</text>
  56. <view v-if="methodsisshow">
  57. <text style="margin-right: 6rpx;color: red;" v-if="item.taboo==1">违禁</text>
  58. <text style="margin-right: 6rpx;" v-if="item.taboo==1"> |</text>
  59. </view>
  60. <view v-if="item.validInvalidName" style="margin-right: 6rpx;">{{item.validInvalidName.slice(0, 2)||''}}</view>
  61. <text style="margin-right: 6rpx;" v-if="item.validInvalidName"> |</text>
  62. <view v-if="item.markAdvisor==0" class="">未标记</view>
  63. <view v-if="item.markAdvisor==1" class="">已标记</view>
  64. </view>
  65. <view class="right" v-else>
  66. <view class="">无录音</view>
  67. </view>
  68. </view>
  69. <view class="content-sec">
  70. <view class="left">
  71. <view class="adviser">客</view>
  72. <view class="cus">{{item.name || '--'}}</view>
  73. <!-- <view class="arriveNum">第{{item.visitRecord || "--"}}次接待</view> -->
  74. <view class="arriveNum">{{ item.phone | encryption }}</view>
  75. </view>
  76. <view class="right">
  77. <image src="../static/img/power.png" class="img" mode=""></image>
  78. {{item.fraction || '0'}}%
  79. </view>
  80. </view>
  81. <view class="content-last">
  82. <view class="c-items">
  83. <image src="../static/img/people.png" class="c-items-img" mode=""></image>
  84. {{ item.visitRecord || "--" }}次到访
  85. </view>
  86. <view class="c-items">
  87. <image src="../static/img/time.png" class="c-items-img" mode=""></image>
  88. {{ item.createTime }}
  89. </view>
  90. <view class="c-items">
  91. <image src="../static/img/voice.png" class="c-items-img" mode=""></image>
  92. {{ item.mm || '0' }}min
  93. </view>
  94. </view>
  95. </view>
  96. </view>
  97. <u-popup v-model="screenShow" mode="top" height="780">
  98. <view class="screen">
  99. <!-- 顾问选择 -->
  100. <view class="screen-counselor">
  101. <view class="screen-text">
  102. 所属顾问
  103. </view>
  104. <view class="screen-sel" @click="selectshow = true">
  105. <input v-model="screen.counselorName" type="text" placeholder='请选择'
  106. class="screen-inp" disabled />
  107. <image class="screen-sel-img" src="../../../static/images/right.png" mode=""></image>
  108. </view>
  109. </view>
  110. <view class="screen-record">
  111. <view class="screen-record-text">
  112. 录音标识
  113. </view>
  114. <view class="screen-record-tab">
  115. <view :class="[screen.validInvalid==0?'screen-record-chose':'screen-record-nochose']"
  116. @click="screenvisivalidInvalid(0)">
  117. 有效接待
  118. </view>
  119. <view :class="[screen.validInvalid==1?'screen-record-chose':'screen-record-nochose']"
  120. @click="screenvisivalidInvalid(1)">
  121. 无效接待
  122. </view>
  123. </view>
  124. </view>
  125. <view class="screen-record">
  126. <view class="screen-record-text">
  127. 标记顾问
  128. </view>
  129. <view class="screen-record-tab">
  130. <view :class="[screen.markAdvisor==1?'screen-record-chose':'screen-record-nochose']"
  131. @click="screenvisitRecord(1)">
  132. 标记
  133. </view>
  134. <view :class="[screen.markAdvisor==0?'screen-record-chose':'screen-record-nochose']"
  135. @click="screenvisitRecord(0)">
  136. 未标记
  137. </view>
  138. </view>
  139. </view>
  140. <view class="screen-record">
  141. <view class="screen-record-text">
  142. 到访次数
  143. </view>
  144. <view class="screen-record-tab">
  145. <block v-for="(item,index) in visitList" :key="index">
  146. <view :class="[item.isShow?'screen-record-chose':'screen-record-nochose']"
  147. @click="choice(index,item.value)">
  148. {{item.label}}
  149. </view>
  150. </block>
  151. <!-- <view :class="[screen.visitRecord==1?'screen-record-chose':'screen-record-nochose']"
  152. @click="recordclick(1)">
  153. 首次到访
  154. </view>
  155. <view :class="[screen.visitRecord==2?'screen-record-chose':'screen-record-nochose']"
  156. @click="recordclick(2)">
  157. 2次到访
  158. </view>
  159. <view :class="[screen.visitRecord==3?'screen-record-chose':'screen-record-nochose']"
  160. @click="recordclick(3)">
  161. 3次到访
  162. </view>
  163. <view :class="[screen.visitRecord==4?'screen-record-chose':'screen-record-nochose']"
  164. @click="recordclick(4)">
  165. 3次以上
  166. </view> -->
  167. </view>
  168. </view>
  169. <view class="screen-foot">
  170. <view class="screen-foot-reset" @click="reset">
  171. 重置
  172. </view>
  173. <view class="screen-foot-sure" @click="screensure">
  174. 确定
  175. </view>
  176. </view>
  177. </view>
  178. </u-popup>
  179. <!-- 选择顾问的选择框 -->
  180. <u-select v-model="selectshow" :list="freeList" @confirm="actionSelectCallback"></u-select>
  181. <u-calendar v-model="totalTimeShow" mode="range" @change="totalTimeChange"></u-calendar>
  182. <u-popup v-model="timeshow" mode="bottom">
  183. <view class="timeview" :style="{ color: activeTotal == 5 ? '#2B6EFF' : '#333333' }" @click="tabtimetap(5, '接待时间')">
  184. 全部</view>
  185. <view class="timeview" :style="{ color: activeTotal == 0 ? '#2B6EFF' : '#333333' }" @click="tabtimetap(0, '今天')">
  186. 今天</view>
  187. <view class="timeview" :style="{ color: activeTotal == 1 ? '#2B6EFF' : '#333333' }" @click="tabtimetap(1, '昨天')">
  188. 昨天</view>
  189. <view class="timeview" :style="{ color: activeTotal == 2 ? '#2B6EFF' : '#333333' }" @click="tabtimetap(2, '近7天')">
  190. 近7天</view>
  191. <view class="timeview" :style="{ color: activeTotal == 3 ? '#2B6EFF' : '#333333' }" @click="tabtimetap(3, '近30天')">
  192. 近30天</view>
  193. <view class="timeview" :style="{ color: activeTotal == 4 ? '#2B6EFF' : '#333333' }" @click="tabtimetap(4)">
  194. 自定义</view>
  195. </u-popup>
  196. <u-popup v-model="timetushow" mode="bottom">
  197. <view class="timeview" :style="{ color: activeTotal2 == 0 ? '#2B6EFF' : '#333333' }" @click="timetap(0, '接待时长')">全部
  198. </view>
  199. <view class="timeview" :style="{ color: activeTotal2 == 1 ? '#2B6EFF' : '#333333' }" @click="timetap(1, '0~15min')">
  200. 0~15min</view>
  201. <view class="timeview" :style="{ color: activeTotal2 == 2 ? '#2B6EFF' : '#333333' }" @click="timetap(2, '15~30min')">
  202. 15~30min</view>
  203. <view class="timeview" :style="{ color: activeTotal2 == 3 ? '#2B6EFF' : '#333333' }" @click="timetap(3, '30~60min')">
  204. 30~60min</view>
  205. <view class="timeview" :style="{ color: activeTotal2 == 4 ? '#2B6EFF' : '#333333' }" @click="timetap(4, '60~90min')">
  206. 60~90min</view>
  207. <view class="timeview" :style="{ color: activeTotal2 == 5 ? '#2B6EFF' : '#333333' }" @click="timetap(5, '90min以上')">
  208. 90min以上</view>
  209. </u-popup>
  210. <u-select v-model="soltishow" :list="orderBylist" @confirm="selectCallback2"></u-select>
  211. </view>
  212. </template>
  213. <script>
  214. export default {
  215. data() {
  216. return {
  217. orderBylist: [
  218. // {
  219. // label: '全部',
  220. // value: '0'
  221. // },
  222. {
  223. label: '创建时间倒序',
  224. value: '1'
  225. },
  226. {
  227. label: '创建时间正序',
  228. value: '2'
  229. },
  230. {
  231. label: '接待时间倒序',
  232. value: '3'
  233. },
  234. {
  235. label: '接待时间正序',
  236. value: '4'
  237. },
  238. {
  239. label: '执行率正序',
  240. value: '5'
  241. },
  242. {
  243. label: '执行率倒序',
  244. value: '6'
  245. },
  246. {
  247. label: '接访次数正序',
  248. value: '7'
  249. },
  250. {
  251. label: '接访次数倒序',
  252. value: '8'
  253. },
  254. ],
  255. activeTotal: 5,
  256. value: '',
  257. screenShow: false,
  258. selectshow: false,
  259. totalTimeShow: false,
  260. totalRecords: '',
  261. screen: {
  262. agentId: '', //顾问id
  263. record: '0',
  264. markAdvisor: null,
  265. visitRecord: [],
  266. validInvalid: null
  267. },
  268. freeList: [], //顾问
  269. recordList: [],
  270. buildingID: '',
  271. nextPage: 1,
  272. totalRecord: "",
  273. staTime: '',
  274. endtime: '',
  275. isnorefresh: '',
  276. activeTotal2: 0,
  277. timeshow: false,
  278. timetushow: false,
  279. soltishow: false,
  280. orderBy: '',
  281. methodsisshow: false,
  282. userInfo: {},
  283. startFilterTime: '接待时间', // s筛选状态展示
  284. receptionDuration: '接待时长', // 筛选状态展示
  285. sortText: '排序', //
  286. visitList: [{
  287. label: '首次到访',
  288. value: 1,
  289. isShow: false,
  290. }, {
  291. label: '2次到访',
  292. value: 2,
  293. isShow: false,
  294. }, {
  295. label: '3次到访',
  296. value: 3,
  297. isShow: false,
  298. }, {
  299. label: '3次以上',
  300. value: 4,
  301. isShow: false,
  302. }, ]
  303. }
  304. },
  305. onLoad(options) {
  306. this.isnorefresh = options.refresh;
  307. if (options.activeTotal) {
  308. this.activeTotal = options.activeTotal
  309. }
  310. if (options.markAdvisor) {
  311. this.screen.markAdvisor = options.markAdvisor
  312. }
  313. if (options.validInvalid) {
  314. this.screen.validInvalid = options.validInvalid
  315. }
  316. if (options.staTime) {
  317. this.staTime = options.staTime;
  318. this.endtime = options.endtime;
  319. }
  320. },
  321. onShow() {
  322. try {
  323. this.$store.commit('stopAduio')
  324. } catch(e) {
  325. console.log(e)
  326. }
  327. this.userInfo = uni.getStorageSync('weapp_session_userInfo_data');
  328. if (this.userInfo.dataCode == 6 || this.userInfo.dataCode == 3) {
  329. this.methodsisshow = false;
  330. } else {
  331. this.methodsisshow = true;
  332. }
  333. if (this.isnorefresh == 'refresh') {
  334. this.buildingID = uni.getStorageSync('buildingID').id;
  335. this.recordList = [];
  336. this.nextPage = 1;
  337. this.getMyCustom()
  338. this.getFreeList();
  339. this.isnorefresh = '';
  340. }
  341. },
  342. onPullDownRefresh(){
  343. this.getMyCustom()
  344. setTimeout(function () {
  345. uni.stopPullDownRefresh();
  346. }, 1000);
  347. },
  348. onReachBottom() {
  349. if (this.totalRecord == this.nextPage) {
  350. uni.showToast({
  351. icon: 'none',
  352. title: '到底了',
  353. duration: 2000
  354. });
  355. return
  356. } else {
  357. this.nextPage += 1;
  358. this.getMyCustom();
  359. }
  360. },
  361. methods: {
  362. tapsoltishow() {
  363. this.soltishow = true;
  364. },
  365. taptimetuisshow() {
  366. this.timetushow = true;
  367. },
  368. taptimeisshow() {
  369. this.timeshow = true;
  370. },
  371. //选择标签
  372. selectCallback2(e) {
  373. this.orderBy = e[0].value;
  374. this.sortText = e[0].label
  375. this.nextPage = 1;
  376. this.recordList = [];
  377. this.getMyCustom();
  378. },
  379. //选择录音时长
  380. timetap(index, text) {
  381. if (text) this.receptionDuration = text
  382. this.timetushow = false;
  383. this.activeTotal2 = index;
  384. this.nextPage = 1;
  385. this.recordList = [];
  386. this.getMyCustom();
  387. },
  388. //时间选择
  389. tabtimetap(index, text) {
  390. this.timeshow = false;
  391. if(text) {
  392. this.startFilterTime = text
  393. }
  394. if (index == 4) {
  395. this.totalTimeShow = true;
  396. } else {
  397. this.activeTotal = index;
  398. this.staTime = '';
  399. this.endtime = '';
  400. this.nextPage = 1;
  401. this.recordList = [];
  402. this.getMyCustom();
  403. }
  404. },
  405. //自定义时间
  406. totalTimeChange(e) {
  407. this.staTime = e.startDate;
  408. this.endtime = e.endDate;
  409. this.activeTotal = 4;
  410. this.nextPage = 1;
  411. this.recordList = [];
  412. this.getMyCustom();
  413. },
  414. tapThevisiting(item) {
  415. let newmenulist = uni.getStorageSync('weapp_session_Menu_data');
  416. if (newmenulist.jdjl_ck != true) {
  417. return
  418. }
  419. uni.showLoading({
  420. title: '加载中',
  421. mask: true
  422. });
  423. if (item.status == 0) {
  424. setTimeout(function() {
  425. uni.hideLoading();
  426. }, 2000);
  427. uni.showToast({
  428. icon: "none",
  429. title: "排队中"
  430. })
  431. return
  432. } else {
  433. const parames = {
  434. pageNum: 1,
  435. pageSize: 100,
  436. query: {
  437. customerId: item.id,
  438. }
  439. }
  440. var item = {
  441. bg: 0,
  442. customerId: item.id,
  443. }
  444. uni.setStorageSync("searchobj", item); //写入缓存
  445. uni.setStorageSync("entrance", 1); //写入缓存
  446. this.$u.post("/corpus/findByPage", parames).then(res => {
  447. if (res == null) {
  448. setTimeout(function() {
  449. uni.hideLoading();
  450. }, 2000);
  451. uni.showToast({
  452. icon: "none",
  453. title: "暂无音频"
  454. })
  455. return
  456. } else {
  457. setTimeout(function() {
  458. uni.hideLoading();
  459. }, 2000);
  460. let newobj = res[0];
  461. if (res[0].merge == 0) {
  462. uni.navigateTo({
  463. url: `/pages/mine/details2?customerId=${newobj.customerId}&status=${newobj.status}&stateisshow=${"2"}`
  464. })
  465. } else {
  466. uni.navigateTo({
  467. url: `/pages/mine/details?customerId=${newobj.customerId}&status=${newobj.status}&stateisshow=${"1"}`
  468. })
  469. }
  470. }
  471. })
  472. }
  473. },
  474. getMyCustom() {
  475. let dateType = 0;
  476. let recDurationInterval = 0;
  477. let orderBy = 0;
  478. if (this.activeTotal == 5) {
  479. dateType = null;
  480. } else if (this.activeTotal == 4) {
  481. dateType = null;
  482. } else {
  483. dateType = this.activeTotal;
  484. }
  485. if (this.activeTotal2 == 0) {
  486. recDurationInterval = null
  487. } else {
  488. recDurationInterval = this.activeTotal2
  489. }
  490. if (this.orderBy == 0) {
  491. orderBy = null;
  492. } else {
  493. orderBy = this.orderBy;
  494. }
  495. var parames = {
  496. pageNum: this.nextPage,
  497. pageSize: 10,
  498. query: {
  499. projectId: this.buildingID,
  500. time: 1,
  501. staDate: this.staTime,
  502. endDate: this.endtime,
  503. visitRecords: this.screen.visitRecord.join(","),
  504. markAdvisor: this.screen.markAdvisor,
  505. dateType: dateType,
  506. recDurationInterval: recDurationInterval,
  507. orderBy: orderBy,
  508. validInvalid: this.screen.validInvalid
  509. }
  510. };
  511. if (this.screen.agentId) {
  512. parames.query.agentId = this.screen.agentId
  513. }
  514. this.$u.post("/customer/findbypage", parames).then(data => {
  515. var list = data.results || [];
  516. this.recordList = [...this.recordList, ...list];
  517. this.totalRecord = data.totalPage;
  518. this.totalRecords = data.totalRecord;
  519. if(this.staTime && this.endtime) {
  520. this.startFilterTime = `${this.staTime}-${this.endtime}`
  521. }
  522. })
  523. },
  524. //获取顾问列表
  525. getFreeList() {
  526. this.$u.post("/cusLvStatistics/selectAllAccountIdByHouseId", {houseId: this.buildingID}).then(res => {
  527. this.freeList = res;
  528. this.freeList.forEach(item => {
  529. item.label = item.name;
  530. item.value = item.accountId
  531. })
  532. })
  533. },
  534. // 筛选
  535. screenshow() {
  536. this.screenShow = true
  537. },
  538. actionSelectCallback(e) {
  539. this.screen.agentId = e[0].value;
  540. this.screen.counselorName = e[0].label
  541. this.recordList = [];
  542. this.nextPage = 1;
  543. this.getMyCustom();
  544. },
  545. reset() {
  546. this.screen = {
  547. counselorName: '',
  548. record: '0',
  549. markAdvisor: null,
  550. visitRecord: null,
  551. validInvalid: null
  552. }
  553. // this.screenShow = false;
  554. this.nextPage = 1;
  555. this.recordList = [];
  556. this.getMyCustom();
  557. },
  558. choice(index,e) {
  559. if (this.visitList[index].isShow == true) {
  560. this.visitList[index].isShow = false;
  561. for (var i = 0; i < this.screen.visitRecord.length; i++) {
  562. if (this.screen.visitRecord[i] === e) {
  563. this.screen.visitRecord.splice(i, 1);
  564. }
  565. }
  566. } else {
  567. this.visitList[index].isShow = true;
  568. this.screen.visitRecord.push(e)
  569. }
  570. },
  571. recordclick(i) {
  572. if (this.screen.visitRecord == i) {
  573. this.screen.visitRecord = null
  574. } else {
  575. this.screen.visitRecord = i
  576. }
  577. },
  578. screenvisitRecord(i) {
  579. if (this.screen.markAdvisor == i) {
  580. this.screen.markAdvisor = null
  581. } else {
  582. this.screen.markAdvisor = i
  583. }
  584. },
  585. screenvisivalidInvalid(i) {
  586. console.log(this.screen.validInvalid, i)
  587. if (this.screen.validInvalid == i) {
  588. this.screen.validInvalid = null
  589. } else {
  590. this.screen.validInvalid = i
  591. }
  592. },
  593. screensure() {
  594. this.screenShow = false;
  595. this.recordList = [];
  596. this.nextPage = 1;
  597. this.getMyCustom();
  598. },
  599. goSearch() {
  600. uni.navigateTo({
  601. url: '/pages/center/records/recordSearch'
  602. });
  603. },
  604. },
  605. filters: {
  606. // 加密手机号
  607. encryption(phone) {
  608. if (!phone) return
  609. return phone.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2')
  610. }
  611. }
  612. }
  613. </script>
  614. <style lang="scss" scoped>
  615. .box {
  616. width: 100%;
  617. height: 100%;
  618. background: #F8F8F8;
  619. }
  620. .timeview {
  621. height: 80rpx;
  622. line-height: 80rpx;
  623. width: 100%;
  624. text-align: center;
  625. border-bottom: 1px solid #F8F8F8;
  626. }
  627. //时间切换的样式
  628. .boxtittab {
  629. position: sticky;
  630. top: var(--window-top);
  631. z-index: 999;
  632. width: 100;
  633. height: 92rpx;
  634. background: #FFFFFF;
  635. border: 1px solid #E0E0E0;
  636. display: flex;
  637. align-items: center;
  638. .tabbox {
  639. flex-shrink: 0;
  640. flex-grow: 1;
  641. height: 100%;
  642. text-align: center;
  643. line-height: 92rpx;
  644. color: #666666;
  645. font-size: 28rpx;
  646. overflow: hidden;
  647. text-overflow: ellipsis;
  648. display: -webkit-box;
  649. /* 将对象作为弹性伸缩盒子模型显示 */
  650. -webkit-line-clamp: 1;
  651. /* 控制最多显示几行 */
  652. -webkit-box-orient: vertical;
  653. /* 设置或检索伸缩盒对象的子元素的排列方式 */
  654. }
  655. }
  656. .search-box {
  657. width: 100%;
  658. height: 102rpx;
  659. background: #FFFFFF;
  660. display: flex;
  661. align-items: center;
  662. justify-content: center;
  663. .search {
  664. width: 94%;
  665. height: 70rpx;
  666. display: flex;
  667. align-items: center;
  668. background: #F8F8F8;
  669. border-radius: 33rpx;
  670. .search-img {
  671. width: 26rpx;
  672. height: 30rpx;
  673. margin-left: 20rpx;
  674. .search-img1 {
  675. width: 100%;
  676. height: 100%;
  677. margin-top: 2rpx;
  678. }
  679. }
  680. .search-text {
  681. font-size: 28rpx;
  682. font-weight: 400;
  683. color: #999999;
  684. margin-left: 10rpx;
  685. }
  686. }
  687. .search-screen {
  688. width: 40rpx;
  689. height: 40rpx;
  690. margin-left: 30rpx;
  691. .search-screen1 {
  692. width: 100%;
  693. height: 100%;
  694. }
  695. }
  696. }
  697. .count {
  698. width: 100%;
  699. height: 90rpx;
  700. display: flex;
  701. align-items: center;
  702. justify-content: center;
  703. background-color: #FBE4E4;
  704. text {
  705. color: #F71616;
  706. }
  707. }
  708. .content {
  709. .content-tips {
  710. background: #fff;
  711. box-sizing: border-box;
  712. overflow: hidden;
  713. margin-top: 20rpx;
  714. .content-first {
  715. margin-top: 19rpx;
  716. padding: 0 30rpx;
  717. height: 92rpx;
  718. border-bottom: 1rpx solid rgba($color: #2671E2, $alpha: .1);
  719. display: flex;
  720. align-items: center;
  721. justify-content: space-between;
  722. .left {
  723. flex-shrink: 0;
  724. min-width: 50%;
  725. display: flex;
  726. align-items: center;
  727. overflow: hidden;
  728. .adviser {
  729. margin-right: 10rpx;
  730. padding: 5rpx 11rpx;
  731. border-radius: 50%;
  732. border: 1rpx solid #2671E2;
  733. font-size: 30rpx;
  734. color: #2671E2;
  735. }
  736. .img {
  737. width: 52rpx;
  738. height: 52rpx;
  739. background: #FFFFFF;
  740. border: 1px solid #C9C9C9;
  741. border-radius: 50%;
  742. text-align: center;
  743. }
  744. .name {
  745. color: #333333;
  746. font-size: 32rpx;
  747. font-weight: bold;
  748. }
  749. .status {
  750. margin-left: 19rpx;
  751. width: 110rpx;
  752. background: #FFF9F5;
  753. border-radius: 4rpx;
  754. font-size: 26rpx;
  755. font-weight: 400;
  756. color: #EC8D49;
  757. text-align: center;
  758. }
  759. }
  760. .right {
  761. max-width: 50%;
  762. display: flex;
  763. font-size: 30rpx;
  764. view,
  765. text {
  766. flex-shrink: 0;
  767. }
  768. .point {
  769. flex-shrink: 0;
  770. width: 12rpx;
  771. height: 12rpx;
  772. background: #2B6EFF;
  773. border-radius: 50%;
  774. margin-right: 9rpx;
  775. margin-top: 16rpx;
  776. }
  777. }
  778. }
  779. .content-sec {
  780. padding: 28rpx 30rpx 32rpx;
  781. display: flex;
  782. justify-content: space-between;
  783. .left {
  784. display: flex;
  785. align-items: center;
  786. .adviser {
  787. margin-right: 10rpx;
  788. padding: 5rpx 11rpx;
  789. border-radius: 50%;
  790. border: 1rpx solid #2671E2;
  791. background: #2671E2;
  792. font-size: 30rpx;
  793. color: #fff;
  794. }
  795. .cus {
  796. font-size: 30rpx;
  797. font-weight: 400;
  798. color: #666666;
  799. // line-height: 30rpx;
  800. overflow: hidden;
  801. text-overflow: ellipsis;
  802. display: -webkit-box;
  803. line-height: 23px;
  804. max-height: 46px;
  805. -webkit-line-clamp: 1;
  806. -webkit-box-orient: vertical;
  807. }
  808. .arriveNum {
  809. font-size: 30rpx;
  810. font-weight: 400;
  811. margin-left: 10rpx;
  812. }
  813. }
  814. .right {
  815. font-size: 28rpx;
  816. font-weight: 400;
  817. color: #2671E2;
  818. display: flex;
  819. align-items: center;
  820. .img {
  821. margin-right: 10rpx;
  822. width: 32rpx;
  823. height: 32rpx;
  824. }
  825. }
  826. }
  827. .content-last {
  828. padding: 0 30rpx 34rpx;
  829. font-size: 30rpx;
  830. font-weight: 400;
  831. color: #666666;
  832. display: flex;
  833. align-items: center;
  834. justify-content: space-between;
  835. .c-items {
  836. flex-shrink: 0;
  837. display: flex;
  838. align-items: center;
  839. font-size: 28rpx;
  840. .c-items-img {
  841. margin-right: 10rpx;
  842. width: 32rpx;
  843. height: 32rpx;
  844. }
  845. }
  846. }
  847. }
  848. }
  849. // 这是弹出层
  850. .screen {
  851. // box-sizing: border-box;
  852. // padding: 0 30rpx;
  853. position: absolute;
  854. .screen-counselor {
  855. display: flex;
  856. align-items: center;
  857. height: 106rpx;
  858. // padding: 40rpx 30rpx 36rpx 30rpx;
  859. padding: 0 30rpx;
  860. box-sizing: border-box;
  861. border-bottom: 1px solid #EEEEEE;
  862. .screen-text {
  863. font-size: 30rpx;
  864. font-weight: 400;
  865. color: #333333;
  866. line-height: 30rpx;
  867. }
  868. .screen-sel {
  869. display: flex;
  870. justify-content: flex-end;
  871. align-items: center;
  872. width: 500rpx;
  873. margin-left: 60rpx;
  874. .screen-sel-img {
  875. flex-shrink: 0;
  876. width: 14rpx;
  877. height: 30rpx;
  878. }
  879. .screen-inp {
  880. padding: 0 20rpx;
  881. text-align: right;
  882. }
  883. }
  884. }
  885. .screen-record {
  886. height: 192rpx;
  887. // width: 100%;
  888. overflow: hidden;
  889. padding: 0 30rpx;
  890. box-sizing: border-box;
  891. border-bottom: 1px solid #EEEEEE;
  892. .screen-record-text {
  893. margin-top: 36rpx;
  894. font-size: 30rpx;
  895. font-weight: 400;
  896. color: #333333;
  897. line-height: 30rpx;
  898. }
  899. .screen-record-tab {
  900. margin-top: 30rpx;
  901. display: flex;
  902. // justify-content: space-around;
  903. .screen-record-chose {
  904. width: 156rpx;
  905. height: 60rpx;
  906. background: #2671E2;
  907. border-radius: 4rpx;
  908. border: 1px solid #2671E2;
  909. text-align: center;
  910. line-height: 60rpx;
  911. margin-right: 22rpx;
  912. color: #FFFFFF;
  913. }
  914. .screen-record-nochose {
  915. width: 156rpx;
  916. height: 60rpx;
  917. background: #FFFFFF;
  918. border-radius: 4rpx;
  919. border: 1px solid #C9C9C9;
  920. text-align: center;
  921. line-height: 60rpx;
  922. margin-right: 22rpx;
  923. }
  924. }
  925. }
  926. .screen-foot {
  927. width: 100%;
  928. height: 100rpx;
  929. display: flex;
  930. .screen-foot-reset {
  931. width: 50%;
  932. text-align: center;
  933. height: 100rpx;
  934. line-height: 100rpx;
  935. font-size: 30rpx;
  936. font-weight: 400;
  937. color: #666666;
  938. }
  939. .screen-foot-sure {
  940. width: 50%;
  941. text-align: center;
  942. line-height: 100rpx;
  943. height: 100rpx;
  944. font-size: 30rpx;
  945. font-weight: 400;
  946. color: #FFFFFF;
  947. background: #2671E2;
  948. }
  949. }
  950. }
  951. </style>