活动按钮状态流转

This commit is contained in:
2026-03-25 15:53:37 +08:00
commit 37346e790f
2762 changed files with 240282 additions and 0 deletions

View File

@@ -0,0 +1 @@
(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["pagesTools/phoneBook/index"],{"0fa5":function(t,e,n){"use strict";var o=n("81b9"),r=n.n(o);r.a},"1a29":function(t,e,n){"use strict";n.r(e);var o=n("b1d2"),r=n("df57");for(var a in r)["default"].indexOf(a)<0&&function(t){n.d(e,t,(function(){return r[t]}))}(a);n("0fa5");var i=n("828b"),c=Object(i["a"])(r["default"],o["b"],o["c"],!1,null,null,null,!1,o["a"],void 0);e["default"]=c.exports},"30e3":function(t,e,n){"use strict";(function(t){var o=n("47a9");Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var r=o(n("7ca3")),a=n("8f59");function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}var c={data:function(){return{loadEnd:!1,titleBarHeight:0,keyword:"",sortOrder:0,phoneList:[]}},computed:function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?i(Object(n),!0).forEach((function(e){(0,r.default)(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}({},(0,a.mapState)({themeColor:function(t){return t.app.themeColor}})),mounted:function(){var e=t.getSystemInfoSync().statusBarHeight,n=t.getMenuButtonBoundingClientRect();this.titleBarHeight=e+2*(n.top-e)+n.height},onLoad:function(){var e=this;t.showLoading({title:"加载中"}),this.getPhoneList((function(){e.loadEnd=!0,t.hideLoading()}))},onPullDownRefresh:function(){this.getPhoneList((function(){t.stopPullDownRefresh()}))},methods:{getPhoneList:function(e){var n=this;this.$util.request("member.addressBook",{keywords:this.keyword}).then((function(o){if(e&&e(),1==o.code){if(n.sortOrder=o.data.address_book_sort_order,3==o.data.address_book_sort_order)n.phoneList=o.data.data;else if(n.phoneList=[],n.phoneList)try{for(var r in o.data.data)n.phoneList.push({key:r,value:o.data.data[r]})}catch(a){n.phoneList=[]}}else t.showToast({title:o.msg,icon:"none"})})).catch((function(t){e&&e(),console.error("获取通讯录",t)}))},onContact:function(t){this.$util.toPage({mode:6,phone:t})}}};e.default=c}).call(this,n("df3c")["default"])},"81b9":function(t,e,n){},b1d2:function(t,e,n){"use strict";n.d(e,"b",(function(){return o})),n.d(e,"c",(function(){return r})),n.d(e,"a",(function(){}));var o=function(){var t=this.$createElement,e=(this._self._c,this.loadEnd?this.phoneList.length:null);this.$mp.data=Object.assign({},{$root:{g0:e}})},r=[]},df57:function(t,e,n){"use strict";n.r(e);var o=n("30e3"),r=n.n(o);for(var a in o)["default"].indexOf(a)<0&&function(t){n.d(e,t,(function(){return o[t]}))}(a);e["default"]=r.a},ed22:function(t,e,n){"use strict";(function(t,e){var o=n("47a9");n("aa6c");o(n("3240"));var r=o(n("1a29"));t.__webpack_require_UNI_MP_PLUGIN__=n,e(r.default)}).call(this,n("3223")["default"],n("df3c")["createPage"])}},[["ed22","common/runtime","common/vendor"]]]);

View File

@@ -0,0 +1,5 @@
{
"navigationBarTitleText": "通讯录",
"enablePullDownRefresh": true,
"usingComponents": {}
}

View File

@@ -0,0 +1 @@
<view class="container" style="{{'--theme-color:'+(themeColor)+';'}}"><title-bar vue-id="67645b56-1" title="通讯录" bind:__l="__l"></title-bar><block wx:if="{{loadEnd}}"><view class="container-main"><view class="main-search" style="{{'top:'+(titleBarHeight+'px')+';'}}"><view class="search-box flex align-items-center"><image class="icon" src="/static/search.png" mode="aspectFit"></image><input class="input flex-item" placeholder="请输入关键词搜索" placeholder-class="placeholder" data-event-opts="{{[['confirm',[['getPhoneList']]],['input',[['__set_model',['','keyword','$event',[]]]]]]}}" value="{{keyword}}" bindconfirm="__e" bindinput="__e"/></view></view><block wx:if="{{$root.g0}}"><view class="main-content"><block wx:if="{{sortOrder==3}}"><view class="content-list"><block wx:for="{{phoneList}}" wx:for-item="item" wx:for-index="__i0__" wx:key="id"><view data-event-opts="{{[['tap',[['onContact',['$0'],[[['phoneList','id',item.id,'mobile']]]]]]]}}" class="list-box flex align-items-center" bindtap="__e"><image class="box-avatar" src="{{item.avatar}}" mode="aspectFill"></image><view class="box-info flex-item"><view class="info-head flex align-items-center"><view class="name">{{item.name}}</view><view class="level">{{item.level_name}}</view></view><view class="info-mobile">{{item.mobile}}</view></view><view class="box-btn"><image class="icon" src="/static/contact/phone.png" mode="aspectFit"></image></view></view></block></view></block><block wx:else><view class="content-initial"><block wx:for="{{phoneList}}" wx:for-item="list" wx:for-index="index" wx:key="index"><view class="initial-item"><view class="item-title">{{list.key}}</view><view class="item-list"><block wx:for="{{list.value}}" wx:for-item="item" wx:for-index="__i1__" wx:key="id"><view data-event-opts="{{[['tap',[['onContact',['$0'],[[['phoneList','',index],['value','id',item.id,'mobile']]]]]]]}}" class="list-box flex align-items-center" bindtap="__e"><image class="box-avatar" src="{{item.avatar}}" mode="aspectFill"></image><view class="box-info flex-item"><view class="info-head flex align-items-center"><view class="name">{{item.name}}</view><view class="level">{{item.level_name}}</view></view><view class="info-mobile">{{item.mobile}}</view></view><view class="box-btn"><image class="icon" src="/static/contact/phone.png" mode="aspectFit"></image></view></view></block></view></view></block></view></block></view></block><block wx:else><empty vue-id="67645b56-2" top="36%" title="暂无通讯人员~" bind:__l="__l"></empty></block></view></block><tab-bar vue-id="67645b56-3" bind:__l="__l"></tab-bar></view>

View File

@@ -0,0 +1 @@
.container .container-main .main-search{position:-webkit-sticky;position:sticky;top:0;z-index:99;background:#fff;padding:16rpx 32rpx}.container .container-main .main-search .search-box{border-radius:10rpx;background:#f9f9f9;padding-left:32rpx}.container .container-main .main-search .search-box .icon{width:40rpx;height:40rpx}.container .container-main .main-search .search-box .input{color:#5a5b6e;font-size:28rpx;line-height:40rpx;padding:20rpx 32rpx 20rpx 16rpx}.container .container-main .main-search .search-box .placeholder{color:#bbb}.container .container-main .main-content{padding:32rpx;border-radius:10rpx}.container .container-main .main-content .content-initial{padding:32rpx;border-radius:10rpx;background:#fff}.container .container-main .main-content .content-initial .initial-item{margin-top:32rpx}.container .container-main .main-content .content-initial .initial-item:first-child{margin-top:0}.container .container-main .main-content .content-initial .initial-item .item-title{color:#5a5b6e;font-size:28rpx;line-height:40rpx}.container .container-main .main-content .content-initial .initial-item .item-list{margin-top:32rpx}.container .container-main .main-content .content-list{padding:32rpx;border-radius:10rpx;background:#fff}.container .container-main .main-content .content-list .list-box{margin-top:48rpx}.container .container-main .main-content .list-box{margin-top:32rpx}.container .container-main .main-content .list-box:first-child{margin-top:0}.container .container-main .main-content .list-box .box-avatar{width:84rpx;height:84rpx;border-radius:50%}.container .container-main .main-content .list-box .box-info{margin-left:32rpx}.container .container-main .main-content .list-box .box-info .info-head .name{color:#5a5b6e;font-size:32rpx;font-weight:600;line-height:44rpx}.container .container-main .main-content .list-box .box-info .info-head .level{margin-left:16rpx;color:#8d929c;font-size:28rpx;line-height:40rpx}.container .container-main .main-content .list-box .box-info .info-mobile{color:#5a5b6e;font-size:28rpx;line-height:40rpx}.container .container-main .main-content .list-box .box-btn{margin-left:32rpx;width:64rpx;height:64rpx;border-radius:50%;background:var(--theme-color);padding:8rpx}