添加截流,昵称表情处理,投诉刷新

dev
Tuzki 2 years ago
parent 87c8b4f6f7
commit 647d199939
  1. 45
      common/util.js
  2. 45
      pages/personcenter/EditProfile/EditProfile.vue
  3. 132
      pages/personcenter/personcenter.vue
  4. 18
      sunPackIndex/scenic/subscribe/yuyue/yue_form_js.vue
  5. 4
      sunPackIndex/suggest/sug_list.vue

@ -496,5 +496,50 @@ module.exports = {
return true;
}
return false;
},
// 表情转码
utf16toEntities(str) {
const patt = /[\ud800-\udbff][\udc00-\udfff]/g; // 检测utf16字符正则
str = str.replace(patt, (char) => {
let H;
let L;
let code;
let s;
if (char.length === 2) {
H = char.charCodeAt(0); // 取出高位
L = char.charCodeAt(1); // 取出低位
code = (H - 0xD800) * 0x400 + 0x10000 + L - 0xDC00; // 转换算法
s = `&#${code};`;
} else {
s = char;
}
return s;
});
return str;
},
// 表情解码
entitiestoUtf16(strObj) {
const patt = /&#\d+;/g;
const arr = strObj.match(patt) || [];
let H;
let L;
let code;
for (let i = 0; i < arr.length; i += 1) {
code = arr[i];
code = code.replace('&#', '').replace(';', '');
// 高位
H = Math.floor((code - 0x10000) / 0x400) + 0xD800;
// 低位
L = ((code - 0x10000) % 0x400) + 0xDC00;
code = `&#${code};`;
const s = String.fromCharCode(H, L);
strObj = strObj.replace(code, s);
}
return strObj;
}
}

