Compare commits

..

32 Commits
xbx ... master

Author SHA1 Message Date
qxf
3c154f1416 Merge pull request 'qxf' (#116) from qxf into master
Reviewed-on: http://git.luyuan.tk/luyuan/demingshangjia/pulls/116
2020-12-01 18:03:14 +08:00
亓雪峰
3325704faa Merge branch 'master' of https://git.luyuan.tk/luyuan/demingshangjia into qxf 2020-12-01 18:01:46 +08:00
亓雪峰
125c198f5d 优化 用户协议与隐私政策 2020-12-01 17:55:49 +08:00
亓雪峰
1e06c5067f 隐私政策修改 2020-11-30 14:43:34 +08:00
aad77ed2cb Merge pull request '用户协议,隐私政策分开显示' (#115) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/demingshangjia/pulls/115
2020-11-27 17:38:55 +08:00
365c797e28 用户协议,隐私政策分开显示 2020-11-27 17:38:15 +08:00
a50daa3326 Merge pull request '添加用户隐私协议' (#114) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/demingshangjia/pulls/114
2020-11-27 14:09:36 +08:00
d47a2b7740 添加用户隐私协议 2020-11-27 14:07:25 +08:00
qxf
e405a2bd2b Merge pull request 'qxf' (#113) from qxf into master
Reviewed-on: http://git.luyuan.tk/luyuan/demingshangjia/pulls/113
2020-11-27 11:41:50 +08:00
亓雪峰
42b5488a52 登录时检查网络 2020-11-27 11:40:33 +08:00
亓雪峰
99ab0696ba 登录时检查网络连接是否正常 2020-11-27 11:36:15 +08:00
亓雪峰
02d289b31d Update manifest.json 2020-11-27 11:27:43 +08:00
ab87f8822b Merge pull request '添加用户反馈模块' (#112) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/demingshangjia/pulls/112
2020-11-25 16:26:51 +08:00
6945c21f10 添加用户反馈模块 2020-11-25 16:25:32 +08:00
亓雪峰
1529dcb6e6 Update login.vue 2020-11-09 17:43:58 +08:00
亓雪峰
da02e25fd1 修复 网络不通的情况下登录卡死的问题 2020-11-09 17:34:14 +08:00
亓雪峰
005ae548a8 修复 编译nvue文件样式报错的问题 2020-11-09 09:48:34 +08:00
亓雪峰
c330638827 修复 腾讯云cos配置失效的问题 2020-11-09 09:47:18 +08:00
亓雪峰
812bb07e1e 修复更换头像刷新不及时的问题 2020-10-17 09:52:15 +08:00
亓雪峰
b139bf1224 仅主评论可回复 2020-10-15 22:53:10 +08:00
亓雪峰
5757c4bce3 使用达人账号登录改为展示达人名称 2020-10-15 22:52:53 +08:00
亓雪峰
8aab721c0e 修复骑手派送传参问题 2020-10-15 21:20:04 +08:00
亓雪峰
2d76a8ea63 Update chatservice.js 2020-10-14 23:22:46 +08:00
亓雪峰
dfd9fb1b67 Update manifest.json 2020-10-14 15:31:40 +08:00
ee6e4102b6 Merge pull request '更换' (#111) from xbx into master
Reviewed-on: http://git.luyuan.tk/luyuan/demingshangjia/pulls/111
2020-09-25 17:43:48 +08:00
gyh
055cdb654a Merge pull request 'gdpao' (#110) from gyh into master
Reviewed-on: http://git.luyuan.tk/luyuan/demingshangjia/pulls/110
2020-09-21 15:04:44 +08:00
Gdpao
e2e5cf8b42 gdpao 2020-09-21 15:03:27 +08:00
gyh
2f1b89c6a6 Merge pull request 'gdpao' (#109) from gyh into master
Reviewed-on: http://git.luyuan.tk/luyuan/demingshangjia/pulls/109
2020-09-20 18:20:36 +08:00
Gdpao
841dc290b2 gdpao 2020-09-20 18:19:35 +08:00
gyh
0610a0b157 Merge pull request 'gdpao' (#108) from gyh into master
Reviewed-on: http://git.luyuan.tk/luyuan/demingshangjia/pulls/108
2020-09-19 20:04:32 +08:00
Gdpao
49fe886234 gdpao 2020-09-19 20:02:43 +08:00
0f26f6737b Merge pull request '更换图片' (#107) from xbx into master
Reviewed-on: http://git.luyuan.tk/luyuan/demingshangjia/pulls/107
2020-09-19 16:15:29 +08:00
18 changed files with 1025 additions and 115 deletions

View File

@ -10,7 +10,7 @@ export default {
// #endif
getApp().globalData.im = this.imService
console.log('App Launch');
// console.log('App Launch');
// token
uni.getStorage({
key: "token",
@ -22,10 +22,10 @@ export default {
})
},
onShow: function() {
console.log('App Show');
// console.log('App Show');
},
onHide: function() {
console.log('App Hide');
// console.log('App Hide');
}
};
</script>

View File

@ -14,12 +14,13 @@
<view class="status" v-else-if="info.view_type==5">已退款订单</view>
<view class="status" v-else-if="info.view_type==6">商家同意</view>
<view class="status" v-else-if="info.view_type==7">商家拒绝</view>
<view class="status" v-else-if="info.view_type==10">待支付订单</view>
</view>
<view class="name u-line-1">{{info.extend_order_goods[0].goods_name}}</view>
<view class="info">
<view class="num">{{info.count_number}}件商品</view>
<view class="price">实付<span>{{info.order_amount}}</span></view>
<view class="time">{{ info.payment_time.slice(5,16) }}</view>
<view class="price">{{ info.view_type==10 ? "待支付" : "实付" }}<span>{{info.order_amount}}</span></view>
<view class="time">{{ info.view_type==10 ? info.add_time.slice(5,16) : info.payment_time.slice(5,16) }}</view>
</view>
</view>
</view>

View File

@ -2,8 +2,8 @@
"name" : "德铭阳光商家",
"appid" : "__UNI__EA895BE",
"description" : "",
"versionName" : "1.0.0",
"versionCode" : "100",
"versionName" : "1.0.1",
"versionCode" : 103,
"transformPx" : false,
/* 5+App */
"app-plus" : {
@ -61,7 +61,13 @@
"abiFilters" : [ "armeabi-v7a", "x86" ]
},
/* ios */
"ios" : {},
"ios" : {
"privacyDescription" : {
"NSPhotoLibraryUsageDescription" : "应用将在您上传图文视频等服务中使用您的相册。",
"NSMicrophoneUsageDescription" : "应用将会在您开启直播时使用您的麦克风。",
"NSCameraUsageDescription" : "应用将会在您开启直播时使用您的摄像头。"
}
},
/* SDK */
"sdkConfigs" : {
"ad" : {},
@ -71,13 +77,13 @@
},
"icons" : {
"android" : {
"hdpi" : "E:/Source-code/appleidmore/安卓png/72x72psd.PNG",
"xhdpi" : "E:/Source-code/appleidmore/安卓png/96x96psd.PNG",
"xxhdpi" : "E:/Source-code/appleidmore/安卓png/144x144.PNG",
"xxxhdpi" : "E:/Source-code/appleidmore/安卓png/192x192.PNG"
"hdpi" : "unpackage/res/icons/72x72.png",
"xhdpi" : "unpackage/res/icons/96x96.png",
"xxhdpi" : "unpackage/res/icons/144x144.png",
"xxxhdpi" : "unpackage/res/icons/192x192.png"
},
"ios" : {
"appstore" : "E:/Source-code/appleidmore/苹果png/appstore 1024X1024.PNG",
"appstore" : "unpackage/res/icons/1024x1024.png",
"ipad" : {
"app" : "unpackage/res/icons/76x76.png",
"app@2x" : "unpackage/res/icons/152x152.png",
@ -90,27 +96,27 @@
"spotlight@2x" : "unpackage/res/icons/80x80.png"
},
"iphone" : {
"app@2x" : "E:/Source-code/appleidmore/苹果png/120x120.PNG",
"app@3x" : "E:/Source-code/appleidmore/苹果png/180x180.PNG",
"notification@2x" : "E:/Source-code/appleidmore/苹果png/40X40.PNG",
"notification@3x" : "E:/Source-code/appleidmore/苹果png/60X60.PNG",
"settings@2x" : "E:/Source-code/appleidmore/苹果png/58x58psd.PNG",
"settings@3x" : "E:/Source-code/appleidmore/苹果png/87X87.PNG",
"spotlight@2x" : "E:/Source-code/appleidmore/苹果png/80x80.PNG",
"spotlight@3x" : "E:/Source-code/appleidmore/苹果png/120x120.PNG"
"app@2x" : "unpackage/res/icons/120x120.png",
"app@3x" : "unpackage/res/icons/180x180.png",
"notification@2x" : "unpackage/res/icons/40x40.png",
"notification@3x" : "unpackage/res/icons/60x60.png",
"settings@2x" : "unpackage/res/icons/58x58.png",
"settings@3x" : "unpackage/res/icons/87x87.png",
"spotlight@2x" : "unpackage/res/icons/80x80.png",
"spotlight@3x" : "unpackage/res/icons/120x120.png"
}
}
},
"splashscreen" : {
"iosStyle" : "storyboard",
"ios" : {
"storyboard" : "E:/Source-code/deming/static/CustomStoryboard.zip"
"storyboard" : "/Users/xf/workspace/wwwroot/deming-uniapp/static/CustomStoryboard.zip"
},
"androidStyle" : "default",
"android" : {
"hdpi" : "E:/Source-code/deming/static/app/start/480x762.png",
"xhdpi" : "E:/Source-code/deming/static/app/start/720x1242.png",
"xxhdpi" : "E:/Source-code/deming/static/app/start/1080x1882.png"
"hdpi" : "/Users/xf/workspace/wwwroot/deming-uniapp/static/app/start/480x762.png",
"xhdpi" : "/Users/xf/workspace/wwwroot/deming-uniapp/static/app/start/720x1242.png",
"xxhdpi" : "/Users/xf/workspace/wwwroot/deming-uniapp/static/app/start/1080x1882.png"
}
}
}

View File

@ -13,6 +13,30 @@
}
}
},
{
"path": "pages/login/agreements",
"style": {
"navigationBarTitleText": "用户协议",
"app-plus": {
"titleNView": {
"backgroundColor": "#FFFFFF",
"titleColor": "#333333"
}
}
}
},
{
"path": "pages/login/privacy_policy",
"style": {
"navigationBarTitleText": "隐私政策",
"app-plus": {
"titleNView": {
"backgroundColor": "#FFFFFF",
"titleColor": "#333333"
}
}
}
},
{
"path": "pages/release/tosign",
"style": {
@ -49,7 +73,7 @@
{
"path": "pages/index/index",
"style": {
"navigationBarTitleText": "德铭阳光在线",
"navigationBarTitleText": "德铭阳光商家",
"app-plus": {
"titleNView": {
"backgroundColor": "#FFFFFF",
@ -222,6 +246,18 @@
}
}
},
{
"path": "pages/user/feedback",
"style": {
"navigationBarTitleText": "用户反馈",
"app-plus": {
"titleNView": {
"backgroundColor": "#FFFFFF",
"titleColor": "#333333"
}
}
}
},
{
"path": "pages/user/complaintDetails",
"style": {
@ -313,6 +349,5 @@
"text": "我的",
"selectedColor": "#FBFBFB"
}]
}
}

View File

@ -23,7 +23,7 @@
<view class="info">
<view class="num">{{ list.goods_num }}件商品</view>
<view class="price">
实付
{{ type == 10 ? "待支付" : "实付" }}
<span>{{ list.goods_pay_price }}</span>
</view>
</view>
@ -146,6 +146,38 @@
<view class="refund" v-if="type == 5 ">退款状态:同意退款请注意查收</view>
<view class="refund" v-if="type == 6 ">退款状态:商家同意退款等待后台处理</view>
<view class="refund" v-if="type == 7 ">退款状态:商家拒绝退款请等待客服联系</view>
<view class="pain-box" v-if="type == 10 ">
<view class="info-container">
<view>
<view class="title">姓名</view>
<view class="value">{{ info.extend_order_common.reciver_name }}</view>
<image src="/static/image/home/chat.png" @click="tochat(info.buyer_id)"></image>
</view>
<view>
<view class="title">手机号</view>
<view class="value" @longtap="longtap(info.extend_order_common.reciver_info.mob_phone)">{{ info.extend_order_common.reciver_info.mob_phone }}</view>
</view>
<view>
<view class="title">收货地址</view>
<view class="value u-line-2" @longtap="longtap(info.extend_order_common.reciver_info.address)">{{ info.extend_order_common.reciver_info.address }}</view>
</view>
<view>
<view class="title">派送方式</view>
<view class="value u-line-1">{{ users_type == 0 ? "-" : users_type == 1 ? "快递" : users_type == 2 ? "骑手" : "自提" }}</view>
</view>
<view class="remark">
<view class="title">订单备注</view>
<view class="value" @longtap="longtap(info.extend_order_common.order_message)">{{ info.extend_order_common.order_message }}</view>
</view>
<view @click="showInvoice">
<view class="title">开具发票</view>
<view class="invoice">
<text>{{ is_invoice ? "是" : "否" }}</text>
<u-icon name="arrow-right" color="#999" size="20" style="margin-left: 10rpx;"></u-icon>
</view>
</view>
</view>
</view>
<u-popup v-model="showDelivery" mode="center" border-radius="10" class="delivery-popup">
<view class="title">骑手信息</view>
<view class="input-info">
@ -813,6 +845,46 @@ export default {
}
}
}
.pain-box {
.info-container {
padding: 0 30rpx;
margin-bottom: 20rpx;
background-color: #ffffff;
.remark {
padding: 10rpx 0;
height: 100%;
min-height: 88rpx;
}
> view {
display: flex;
align-items: center;
height: 88rpx;
padding: 10rpx 0;
color: rgba(51, 51, 51, 1);
&:not(:last-child) {
border-bottom: 2rpx solid #ececec;
}
.title {
width: 150rpx;
font-size: 30rpx;
margin-right: 10rpx;
}
.value {
font-size: 26rpx;
flex: 1;
}
.invoice {
margin-left: auto;
font-size: 26rpx;
color: #333;
}
image{
width: 40rpx;
height: 40rpx;
}
}
}
}
.delivery {
flex: 1;
background-color: #ffffff;

View File

@ -56,6 +56,12 @@
</view>
<u-empty margin-top="20" v-if="!badlist.length" mode="order"></u-empty>
</view>
<view v-else-if="current == 7">
<view v-for="(item, index) in paidList" :key="index">
<OrderItem :info="item"></OrderItem>
</view>
<u-empty margin-top="20" v-if="!paidList.length" mode="order"></u-empty>
</view>
<view class="release-btn" @click="publish">
<image src="../../static/image/index/publish.png"></image>
<view class="text">发布</view>
@ -124,7 +130,10 @@ export default {
},
{
name: '退货订单'
}
},
{
name: '待支付订单'
}
],
imageList: [],
showSelect: false,
@ -142,6 +151,7 @@ export default {
finshlist: [], //
badlist: [], //退
carlist: [], //
paidList: [], //
reportinfo: null, //
reportcontent: '', //
del_id: 0, // id
@ -178,6 +188,7 @@ export default {
this.badlist = [];
this.badlist = [];
this.testlist = [];
this.paidList = [];
},
// current
reset() {
@ -202,7 +213,10 @@ export default {
} else if (current == 6) {
// 退
this.getallorder(4);
}
} else if (current == 7) {
//
this.getallorder(10);
}
},
//
close() {
@ -332,7 +346,9 @@ export default {
this.badlist.push(arr[index]);
} else if (type == 5) {
this.badlist.push(arr[index]);
}
} else if (type == 10) {
this.paidList.push(arr[index]);
}
}
}
});

View File

@ -165,7 +165,7 @@ export default {
} else {
this.$u.api.agreetest({
goods_try_id: this.orderid,
type: 1,
type: 2,
takeawayer_id: this.selctcar.takeawayer_id
}).then(res => {
console.log(res);

506
pages/login/agreements.vue Normal file

File diff suppressed because one or more lines are too long

View File

@ -51,6 +51,15 @@
</view>
</view>
</view>
<!-- 服务协议 -->
<view class="pact">
<view class="pact-container">
<u-checkbox v-model="consentPact" shape="circle" size="30" label-size="26" icon-size="12" active-color="#ff780f">
<text>我已详细阅读并同意</text>
</u-checkbox>
<text class="pact-items" v-for="item in pactList" :key="item.id" @click="viewAgreement(item.id)"> {{ item.text }}</text>
</view>
</view>
<!-- denglu QQ weixin -->
<button @click="logins">{{ login }}</button>
<!-- <u-button :custom-style="customStyle" ></u-button> -->
@ -76,14 +85,20 @@ export default {
zhanghaoA: '',
mimaA: '',
url: '',
phone: "",
code: "",
phone: "",
code: "",
state:0,
clickstate:false,
//
timer: null,
is_sendcode: false, // 60s
time_count: 60,
//
timer: null,
is_sendcode: false, // 60s
time_count: 60,
consentPact: true,
pactList: [{
"text": "《用户协议》"
},{
"text":"《隐私政策》"
}]
};
},
methods: {
@ -91,14 +106,6 @@ export default {
changetab(num){
this.state = num
},
// checkbox
checkboxChange(e) {
//console.log(e);
},
// checkboxcheckbox-group
checkboxGroupChange(e) {
// console.log(e);
},
mask_u() {
this.show = !this.show;
},
@ -138,17 +145,34 @@ export default {
// console.log(this.$u.trim(this.zhanghaoA));
},
logins() {
//
uni.getNetworkType({
success: (res) => {
console.log(res.networkType);
if (res.networkType == 'none') {
this.$refs.uToast.show({
title: '网络似乎断开了,请检查网络后重试',
type: 'error'
});
}
},
});
//
if(!this.consentPact) return false;
//
// console.log(this.zhanghao);
if(this.clickstate==false){
this.clickstate=true
}else{
this.$refs.uToast.show({
title: "不能重复提交",
type: 'error'
});
return
}
// if(this.clickstate==false){
// this.clickstate=true
// }else{
// ,
// this.$refs.uToast.show({
// title: "",
// type: 'error'
// });
// return
// }
//
// uni.clearStorage();
// 10
@ -157,7 +181,7 @@ export default {
console.log(JSON.stringify(res))
if (res.errCode != 0) {
//
this.clickstate=false
// this.clickstate=false
this.$refs.uToast.show({
title: res.message,
type: 'error'
@ -208,7 +232,7 @@ export default {
console.log(JSON.stringify(res))
if (res.errCode != 0) {
//
this.clickstate=false
// this.clickstate=false
this.$refs.uToast.show({
title: res.message,
type: 'error'
@ -217,10 +241,13 @@ export default {
uni.setStorageSync('token', res.data.token);
uni.setStorageSync('userinfo', res.data);
uni.setStorageSync('rongyun', res.data.rongcloud_token);
this.$u.route({
url: '/pages/index/index',
type: 'switchTab'
});
// this.$u.route({
// url: '/pages/index/index',
// type: 'switchTab'
// });
uni.switchTab({
url: '/pages/index/index',
})
}
});
}
@ -244,7 +271,28 @@ export default {
},
moveHandle(){
return;
}
},
viewAgreement(index) {
console.log(index);
if (index == 0) {
this.$u.route({
url: '/pages/login/agreements',
params: {
title: "用户协议"
}
});
}
if (index == 1) {
this.$u.route({
url: '/pages/login/privacy_policy',
params: {
title: "隐私政策"
}
});
}
}
},
onLoad() {
let token = uni.getStorageSync('token');
@ -256,7 +304,7 @@ export default {
type: user.role == 2 ? 'tab' : 'to'
});
}
}
},
};
</script>
@ -323,7 +371,7 @@ export default {
.title {
font-size: 36rpx;
font-weight: bold;
margin-bottom: 150rpx;
margin-bottom: 120rpx;
color: #fff;
display: flex;
justify-content: flex-start;
@ -367,9 +415,14 @@ export default {
display: flex;
align-items: center;
height: 90rpx;
margin-bottom: 160rpx;
line-height: 90rpx;
border-bottom: 1px #fff solid;
&:first-child {
margin-bottom: 100rpx;
}
&:nth-child(2) {
margin-bottom: 80rpx;
}
input {
width: 80%;
margin-left: 30rpx;
@ -406,27 +459,27 @@ export default {
letter-spacing: 2rpx;
}
.pact text {
font-size: 22rpx;
font-weight: 400;
color: rgba(255, 255, 255, 1);
line-height: 36px;
}
.pact_text {
font-size: 22px;
font-weight: 400;
color: rgba(129, 188, 253, 1) !important;
line-height: 36px;
}
//
.pact {
position: relative;
padding-left: 40rpx;
width: 670rpx;
margin: 0 auto 40rpx;
font-size: 26rpx;
overflow: hidden; //
text-overflow: ellipsis; //
white-space: nowrap; //
.pact-container {
display: flex;
justify-content: flex-end;
align-items: center;
flex-wrap: wrap;
/deep/ .u-checkbox {
.u-checkbox__label {
margin-right: 0;
}
}
.pact-items {
color: rgba(255, 120, 15, 1);
}
}
}
.u-checkbox-group {

File diff suppressed because one or more lines are too long

View File

@ -42,7 +42,7 @@
<view class="titles">正文</view>
<view class="titles_border"><textarea placeholder="请输入内容..." v-model="form.intro"></textarea></view>
<view class="show_two">
<u-popup v-model="show_two" mode="bottom" :closeable="true">
<u-popup v-model="show_two" mode="bottom" @close="closeGood" :closeable="true">
<view class="title"><text>选择商品</text></view>
<!-- 商品列表 -->
<scroll-view :scroll-top="scrollTop" scroll-y="true" class="scroll">
@ -61,7 +61,7 @@
<view class="u-button" @click="changes()">确定</view>
</u-popup>
<!-- 底部选择商品列表 -->
<view @click="show_two = true" v-if="userinfo.role != 4">
<view @click="selectGoods" v-if="userinfo.role != 4">
选择商品
<image class="images" src="../../static/image/tosign/bhottom.png"></image>
</view>
@ -91,11 +91,18 @@ let COS = require('../../common/cos-wx-sdk-v5.js');
const upload_file_server = (_this, filepath) => {
//
let cosConfig = {
Bucket: 'dmmall-1300406074', //replace with yours
Bucket: 'dmmall-1302895943', //replace with yours
Region: 'ap-shanghai', //replace with yours
SecretId: 'AKIDjDPJhni9gTzEB9iGNWQ3PTVGjv74q7EL', //replace with yours
SecretKey: 'ye3SZOvAQO5X5LK3Vy933h6G86h4mqpG' //replace with yours
SecretId: 'AKID7z1lFeo0tV9YmmvZ52mrxlNmvqHTcuCF', //replace with yours
SecretKey: 'd3zTJ0RFwMYVE7jAMJzQ4UbS4YmmJiPq' //replace with yours
};
//
// let cosConfig = {
// Bucket: 'dmmall-1300406074', //replace with yours
// Region: 'ap-shanghai', //replace with yours
// SecretId: 'AKIDjDPJhni9gTzEB9iGNWQ3PTVGjv74q7EL', //replace with yours
// SecretKey: 'ye3SZOvAQO5X5LK3Vy933h6G86h4mqpG' //replace with yours
// };
//
let filePath = filepath;
//
@ -125,7 +132,7 @@ const upload_file_server = (_this, filepath) => {
console.log(err, data, 12345);
if (err == null) {
if (data.statusCode == 200) {
_this.videopath = 'https://dmmall-1300406074.cos.ap-shanghai.myqcloud.com/' + Key;
_this.videopath = 'https://dmmall-1302895943.cos.ap-shanghai.myqcloud.com/' + Key;
uni.hideLoading();
_this.videostate = true;
} else {
@ -146,6 +153,7 @@ const cImage = _this => {
count: 1,
sourceType: ['camera', 'album'],
success: function(res) {
// _this.is_video = true;
uni.showLoading({
title: '上传中'
});
@ -286,6 +294,15 @@ export default {
this.selectarr.push(this.fileListes[num].id);
}
},
//
selectGoods() {
this.show_two = true;
this.is_video = true;
},
//
closeGood() {
this.is_video = false;
},
//
addLiveSpec() {
this.$u.api.createLivesp({

View File

@ -139,8 +139,8 @@
font-size: 30rpx;
color:#fff;
width: 350rpx;
position: absolute;
top: 70rpx;
position: absolute;
top: 70rpx;
left: 31rpx;
height: 31rpx;
}
@ -234,7 +234,9 @@
border-bottom-width: 2rpx;
border-style: solid;
border-color: #ECECEC;
/* #ifndef APP-PLUS-NVUE */
display: flex;
/* #endif */
flex-direction: row;
align-items: center;
}
@ -269,7 +271,9 @@
border-bottom-width: 2rpx;
border-style: solid;
border-color: #ECECEC;
/* #ifndef APP-PLUS-NVUE */
display: flex;
/* #endif */
flex-direction: row;
align-items: center;
justify-content: space-between;
@ -347,7 +351,9 @@
font-size: 30rpx;
color: #fff;
flex-direction: column-reverse;
/* #ifndef APP-PLUS-NVUE */
word-wrap:anywhere;
/* #endif */
font-weight: bold;
}
.livePusher{

View File

@ -36,7 +36,7 @@
<view class="name">{{item.member_nickname}}{{item.reply_member_nickname==null?"评论了文章":" 回复了 "+item.reply_member_nickname}}</view>
<view class="time">{{item.create_time}}</view>
</view>
<view class="btn" @click="showreply(item.id,item.member_id)">回复</view>
<view class="btn" @click="showreply(item.id,item.member_id)" v-if="item.pid==0">回复</view>
</view>
<view class="content u-line-1">{{item.content}}</view>
</view>

117
pages/user/feedback.vue Normal file
View File

@ -0,0 +1,117 @@
<template>
<view class="write-complaints">
<view class="main-container">
<view class="text-box">
<u-input class="textarea" placeholder="发表您的意见吧,我们会做得更好。 (必填)" v-model="text" type="textarea" :clearable="false" :maxlength="200" />
<span class="text-length">{{ text.length }}/200</span>
</view>
<u-input class="phone" placeholder="请输入手机号方便联系 (非必填)" v-model="phone" type="number" />
</view>
<view class="write-btn" @click="submit">发表意见</view>
<u-toast ref="uToast" />
</view>
</template>
<script>
export default {
data() {
return {
phone: '',
text: '',
}
},
methods: {
submit() {
if(!this.verifyContent()) return false;
// console.log(this.phone);
// console.log(this.text);
this.$u.toast('提交成功');
this.phone = "";
this.text = "";
},
verifyContent() {
if(this.$u.test.isEmpty(this.text)) {
this.$u.toast('内容不可为空');
return false;
}
if(!this.$u.test.isEmpty(this.phone)) {
if(!this.$u.test.mobile(this.phone)) {
this.$u.toast('手机格式错误');
return false;
}
}
return true;
},
writeFeedback() {
if(!this.verifyContent()) return false;
this.$u.api.writeFeedback({
fb_content: this.text,
fb_images: this.imageList,
}).then(res => {
if(res.errCode == 0) {
this.$refs.uToast.show({
title: res.message,
duration: 2000,
callback:() => {
this.$u.route({
type: "navigateBack",
url: '/pageE/more/Complaints',
})
}
})
} else {
this.$u.toast(res.message);
}
})
},
},
}
</script>
<style lang="scss" scoped>
.write-complaints {
min-height: calc(100vh - var(--window-top));
background-color: #ECECEC;
.main-container {
background-color: #ffffff;
.text-box {
padding-bottom: 60rpx;
position: relative;
&::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
height: 3rpx;
width: 750rpx;
background-color: #ECECEC;
}
.text-length {
height: 60rpx;
position: absolute;
right: 40rpx;
bottom: 0;
color: #999;
}
}
/deep/ .textarea {
padding: 0 30rpx !important;
width: 100% !important;
margin-bottom: 10rpx;
}
/deep/ .phone {
padding: 20rpx 30rpx !important;
}
}
.write-btn {
margin: 120rpx auto 0;
width: 690rpx;
height: 98rpx;
background: rgba(255,120,15,1);
border-radius: 46rpx;
font-size: 36rpx;
color: rgba(255,255,255,1);
text-align: center;
line-height: 98rpx;
}
}
</style>

View File

@ -23,6 +23,20 @@
<text>骑手投诉</text>
<image src="/static/image/user/1.png"></image>
</view>
<view class="nav" @click="toOthersPage('feedback')">
<text>用户反馈</text>
<image src="/static/image/user/1.png"></image>
</view>
<view class="nav" @click="viewAgreement(0)">
<text>用户协议</text>
<image src="/static/image/user/1.png"></image>
</view>
<view class="nav" @click="viewAgreement(1)">
<text>隐私政策</text>
<image src="/static/image/user/1.png"></image>
</view>
<view class="nav" @click="clearCache">
<text>清除缓存</text>
<text>{{ fileSizeString }}</text>
@ -50,18 +64,17 @@ export default {
watch: {
isLoginOut() {
// console.log(this.isLoginOut);
if (this.isLoginOut) {
uni.hideTabBar();
} else {
setTimeout(function() {
uni.showTabBar();
},200)
}
// if (this.isLoginOut) {
// uni.hideTabBar();
// } else {
// setTimeout(function() {
// uni.showTabBar();
// },200)
// }
}
},
onLoad() {
this.getCache();
console.log(222);
},
onShow() {
this.getmyinfo()
@ -101,8 +114,8 @@ export default {
plus.cache.clear(function(e) {
console.log(e);
})
this.getCache();
}
this.getCache();
}
})
// #endif
@ -139,7 +152,26 @@ export default {
uni.navigateTo({
url: '/pages/user/' + url
});
}
},
viewAgreement(index) {
if (index == 0) {
this.$u.route({
url: '/pages/login/agreements',
params: {
title: "用户协议"
}
});
}
if (index == 1) {
this.$u.route({
url: '/pages/login/privacy_policy',
params: {
title: "隐私政策"
}
});
}
}
},
}
</script>

View File

@ -5,7 +5,8 @@
<text>更换头像</text>
</view>
<view class="item">
<text class="title">用户名</text>
<text class="title" v-if="role == 2">店铺名称</text>
<text class="title" v-else>达人名称</text>
<input type="text" value="" v-model="info.member_nickname" placeholder="请输入用户名"/>
</view>
<view class="item">
@ -37,6 +38,7 @@ export default {
this.role = userinfo.role;
// console.log(this.role);
},
//
onNavigationBarButtonTap() {
let that = this;
let obj ={
@ -86,7 +88,13 @@ export default {
},
// ,
chooseImage(sourceType) {
let that = this
let that = this;
let photo_type = "";
if (this.role == 2) {
photo_type = "store_avatar"
} else {
photo_type = "avatar"
}
const token = uni.getStorageSync('token');
uni.chooseImage({
count: 1,
@ -97,20 +105,24 @@ export default {
uni.uploadFile({
url: 'https://mall.dmygkeji.com/storeapi/Upload/uploadFile',
filePath: tempFilePaths[0],
name: 'avatar',
name: photo_type,
formData:{
name:"avatar"
name: photo_type,
store_id: that.info.store_id
},
header:{
Authorization:'Bearer' + " " + token
},
success: uploadFileRes => {
let obj = JSON.parse(uploadFileRes.data)
that.fileurl = obj.data.file_path
that.fileurl = obj.data.file_path+'?'+new Date().getTime()
that.filename = obj.data.file_name
that.num++
console.log(that.fileurl,that.filename)
}
},
fail: (res) => {
console.log(res);
}
});
}
});

View File

@ -2,7 +2,7 @@
<view class="user">
<view class="head" @click="toOthersPage('info')">
<view class="info">
<image :src="info.member_avatar"></image>
<image :src="info.member_avatar + '?' + (new Date().getTime())"></image>
<view class="name">
<text>{{info.member_nickname==null?"新用户":info.member_nickname}}</text>
<text>账号{{info.member_name}}</text>
@ -111,12 +111,12 @@ export default {
confirmColor: "#f00",
success: (res) => {
// console.log(res);
if (res.confirm) {
plus.cache.clear(function(e) {
console.log(e);
})
}
this.getCache();
if (res.confirm) {
plus.cache.clear(function(e) {
console.log(e);
})
this.getCache();
}
}
})
// #endif

View File

@ -62,7 +62,7 @@ function ChatRoomService(room, user) {
//获取实例
ChatRoomService.prototype.connectGoEasyIM = function () {
this.im = GoEasyIM.getInstance({
appkey: 'BC-453aa755c4ea48148abefc55a86df283',
appkey: 'BC-d9b5e639006b4ee2a4bc9eddc4235a6a',
host: 'hangzhou.goeasy.io'
});