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.
 
 
 

218 lines
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 || "0"}}次到访</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. nameOrPhone:this.keyword
  79. }
  80. };
  81. this.$u.post("/customer/customerManagement", parames).then(data => {
  82. var list = data.results || [];
  83. this.recordList = [...this.recordList, ...list];
  84. this.totalRecord=data.totalPage;
  85. })
  86. },
  87. }
  88. }
  89. </script>
  90. <style lang="scss" scoped>
  91. .box {
  92. width: 100%;
  93. height: 100%;
  94. background: #F8F8F8;
  95. }
  96. .content{
  97. // height: 1000rpx;/
  98. overflow: hidden;
  99. border-top: 1px solid #E0E0E0;
  100. .content-tips{
  101. background: #fff;
  102. // box-sizing: border-box;
  103. margin-bottom: 20rpx;
  104. overflow: hidden;
  105. .content-first{
  106. padding: 19rpx 30rpx;
  107. display: flex;
  108. justify-content: space-between;
  109. box-sizing: border-box;
  110. // border-top: 1px solid #E0E0E0;
  111. font-weight: 400;
  112. color: #292929;
  113. height: 90rpx;
  114. font-size: 30rpx;
  115. line-height: 30rpx;
  116. .left{
  117. display: flex;
  118. .img{
  119. // margin-top: 19rpx;
  120. width: 52rpx;
  121. height: 52rpx;
  122. border: 1px solid #E0E0E0;
  123. border-radius: 50%;
  124. text-align: center;
  125. line-height: 50rpx;
  126. }
  127. .test{
  128. margin-top: 11rpx;
  129. margin-left: 20rpx;
  130. font-weight: 500;
  131. color: #333333;
  132. }
  133. }
  134. .right{
  135. display: flex;
  136. .point{
  137. width: 12rpx;
  138. height: 12rpx;
  139. background: #2B6EFF;
  140. border-radius: 50%;
  141. margin-right: 9rpx;
  142. margin-top: 20rpx;
  143. }
  144. .test{
  145. margin-top: 11rpx;
  146. }
  147. }
  148. }
  149. .content-sec{
  150. border-top: 1px solid #E0E0E0;
  151. padding: 0 30rpx;
  152. padding-bottom: 30rpx;
  153. // height: 270rpx;
  154. position: relative;
  155. .content-sec-lab{
  156. margin-top: 30rpx;
  157. display: flex;
  158. font-size: 30rpx;
  159. font-weight: 400;
  160. color: #666666;
  161. line-height: 30rpx;
  162. .content-sec-lab1{
  163. color: #333333;
  164. }
  165. .content-sec-tips{
  166. max-width:174rpx ;
  167. height: 46rpx;
  168. background: #F2F2F2;
  169. border-radius: 6rpx;
  170. text-align: center;
  171. line-height: 26rpx;
  172. overflow: hidden;
  173. text-overflow:ellipsis;
  174. white-space: nowrap;
  175. font-size: 26rpx;
  176. font-weight: 400;
  177. color: #333333;
  178. margin-right: 24rpx;
  179. box-sizing: border-box;
  180. padding: 10rpx 24rpx;
  181. }
  182. }
  183. .content-sec-num{
  184. position: absolute;
  185. width: 190rpx;
  186. height: 90rpx;
  187. background: #F4F8FD;
  188. border-radius: 12rpx;
  189. font-weight: 400;
  190. color: #2671E2;
  191. line-height: 45rpx;
  192. bottom: 30rpx;
  193. right: 30rpx;
  194. text-align: center;
  195. }
  196. }
  197. .content-last{
  198. display: flex;
  199. border-top: 1px solid #E0E0E0;
  200. // padding: 0 30rpx;
  201. height: 78rpx;
  202. .content-last-tab{
  203. width: 33.4%;
  204. text-align: center;
  205. font-size: 30rpx;
  206. font-weight: 400;
  207. color: #333333;
  208. line-height: 78rpx;
  209. border-right: 1px solid #E0E0E0;
  210. }
  211. }
  212. }
  213. }
  214. </style>