@ -13,7 +13,7 @@
<view class="demo-uni-col dark">昵称</view>
<view class="demo-uni-col light">
<input type="nickname" v-model="username" @blur="blurname" class="nickname" placeholder="请输入昵称" />
<input type="nickname" v-model="usernames" @blur="blurname" class="nickname" placeholder="请输入昵称" />
</view>
</uni-row>
@ -26,19 +26,21 @@ export default {
data() {
return {
username: '',
usernames: '',
url: '',
pic:'',
pic: ''
};
},
onShow() {
let this_ = this;
console.log(uni.getStorageSync('nickname'), uni.getStorageSync('headimgurl'));
this_.username = uni.getStorageSync('nickname');
this_.usernames = this_.$util.entitiestoUtf16(this_.username);
this_.url = uni.getStorageSync('headimgurl');
},
methods: {
onChooseAvatar(e) {
console.log(e)
console.log(e);
let this_ = this;
const avatarUrl = e.detail.avatarUrl;
this_.url = avatarUrl;
@ -47,7 +49,7 @@ export default {
filePath: avatarUrl,
name: 'file',
success(res) {
console.log(res,'山川了')
console.log(res, '山川了');
if (res.statusCode != 200) {
uni.showToast({
title: '上传失败',
@ -60,11 +62,11 @@ export default {
return;
}
obj = obj.data;
this_.pic = obj.path
console.log(this_.pic,';')
this_.pic = this_.$config.ROOTPATH + obj.path;
console.log(this_.pic, ';');
},
fail(res) {
console.log('失败了',res)
console.log('失败了', res);
uni.showToast({
title: '上传失败',
icon: 'none'
@ -74,33 +76,37 @@ export default {
},
blurname(e) {
let this_ = this;
this_.username = e.detail.value;
this_.username = this_.$util.utf16toEntities(e.detail.value);
this_.usernames = e.detail.value;
console.log(this_.username, this_.usernames);
},
saveProfile() {
let this_ = this;
if(this_.pic&&this_.pi!=''){
uni.setStorageSync('headimgurl', this_.$config.ROOTPATH+this_.pic);
if (this_.pic && this_.pic != '') {
uni.setStorageSync('headimgurl', this_.pic);
} else {
this_.pic = uni.getStorageSync('headimgurl');
}
uni.setStorageSync('nickname', this_.username);
uni.setStorageSync('oauthTime', new Date().getTime());
const obj = {
headimgurl:this_.$config.ROOTPATH+this_.pic,
headimgurl: this_.pic,
openid: uni.getStorageSync('unionid'),
nickname: this_.username
}
console.log(obj,'请求参数')
};
console.log(obj, '请求参数');
var data = {
"data": JSON.stringify(obj),
data: JSON.stringify(obj),
userkey: this_.$param.userkey
}
this_.$Request.post(this_.$config.saveUser,data).then(res => {
};
this_.$Request.post(this_.$config.saveUser, data).then((res) => {
var flag = this_.$util.isSuccess(res);
if (!flag) {
return;
}
var userid = res.data;
console.log(userid,'保存返回')
})
console.log(userid, '保存返回');
});
uni.showToast({
icon: 'success',
title: '保存成功!',
@ -141,6 +147,9 @@ export default {
.saveBtn {
width: 70%;
margin: 30rpx auto;
position: fixed;
bottom: 3vh;
left: 15%;
}
.nickname {
text-align: right;

@ -19,9 +19,7 @@
<!-- 用户昵称 -->
<view class="t_adm_box">
<!-- <text class="t_nic">{{nickname}}阳光夏~小葵</text> -- 已登录状态 显示用户昵称 -->
<text class="t_nic" >{{ nickname }}</text>
<!--登录后 退出按钮-->
<!-- <text v-if="isLogin" class="pes_img_tc" @tap="jump('logoutWechat')">退出</text> -->
<text class="t_nic">{{ nicknames }}</text>
</view>
<!-- <input type="nickname" @blur="saveName" class="weui-input" placeholder="请输入昵称"/> -->
</view>
@ -66,40 +64,7 @@
</view>
</view>
</view>
<view>
<!-- 普通弹窗 -->
<!-- <uni-popup ref="popup" background-color="#fff" >
<view class="w100 fx-box">
<view class="f-32 color-01 fw-700 flex-c-c">
设置头像和昵称
</view>
<view class="m-t-40">
<view class="flex w00">
<view class="flex-al-c w100 f-28">
<view class="w30 tx-tt">设置头像</view>
<view class="w70">
<button open-type="chooseAvatar" @chooseavatar='onChooseAvatar' class="f-24 wh-106 color-01 m-t-10 tx-btn"
>
<image class="wh-106s" :src="url" mode="scaleToFill"></image>
</button>
</view>
</view>
</view>
<view class="flex-c-c flex-column m-t-40 tx-nc">
<view class="flex-al-c w100 f-28">
<view class="w30 ">设置昵称</view>
<input class="w70" type="nickname" @blur="blurname" v-model="username" placeholder="请输入昵称">
</view>
</button>
</view>
</view>
<view class="flex-c-c tx-sz" @click='conserved'>
<view style="background: #0081f5;width: 300rpx;color: #fff;" class="padd-12 bor-r-10 flex-c-c m-t-40">设置</view>
</view>
</view>
</uni-popup> -->
</view>
<view></view>
<!-- 兴趣定制 -->
<!-- 工具栏 -->
@ -117,8 +82,9 @@ export default {
avatarUrl: '',
url: '',
username: '',
headimgurl: '../../static/images/adm_img.png',
headimgurl: '',
nickname: '点击授权',
nicknames: '点击授权',
isUpdate: true,
isLogin: false,
isShowOnlinets: 'NO',
@ -142,11 +108,12 @@ export default {
onShow() {
if (!uni.getStorageSync('unionid') || uni.getStorageSync('unionid') == '' || uni.getStorageSync('unionid') == null) {
this.isLogin = false;
this.headimgurl = ''
this.headimgurl = '';
} else {
this.nickname = uni.getStorageSync('nickname')
this.headimgurl = uni.getStorageSync('headimgurl')
this.isLogin = true
this.nickname = uni.getStorageSync('nickname');
this.nicknames = this.$util.entitiestoUtf16(this.nickname);
this.headimgurl = uni.getStorageSync('headimgurl');
this.isLogin = true;
}
},
onLoad(options) {
@ -158,19 +125,6 @@ export default {
}
},
methods: {
conserved(e){
console.log(e,'难定')
let this_ = this;
setTimeout(() => {
this_.headimgurl = this_.url;
this_.nickname = this_.username;
uni.setStorageSync('nickname', this_.username);
uni.setStorageSync('headimgurl', this_.url);
uni.setStorageSync('oauthTime', new Date().getTime());
this.$refs.popup.close()
}, 1000)
},
changean(type) {
let this_ = this;
if (!uni.getStorageSync('unionid') || uni.getStorageSync('unionid') == '' || uni.getStorageSync('unionid') == null) {
@ -182,7 +136,7 @@ export default {
} else {
uni.navigateTo({
url: '/pages/personcenter/EditProfile/EditProfile'
})
});
// this.type = type
// this_.url = this.headimgurl
// this_.username = this.nickname
@ -206,7 +160,7 @@ export default {
blurname(e) {
let this_ = this;
console.log(e);
this_.username = e.detail.value
this_.username = e.detail.value;
},
saveLoginLog: function (unionid) {
var that = this;
@ -261,7 +215,7 @@ export default {
const da = {
userkey: this_.$param.userkey,
openid: obj.openid
}
};
this_.$Request.post(this_.$config.getUser, da).then((res) => {
if (res.data == null) {
uni.setStorageSync('nickname', '微信用户');
@ -270,15 +224,17 @@ export default {
this_.nickname = '微信用户';
this_.headimgurl = 'https://www.lbgjtoa.com/appImg/icon-person-01.png';
this_.$forceUpdate();
this_.saveProfile();
} else {
uni.setStorageSync('nickname', res.data.wxNickname);
uni.setStorageSync('headimgurl', res.data.wxHeadimgurl);
uni.setStorageSync('oauthTime', new Date().getTime());
this_.nickname = res.data.wxNickname;
this_.nicknames = this_.$util.entitiestoUtf16(this_.nickname);
this_.headimgurl = res.data.wxHeadimgurl;
this_.$forceUpdate();
}
})
});
uni.setStorageSync('unionid', obj.openid);
},
fail: function (err) {
@ -302,7 +258,7 @@ export default {
// #endif
},
saveProfile: function () {
let this_ = this
let this_ = this;
// wx.getUserInfo({
// provider: 'weixin',
// success: (res) => {
@ -316,20 +272,20 @@ export default {
headimgurl: this_.headimgurl,
openid: uni.getStorageSync('unionid'),
nickname: this_.nickname
}
console.log(obj,'请求参数')
};
console.log(obj, '请求参数');
var data = {
"data": JSON.stringify(obj),
data: JSON.stringify(obj),
userkey: this_.$param.userkey
}
this_.$Request.post(this_.$config.saveUser,data).then(res => {
};
this_.$Request.post(this_.$config.saveUser, data).then((res) => {
var flag = this_.$util.isSuccess(res);
if (!flag) {
return;
}
var userid = res.data;
console.log(userid,'保存返回')
})
console.log(userid, '保存返回');
});
// },
// fail: function (error) {
// console.log('login failed ' + error);
@ -341,16 +297,7 @@ export default {
// duration: 1500
// })
},
callBackMethod: function () {
// clearTimeout(timer);
this.isLogin = true;
that.nickname = aes.aesDecrypt(uni.getStorageSync('nickname'));
that.headimgurl = aes.aesDecrypt(uni.getStorageSync('headimgurl'));
that.getUserInterest(); //
that.getAndroidUserKey(); //
uni.hideLoading();
that.saveLoginLog(uni.getStorageSync('unionid'));
},
jump: function (obj) {
if (obj == 'aboutus') {
uni.navigateTo({
@ -409,17 +356,6 @@ export default {
uni.removeStorageSync('adminId');
this.adminId = '';
this.isAdminLogin = false;
} else if (obj == 'logoutWechat') {
if (!uni.getStorageSync('unionid') || uni.getStorageSync('unionid') == '' || uni.getStorageSync('unionid') == null) {
uni.removeStorageSync('nickname');
uni.removeStorageSync('headimgurl');
uni.removeStorageSync('oauthTime');
uni.removeStorageSync('openid');
uni.removeStorageSync('unionid');
this.nickname = '点击授权';
this.headimgurl = '../../static/images/adm_img.png';
this.isLogin = false;
}
} else if (obj == 'myComment') {
if (!uni.getStorageSync('unionid') || uni.getStorageSync('unionid') == '' || uni.getStorageSync('unionid') == null) {
uni.showToast({
@ -447,7 +383,7 @@ export default {
uni.removeStorageSync('oauthTime');
uni.removeStorageSync('openid');
uni.removeStorageSync('unionid');
that.nickname = '点击授权';
that.nicknames = '点击授权';
that.headimgurl = 'https://www.lbgjtoa.com/appImg/icon-person-01.png';
that.isLogin = false;
} else if (res.cancel) {
@ -534,7 +470,7 @@ export default {
}
}
}
}
};
</script>
<style>
@ -582,9 +518,21 @@ export default {
.t-setting {
width: 50rpx;
height: 50rpx;
}
.set-img {
width: 100%;
height: 100% }
height: 100%;
}
.person_inf{
width: 50%;
}
.pes_inf {
width: 99%;
}
.t_nic {
width: 100%;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
</style>

@ -191,8 +191,14 @@
},
//
saveReserve: function() {
let that = this
if(this.agreementChecked==true){
uni.showLoading({
mask:true,
title:'加载中...'
})
let promise = new Promise(function(resolve, reject) {
that.dynamicLists.map((item, index) => {
that.$refs.form[index].validate().then(res => {
@ -205,6 +211,7 @@
resolve('success');
}, 1000);
})
promise.then(value => {
let reState = that.dynamicLists.every((item, index) => {
return item.state == '1'
@ -212,7 +219,11 @@
console.log("asd",reState)
if (reState == true) {
console.log("asd",reState)
this.postReserve()
}else{
uni.hideLoading()
}
})}
},
@ -264,6 +275,7 @@
},
success: function(result) {
if (result.data.status == 200) {
uni.hideLoading()
uni.showModal({
title: "提示",
content: '预约成功',
@ -285,7 +297,11 @@
//succ.call(self, result.data)
},
fail: function(e) {
//error.call(self, e)
uni.hideLoading()
uni.showToast({
icon:'none',
title:'预约失败'
})
}
})
},

@ -213,6 +213,7 @@
return;
}
var data = res.data;
let arr = []
if(data != null && data.length > 0){
for(var i = 0;i < data.length;i++){
var item = {
@ -225,8 +226,9 @@
"showHideType":"zhed_gao",
"upDownType":"down_touj"
}
that.controlList.push(item);
arr.push(item)
}
that.controlList = arr
}else{
that.loadType = false;
}

Loading…
Cancel
Save