Compare commits

...

28 Commits

Author SHA1 Message Date
ad5ed4040c
修改了标题 2020-09-11 17:59:05 +08:00
f076c03c99 Merge pull request '添加了进入提醒' (#364) from xbx into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/364
2020-09-11 17:01:02 +08:00
ab4c80ae36 Merge pull request '修改美甲' (#363) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/363
2020-09-11 14:46:32 +08:00
28832c38ae 修改美甲 2020-09-11 14:45:30 +08:00
b95f009ff3 Merge pull request '详情显示备注' (#362) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/362
2020-09-11 11:41:25 +08:00
5616cd046f 详情显示备注 2020-09-11 11:40:53 +08:00
3fd6e953c6 Merge pull request '订单添加备注' (#361) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/361
2020-09-11 11:26:14 +08:00
eedb40b9d0 订单添加备注 2020-09-11 11:24:05 +08:00
c162fc983f Merge pull request '修改成官方客服' (#360) from xbx into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/360
2020-09-11 09:12:10 +08:00
gyh
83afd6216e Merge pull request 'gdpao' (#359) from gyh into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/359
2020-09-10 16:13:21 +08:00
Gdpao
d7877a3e77 gdpao 2020-09-10 14:46:48 +08:00
b5e8936307 Merge pull request 'about page add phone number' (#358) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/358
2020-09-10 10:39:15 +08:00
5b89988e4d about page add phone number 2020-09-10 10:38:33 +08:00
0e99c3f719 Merge pull request 'zhy' (#357) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/357
2020-09-10 10:01:29 +08:00
51c6a3b820 送洗显示信息 2020-09-10 10:01:02 +08:00
d79e38e44c 送洗显示信息 2020-09-10 10:00:04 +08:00
a1eac2a1e8 Merge pull request 'zhy' (#356) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/356
2020-09-10 09:21:47 +08:00
fe60d5a1cf view goods evaluation 2020-09-10 09:20:35 +08:00
8f010c634c view goods evaluation 2020-09-10 09:17:54 +08:00
b5985ce1a0 Merge pull request 'fixing bug' (#355) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/355
2020-09-09 17:22:41 +08:00
a9477b9657 fixing bug 2020-09-09 17:21:33 +08:00
4674acac3c Merge pull request '退款样式' (#354) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/354
2020-09-09 16:57:23 +08:00
45c087bf14 退款样式 2020-09-09 16:56:02 +08:00
7e50a6f56e Merge pull request 'zhy' (#353) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/353
2020-09-09 09:36:34 +08:00
20e27317be fix bug 2020-09-09 09:34:08 +08:00
89ddba5321 fix bug 2020-09-09 09:33:08 +08:00
52caeef425 Merge pull request '刷新首页关注列表' (#352) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/352
2020-09-08 08:57:22 +08:00
a14d662370 刷新首页关注列表 2020-09-08 08:55:09 +08:00
19 changed files with 335 additions and 63 deletions

View File

@ -8,6 +8,12 @@
...mapState(["hasLogin"]) ...mapState(["hasLogin"])
}, },
onLaunch() { onLaunch() {
//
// #ifdef APP-PLUS
plus.screen.lockOrientation('portrait-primary');
// #endif
getApp().globalData.im = this.imService getApp().globalData.im = this.imService
// token // token
uni.getStorage({ uni.getStorage({

View File

@ -139,9 +139,9 @@ export default {
}); });
}, },
// 订单步骤2发起订单返回订单信息 // 订单步骤2发起订单返回订单信息
sendOrder({ ifcart, cart_id, address_id, buy_city_id, pintuan_id, pintuangroup_id, voucher_id, member_deliver_type, invoice_id }) { sendOrder({ ifcart, cart_id, address_id, buy_city_id, pintuan_id, pintuangroup_id, voucher_id, member_deliver_type, invoice_id, pay_message }) {
return vm.$u.post('buy/buy_step2', { return vm.$u.post('buy/buy_step2', {
ifcart, cart_id, address_id, buy_city_id, pintuan_id, pintuangroup_id, voucher_id, member_deliver_type, invoice_id, ifcart, cart_id, address_id, buy_city_id, pintuan_id, pintuangroup_id, voucher_id, member_deliver_type, invoice_id, pay_message
}); });
}, },
// 订单步骤3发起支付第三方统一下单 // 订单步骤3发起支付第三方统一下单

View File

@ -154,10 +154,11 @@ export default {
}); });
}, },
// 美甲-提交订单 // 美甲-提交订单
addManicure({ name, time }) { addManicure({ name, phone, time }) {
return vm.$u.post('MemberManicure/addManicure', { return vm.$u.post('MemberManicure/addManicure', {
name: name, name: name,
time: time phone: phone,
// time: time
}); });
}, },
// 会员服务-积分数 // 会员服务-积分数

View File

@ -3,7 +3,7 @@
<view class="label-list"> <view class="label-list">
<view v-for="(label, index) in evaluateSpec" :key="index" :class="{'active': current == index}" @click="current=index">{{ index + '(' + label + ')' }}</view> <view v-for="(label, index) in evaluateSpec" :key="index" :class="{'active': current == index}" @click="current=index">{{ index + '(' + label + ')' }}</view>
</view> </view>
<view class="comment-container"> <view class="comment-container" v-if="isShow">
<view v-for="(item, index) in evalueList" :key="index" class="itme"> <view v-for="(item, index) in evalueList" :key="index" class="itme">
<comment :reply="true" :content="item"></comment> <comment :reply="true" :content="item"></comment>
</view> </view>
@ -25,6 +25,7 @@ export default {
evaluateSpec: {}, evaluateSpec: {},
loadStatus: 'loadmore', loadStatus: 'loadmore',
timer: true, timer: true,
isShow: false, //
} }
}, },
components: { components: {
@ -50,7 +51,7 @@ export default {
if(!this.timer) return false; if(!this.timer) return false;
this.loadStatus = "loading"; this.loadStatus = "loading";
this.page++; this.page++;
this.getAllEvalue({ type: this.current, load: 'more' }).then(length => { this.getAllEvalue({ type: this.current, load: 'loadmore' }).then(length => {
if(length == 0) { if(length == 0) {
this.page--; this.page--;
this.loadStatus = 'nomore'; this.loadStatus = 'nomore';
@ -72,15 +73,17 @@ export default {
} }
}) })
}, },
async getAllEvalue({ type, load } = {}) { async getAllEvalue({ type, load = 'reload' } = {}) {
let params = { let params = {
goods_id: this.id, goods_id: this.id,
page: this.page, page: this.page,
} }
if(type) Object.assign(params, { type: type }); if(type) Object.assign(params, { type: type });
this.isShow = false;
const res = await this.$u.api.getAllEvalue(params); const res = await this.$u.api.getAllEvalue(params);
this.isShow = true;
if (res.errCode == 0) { if (res.errCode == 0) {
if(load) this.evalueList.push(...res.data); if(load == 'loadmore') this.evalueList.push(...res.data);
else this.evalueList = res.data; else this.evalueList = res.data;
} else { } else {
this.evalueList = []; this.evalueList = [];

View File

@ -34,24 +34,29 @@
</view> </view>
</view> </view>
<view class="order-info"> <view class="order-info">
<view @click="showCoupon({type: 2, store_id: item[0].store_id})" v-if="orderType == 1 || orderType == 5"> <view class="show-view" @click="showCoupon({type: 2, store_id: item[0].store_id})" v-if="orderType == 1 || orderType == 5">
<view class="title">优惠券折扣</view> <view class="title">优惠券折扣</view>
<view class="value"> <view class="value">
<view>-{{ storeCoupon[item[0].store_id] ? storeCoupon[item[0].store_id].voucher_price.toFixed(2) : '0.00' }}</view> <view>-{{ storeCoupon[item[0].store_id] ? storeCoupon[item[0].store_id].voucher_price.toFixed(2) : '0.00' }}</view>
<image src="../static/image/1.png"></image> <image src="../static/image/1.png"></image>
</view> </view>
</view> </view>
<view> <view class="show-view">
<view class="title">运费</view> <view class="title">运费</view>
<view class="value"> <view class="value">
<view v-if="freight">{{ freight | setFreight(index) }}</view> <view v-if="freight">{{ freight | setFreight(index) }}</view>
</view> </view>
</view> </view>
<view class="remark">
<view class="title">订单备注</view>
<u-input v-model="remark[index]" type="textarea" :height="88" placeholder="选填" />
</view>
</view> </view>
<view class="pick-up" v-if="delivery.type == 3"> <view class="pick-up" v-if="delivery.type == 3">
<view class="title">自提地址</view> <view class="title">自提地址</view>
<view class="content">{{ orderInfo.store_list[index].store_address }}</view> <view class="content">{{ orderInfo.store_list[index].store_address }}</view>
</view> </view>
<view class="store-total">{{ item | getTotalNum }} 小计<text>{{ orderInfo.store_goods_total[index] | getStorePrice(storeCoupon, index) }}</text></view>
</view> </view>
</view> </view>
<view class="common-active"> <view class="common-active">
@ -146,12 +151,34 @@ export default {
orderType: '', // 1 2 3 4 5 orderType: '', // 1 2 3 4 5
debounce: true, debounce: true,
hasInvoice: 0, hasInvoice: 0,
remark: {}
} }
}, },
components: { components: {
Coupon Coupon
}, },
filters: { filters: {
//
getTotalNum(data, coupon) {
let num = 0;
data.forEach(item => {
num += item.goods_num;
})
return num;
},
//
getStorePrice(price, coupon, index) {
for (const key in coupon) {
if (coupon.hasOwnProperty(key)) {
const element = coupon[key];
if(index == key) {
price -= Number(element.voucher_price);
}
}
}
return price;
},
//
setTotalNumber(data) { setTotalNumber(data) {
let num = 0; let num = 0;
for (const key in data) { for (const key in data) {
@ -175,6 +202,7 @@ export default {
if(!this.orderInfo.is_selfraising) this.deliveryList[2].disabled = true; if(!this.orderInfo.is_selfraising) this.deliveryList[2].disabled = true;
// console.log('orderType' + this.orderType); // console.log('orderType' + this.orderType);
// console.log(this.orderInfo); // console.log(this.orderInfo);
this.initRemark();
this.getGoodsClass(); this.getGoodsClass();
this.setTotalPrice(); this.setTotalPrice();
}, },
@ -188,8 +216,9 @@ export default {
} else { } else {
if(this.$store.getters.getOrderAddress) this.addressInfo = this.$store.state.orderAddress; if(this.$store.getters.getOrderAddress) this.addressInfo = this.$store.state.orderAddress;
} }
//
this.hasInvoice = this.$store.getters.hasInvoice; this.hasInvoice = this.$store.getters.hasInvoice;
console.log(this.hasInvoice); // console.log(this.hasInvoice);
}, },
beforeDestroy() { beforeDestroy() {
this.$store.commit('updateAddress', {}); this.$store.commit('updateAddress', {});
@ -202,6 +231,17 @@ export default {
}, },
}, },
methods: { methods: {
initRemark() {
//
const obj = this.orderInfo.store_cart_list;
for (const key in obj) {
if (obj.hasOwnProperty(key)) {
const element = obj[key];
this.remark[key] = '';
}
}
console.log(this.remark);
},
// pintuangroup_headid // pintuangroup_headid
async withImmediate(type) { async withImmediate(type) {
let params = { let params = {
@ -228,6 +268,7 @@ export default {
}) })
}, },
intermediate() { intermediate() {
console.log(this.remark);
if(!this.debounce) return; if(!this.debounce) return;
this.debounce = false; this.debounce = false;
if(this.orderType == 2) { if(this.orderType == 2) {
@ -281,6 +322,7 @@ export default {
buy_city_id: this.addressInfo.city_id, buy_city_id: this.addressInfo.city_id,
member_deliver_type: this.delivery.type, member_deliver_type: this.delivery.type,
invoice_id: this.$store.getters.getInvoiceId, // ID0 invoice_id: this.$store.getters.getInvoiceId, // ID0
pay_message: this.remark,
} }
if(coupon.length) Object.assign(params, { voucher_id: coupon }); if(coupon.length) Object.assign(params, { voucher_id: coupon });
if(this.orderType == 2) { if(this.orderType == 2) {
@ -288,6 +330,7 @@ export default {
if(this.orderInfo.pintuangroup_id) Object.assign(params, { pintuangroup_id: this.orderInfo.pintuangroup_id }); if(this.orderInfo.pintuangroup_id) Object.assign(params, { pintuangroup_id: this.orderInfo.pintuangroup_id });
} }
// console.log(params); // console.log(params);
// return;
this.$u.api.sendOrder(params).then(res => { this.$u.api.sendOrder(params).then(res => {
if(res.errCode == 0) { if(res.errCode == 0) {
this.$u.route({ this.$u.route({
@ -587,7 +630,7 @@ export default {
} }
} }
.order-info { .order-info {
> view { .show-view {
height: 98rpx; height: 98rpx;
background: rgba(255,255,255,1); background: rgba(255,255,255,1);
padding: 35rpx 30rpx; padding: 35rpx 30rpx;
@ -612,6 +655,24 @@ export default {
} }
} }
} }
.remark {
background: rgba(255,255,255,1);
padding: 35rpx 30rpx;
display: flex;
justify-content: space-between;
margin-bottom: 2rpx;
.title {
font-size: 28rpx;
color: rgba(102,102,102,1);
margin-right: 20rpx;
}
/deep/ .u-input {
font-size: 28rpx;
.u-input__textarea {
padding: 0;
}
}
}
} }
.pick-up { .pick-up {
padding: 30rpx; padding: 30rpx;
@ -627,6 +688,16 @@ export default {
line-height: 40rpx; line-height: 40rpx;
} }
} }
.store-total {
text-align: right;
padding: 34rpx 30rpx;
background: rgba(255,255,255,1);
font-size: 28rpx;
color: #656565;
> text {
color: #FF770F;
}
}
} }
} }
.common-active { .common-active {

101
pageE/mine/Contact.vue Normal file
View File

@ -0,0 +1,101 @@
<template>
<view class="contact">
<view class="item-view" @click="makePhone">
<view class="title">联系电话</view>
<view class="content">{{ phoneNumber }}</view>
<u-icon name="arrow-right" color="#9A9A9A" size="24"></u-icon>
</view>
<view class="item-view" @click="customerService">
<view class="title">客服服务</view>
<u-icon name="arrow-right" color="#9A9A9A" size="24"></u-icon>
</view>
</view>
</template>
<script>
export default {
data() {
return {
phoneNumber: '',
}
},
created() {
this.getPhone();
},
methods: {
getPhone() {
this.$u.api.getConfigInfo({
code: 'site_tel400'
}).then(res => {
this.phoneNumber = res.data.config.value;
})
},
makePhone() {
uni.makePhoneCall({
phoneNumber: this.phoneNumber,
});
},
customerService(){
if(!this.$store.state.hasLogin){
this.$u.toast('请先登录');
} else {
function Friend(uuid, name, avatar,time = "", text = "",date = "") {
this.uuid = uuid;
this.name = name;
this.avatar = avatar;
this.online = false;
this.unReadMessage = 0;
this.text = text;
this.time = time;
this.date = date
}
const token = uni.getStorageSync('token');
let that = this
uni.request({
url:"https://mall.dmygkeji.com/api/Specialci/getAtwillUserInfo",
data:{
userId: 1
},
method:"POST",
header:{
"Authorization" : 'Bearer' + " " + token
},
success(res){
res = res.data;
let user = new Friend(res.data.member_id,"官方平台客服",res.data.member_avatar);
that.$u.route({
url:"/pageD/privateChat/privateChat",
params:{
id:JSON.stringify(user)
}
})
}
})
}
},
}
};
</script>
<style lang="scss" scoped>
.contact {
border-top: 1rpx solid #ECECEC;
.item-view {
display: flex;
align-items: center;
justify-content: space-between;
padding: 34rpx 30rpx;
border-bottom: 2rpx solid #ECECEC;
.title {
font-size: 30rpx;
color: #343434;
}
.content {
margin-left: auto;
font-size: 28rpx;
color: #666666;
}
.u-icon {
margin-left: 20rpx;
}
}
}
</style>

View File

@ -27,7 +27,7 @@ import storeViwe from './storeConcerns'
export default { export default {
data() { data() {
return { return {
list: [{ name: "商家" }, { name: "达人" }], list: [{ name: "店铺" }, { name: "达人" }],
daren: [], daren: [],
shangjia:[], shangjia:[],
height: 0, height: 0,

View File

@ -19,7 +19,7 @@
<view class="personal" v-show="type==1"> <view class="personal" v-show="type==1">
<view class="info-item"> <view class="info-item">
<view class="title">手机号</view> <view class="title">手机号</view>
<input type="number" placeholder="请输入您的手机号" maxlength="11" v-model="personalPhone" /> <input type="text" placeholder="请输入您的手机号" maxlength="11" v-model="personalPhone" />
</view> </view>
<view class="info-item"> <view class="info-item">
<view class="title">身份证号</view> <view class="title">身份证号</view>
@ -37,7 +37,7 @@
</view> </view>
<view class="info-item"> <view class="info-item">
<view class="title">电话号码</view> <view class="title">电话号码</view>
<input type="number" placeholder="请输入公司电话" maxlength="11" v-model="companyPhone" /> <input type="text" placeholder="请输入公司电话" maxlength="11" v-model="companyPhone" />
</view> </view>
<view class="info-item"> <view class="info-item">
<view class="title">开户银行</view> <view class="title">开户银行</view>
@ -91,6 +91,7 @@ export default {
this.action == 1 ? this.invoiceAdd() : this.invoiceEdit(); this.action == 1 ? this.invoiceAdd() : this.invoiceEdit();
}, },
verificationParams() { verificationParams() {
const phone = /^0\d{2,3}-?\d{7,8}$/;
if(this.type == 1) { if(this.type == 1) {
if(this.$u.test.isEmpty(this.title)) { if(this.$u.test.isEmpty(this.title)) {
this.$u.toast('发票抬头不可为空'); this.$u.toast('发票抬头不可为空');
@ -100,7 +101,7 @@ export default {
this.$u.toast('手机号不可为空'); this.$u.toast('手机号不可为空');
return false; return false;
} }
if(!this.$u.test.mobile(this.personalPhone)) { if(!this.$u.test.mobile(this.personalPhone) && !phone.test(this.personalPhone)) {
this.$u.toast('请正确填写手机号'); this.$u.toast('请正确填写手机号');
return false; return false;
} }
@ -129,7 +130,7 @@ export default {
this.$u.toast('电话号码不可为空'); this.$u.toast('电话号码不可为空');
return false; return false;
} }
if(!this.$u.test.mobile(this.companyPhone)) { if(!this.$u.test.mobile(this.companyPhone) && !phone.test(this.companyPhone)) {
this.$u.toast('请正确填写电话号码'); this.$u.toast('请正确填写电话号码');
return false; return false;
} }

View File

@ -66,6 +66,7 @@
</view> </view>
</view> </view>
<view class="info-order"> <view class="info-order">
<view v-if="orderInfo.extend_order_common.order_message">订单备注{{ orderInfo.extend_order_common.order_message }}</view>
<view>订单编号{{ orderInfo.order_sn }}</view> <view>订单编号{{ orderInfo.order_sn }}</view>
<view>支付单号{{ orderInfo.pay_sn }}</view> <view>支付单号{{ orderInfo.pay_sn }}</view>
<view>创建时间{{ orderInfo.add_time | date}}</view> <view>创建时间{{ orderInfo.add_time | date}}</view>
@ -73,9 +74,9 @@
</view> </view>
</view> </view>
<!-- '4', '8' --> <!-- '4', '8' -->
<view class="btn" v-if="['1', '2', '6'].indexOf(orderstate) >= 0"> <view class="btn" v-if="['1', '2', '4', '6'].indexOf(orderstate) >= 0">
<!-- orderstate == '4' || --> <!-- orderstate == '4' || -->
<view class="cancel" v-if="(orderstate == '1') && orderInfo.is_refund == 1" @click="toOtherPage('RefundOrder')">申请退款</view> <view class="cancel" v-if="(orderstate == '1' || orderstate == '4') && orderInfo.is_refund == 1" @click="toOtherPage('RefundOrder')">申请退款</view>
<!-- <view class="cancel" v-if="orderstate == '8'" @click="cancelOrder">取消订单</view> --> <!-- <view class="cancel" v-if="orderstate == '8'" @click="cancelOrder">取消订单</view> -->
<view class="cancel" v-if="orderstate == '1' && orderInfo.shipping_code && orderInfo.member_deliver_type != 3" @click="toOtherPage('Logistics')">查看物流</view> <view class="cancel" v-if="orderstate == '1' && orderInfo.shipping_code && orderInfo.member_deliver_type != 3" @click="toOtherPage('Logistics')">查看物流</view>
<view class="logistics" v-if="orderstate == '1'" @click="confirmReceive">确认收货</view> <view class="logistics" v-if="orderstate == '1'" @click="confirmReceive">确认收货</view>

View File

@ -129,12 +129,11 @@ export default {
page: this.page, page: this.page,
type: type, type: type,
}) })
console.log(load) // res.data.forEach(element => {
res.data.forEach(element => { // element.extend_order_goods.forEach(i=>{
element.extend_order_goods.forEach(i=>{ // // console.log(i)
// console.log(i) // })
}) // });
});
this.timer = true; this.timer = true;
uni.stopPullDownRefresh(); // uni.stopPullDownRefresh(); //
if(res.errCode == 0) { if(res.errCode == 0) {
@ -146,11 +145,11 @@ export default {
this.orderList[this.current].push(...res.data); this.orderList[this.current].push(...res.data);
} }
} }
this.orderList[this.current].forEach(element => { // this.orderList[this.current].forEach(element => {
element.extend_order_goods.forEach(i=>{ // element.extend_order_goods.forEach(i=>{
// console.log(i) // // console.log(i)
}) // })
}); // });
this.$forceUpdate(); this.$forceUpdate();
// console.log(this.orderList); // console.log(this.orderList);

View File

@ -3,7 +3,6 @@
<view class="radios-container"> <view class="radios-container">
<view v-if="type == 2"> <view v-if="type == 2">
<label class="radio-view" v-for="(item, index) in goodsList" :key="index"> <label class="radio-view" v-for="(item, index) in goodsList" :key="index">
<view class="store_info"> <view class="store_info">
<view class="info_img"> <view class="info_img">
<image :src="item.goods_image" mode=""> <image :src="item.goods_image" mode="">
@ -84,7 +83,6 @@ export default {
computed: { computed: {
totalPrice() { totalPrice() {
if(this.type == 2){ if(this.type == 2){
console.log(this.goodsList)
let pac = 0; let pac = 0;
for(let i in this.goodsList){ for(let i in this.goodsList){
pac += parseFloat(this.goodsList[i].goods_pay_price) * 100 ; pac += parseFloat(this.goodsList[i].goods_pay_price) * 100 ;
@ -189,12 +187,17 @@ export default {
background-color: #EDEDED; background-color: #EDEDED;
.radios-container { .radios-container {
margin-bottom: 20rpx; margin-bottom: 20rpx;
.u-radio-group {
width: 100%;
}
.radio-view { .radio-view {
width: 100%;
background-color: #FFFFFF; background-color: #FFFFFF;
padding: 26rpx; padding: 26rpx;
display: flex; display: flex;
align-items: center; align-items: center;
margin-bottom: 1rpx; margin-bottom: 1rpx;
box-sizing: border-box;
.radio { .radio {
margin-right: 20rpx; margin-right: 20rpx;
} }

View File

@ -15,6 +15,10 @@
<text class="tips" v-if="version" @click="updateVersion">发现新版本: {{ version }}</text> <text class="tips" v-if="version" @click="updateVersion">发现新版本: {{ version }}</text>
<text class="tips" v-else>已是最新版本</text> <text class="tips" v-else>已是最新版本</text>
</view> </view>
<view>
<text class="title">联系我们</text>
<text class="tips">{{ phoneNumber }}</text>
</view>
</view> </view>
</view> </view>
</template> </template>
@ -25,10 +29,12 @@ export default {
version: '', version: '',
phone_type: "", phone_type: "",
status: '', status: '',
phoneNumber: '',
} }
}, },
onLoad() { onLoad() {
this.getVersion(); this.getVersion();
this.getPhone();
this.phone_type = this.$u.os(); this.phone_type = this.$u.os();
}, },
methods: { methods: {
@ -42,6 +48,13 @@ export default {
} }
}) })
}, },
getPhone() {
this.$u.api.getConfigInfo({
code: 'site_tel400'
}).then(res => {
this.phoneNumber = res.data.config.value;
})
},
viewAboutUs() { viewAboutUs() {
this.$u.route('/pageE/mine/ArticleDetails', { this.$u.route('/pageE/mine/ArticleDetails', {
type: 2 type: 2
@ -96,7 +109,7 @@ export default {
} }
.tips { .tips {
color: #999; color: #999;
font-size: 22rpx; font-size: 28rpx;
} }
.version-view { .version-view {
.tips { .tips {

View File

@ -14,6 +14,7 @@
<view class="order-status">{{ item.status }}</view> <view class="order-status">{{ item.status }}</view>
</view> </view>
<view class="order-name">美甲人姓名{{ item.manicure_name }}</view> <view class="order-name">美甲人姓名{{ item.manicure_name }}</view>
<view class="order-name">美甲人电话{{ item.phone }}</view>
<view class="order-date">时间{{ item.manicure_time | date }}</view> <view class="order-date">时间{{ item.manicure_time | date }}</view>
</view> </view>
<u-loadmore :status="loadStatus" bgColor="#ECECEC" margin-bottom="20" v-if="orderList.length>=pageSize"></u-loadmore> <u-loadmore :status="loadStatus" bgColor="#ECECEC" margin-bottom="20" v-if="orderList.length>=pageSize"></u-loadmore>
@ -129,7 +130,7 @@ export default {
.order-item { .order-item {
padding: 30rpx; padding: 30rpx;
width:690rpx; width:690rpx;
height: 229rpx; // height: 229rpx;
background: rgba(255,255,255,1); background: rgba(255,255,255,1);
border-radius: 10rpx; border-radius: 10rpx;
margin-bottom: 20rpx; margin-bottom: 20rpx;

View File

@ -5,15 +5,23 @@
<view>美甲人</view> <view>美甲人</view>
<input type="text" v-model="name" /> <input type="text" v-model="name" />
</view> </view>
<view class="order-date" @click="show=true"> <view class="order-name">
<view class="title">美甲时间</view> <view>美甲人电话</view>
<image src="../static/mine/21.png" v-if="!time"></image> <input type="text" v-model="phone" maxlength="11" />
<view v-else class="time">{{ time }}</view>
</view> </view>
<view class="order-address"> <view class="order-address">
<view class="title">美甲地址</view> <view class="title">美甲地址</view>
<input type="text" v-model="address" disabled /> <input type="text" v-model="address" disabled />
</view> </view>
<view class="order-name">
<view>美甲店电话</view>
<input type="text" v-model="storePhone" disabled />
</view>
<!-- <view class="order-date" @click="show=true">
<view class="title">美甲时间</view>
<image src="../static/mine/21.png" v-if="!time"></image>
<view v-else class="time">{{ time }}</view>
</view> -->
</view> </view>
<view class="order-btn" @click="addManicureOrder">确认订单</view> <view class="order-btn" @click="addManicureOrder">确认订单</view>
<u-picker mode="time" v-model="show" :params="params" @confirm="chooseDate"></u-picker> <u-picker mode="time" v-model="show" :params="params" @confirm="chooseDate"></u-picker>
@ -26,6 +34,8 @@ export default {
return { return {
name: '', name: '',
time: '', time: '',
phone: '',
storePhone: '',
address: '', address: '',
params: { params: {
year: true, year: true,
@ -41,28 +51,38 @@ export default {
}, },
onLoad() { onLoad() {
this.getConfigInfo(); this.getConfigInfo();
this.getPhone();
}, },
methods: { methods: {
validateValue() { validateValue() {
if(this.$u.test.isEmpty(this.name)) { if(this.$u.test.isEmpty(this.name)) {
this.showToast('姓名不能为空', 'error'); this.showToast('姓名不能为空');
return false; return false;
} }
if(this.$u.test.isEmpty(this.time)) { if(this.$u.test.isEmpty(this.phone)) {
this.showToast('日期不能为空', 'error'); this.showToast('美甲人电话不能为空');
return false; return false;
} }
if(new Date() > new Date(this.time)) { if(!this.$u.test.mobile(this.phone)) {
this.showToast('日期错误', 'error'); this.showToast('美甲人电话错误');
return false; return false;
} }
// if(this.$u.test.isEmpty(this.time)) {
// this.showToast('', 'error');
// return false;
// }
// if(new Date() > new Date(this.time)) {
// this.showToast('', 'error');
// return false;
// }
return true; return true;
}, },
addManicureOrder() { addManicureOrder() {
if(!this.validateValue()) return false; if(!this.validateValue()) return false;
this.$u.api.addManicure({ this.$u.api.addManicure({
name: this.name, name: this.name,
time: new Date(this.time) phone: this.phone,
// time: new Date(this.time)
}).then((res)=>{ }).then((res)=>{
if(res.errCode == 0) { if(res.errCode == 0) {
this.$refs.uToast.show({ this.$refs.uToast.show({
@ -85,6 +105,15 @@ export default {
} }
}) })
}, },
getPhone() {
this.$u.api.getConfigInfo({
code: 'manicure_phone',
}).then(res => {
if(res.errCode == 0) {
this.storePhone = res.data.config.value;
}
})
},
chooseDate(e) { chooseDate(e) {
// let time = e.year + '' + e.month + '' + e.day + '' + e.hour + '' + e.minute + '' // let time = e.year + '' + e.month + '' + e.day + '' + e.hour + '' + e.minute + ''
let time = e.year + '/' + e.month + '/' + e.day + ' ' + e.hour + ':' + e.minute let time = e.year + '/' + e.month + '/' + e.day + ' ' + e.hour + ':' + e.minute

View File

@ -411,12 +411,16 @@ export default {
radioChange(e){ radioChange(e){
const ids = e.split(" "); const ids = e.split(" ");
// console.log(ids) // console.log(ids)
let checkedGoods = {}; let checkedGoods;
this.orderList.forEach(order => { this.orderList.forEach(order => {
if(order.order_id == ids[0]) { if(order.order_id == ids[0]) {
Object.assign(checkedGoods, { store: order.extend_store }); checkedGoods = {
Object.assign(checkedGoods, { order_sn: order.order_sn }); store: order.extend_store,
Object.assign(checkedGoods, { order_id: order.order_id }); order_sn: order.order_sn,
order_id: order.order_id,
reciver_info: order.extend_order_common.reciver_info,
reciver_name: order.extend_order_common.reciver_name
}
order.extend_order_goods.forEach(goods => { order.extend_order_goods.forEach(goods => {
if(goods.goods_id == ids[1]) { if(goods.goods_id == ids[1]) {
Object.assign(checkedGoods, { goods: goods }); Object.assign(checkedGoods, { goods: goods });
@ -425,6 +429,13 @@ export default {
}) })
} }
}) })
this.setDefaultValue();
},
setDefaultValue() {
this.name = this.checkedGoods.reciver_name;
this.phone = this.checkedGoods.reciver_info.mob_phone;
this.area = this.checkedGoods.reciver_info.area;
this.address = this.checkedGoods.reciver_info.street;
}, },
setArea(area) { setArea(area) {
// console.log(area); // console.log(area);

View File

@ -780,6 +780,19 @@
} }
} }
}, },
{
"path": "mine/Contact",
"style": {
"navigationBarTitleText": "联系我们",
"app-plus": {
"titleSize": "36px",
"titleNView": {
"titleColor": "#333333",
"backgroundColor": "#FFFFFF"
}
}
}
},
{ {
"path": "mine/Integral", "path": "mine/Integral",
"style": { "style": {

View File

@ -307,7 +307,8 @@
// //
if (this.$store.state.showCoupons) { if (this.$store.state.showCoupons) {
this.isNewmembervoucher(); this.isNewmembervoucher();
} }
this.getRecommendList();
}, },
async onLoad(){ async onLoad(){
this.articleList = []; this.articleList = [];

View File

@ -16,7 +16,10 @@
<view class="user-rank">等级:{{ userInfo.member_level || 0 }}</view> <view class="user-rank">等级:{{ userInfo.member_level || 0 }}</view>
</view> </view>
</view> </view>
<view class="member-service" @click="toOtherPage('/mine/MemberServe')">会员服务</view> <view class="btn">
<view class="member-service" @click="toOtherPage('/mine/MemberServe')">会员服务</view>
<view class="member-service" @click="toOtherPage('/mine/Contact')">联系我们</view>
</view>
</view> </view>
<view class="bottom"> <view class="bottom">
<view @click="toOtherPage('/mine/GoodsCollection')"> <view @click="toOtherPage('/mine/GoodsCollection')">
@ -83,6 +86,10 @@
<image src="/static/image/mine/39.png"></image> <image src="/static/image/mine/39.png"></image>
<view>试穿试送</view> <view>试穿试送</view>
</view> </view>
<view @click="toCartPage">
<image src="/static/image/common/33.png"></image>
<view>购物车</view>
</view>
</view> </view>
</view> </view>
<view class="more-tool"> <view class="more-tool">
@ -166,7 +173,7 @@ export default {
}, },
{ {
name: 'refund', name: 'refund',
title: '售后', title: '退款售后',
img: '/static/image/mine/9.png', img: '/static/image/mine/9.png',
link: '/order/Index?current=7', link: '/order/Index?current=7',
number: '', number: '',
@ -224,7 +231,10 @@ export default {
uni.navigateTo({ uni.navigateTo({
url: '/pageE' + url url: '/pageE' + url
}); });
} },
toCartPage() {
this.$u.route('/pageC/cart/index');
},
} }
}; };
</script> </script>
@ -236,6 +246,7 @@ export default {
// width: 100%; // width: 100%;
height: 272rpx; height: 272rpx;
background-color: #FF7807; background-color: #FF7807;
position: relative;
.top { .top {
padding: 40rpx 0 0 30rpx; padding: 40rpx 0 0 30rpx;
display: flex; display: flex;
@ -292,16 +303,23 @@ export default {
} }
} }
} }
.member-service { .btn {
height: 52rpx; position: absolute;
line-height: 52rpx; right: 0;
box-sizing: content-box; top: 43rpx;
margin-left: auto; .member-service {
padding: 0 51rpx 0 22rpx; height: 52rpx;
background: rgba(255,255,255,0.32); line-height: 52rpx;
border-radius: 26rpx 0 0 26rpx; box-sizing: content-box;
font-size: 26rpx; padding: 0 51rpx 0 22rpx;
color:rgba(51,51,51,1); background: rgba(255,255,255,0.32);
border-radius: 26rpx 0 0 26rpx;
font-size: 26rpx;
color:rgba(51,51,51,1);
&:not(:last-child) {
margin-bottom: 20rpx;
}
}
} }
} }
.bottom { .bottom {
@ -437,7 +455,7 @@ export default {
> view:nth-child(6){ > view:nth-child(6){
@include image-size($image-width: 33rpx, $image-height: 35rpx); @include image-size($image-width: 33rpx, $image-height: 35rpx);
.order-num { .order-num {
left: 24rpx; left: 44rpx;
} }
} }
} }

BIN
static/image/common/33.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB