Compare commits

..

2 Commits

Author SHA1 Message Date
747c1645ec 切换git 2025-04-01 00:55:43 +08:00
34ad2076f0 日常提交 2025-03-28 20:18:53 +08:00
59 changed files with 159 additions and 664 deletions

View File

@ -79,7 +79,7 @@ export default {
list:(data)=>request.get('/api/point/records',data)
},
friend:{
list:(params)=>request.get('/api/user/referrals',params)
list:()=>request.get('/api/user/referrals')
},
updateUser:(data)=>request.put('/api/user/update',data),
createPayment(order_id){

23
app.js
View File

@ -45,7 +45,6 @@ App({
if(options.query.shared_user_code){
this.globalData.shared_user_code = options.query.shared_user_code;
}
this.checkUpdate();
},
navToLogin(){
wx.reLaunch({
@ -182,27 +181,5 @@ App({
},
getAddressList(){
},
checkUpdate() {
if (!wx.canIUse('getUpdateManager')) {
return;
}
const updateManager = wx.getUpdateManager();
updateManager.onCheckForUpdate((res) => {
console.log(res);
});
updateManager.onUpdateReady(() => {
wx.showModal({
title: '更新提示',
content: '新版本已准备好,重启应用以使用新版本',
showCancel: false,
success: (res) => {
if (res.confirm) {
updateManager.applyUpdate();
}
}
});
});
}
})

View File

@ -25,8 +25,7 @@
"pages/my/setting/name/index",
"pages/browser/index",
"pages/my/promation/wx-group/index",
"pages/order/markup/index",
"pages/my/promation/share/index"
"pages/order/markup/index"
],
"window": {
"navigationBarTextStyle": "black",
@ -46,6 +45,12 @@
"iconPath": "assets/icon/tabs/tab1.png",
"selectedIconPath": "assets/icon/tabs/tab1-active.png"
},
{
"pagePath": "pages/shop/index/index",
"text": "生活圈",
"iconPath": "assets/icon/tabs/tab2.png",
"selectedIconPath": "assets/icon/tabs/tab2-active.png"
},
{
"pagePath": "pages/order/index/index",
"text": "订单",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 404 KiB

After

Width:  |  Height:  |  Size: 436 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 244 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1019 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 644 B

View File

@ -63,7 +63,7 @@ Component({
}
},
fail:(res)=>{
this.triggerEvent('payError');
console.log(res);
}
})
});

View File

@ -1,4 +1,4 @@
<page-container show="{{isShowConfirm}}" wx:if="{{isShowConfirm}}" round close-on-slide-down>
<page-container show="{{isShowConfirm}}" round close-on-slide-down>
<view class="content pc-content">
<view class="title">{{product.name}}</view>
<view class="tags">
@ -12,8 +12,8 @@
<label class="money">{{calculatedPrice.amount}}</label>
</view>
<view class="right">
<label class="key">赠送积分</label>
<label class="weight">{{calculatedPrice.gift_points}}</label>
<label class="key">赠送蜂蜜</label>
<label class="weight">{{calculatedPrice.gift_points}}</label>
</view>
</view>

View File

