Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 

217 linhas
4.9 KiB

  1. <template>
  2. <view class="box">
  3. <view style="width: 690rpx;margin: 0 auto;margin-top: 20rpx;">
  4. <u-search @search='searchinfo()' placeholder="请输入" v-model="keyword"></u-search>
  5. </view>
  6. <view @click="searchinfo()">搜索</view>
  7. <view class="content">
  8. <view class="content-tips" v-for="(item,index) in recordList" :key='index' @click="godetail()">
  9. <view class="content-first">
  10. <view class="left">
  11. <view class="img">{{item.name.slice(0,1)}}</view>
  12. <view class="test">{{item.name}}</view>
  13. </view>
  14. </view>
  15. <view class="content-sec">
  16. <view class="content-sec-lab">
  17. 手机号码:<view class="content-sec-lab1">{{item.phone || '--'}}</view>
  18. </view>
  19. <view class="content-sec-lab">
  20. 客户标签:
  21. <!-- <view class="content-sec-tips" v-for="(che,ind) in item.demand.cusSemanticWords" :key='ind'>{{che.name}}</view> -->
  22. </view>
  23. <view class="content-sec-lab">
  24. 顾问姓名:<view class="content-sec-lab1">{{item.agentName}}</view>
  25. </view>
  26. <view class="content-sec-lab">
  27. 添加时间:<view class="content-sec-lab1">{{item.createTime}}</view>
  28. </view>
  29. <view class="content-sec-num">
  30. <view class="">{{item.visitRecord}}次到访</view>
  31. <view class="">{{item.fraction || '0'}}% | {{item.fraction || '0'}}分</view>
  32. </view>
  33. </view>
  34. </view>
  35. </view>
  36. </view>
  37. </template>
  38. <script>
  39. export default{
  40. data(){
  41. return{
  42. keyword:'',
  43. stageList:['未知','到访','意向','定金','成交'],
  44. recordList:[],
  45. nextPage:1,
  46. totalRecord:'',
  47. buildingID:'',
  48. }
  49. },
  50. onShow() {
  51. this.buildingID = uni.getStorageSync('buildingID').id;
  52. },
  53. onReachBottom() {
  54. if(this.totalRecord==this.nextPage){
  55. uni.showToast({
  56. icon:'none',
  57. title: '到底了',
  58. duration: 2000
  59. });
  60. return
  61. }else{
  62. this.nextPage+=1;
  63. this.getMyCustom();
  64. }
  65. },
  66. methods:{
  67. searchinfo(){
  68. this.nextPage=1;
  69. this.recordList=[];
  70. this.getMyCustom();
  71. },
  72. getMyCustom(){
  73. var parames = {
  74. pageNum: this.nextPage,
  75. pageSize: 10,
  76. query: {
  77. projectId:this.buildingID,
  78. }
  79. };
  80. this.$u.post("/customer/customerManagement", parames).then(data => {
  81. var list = data.results || [];
  82. this.recordList = [...this.recordList, ...list];
  83. this.totalRecord=data.totalPage;
  84. })
  85. },
  86. }
  87. }
  88. </script>
  89. <style lang="scss" scoped>
  90. .box {
  91. width: 100%;
  92. height: 100%;
  93. background: #F8F8F8;
  94. }
  95. .content{
  96. // height: 1000rpx;/
  97. overflow: hidden;
  98. border-top: 1px solid #E0E0E0;
  99. .content-tips{
  100. background: #fff;
  101. // box-sizing: border-box;
  102. margin-bottom: 20rpx;
  103. overflow: hidden;
  104. .content-first{
  105. padding: 19rpx 30rpx;
  106. display: flex;
  107. justify-content: space-between;
  108. box-sizing: border-box;
  109. // border-top: 1px solid #E0E0E0;
  110. font-weight: 400;
  111. color: #292929;
  112. height: 90rpx;
  113. font-size: 30rpx;
  114. line-height: 30rpx;
  115. .left{
  116. display: flex;
  117. .img{
  118. // margin-top: 19rpx;
  119. width: 52rpx;
  120. height: 52rpx;
  121. border: 1px solid #E0E0E0;
  122. border-radius: 50%;
  123. text-align: center;
  124. line-height: 50rpx;
  125. }
  126. .test{
  127. margin-top: 11rpx;
  128. margin-left: 20rpx;
  129. font-weight: 500;
  130. color: #333333;
  131. }
  132. }
  133. .right{
  134. display: flex;
  135. .point{
  136. width: 12rpx;
  137. height: 12rpx;
  138. background: #2B6EFF;
  139. border-radius: 50%;
  140. margin-right: 9rpx;
  141. margin-top: 20rpx;
  142. }
  143. .test{
  144. margin-top: 11rpx;
  145. }
  146. }
  147. }
  148. .content-sec{
  149. border-top: 1px solid #E0E0E0;
  150. padding: 0 30rpx;
  151. padding-bottom: 30rpx;
  152. // height: 270rpx;
  153. position: relative;
  154. .content-sec-lab{
  155. margin-top: 30rpx;
  156. display: flex;
  157. font-size: 30rpx;
  158. font-weight: 400;
  159. color: #666666;
  160. line-height: 30rpx;
  161. .content-sec-lab1{
  162. color: #333333;
  163. }
  164. .content-sec-tips{
  165. max-width:174rpx ;
  166. height: 46rpx;
  167. background: #F2F2F2;
  168. border-radius: 6rpx;
  169. text-align: center;
  170. line-height: 26rpx;
  171. overflow: hidden;
  172. text-overflow:ellipsis;
  173. white-space: nowrap;
  174. font-size: 26rpx;
  175. font-weight: 400;
  176. color: #333333;
  177. margin-right: 24rpx;
  178. box-sizing: border-box;
  179. padding: 10rpx 24rpx;
  180. }
  181. }
  182. .content-sec-num{
  183. position: absolute;
  184. width: 190rpx;
  185. height: 90rpx;
  186. background: #F4F8FD;
  187. border-radius: 12rpx;
  188. font-weight: 400;
  189. color: #2671E2;
  190. line-height: 45rpx;
  191. bottom: 30rpx;
  192. right: 30rpx;
  193. text-align: center;
  194. }
  195. }
  196. .content-last{
  197. display: flex;
  198. border-top: 1px solid #E0E0E0;
  199. // padding: 0 30rpx;
  200. height: 78rpx;
  201. .content-last-tab{
  202. width: 33.4%;
  203. text-align: center;
  204. font-size: 30rpx;
  205. font-weight: 400;
  206. color: #333333;
  207. line-height: 78rpx;
  208. border-right: 1px solid #E0E0E0;
  209. }
  210. }
  211. }
  212. }
  213. </style>