@ -1,5 +1,5 @@
.pc-content{
padding:20rpx 30rpx 0 30rpx;
padding:60rpx 30rpx 0 30rpx;
}
.pc-content .title{
font-size: 40rpx;

View File

@ -117,7 +117,7 @@ Component({
if(valid.length>0)return;
}
this.setData({
_show:false
show:false
});
this.triggerEvent('ok',this.properties.content);
},
@ -125,7 +125,6 @@ Component({
this.setData({
show:false
})
this.triggerEvent('afterLeave')
}
},

View File

@ -22,7 +22,6 @@ Page({
isShowOrderConfirm:false,
preOrder:{},
order:{},
preOrderUnPayId:'',
manuallyChangedCommunity:false,
@ -34,9 +33,7 @@ Page({
navBarHeight:0,
isShowPayModal:false,
appConfig:{},
orderStatus:userApi.order.status
appConfig:{}
},
/**
@ -201,7 +198,7 @@ Page({
params.packages = realItem;
}
if(res.data.price_request.pickup_images){
// params.pickup_images_count = res.data.price_request.pickup_images_count;
params.pickup_images_count = res.data.price_request.pickup_images_count;
params.pickup_images = res.data.price_request.pickup_images;
}
userApi.order.pre(params).then((data)=>{
@ -224,7 +221,7 @@ Page({
}else{
wx.showToast({
icon:'error',
title: data.message||'发生错误',
title: data.message,
});
}
this.setData(_setData);
@ -270,22 +267,19 @@ Page({
userApi.order.real(res.data).then((data)=>{
this.setData({
isShowOrderConfirm:false,
ordering:false,
order:data
ordering:false
});
wx.removeStorage({
key: 'pre-order',
});
if(data.order.status==this.data.orderStatus.created){
//创建成功并且不需要支付
this.paySuccess();
}else{
//需要支付
const merchantPay = this.selectComponent('#merchantOrderComponent');
merchantPay.createPayment(data.order.orderid,true);
}
wx.showTabBar({
success(){
wx.navigateTo({
url: `/pages/help/success/index?id=${data.order.orderid}&success_text=${data.delivery_time}`,
})
}
});
}).catch((e)=>{
console.log(e);
this.setData({
ordering:false
});
@ -293,32 +287,10 @@ Page({
}
});
},
paySuccess(){
wx.showTabBar({
success:()=>{
wx.navigateTo({
url: `/pages/help/success/index?id=${this.data.order.order.orderid}&success_text=${this.data.order.delivery_time}`,
})
}
});
},
payError(){
//订单创建成功,但是支付错误,还是要刷新
app.globalData.needRefreshOrderList = true;
wx.showTabBar({
success:()=>{
wx.navigateTo({
url: `/pages/order/detail/index?id=${this.data.order.order.orderid}`,
})
}
});
},
enterPageContainer(){
console.log('enterPageContainer');
// wx.hideTabBar();
},
leavePageContainer(){
console.log('leavePageContainer');
wx.showTabBar();
},
/**
@ -334,6 +306,7 @@ Page({
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/

View File

@ -1,8 +1,7 @@
{
"usingComponents": {
"nav-bar":"/components/navbar",
"modal-view":"/components/modalView",
"merchant-order":"/components/merchantOrder"
"modal-view":"/components/modalView"
},
"navigationStyle": "custom"
}

View File

@ -55,11 +55,11 @@
</view>
<view class="item">
<image class="icon" src="/assets/icon/help/icon2.png"/>
<view class="text">平价亲民</view>
<view class="text">先享后付</view>
</view>
<view class="item">
<image class="icon" src="/assets/icon/help/icon3.png"/>
<view class="text">准时送达</view>
<view class="text">安全保障</view>
</view>
</view>
</view>
@ -82,11 +82,11 @@
<view class="title">{{appConfig.join_group_title}}</view>
<view class="sub-title">{{appConfig.join_group_desc}}</view>
</view>
<navigator url="/pages/my/promation/share/index" class="item right share">
<button class="item right share" open-type="share">
<image src="/assets/icon/help/share.png" class="icon"/>
<view class="title">{{appConfig.share_button_title}}</view>
<view class="sub-title">{{appConfig.share_button_mini_desc}}</view>
</navigator>
</button>
</view>
<!-- <navigator url="/pages/my/promation/wx-group/index?communityId={{currentCommunity.id}}"
class="promotion-panel" wx:if="{{currentCommunity.id}}" wx:if="{{appConfig&&appConfig.join_group_title}}">
@ -134,12 +134,15 @@ bind:enter="enterPageContainer" bind:leave="leavePageContainer" wx:if="{{isShowO
<view class="value money yellow">{{preOrder.price_info.coupon_discount_amount}}</view>
</view>
<view class="kv-item" wx:if="{{preOrder.price_info.points_discount_amount}}">
<view class="key">积分抵</view>
<view class="key">蜂蜜抵</view>
<view class="value money yellow">{{preOrder.price_info.points_discount_amount}}</view>
</view>
<view class="kv-item">
<view class="key">
<view>应支付</view>
<view class="tags">
<view class="tag yellow">先享后付</view>
</view>
</view>
<view class="value money">{{preOrder.price_info.final_amount}}</view>
</view>
@ -148,8 +151,5 @@ bind:enter="enterPageContainer" bind:leave="leavePageContainer" wx:if="{{isShowO
<button class="button" type="primary" bind:tap="getOrder" loading="{{ordering}}">确认下单</button>
</view>
</page-container>
<modal-view titleText="你有订单未支付!" okButtonText="去支付" show="{{isShowPayModal}}"
bind:ok="navToUnPayOrder"/>
<merchant-order id="merchantOrderComponent" bind:paySuccess="paySuccess" bind:payError="payError"/>
<modal-view titleText="你有订单未支付!" okButtonText="去支付" model:show="{{isShowPayModal}}" wx:if="{{isShowPayModal}}" bind:ok="navToUnPayOrder"/>

View File

@ -103,7 +103,7 @@
}
.address-panel .bottom .text{
color: #999999;
font-size: 26rpx;
font-size: 24rpx;
margin-left: 8rpx;
display: inline-block;
vertical-align: middle;

View File

@ -23,33 +23,13 @@ Page({
isShowStationEditor:false,
currentEditStation:{},
isShowSameStation:false,
ignoreSameStation:false,
sameStationName:''
currentEditStation:{}
},
async bottomBarButtonTap(){
const data = [];
const pickupImgs = [];
let hasSame = false;
this.data.choosedStationList.find((item,index)=>{
//查找ai识别中相同驿站
//代码写好,暂不开启
if(false){
let sameStations = this.data.choosedStationList.filter((_item)=>{
return (_item.name==item.name)&&!_item.id;
});
if(sameStations.length>1&&!this.data.ignoreSameStation){
hasSame = true;
this.setData({
isShowSameStation:true,
sameStationName:sameStations[0].name
})
return true;
}
}
if(item.pickup_codes.length>0&&item.pickup_codes[0]!=''){
//倒着找相同的索引 因为需要从后往前找
const codes = item.pickup_codes.join(',').split(',').reverse();
@ -70,14 +50,12 @@ Page({
icon:'none',
title: '取件码重复',
})
console.log(this.data.choosedStationList[index],'----');
this.setData({
[`choosedStationList[${index}]`]:this.data.choosedStationList[index]
})
return true;
}
if(item.imgUrl){
pickupImgs.push(item.imgUrl);
}
data.push({
id:item.id||'',
name:item.name,
@ -91,8 +69,7 @@ Page({
//录入了有效取件码 或者 上传了取件图片||this.data.tempImgs.length>0
if(data.length>0){
let priceRequest = {
packages:data,
pickup_images:pickupImgs.join(',')
packages:data
};
if(this.data.timePeriodsIndex==-1){
wx.showToast({
@ -396,34 +373,6 @@ Page({
urls: [url],
})
},
ignoreSameStation(){
this.data.ignoreSameStation = true;
},
sameStationAfterLeave(){
console.log(this.data.ignoreSameStation);
if(this.data.ignoreSameStation){
this.bottomBarButtonTap();
}
},
mergeStation(){
this.data.ignoreSameStation = false;
this.data.choosedStationList.map((item,index)=>{
if(!item.id){
//从当前往后找所有的
this.data.choosedStationList.map((_item,_index)=>{
if(_index>index){
if(_item.name == item.name&&!_item.id){
item.pickup_codes = item.pickup_codes.concat(_item.pickup_codes);
this.data.choosedStationList.splice(_index,1);
}
}
})
}
});
this.setData({
choosedStationList:this.data.choosedStationList
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/

View File

@ -101,12 +101,4 @@
<modal-view editable titleText="修改驿站" content="{{currentEditStation.name||''}}"
model:show="{{isShowStationEditor}}" use-input auto-focus bind:ok="editStationName"
contentPlaceholder="驿站名不能为空"/>
<modal-view class="same-station-view" titleText="合并驿站" show="{{isShowSameStation}}"
bind:ok="ignoreSameStation" bind:cancel="mergeStation" ok-button-text="直接保存" cancel-button-text="立即合并" bind:afterLeave="sameStationAfterLeave">
<view class="content-text">
检测到有多个<label style="color:red;font-weight: bold;">{{sameStationName}}</label>,是否需要合并,
多个驿站会产生额外配送费用。
</view>
</modal-view>
contentPlaceholder="驿站名不能为空"/>

View File

@ -258,12 +258,4 @@
.manually-code .icon{
width:28rpx;height:28rpx;
margin-right:12rpx;
}
.same-station-view .content-text{
color: #666666;
font-size: 28rpx;
text-align: center;
margin:22rpx 0 40rpx 0;
line-height: 48rpx;
}

View File

@ -11,7 +11,7 @@ Page({
},
onLoad(options){
this.setData({
userCode:options.shared_user_code||app.globalData.shared_user_code||''
userCode:options.shared_user_code||''
});
app.getAppConfig().then((data)=>{

View File

@ -1,28 +1,24 @@
<view class="custom-scroll-view login">
<view class="login">
<nav-bar>
<label class="title">登录</label>
</nav-bar>
<view class="main">
<view class="main-scroll">
<image src="/assets/imgs/login/text1.png" class="text1"/>
<image src="/assets/imgs/login/text2.png" class="text2"/>
<image src="/assets/imgs/login/main.png" class="main-img" mode="aspectFit"/>
<button class="button" type="primary" wx:if="{{isAgree}}" loading="{{loging}}" disabled="{{loging}}"
open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">手机号快捷登录</button>
<button class="button" type="primary" bindtap="preLogin" wx:else>
手机号快捷登录
</button>
<view class="agree">
<radio-group bindchange="radioChange">
<label class="policy" animation="{{animation}}">
<radio class="radio" value="agree"></radio>
<label>我已阅读并同意</label>
<label class="yellow" capture-catch:tap="navToAgreement">《用户协议》</label>与
<label class="yellow" capture-catch:tap="navToDeliveryContract">《配送服务协议》</label>
</label>
</radio-group>
</view>
</view>
<image src="/assets/imgs/login/text1.png" class="text1"/>
<image src="/assets/imgs/login/text2.png" class="text2"/>
<image src="/assets/imgs/login/main.png" class="main"/>
<button class="button" type="primary" wx:if="{{isAgree}}" loading="{{loging}}" disabled="{{loging}}"
open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">手机号快捷登录</button>
<button class="button" type="primary" bindtap="preLogin" wx:else>
手机号快捷登录
</button>
<view class="agree">
<radio-group bindchange="radioChange">
<label class="policy" animation="{{animation}}">
<radio class="radio" value="agree"></radio>
<label>我已阅读并同意</label>
<label class="yellow" capture-catch:tap="navToAgreement">《用户协议》</label>与
<label class="yellow" capture-catch:tap="navToDeliveryContract">《配送服务协议》</label>
</label>
</radio-group>
</view>
<view class="btn-no-login" bind:tap="goBack">暂不登录</view>
<view class="user-code">{{userCode}}</view>

View File

@ -4,7 +4,7 @@
height:100vh;
}
.text1{
/* margin-top:90rpx; */
margin-top:120rpx;
width:590rpx;
height:56rpx;
}
@ -13,11 +13,10 @@
height:40rpx;
margin-top:40rpx;
}
.main-img{
height:40vh;
width:60vw;
display: block;
margin:70rpx auto;
.main{
width:418rpx;
height:448rpx;
margin-top:122rpx;
}
.agree .yellow{
color:#FEC400;
@ -32,7 +31,7 @@
margin-right:10rpx;
}
.button{
margin:0 64rpx 60rpx 64rpx!important;
margin:30rpx 64rpx 60rpx 64rpx!important;
}
.button[disabled]{
background-color:#e4e4e4!important;
@ -50,20 +49,9 @@
.btn-no-login{
position: absolute;
bottom:calc(var(--safe-bottom) + 40rpx);
bottom:60rpx;
left:0;
width:100%;
text-align: center;
color: #999999;
}
.custom-scroll-view .main{
display:flex;
align-items: center;
padding-bottom:calc(var(--safe-bottom) + 40rpx + 34rpx);
overflow: hidden;
}
.custom-scroll-view .main-scroll{
flex:1;
max-height: 100%;
overflow: auto;
}

View File

@ -33,9 +33,6 @@ Page({
this.setData({
listViewHeight:windowInfo.windowHeight-57
})
this.data.pager.tab1.loading = false;
this.data.pager.tab2.loading = false;
this.data.pager.tab3.loading = false;
this.loadList('tab1');
},
refreshList(){

View File

@ -41,8 +41,7 @@
<view class="item {{tabIndex==0?'':'used'}}" wx:for="{{tab2List}}" wx:key="id">
<view class="left">
<view class="name">{{item.coupon_name}}</view>
<view class="desc" wx:if="{{item.status=='USED'}}">使用时间 {{item.used_time}}</view>
<view class="desc" wx:else>有效期至 {{item.expire_time}}</view>
<view class="desc">有效期至 {{item.expire_time}}</view>
</view>
<view class="btn-area">
<button class="use-btn" disabled type="primary" size="mini"

View File

@ -39,25 +39,12 @@ Page({
this.setData({
pager:this.data.pager
});
userApi.friend.list({
skip:this.data.pager.limit*this.data.pager.pageIndex,
limit:this.data.pager.limit
}).then((data)=>{
if(this.data.pager.pageIndex==0){
this.data.list = data.items;
}else{
this.data.list = this.data.list.concat(data.items);
}
this.data.pager.refreshTrigger = false;
userApi.friend.list().then((data)=>{
this.data.pager.loading = false;
this.data.pager.pageIndex++;
if(data.items.length<this.data.pager.limit){
this.data.pager.loadAll = true;
}
this.data.pager.loadAll = true;
this.data.pager.refreshTrigger = false;
this.setData({
list:this.data.list,
list:data.items,
pager:this.data.pager
})
}).catch(()=>{

View File

@ -32,9 +32,6 @@
.firend-list .item .status{
color:var(--main-color)
}
.firend-list .item .status.un{
color:#999;
}
.list-empty{
padding-top:480rpx;

View File

@ -56,6 +56,9 @@ Page({
wx.navigateTo({
url: `/pages/browser/index?url=${encodeURIComponent(url)}`,
})
},
shareFriend(){
},
showQRCode(){
userApi.shareQRCode().then((data)=>{

View File

@ -7,10 +7,7 @@
<view bind:tap="navToSetting">
<image class="avatar" src="{{userInfo.optimized_avatar||'/assets/icon/my/avatar.png'}}"/>
</view>
<view class="name">
<view>{{userInfo.nickname}}</view>
<view class="phone">{{userInfo.phone}}</view>
</view>
<view class="name">{{userInfo.nickname}}</view>
<image src="/assets/icon/help/qrcode.png" class="qrcode" bind:tap="showQRCode"
wx:if="{{userInfo.userid}}"/>
</view>
@ -23,7 +20,7 @@
</view>
<view class="item" bind:tap="goToMoney">
<view class="value">{{userInfo.points||0}}</view>
<view class="key">积分</view>
<view class="key">蜂蜜(克)</view>
</view>
</view>
@ -35,20 +32,20 @@
<view class="cell-bd">
<view>
<view>邀请好友下单</view>
<view class="spec">邀请好友领券下单自己再得1张配送券</view>
<view class="spec">邀请好友领券下单自己再得1张跑腿券</view>
</view>
</view>
<view class="cell-ft"></view>
</navigator>
</view> -->
<navigator url="/pages/my/promation/share/index" class="invite-cell">
<button class="invite-cell" bind:tap="shareFriend" open-type="share">
<view class="title">
<image class="icon" src="/assets/icon/my/share@2x.png"></image>
<view class="text">{{appConfig.share_button_title}}</view>
<view class="right-arrow"></view>
</view>
<view class="sub-title">{{appConfig.share_button_desc}}</view>
</navigator>
</button>
<view class="cells cells-access">
<navigator url="/pages/my/firend/index" class="cell" hover-class="cell-active">
<view class="cell-hd">

View File

@ -29,12 +29,6 @@
flex:1;
margin-left:30rpx;
}
.user-info .content .phone{
margin-top:18rpx;
font-size: 30rpx;
font-weight: normal;
color: #333;
}
.user-info .content .qrcode{
width:56rpx;height:56rpx;
}

View File

@ -2,5 +2,5 @@
"usingComponents": {
"list-view":"/components/listView"
},
"navigationBarTitleText": "积分"
"navigationBarTitleText": "蜂蜜"
}

View File

@ -1,6 +1,6 @@
<view class="custom-scroll-view">
<view class="consume">
<view class="title">积分</view>
<view class="title">蜂蜜 (克)</view>
<view class="point">{{userInfo.points}}</view>
<view class="tips">取快递自动抵扣</view>
</view>
@ -19,7 +19,7 @@
<view class="list-empty" wx:if="{{list.length==0&&pager.loadAll}}">
<image class="icon" src="/assets/icon/shop/point-empty@2x.png"/>
<view class="sub-title">暂无积分</view>
<view class="sub-title">暂无蜂蜜</view>
</view>
</list-view>
</view>

View File

@ -16,9 +16,7 @@ Page({
isShowModal:false,
errorMsg:'',
canReceive:false
errorMsg:''
},
/**
@ -45,22 +43,26 @@ Page({
getting:true
})
commonApi.activities.receive(this.data.activityId).then((data)=>{
wx.showToast({
title: '领取成功',
});
this.setData({
isShowModal:true,
getting:false,
reveivedSuccess:true,
errorMsg:'恭喜您已领取成功!'
})
}).catch((e)=>{
this.setData({
isShowModal:true,
getting:false,
errorMsg:e.message||'领取错误'
})
this.setData({
getting:false
})
})
},
navToIndex(){
if(this.data.hasProduct&&this.data.canReceive){
if(this.data.hasProduct){
wx.reLaunch({
url: '/pages/my/coupon/index',
})
@ -95,7 +97,6 @@ Page({
});
return userApi.coupon.check(this.data.activityId);
}).then((data)=>{
this.data.canReceive = data.can_receive;
if(!data.can_receive){
this.setData({
isShowModal:true,

View File

@ -26,7 +26,7 @@
<button disabled="{{getting}}" loading="{{getting}}" type="primary"
class="button get" bind:tap="getActivity">一键领取</button>
</view>
<image src="/assets/imgs/login/main.png" class="bottom-img" mode="widthFix"/>
<image src="/assets/imgs/login/main.png" class="bottom-img"/>
<modal-view titleText="{{errorMsg}}"
okButtonText="{{hasProduct&&reveivedSuccess?'去兑换':'回到首页'}}"

View File

@ -62,7 +62,8 @@ page{
.bottom-img{
position: fixed;
bottom:0;
width:70vw;
left:15vw;
width:500rpx;
height:540rpx;
left:calc(50vw - 250rpx);
z-index: 0;
}

View File

@ -1,66 +0,0 @@
// pages/my/promation/share/index.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})

View File

@ -1,4 +0,0 @@
{
"usingComponents": {},
"navigationBarTitleText": "宠粉行动"
}

View File

@ -1,77 +0,0 @@
<scroll-view scroll-y class="scroll-view">
<view class="scroll-view-top-margin"></view>
<view class="logo-area">
<image src="/assets/icon/my/logo.png" class="logo"/>
</view>
<image class="share-title" src="/assets/imgs/share/share-title.png" mode="widthFix"/>
<view class="main">
<view class="head">奖励规则</view>
<view class="m-item large">
<view class="left">
<image class="icon" src="/assets/imgs/share/icon1.png"/>
</view>
<view class="right">
<view class="title">好友首单奖励</view>
<view class="sub-title">
好友注册并完成首单,您将获得<label class="point">30积分</label>奖励
</view>
</view>
</view>
<view class="m-item large">
<view class="left">
<image class="icon" src="/assets/imgs/share/icon1.png"/>
</view>
<view class="right">
<view class="title">好友后续订单</view>
<view class="sub-title">
好友每完成后续订单,您将获得<label class="point">3积分</label>奖励
</view>
</view>
</view>
<view class="spliter"></view>
<view class="m-item small">
<view class="left">
<image class="icon" src="/assets/imgs/share/icon1.png"/>
</view>
<view class="right">
<view class="sub-title">
积分可用于抵扣配送费,<label class="point">10积分=1元</label>
</view>
</view>
</view>
<view class="m-item small">
<view class="left">
<image class="icon" src="/assets/imgs/share/icon1.png"/>
</view>
<view class="right">
<view class="sub-title">
积分长期有效,无需担心过期
</view>
</view>
</view>
<button type="primary" class="btn-share" open-type="share">
<image src="/assets/imgs/share/share.png" class="icon"/>
<label>立即邀请好友</label>
</button>
<view class="step-area">
<view class="title">邀请步骤</view>
<view class="steps">
<view class="item">
<view class="icon">1</view>
<view class="text">分享给好友</view>
</view>
<view class="item">
<view class="icon">2</view>
<view class="text">好友下单完成</view>
</view>
<view class="item">
<view class="icon">3</view>
<view class="text">获得积分奖励</view>
</view>
</view>
</view>
</view>
</scroll-view>

View File

@ -1,152 +0,0 @@
page{
background-color:var(--main-color);
}
.scroll-view{
height:100vh;
}
.logo-area{
background-color: rgba(237, 181, 0, 1);
border-radius: 50%;
width:132rpx;height:132rpx;
margin:70rpx auto 0 auto;
display: flex;
align-items: center;
justify-content: center;
}
.logo-area .logo{
width:84rpx;height:84rpx;
}
.share-title{
width:512rpx;
margin:36rpx auto 0 auto;
display: block;
}
.main{
background-color: #fff;
border-radius: 18rpx;
margin:40rpx 24rpx;
padding:40rpx 24rpx;
box-shadow: 0px 3px 6px 1px rgba(0, 0, 0, 0.1);
}
.main .head{
font-size: 36rpx;
display: flex;
gap: 24rpx;
align-items: center;
color: var(--main-color);
}
.main .head::before{
content: '';
background-color: var(--main-color);
border-radius: 18rpx;
width:8rpx;height:32rpx;
}
.main .m-item{
display: flex;
align-items: center;
margin:50rpx 0 60rpx 0;
}
.main .m-item.small{
margin:30rpx 0;
}
.main .m-item .left{
width:70rpx;height:70rpx;
background-color: rgba(255, 246, 217, 1);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
}
.main .m-item.small .left{
width:52rpx;height:52rpx;
}
.main .m-item .right{
margin-left:24rpx;
display: flex;
flex-direction: column;
gap: 20rpx;
}
.main .m-item .icon{
width:40rpx;height:40rpx;
}
.main .m-item .title{
font-weight: 500;
}
.main .m-item .sub-title{
font-size:26rpx;
color: rgba(85, 85, 85, 1);
}
.main .m-item .point{
color: var(--main-color);
font-weight: 600;
margin:0 12rpx;
}
.spliter{
position: relative;
margin:64rpx 0 60rpx 0;
}
.spliter::before{
content:'积分说明';
position: absolute;
top:-14rpx;left:50%;
margin-left: -78rpx;
padding:0 22rpx;
font-size: 28rpx;
background-color: #fff;
}
.btn-share{
border-radius: 60rpx;
margin:60rpx 70rpx 0 70rpx!important;
line-height: 1;
}
.step-area{
background-color: rgba(255, 246, 217, 1);
border-radius: 18rpx;
padding:30rpx 24rpx 34rpx 24rpx;
margin-top:60rpx;
}
.step-area .title{
color: var(--main-color);
text-align: center;
}
.step-area .steps{
display: flex;
font-size: 22rpx;
margin-top:34rpx;
}
.step-area .steps .item{
display: flex;
flex-direction: column;
gap: 30rpx;
flex: 1;
align-items: center;
position: relative;
}
.step-area .steps .icon{
width:60rpx;height:60rpx;
background-color: rgba(237, 181, 0, 1);
font-size: 36rpx;
font-weight: bold;
border-radius: 50%;
color: #fff;
display: flex;
align-items: center;
justify-content: center;
}
.step-area .steps .item::after{
background:transparent url(data:image/svg+xml,%3Csvg%20t%3D%221743574928938%22%20class%3D%22icon%22%20viewBox%3D%220%200%201024%201024%22%20version%3D%221.1%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20p-id%3D%2245741%22%20width%3D%22128%22%20height%3D%22128%22%3E%3Cpath%20d%3D%22M456.99072%20608.60416l-272.9984-28.73344a68.23936%2068.23936%200%200%201%200-135.74144l272.9984-28.73344A61.44%2061.44%200%200%200%20512%20354.28352v-132.15744C512%20201.23648%20529.73568%20184.32%20551.60832%20184.32c10.15808%200%2019.94752%203.72736%2027.32032%2010.4448L882.688%20470.91712a54.90688%2054.90688%200%200%201%200%2082.1248L578.92864%20829.25568a40.96%2040.96%200%200%201-56.0128-1.31072A36.90496%2036.90496%200%200%201%20512%20801.87392V669.696a61.44%2061.44%200%200%200-55.00928-61.11232z%22%20p-id%3D%2245742%22%20fill%3D%22%23EDB500%22%3E%3C/path%3E%3C/svg%3E);
content: '';
position: absolute;
width:40rpx;height:40rpx;
right: -20rpx;top:10rpx;
background-size: 100%;
}
.step-area .steps .item:last-child::after{
display: none;
}

View File

@ -2,9 +2,7 @@
<view class="fixed">
<view class="top-bg">
<nav-bar back black/>
<view class="img-wrapper">
<image src="/assets/imgs/login/main.png" class="image" mode="widthFix"/>
</view>
<image src="/assets/imgs/login/main.png" class="image"/>
<view class="hive"></view>
</view>
<view class="community-info">

View File

@ -11,12 +11,9 @@ page{
text-align: center;
position: relative;
}
.top-bg .img-wrapper{
height:480rpx;
overflow: hidden;
}
.top-bg .image{
width:500rpx;
width:448rpx;
height:480rpx;
position: relative;
z-index: 1;
}

View File

@ -110,11 +110,6 @@ Page({
url: `/pages/browser/index?url=${encodeURIComponent(this.data.appConfig.url_delivery_contract)}`,
})
},
navToFee(){
wx.navigateTo({
url: `/pages/browser/index?url=${encodeURIComponent(this.data.appConfig.url_addition_fee_policy)}`,
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/

View File

@ -27,10 +27,6 @@
<view class="cell-bd">配送服务协议</view>
<view class="cell-ft"></view>
</view>
<view class="cell" bind:tap="navToFee">
<view class="cell-bd">加价收费标准</view>
<view class="cell-ft"></view>
</view>
</view>
<button type="default" class="logout-btn" bind:tap="logout">退出登录</button>

View File

@ -13,7 +13,7 @@ Page({
qrcodeUrl:'',
lng:0,
lat:0,
merchantOrderStatus:shopApi.merchantOrderStatus,
orderStatus:shopApi.merchantOrderStatus,
merchantOrderStatusKV:shopApi.merchantOrderStatusKV,
genderKV:userApi.genderKV,
@ -46,24 +46,17 @@ Page({
onLoad(options) {
this.data.orderId = options.id;
this.setScrollViewHieght();
app.getLocation().then((data)=>{
this.setData({
lng:data.longitude,
lat:data.latitude,
});
this.getOrderDetail();
}).catch(()=>{
this.getOrderDetail();
});
this.getOrderDetail();
},
setScrollViewHieght(){
const windowInfo = wx.getWindowInfo();
let height = windowInfo.windowHeight;
console.log(this.data.orderDetail.status==this.data.merchantOrderStatus.created,
this.data.orderDetail.status==this.data.merchantOrderStatus.unverified);
console.log(this.data.orderDetail.status==this.data.orderStatus.created,
this.data.orderDetail.status==this.data.orderStatus.unverified);
if(this.data.orderDetail&&this.data.orderDetail.id){
if(this.data.orderDetail.status==this.data.merchantOrderStatus.created||
this.data.orderDetail.status==this.data.merchantOrderStatus.unverified){
if(this.data.orderDetail.status==this.data.orderStatus.created||
this.data.orderDetail.status==this.data.orderStatus.unverified){
height = height - 94;
}
}
@ -96,7 +89,7 @@ Page({
orderDetail:data,
refresherTriggered:false
});
if(data.status==this.data.merchantOrderStatus.unverified){
if(data.status==this.data.orderStatus.unverified){
this.getQRCode();
}else{
this.setData({

View File

@ -87,11 +87,12 @@
<view class="bottom-bar-v2"
wx:if="{{orderDetail.status==merchantOrderStatus.created||orderDetail.status==merchantOrderStatus.unverified}}">
<!-- <button class="button button1" plain size="mini">取消订单</button> -->
<button type="primary" wx:if="{{orderDetail.status==merchantOrderStatus.created}}"
<button class="button btn-cancel" plain size="mini"
wx:if="{{orderDetail.order.status==orderStatus.created}}">取消订单</button>
<button class="button btn-pay" type="primary" wx:if="{{orderDetail.status.status==orderStatus.created}}"
bind:tap="pay">去支付</button>
<button class="button button2" plain size="mini" bind:tap="refund" loading="{{refunding}}"
wx:if="{{orderDetail.status==merchantOrderStatus.unverified}}">申请退款</button>
<button class="button btn-re-order" plain size="mini" bind:tap="refund" loading="{{refunding}}"
wx:if="{{orderDetail.order.status==orderStatus.complete}}">再来一单</button>
</view>
</view>
<merchant-order id="merchantOrderComponent" bind:paySuccess="paySuccess"/>

View File

@ -161,20 +161,23 @@
.bottom-bar-v2{
text-align: right;
display: flex;
justify-content:flex-end;
}
.bottom-bar-v2 .button{
line-height: 72rpx;
padding:0 36rpx;
font-weight: normal;
border-radius: 18rpx;
margin:0!important;
gap: 30rpx;
}
.bottom-bar-v2 .button1{
.bottom-bar-v2 .btn-cancel,.bottom-bar-v2 .btn-re-order{
color: #555555;
border: 1rpx solid rgba(153, 153, 153, 0.5);
font-size: 32rpx;
}
.bottom-bar-v2 .button2{
.bottom-bar-v2 .btn-pay{
font-size: 32rpx;
margin-left:30rpx;
flex:1;
}

View File

@ -45,10 +45,10 @@
期望送达<label class="time">{{orderDetail.delivery_time}}</label>
</view>
</view>
<block wx:if="{{false&&orderDetail.pickup_images&&orderDetail.pickup_images.length>0}}">
<block wx:if="{{orderDetail.pickup_images&&orderDetail.pickup_images.length>0}}">
<view class="spliter"></view>
<view class="package">
<view class="p-title">原始图片信息</view>
<view class="p-title">图片取件 共 {{orderDetail.pickup_images_count}} 件包裹</view>
<view class="img-list">
<image class="item" src="{{item}}" wx:for="{{orderDetail.pickup_images}}"
wx:key="index" bind:tap="viewPackageImg" data-item="{{item}}"/>
@ -58,11 +58,7 @@
<block wx:for="{{orderDetail.packages}}" wx:key="index">
<view class="spliter"></view>
<view class="package">
<view class="p-title">
<view>{{item.station_name}} 共{{item.pickup_codes.length}}件包裹</view>
<image wx:if="{{!item.station_id}}" src="/assets/icon/help/images.png" class="img-icon"
bind:tap="viewPackageImg" data-item="{{orderDetail.pickup_images}}"/>
</view>
<view class="p-title">{{item.station_name}} 共{{item.pickup_codes.length}}件包裹</view>
<view class="code-list">
<view class="item" wx:for="{{item.pickup_codes}}"
wx:for-item="package" wx:for-index="pIndex" wx:key="pIndex">{{package}}</view>
@ -124,7 +120,7 @@
</view>
</view>
<view class="kv" wx:if="{{orderDetail.point_discount_amount>0}}">
<view class="key">积分抵扣</view>
<view class="key">蜂蜜抵扣</view>
<view class="value">
<label class="money minus money-normal">
{{orderDetail.point_discount_amount}}
@ -149,6 +145,7 @@
<view class="key">支付金额</view>
<view class="value">
<label class="money">{{orderDetail.final_amount}}</label>
<view class="tag">先享后付</view>
</view>
</view>
</view>
@ -156,10 +153,10 @@
</scroll-view>
<view class="bottom-bar-v2">
<view class="btns">
<button class="button button1" plain size="mini" bind:tap="showCancelModal"
wx:if="{{orderDetail.status==orderStatus.created||orderDetail.status==orderStatus.unpaid}}"
loading="{{cancelling}}" disabled="{{cancelling}}">取消订单</button>
<button class="button pay" type="primary" wx:if="{{orderDetail.status==orderStatus.unpaid}}"
<button class="button button1" plain size="mini" bind:tap="showCancelModal"
wx:if="{{orderDetail.status==orderStatus.created}}" loading="{{cancelling}}"
disabled="{{cancelling}}">取消订单</button>
<button class="pay" type="primary" wx:if="{{orderDetail.status==orderStatus.unpaid}}"
bind:tap="pay">去支付</button>
<block wx:else>
<button class="button button1" plain size="mini" bind:tap="orderAgain"
@ -172,6 +169,6 @@
</view>
<merchant-order id="merchantOrderComponent" bind:paySuccess="paySuccess"/>
<merchant-order id="merchantOrderComponent" bind:paySuccess="paySuccess" wx:if="{{orderDetail.status==orderStatus.unpaid}}"/>
<modal-view titleText="你确定取消此订单吗?" model:show="{{isShowCancelView}}"
bind:ok="cancelOrder" wx:if="{{isShowCancelView}}"></modal-view>
bind:ok="cancelOrder" wx:if="{{orderDetail.status==orderStatus.created}}"></modal-view>

View File

@ -54,7 +54,7 @@
font-weight: 500;
}
.page-container .spliter{
margin:24rpx 0 30rpx 0;
margin:24rpx 0 40rpx 0;
}
.sender .info{
display: flex;
@ -103,14 +103,6 @@
.package-info .package .p-title{
font-size: 30rpx;
color: #888888;
display: flex;
justify-content:space-between;
align-items: center;
line-height: 50rpx;
}
.package-info .package .img-icon{
padding:10rpx;
width:40rpx;height:40rpx;
}
.package-info .package .code-list{
font-size: 34rpx;
@ -118,7 +110,7 @@
flex-wrap: wrap;
row-gap: 30rpx;
column-gap: 84rpx;
margin-top: 20rpx;
margin-top: 30rpx;
font-weight: bold;
}
.package-info .package .img-list{
@ -188,7 +180,7 @@
justify-content:flex-end;
}
.bottom-bar-v2 .pay{
/* flex:1 */
flex:1
}
.bottom-bar-v2 .button{
line-height: 72rpx;

View File

@ -1,20 +1,20 @@
<!-- <nav-bar class="nav-bar"/> -->
<view class="custom-scroll-view">
<!-- <view class="tab-bar">
<view class="tab-bar">
<view class="item-container {{tabIndex==0?'current':''}}" bind:tap="changeTab" data-index="0">
<view class="item">配送订单</view>
</view> -->
</view>
<!-- <view class="item-container {{tabIndex==1?'current':''}}" bind:tap="changeTab" data-index="1">
<view class="item">消费买单</view>
</view> -->
<!-- <view class="item-container {{tabIndex==2?'current':''}}" bind:tap="changeTab" data-index="2">
<view class="item-container {{tabIndex==2?'current':''}}" bind:tap="changeTab" data-index="2">
<view class="item">商品订单</view>
</view>
</view> -->
</view>
<!-- <swiper style="height:{{scrollViewHeight*2}}rpx"> -->
<!-- 配送列表 -->
<!-- 跑腿列表 -->
<!-- <swiper-item> -->
<list-view class="order-list main" wx:if="{{tabIndex==0}}"
@ -80,7 +80,7 @@
<view class="value kv-amount">-{{item.amount}}</view>
</view>
<view class="kv">
<view class="key">赠送积分</view>
<view class="key">赠送蜂蜜</view>
<view class="value kv-point">+{{item.gift_points}}</view>
</view>
<view class="kv">

View File

@ -1,6 +1,4 @@
import userApi from '../../../api/user';
const app = getApp();
Page({
/**
@ -12,9 +10,7 @@ Page({
cancelling:false,
isShowCancelView:false,
isShowAcceptView:false,
refresherTriggered:false,
appConfig:{}
refresherTriggered:false
},
/**
@ -23,11 +19,6 @@ Page({
onLoad(options) {
this.data.orderId = options.orderid;
this.getDetail();
app.getAppConfig().then((data)=>{
this.setData({
appConfig:data
})
})
},
getDetail(){
this.setData({
@ -46,18 +37,16 @@ Page({
})
},
acceptRequest(){
const merchantPay = this.selectComponent('#merchantPay');
merchantPay.createPayment(this.data.applyDetail.fee_order_id,true);
},
paySuccess(){
wx.navigateBack({
success(){
wx.showToast({
title: '加价已同意',
})
}
});
this.updatePrePage();
userApi.order.markup.accept(this.data.applyDetail.id).then((data)=>{
wx.navigateBack({
success(){
wx.showToast({
title: '加价成功',
})
}
});
this.updatePrePage();
})
},
cancel(){
@ -96,11 +85,6 @@ Page({
current:event.currentTarget.dataset.item
})
},
navToFee(){
wx.navigateTo({
url: `/pages/browser/index?url=${encodeURIComponent(this.data.appConfig.url_addition_fee_policy)}`,
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/

View File

@ -1,7 +1,5 @@
{
"usingComponents": {
"modal-view":"/components/modalView",
"merchant-order":"/components/merchantOrder"
},
"navigationBarTitleText": "订单加价申请"
"modal-view":"/components/modalView"
}
}

View File

@ -2,7 +2,7 @@
<scroll-view class="main" bindrefresherrefresh="getDetail" refresher-enabled
refresher-triggered="{{refresherTriggered}}" scroll-y>
<view class="scroll-view-top-margin"></view>
<view class="page-container order-info">
<view class="page-container right-arrow order-info">
<view>
<label>订单编号</label>
<label class="value">{{applyDetail.orderid}}</label>
@ -13,7 +13,7 @@
</view>
</view>
<view class="page-container delivery-man">
<view class="head">配送员</view>
<view class="head">跑腿员</view>
<view class="spliter"></view>
<view class="info">
<image class="avatar" src="{{applyDetail.deliveryman_avatar||'/assets/icon/my/avatar.png'}}"/>
@ -28,15 +28,11 @@
<view class="head">加价原因</view>
<view class="spliter"></view>
<view class="reason">{{applyDetail.reason}}</view>
<view class="imgs" wx:if="{{applyDetail.photo_urls&&applyDetail.photo_urls.length>0}}">
<view class="imgs">
<image class="item" src="{{item}}" wx:for="{{applyDetail.photo_urls}}"
wx:key="index" data-item="{{item}}" bind:tap="viewImage"/>
</view>
</view>
<view class="page-container markup-money" bind:tap="navToFee">
<view>加价收费标准</view>
<view class="right-arrow"></view>
</view>
<view class="page-container markup-money">
<view>加价金额</view>
<view class="value">{{applyDetail.additional_fee_amount}}元</view>
@ -58,6 +54,4 @@
<modal-view titleText="你确定同意此次加价吗?" wx:if="{{isShowAcceptView}}"
model:show="{{isShowAcceptView}}" bind:ok="acceptRequest"></modal-view>
<merchant-order id="merchantPay" bind:paySuccess="paySuccess"/>
model:show="{{isShowAcceptView}}" bind:ok="acceptRequest"></modal-view>

View File

@ -5,7 +5,7 @@
bindinput="inputAmount" model:value="{{amount}}"/>
</view>
<view class="bottom">
<label class="key">积分</label>
<label class="key">蜂蜜 (克)</label>
<label class="value">{{checkedAmount.gift_points||0}}</label>
</view>
</view>

View File

@ -80,7 +80,7 @@
<view class="bottom-bar float">
<view class="money">{{detail.sale_price}}</view>
<view class="tips">赠积分{{detail.gift_points}}</view>
<view class="tips">赠蜂蜜{{detail.gift_points}}克</view>
<button type="primary" class="button" bind:tap="buy" loading="{{buying}}">立即下单</button>
</view>

View File

@ -26,7 +26,7 @@
</view>
<view class="desc-line">
<view class="tag">小时达</view>
<view class="desc">已售100丨赠积分丨自配送</view>
<view class="desc">已售100丨赠蜂蜜丨自配送</view>
<view class="promotion">新人专享</view>
</view>
</navigator>

View File

@ -1,6 +1,6 @@
<view class="success">
<icon class="icon" type="success" size="120rpx" color="#FFC300"/>
<view class="text">下单成功</view>
<view class="tips">交易完成后,赠送积分赠哟~</view>
<view class="tips">交易完成后,赠送蜂蜜赠哟~</view>
<button class="button" plain bind:tap="back">前往查看订单</button>
</view>