7.10 增加登录页面,事件详情接口对接,我的点赞,关注收藏页面搭建,接口对接

This commit is contained in:
尚政杰
2025-07-10 18:08:16 +08:00
parent c4267a0e27
commit 58b3414bdd
356 changed files with 7710 additions and 978 deletions

View File

@@ -1,22 +1,47 @@
"use strict";
const common_vendor = require("../../../common/vendor.js");
const request_api = require("../../../request/api.js");
require("../../../request/http.js");
const common_assets = require("../../../common/assets.js");
const _sfc_main = {
data() {
return {
avatarTop: "",
contentTop: "",
avatar: "",
//选择头像临时地址
avatarUrl: "",
//已上传的链接
nickname: "",
//昵称
mobile: "",
//手机号
sexList: ["男", "女"],
sex: ""
sex: "",
profile: ""
//个人简介
};
},
onLoad() {
this.avatarTop = common_vendor.inject("navHeight") + 60 / 750 * common_vendor.inject("windowWidth");
this.contentTop = this.avatarTop + 75 / 750 * common_vendor.inject("windowWidth");
this.getUserInfoData();
},
methods: {
/**
* 点击选择头像
* @param {Object} e
*/
chooseAvatar(e) {
common_vendor.index.__f__("log", "at pages/mine/basicInfo/basicInfo.vue:65", e);
this.avatar = e.detail.avatarUrl;
},
/**
* 点击选择性别
* @param {Object} e
*/
sexChange(e) {
common_vendor.index.__f__("log", "at pages/mine/basicInfo/basicInfo.vue:54", e);
common_vendor.index.__f__("log", "at pages/mine/basicInfo/basicInfo.vue:74", e);
let value = e.detail.value;
this.sex = this.sexList[value];
},
@@ -24,8 +49,79 @@ const _sfc_main = {
* 点击下一步
*/
clickNext() {
common_vendor.index.navigateTo({
url: "/pages/mine/investPreference/investPreference"
if (!this.avatar && !this.avatarUrl) {
common_vendor.index.showToast({
title: "请选择头像",
icon: "none"
});
return;
}
if (!this.nickname) {
common_vendor.index.showToast({
title: "请输入昵称",
icon: "none"
});
return;
}
if (!this.sex) {
common_vendor.index.showToast({
title: "请选择性别",
icon: "none"
});
return;
}
if (!this.profile) {
common_vendor.index.showToast({
title: "请输入个人简介",
icon: "none"
});
return;
}
if (this.avatar) {
let param = {
avatar: this.avatar,
nickname: this.nickname,
gender: this.sex == "男" ? "male" : "female",
bio: this.profile,
isFile: 1
};
request_api.updateBasicInfo(param).then((res) => {
common_vendor.index.navigateTo({
url: "/pages/mine/investPreference/investPreference"
});
}).catch((error) => {
});
} else {
let param = {
nickname: this.nickname,
gender: this.sex == "男" ? "male" : "female",
bio: this.profile
};
request_api.updateBasicInfo(param).then((res) => {
common_vendor.index.navigateTo({
url: "/pages/mine/investPreference/investPreference"
});
}).catch((error) => {
});
}
},
/**
* 获取用户信息数据
*/
getUserInfoData() {
request_api.userInfo().then((res) => {
if (res.code == 200) {
this.avatarUrl = res.data.basic_info.avatar_url;
this.nickname = res.data.basic_info.nickname;
this.mobile = res.data.basic_info.phone;
this.sex = res.data.basic_info.gender == "male" ? "男" : "女";
this.profile = res.data.basic_info.bio;
} else
common_vendor.wx$1.showToast({
title: res.message,
icon: "none"
});
}).catch((error) => {
});
}
}
@@ -44,14 +140,21 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
leftText: "信息完善"
}),
b: common_assets._imports_0,
c: common_assets._imports_1$3,
d: common_vendor.s("top:" + $data.avatarTop + "px;"),
e: common_vendor.t($data.sex),
f: common_assets._imports_2$5,
g: $data.sexList,
h: common_vendor.o((...args) => $options.sexChange && $options.sexChange(...args)),
i: common_vendor.s("top:" + $data.contentTop + "px;"),
j: common_vendor.o(($event) => $options.clickNext())
c: $data.avatar ? $data.avatar : $data.avatarUrl,
d: common_assets._imports_1$3,
e: common_vendor.o((...args) => $options.chooseAvatar && $options.chooseAvatar(...args)),
f: common_vendor.s("top:" + $data.avatarTop + "px;"),
g: $data.nickname,
h: common_vendor.o(($event) => $data.nickname = $event.detail.value),
i: common_vendor.t($data.mobile),
j: common_vendor.t($data.sex),
k: common_assets._imports_2$5,
l: $data.sexList,
m: common_vendor.o((...args) => $options.sexChange && $options.sexChange(...args)),
n: $data.profile,
o: common_vendor.o(($event) => $data.profile = $event.detail.value),
p: common_vendor.s("top:" + $data.contentTop + "px;"),
q: common_vendor.o(($event) => $options.clickNext())
};
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);

View File

@@ -1 +1 @@
<view><nav-bar wx:if="{{a}}" u-i="8b6eb184-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view class="avatarC fixed" style="{{d}}"><image class="avatar" src="{{''}}" mode="aspectFill"></image><image class="icon absolute" src="{{c}}" mode="widthFix"></image></view><view class="basicInfoC fixed" style="{{i}}"><view class="title">基本信息</view><view class="section">昵称</view><view class="inputC"><input type="text"/></view><view class="section">手机号</view><view class="inputC"><input type="text"/></view><view class="section">性别</view><picker mode="selector" range="{{g}}" bindchange="{{h}}"><view class="selectC flex"><view class="flex1">{{e}}</view><image class="arrow" src="{{f}}" mode="widthFix"></image></view></picker><view class="section">个人简介</view><view class="textareaC"><textarea placeholder="简单介绍一下自己吧" placeholder-style="color:#AAA"></textarea></view></view><view class="next fixed" bindtap="{{j}}">下一步</view></view>
<view><nav-bar wx:if="{{a}}" u-i="8b6eb184-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view class="avatarC fixed" style="{{f}}"><image class="avatar" src="{{c}}" mode="aspectFill"></image><image class="icon absolute" src="{{d}}" mode="widthFix"></image><button class="absolute" open-type="chooseAvatar" bindchooseavatar="{{e}}"></button></view><view class="basicInfoC fixed" style="{{p}}"><view class="title">基本信息</view><view class="section">昵称</view><view class="inputC"><input type="nickname" value="{{g}}" bindinput="{{h}}"/></view><view class="section">手机号</view><view class="inputC">{{i}}</view><view class="section">性别</view><picker mode="selector" range="{{l}}" bindchange="{{m}}"><view class="selectC flex"><view class="flex1">{{j}}</view><image class="arrow" src="{{k}}" mode="widthFix"></image></view></picker><view class="section">个人简介</view><view class="textareaC"><block wx:if="{{r0}}"><textarea placeholder="简单介绍一下自己吧" placeholder-style="color:#AAA" value="{{n}}" bindinput="{{o}}"></textarea></block></view></view><view class="next fixed" bindtap="{{q}}">下一步</view></view>

View File

@@ -11,7 +11,6 @@
z-index: 10;
}
.avatarC .avatar {
background-color: red;
width: 100%;
height: 150rpx;
border-radius: 50%;
@@ -23,6 +22,12 @@
width: 40rpx;
height: auto;
}
.avatarC button {
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.basicInfoC {
background-color: white;
left: 0;

View File

@@ -1,5 +1,7 @@
"use strict";
const common_vendor = require("../../../common/vendor.js");
const request_api = require("../../../request/api.js");
const utils_util = require("../../../utils/util.js");
const common_assets = require("../../../common/assets.js");
const _sfc_main = {
data() {
@@ -7,11 +9,26 @@ const _sfc_main = {
navH: common_vendor.inject("navHeight"),
listTop: "",
tabList: ["评论我的", "我评论的"],
selectTab: 0
selectTab: 0,
commentList: [],
page: 1,
loadAll: false,
getLocaleDate: utils_util.getLocaleDate
};
},
onLoad() {
this.listTop = this.navH + (75 + 10) / 750 * common_vendor.inject("windowWidth");
this.getCommentListData();
},
onPullDownRefresh() {
this.page = 1;
this.getCommentListData();
},
onReachBottom() {
if (!this.loadAll) {
this.page++;
this.getCommentListData();
}
},
methods: {
/**
@@ -21,7 +38,30 @@ const _sfc_main = {
clickTabItem(index) {
if (this.selectTab != index) {
this.selectTab = index;
this.getCommentListData();
}
},
/**
* 获取评论列表数据
*/
getCommentListData() {
let param = { page: this.page, type: this.selectTab == 0 ? "commented" : "comments" };
request_api.userActivityList(param).then((res) => {
if (res.code == 200) {
if (res.data.current_page == 1) {
this.commentList = res.data.activities;
} else
this.commentList = this.followList.concat(res.data.activities);
if (res.data.current_page == res.data.pages) {
this.loadAll = true;
}
} else
common_vendor.index.showToast({
title: res.message,
icon: "none"
});
}).catch((error) => {
});
}
}
};
@@ -34,7 +74,7 @@ if (!Math) {
_easycom_navBar();
}
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return {
return common_vendor.e({
a: common_vendor.p({
leftText: "评论回复"
}),
@@ -50,8 +90,25 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
});
}),
d: common_vendor.s("top:" + $data.navH + "px;"),
e: common_vendor.s("top:" + $data.listTop + "px;")
};
e: $data.selectTab == 0
}, $data.selectTab == 0 ? {
f: common_vendor.f($data.commentList, (item, index, i0) => {
return {
a: index
};
})
} : {
g: common_vendor.f($data.commentList, (item, index, i0) => {
return {
a: common_vendor.t($data.getLocaleDate(item.created_at)),
b: common_vendor.t(item.content),
c: common_vendor.t(item.event_title),
d: index
};
})
}, {
h: common_vendor.s("top:" + $data.listTop + "px;")
});
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
wx.createPage(MiniProgramPage);

View File

@@ -1 +1 @@
<view><nav-bar wx:if="{{a}}" u-i="dc49bf38-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view class="tabC fixed flex" style="{{d}}"><view wx:for="{{c}}" wx:for-item="item" wx:key="d" class="{{item.c}}" bindtap="{{item.e}}">{{item.a}} <view wx:if="{{item.b}}" class="line absolute"></view></view></view><view class="list fixed" style="{{e}}"><view class="item"><view class="replyContentC"><view class="flex"><view class="flex1 flex"><image class="avatar" src="{{''}}" mode="aspectFill"></image><view class="flex1"><view class="replyNickname">逸尘破晓</view><view class="time">2-15 15:37</view></view></view><view class="reply">回复</view></view><view class="content"> 回复<text class="originNickname">永不落的梦想</text><text>:四部门联合启动的人力资源服务业与制造业融合发展点。</text></view></view><view class="originalTextC"><view class="originReply"><text class="originNickname">永不落的梦想</text><text>:四部门联合启动的人力资源服务业与制造业融合发展点。</text></view><view class="originEventC"><view class="levelTitleC flex"><view class="level">C</view><view class="title">四部门联合启动人力资源服务业与制造业...</view></view><view class="eventContent">人社部、工信部等四部门印发通知明确在30个城市开展3年期试点培育人力资源服务与制造业协同机构...</view></view></view></view></view></view>
<view><nav-bar wx:if="{{a}}" u-i="dc49bf38-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view class="tabC fixed flex" style="{{d}}"><view wx:for="{{c}}" wx:for-item="item" wx:key="d" class="{{item.c}}" bindtap="{{item.e}}">{{item.a}} <view wx:if="{{item.b}}" class="line absolute"></view></view></view><view class="list fixed" style="{{h}}"><block wx:if="{{e}}"><view wx:for="{{f}}" wx:for-item="item" wx:key="a" class="commentMeItem"><view class="replyContentC"><view class="flex"><view class="flex1 flex"><image class="avatar" src="{{''}}" mode="aspectFill"></image><view class="flex1"><view class="replyNickname">逸尘破晓</view><view class="time">2-15 15:37</view></view></view><view class="reply">回复</view></view><view class="content"> 回复<text class="originNickname">永不落的梦想</text><text>:四部门联合启动的人力资源服务业与制造业融合发展点。</text></view></view><view class="originalTextC"><view class="originReply"><text class="originNickname">永不落的梦想</text><text>:四部门联合启动的人力资源服务业与制造业融合发展点。</text></view><view class="originEventC"><view class="levelTitleC flex"><view class="level">C</view><view class="title">四部门联合启动人力资源服务业与制造业...</view></view><view class="eventContent">人社部、工信部等四部门印发通知明确在30个城市开展3年期试点培育人力资源服务与制造业协同机构...</view></view></view></view></block><block wx:else><view wx:for="{{g}}" wx:for-item="item" wx:key="d" class="myCommentItem"><view class="replyContentC"><view class="flex"><image class="avatar" src="{{''}}" mode="aspectFill"></image><view class="flex1"><view class="nickname">逸尘破晓</view><view class="time">{{item.a}}</view></view></view><view class="content">{{item.b}}</view></view><view class="originEventC"><view class="levelTitleC flex"><view class="level">C</view><view class="title">{{item.c}}</view></view><view class="eventContent">人社部、工信部等四部门印发通知明确在30个城市开展3年期试点培育人力资源服务与制造业协同机构...</view></view></view></block></view></view>

View File

@@ -37,24 +37,26 @@
bottom: 0;
overflow-y: scroll;
}
.list .item .replyContentC {
.list .commentMeItem .replyContentC {
padding: 40rpx 25rpx 0;
}
.list .item .replyContentC .avatar {
background-color: red;
.list .commentMeItem .replyContentC .avatar {
margin-right: 22rpx;
width: 80rpx;
height: 80rpx;
border-radius: 50%;
}
.list .item .replyContentC .replyNickname {
.list .commentMeItem .replyContentC .replyNickname {
font-size: 28rpx;
font-weight: bold;
color: #111;
}
.list .item .replyContentC .time {
.list .commentMeItem .replyContentC .time {
font-size: 26rpx;
font-weight: 500;
color: #aaa;
}
.list .item .replyContentC .reply {
.list .commentMeItem .replyContentC .reply {
width: 90rpx;
height: 52rpx;
line-height: 50rpx;
@@ -63,38 +65,38 @@
font-size: 24rpx;
text-align: center;
}
.list .item .replyContentC .content {
.list .commentMeItem .replyContentC .content {
margin-top: 20rpx;
font-size: 24rpx;
font-weight: 500;
color: #444;
}
.list .item .replyContentC .content .originNickname {
.list .commentMeItem .replyContentC .content .originNickname {
color: #F97316;
}
.list .item .originalTextC {
.list .commentMeItem .originalTextC {
background-color: #F7F7F7;
margin-top: 20rpx;
padding: 20rpx 25rpx 25rpx;
}
.list .item .originalTextC .originReply {
.list .commentMeItem .originalTextC .originReply {
font-size: 24rpx;
font-weight: 500;
color: #444;
}
.list .item .originalTextC .originReply .originNickname {
.list .commentMeItem .originalTextC .originReply .originNickname {
color: #F97316;
}
.list .item .originalTextC .originEventC {
.list .commentMeItem .originalTextC .originEventC {
background-color: white;
margin-top: 20rpx;
padding: 34rpx 16rpx;
}
.list .item .originalTextC .originEventC .levelTitleC {
.list .commentMeItem .originalTextC .originEventC .levelTitleC {
font-size: 30rpx;
font-weight: bold;
}
.list .item .originalTextC .originEventC .levelTitleC .level {
.list .commentMeItem .originalTextC .originEventC .levelTitleC .level {
background-color: #FEC44F;
margin-right: 17rpx;
width: 50rpx;
@@ -105,10 +107,64 @@
color: white;
text-align: center;
}
.list .item .originalTextC .originEventC .levelTitleC .title {
.list .commentMeItem .originalTextC .originEventC .levelTitleC .title {
color: #222;
}
.list .item .originalTextC .originEventC .eventContent {
.list .commentMeItem .originalTextC .originEventC .eventContent {
margin-top: 20rpx;
font-size: 24rpx;
font-weight: 500;
color: #666;
}
.list .myCommentItem .replyContentC {
padding: 40rpx 25rpx 0;
}
.list .myCommentItem .replyContentC .avatar {
margin-right: 22rpx;
width: 80rpx;
height: 80rpx;
border-radius: 50%;
}
.list .myCommentItem .replyContentC .nickname {
font-size: 28rpx;
font-weight: bold;
color: #111;
}
.list .myCommentItem .replyContentC .time {
font-size: 26rpx;
font-weight: 500;
color: #aaa;
}
.list .myCommentItem .replyContentC .content {
margin-top: 20rpx;
font-size: 24rpx;
font-weight: 500;
color: #444;
}
.list .myCommentItem .originEventC {
background-color: #F7F7F7;
margin-top: 20rpx;
padding: 20rpx 40rpx;
}
.list .myCommentItem .originEventC .levelTitleC {
font-size: 30rpx;
font-weight: bold;
}
.list .myCommentItem .originEventC .levelTitleC .level {
background-color: #FEC44F;
margin-right: 17rpx;
width: 50rpx;
height: 40rpx;
border-radius: 10rpx;
font-size: 30rpx;
font-weight: bold;
color: white;
text-align: center;
}
.list .myCommentItem .originEventC .levelTitleC .title {
color: #222;
}
.list .myCommentItem .originEventC .eventContent {
margin-top: 20rpx;
font-size: 24rpx;
font-weight: 500;

View File

@@ -1,15 +1,44 @@
"use strict";
const common_vendor = require("../../../common/vendor.js");
const request_api = require("../../../request/api.js");
const common_assets = require("../../../common/assets.js");
const _sfc_main = {
data() {
return {
navH: common_vendor.inject("navHeight")
navH: common_vendor.inject("navHeight"),
content: ""
};
},
onLoad() {
},
methods: {}
methods: {
clickSubmit() {
if (!this.content) {
common_vendor.index.showToast({
title: "请输入您要反馈的问题",
icon: "none"
});
return;
}
let param = { content: this.content, isJson: 1 };
request_api.feedback(param).then((res) => {
if (res.code == 200) {
common_vendor.index.showToast({
title: res.message,
icon: "none"
});
setTimeout(function() {
common_vendor.index.navigateBack();
}, 1e3);
} else
common_vendor.index.showToast({
title: res.message,
icon: "none"
});
}).catch((error) => {
});
}
}
};
if (!Array) {
const _easycom_navBar2 = common_vendor.resolveComponent("navBar");
@@ -25,7 +54,10 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
leftText: "意见反馈"
}),
b: common_assets._imports_0,
c: common_vendor.s("top:" + $data.navH + "px;")
c: $data.content,
d: common_vendor.o(($event) => $data.content = $event.detail.value),
e: common_vendor.s("top:" + $data.navH + "px;"),
f: common_vendor.o(($event) => $options.clickSubmit())
};
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);

View File

@@ -1 +1 @@
<view><nav-bar wx:if="{{a}}" u-i="315da0a4-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view class="feedbackC fixed" style="{{c}}"><view class="textareaC"><textarea placeholder="请输入您要反馈的问题200 字以内)" placeholder-style="color:#C5C5C5" maxlength="200"></textarea></view></view><view class="submit fixed">提交</view></view>
<view><nav-bar wx:if="{{a}}" u-i="315da0a4-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view class="feedbackC fixed" style="{{e}}"><view class="textareaC"><block wx:if="{{r0}}"><textarea placeholder="请输入您要反馈的问题200 字以内)" placeholder-style="color:#C5C5C5" maxlength="200" value="{{c}}" bindinput="{{d}}"></textarea></block></view></view><view class="submit fixed" bindtap="{{f}}">提交</view></view>

View File

@@ -0,0 +1,156 @@
"use strict";
const common_vendor = require("../../../common/vendor.js");
const request_api = require("../../../request/api.js");
const utils_util = require("../../../utils/util.js");
const common_assets = require("../../../common/assets.js");
const _sfc_main = {
data() {
return {
navH: common_vendor.inject("navHeight"),
followList: [],
page: 1,
loadAll: false,
getRateStr: utils_util.getRateStr,
getRateUpOrDown: utils_util.getRateUpOrDown,
getLocaleTime: utils_util.getLocaleTime
};
},
onLoad() {
this.getFollowCollectListData();
},
onPullDownRefresh() {
this.page = 1;
this.getFollowCollectListData();
},
onReachBottom() {
if (!this.loadAll) {
this.page++;
this.getFollowCollectListData();
}
},
methods: {
/**
* 点击相关股票
* @param {Object} code
*/
clickLookRelatedStockItem(code) {
common_vendor.index.navigateTo({
url: "/pages/index/stockDetails/stockDetails?code=" + code
});
},
/**
* 点击关注事件
* @param {Object} id
*/
clickFollowEvent(id, index) {
request_api.followEvent(id).then((res) => {
common_vendor.index.showToast({
title: res.message,
icon: "none"
});
this.followList.splice(index, 1);
}).catch((error) => {
});
},
/**
* 查看事件详情
*/
clickEventItem(id) {
common_vendor.index.navigateTo({
url: "/pages/index/eventDetails/eventDetails?id=" + id
});
},
/**
* 获取关注收藏列表数据
*/
getFollowCollectListData() {
let param = { page: this.page, type: "follows" };
request_api.userActivityList(param).then((res) => {
if (res.code == 200) {
if (res.data.current_page == 1) {
this.followList = res.data.activities;
} else
this.followList = this.followList.concat(res.data.activities);
if (res.data.current_page == res.data.pages) {
this.loadAll = true;
}
} else
common_vendor.index.showToast({
title: res.message,
icon: "none"
});
}).catch((error) => {
});
}
}
};
if (!Array) {
const _easycom_navBar2 = common_vendor.resolveComponent("navBar");
_easycom_navBar2();
}
const _easycom_navBar = () => "../../../components/navBar/navBar.js";
if (!Math) {
_easycom_navBar();
}
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return {
a: common_vendor.p({
leftText: "关注收藏"
}),
b: common_assets._imports_0,
c: common_vendor.f($data.followList, (item, index, i0) => {
return common_vendor.e({
a: common_vendor.t(item.importance),
b: common_vendor.n("level " + item.importance),
c: common_vendor.t(item.event_title),
d: common_vendor.t(item.event_description),
e: $data.getRateUpOrDown(item.related_avg_chg)
}, $data.getRateUpOrDown(item.related_avg_chg) ? {
f: common_assets._imports_1$1
} : {
g: common_assets._imports_2$2
}, {
h: common_vendor.t($data.getRateStr(item.related_avg_chg)),
i: common_vendor.n("rateItem " + ($data.getRateUpOrDown(item.related_avg_chg) ? "down" : "up")),
j: $data.getRateUpOrDown(item.related_max_chg)
}, $data.getRateUpOrDown(item.related_max_chg) ? {
k: common_assets._imports_1$1
} : {
l: common_assets._imports_2$2
}, {
m: common_vendor.t($data.getRateStr(item.related_max_chg)),
n: common_vendor.n("rateItem " + ($data.getRateUpOrDown(item.related_max_chg) ? "down" : "up")),
o: $data.getRateUpOrDown(item.related_week_chg)
}, $data.getRateUpOrDown(item.related_week_chg) ? {
p: common_assets._imports_1$1
} : {
q: common_assets._imports_2$2
}, {
r: common_vendor.t($data.getRateStr(item.related_week_chg)),
s: common_vendor.n("rateItem " + ($data.getRateUpOrDown(item.related_week_chg) ? "down" : "up")),
t: common_vendor.f(item.related_stocks, (sitem, sindex, i1) => {
return {
a: common_vendor.t(sitem.stock_name),
b: common_vendor.t(($data.getRateUpOrDown(sitem.daily_change) ? "" : "+") + sitem.daily_change),
c: sindex,
d: common_vendor.o(($event) => $options.clickLookRelatedStockItem(sitem.stock_code), sindex)
};
}),
v: common_vendor.t($data.getLocaleTime(item.created_at)),
w: common_vendor.t(item.view_count),
x: common_vendor.t(item.comment_count),
y: common_vendor.t(item.follower_count),
z: common_vendor.o(($event) => $options.clickFollowEvent(item.event_id, index), index),
A: common_vendor.o(($event) => $options.clickEventItem(item.event_id), index),
B: index
});
}),
d: common_assets._imports_3,
e: common_assets._imports_4,
f: common_assets._imports_5$2,
g: common_vendor.s("top:" + $data.navH + "px;")
};
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pages/mine/followCollect/followCollect.js.map

View File

@@ -0,0 +1,6 @@
{
"navigationBarTitleText": "",
"usingComponents": {
"nav-bar": "../../../components/navBar/navBar"
}
}

View File

@@ -0,0 +1 @@
<view><nav-bar wx:if="{{a}}" u-i="340e4710-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view class="list fixed" style="{{g}}"><view wx:for="{{c}}" wx:for-item="item" wx:key="B" class="item" bindtap="{{item.A}}"><view class="flex"><view class="{{item.b}}">{{item.a}}</view><view class="title">{{item.c}}</view></view><view class="content">{{item.d}}</view><scroll-view scroll-x class="increaseRateList"><view class="{{item.i}}"> 平均涨幅: <image wx:if="{{item.e}}" class="arrow" src="{{item.f}}" mode="widthFix"></image><image wx:else class="arrow" src="{{item.g}}" mode="widthFix"></image> {{item.h}}% </view><view class="{{item.n}}"> 最大涨幅: <image wx:if="{{item.j}}" class="arrow" src="{{item.k}}" mode="widthFix"></image><image wx:else class="arrow" src="{{item.l}}" mode="widthFix"></image> {{item.m}}% </view><view class="{{item.s}}"> 周涨幅: <image wx:if="{{item.o}}" class="arrow" src="{{item.p}}" mode="widthFix"></image><image wx:else class="arrow" src="{{item.q}}" mode="widthFix"></image> {{item.r}}% </view></scroll-view><scroll-view scroll-x class="stockList"><view wx:for="{{item.t}}" wx:for-item="sitem" wx:key="c" class="stockItem" catchtap="{{sitem.d}}">{{sitem.a}} <text class="change">{{sitem.b}}%</text></view></scroll-view><view class="timeToolBarC flex"><view class="time flex1">{{item.v}}</view><view class="toolBarC flex"><view class="toolItem flex"><image class="icon" src="{{d}}" mode="widthFix"></image><text>{{item.w}}</text></view><view class="toolItem flex"><image class="icon" src="{{e}}" mode="widthFix"></image><text>{{item.x}}</text></view><view class="toolItem flex" catchtap="{{item.z}}"><image class="icon" src="{{f}}" mode="widthFix"></image><text>{{item.y}}</text></view></view></view></view></view></view>

View File

@@ -0,0 +1,122 @@
.topBg {
top: 0;
left: 0;
width: 100%;
height: auto;
}
.list {
background-color: white;
left: 0;
right: 0;
bottom: 0;
padding: 0 25rpx;
overflow-y: scroll;
}
.list .item {
padding: 30rpx 0;
border-bottom: solid 1rpx #E4E4E4;
}
.list .item .level {
margin-right: 16rpx;
width: 50rpx;
line-height: 40rpx;
border-radius: 10rpx;
font-size: 30rpx;
font-weight: bold;
color: white;
text-align: center;
}
.list .item .level.S {
background-color: #CC4C02;
}
.list .item .level.A {
background-color: #EC7014;
}
.list .item .level.B {
background-color: #FB9A29;
}
.list .item .level.C {
background-color: #FEC44F;
}
.list .item .title {
font-size: 30rpx;
font-weight: bold;
color: #222;
}
.list .item .content {
margin-top: 20rpx;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
text-overflow: ellipsis;
overflow: hidden;
font-size: 24rpx;
font-weight: 500;
color: #666;
}
.list .item .increaseRateList {
white-space: nowrap;
margin-top: 24rpx;
}
.list .item .increaseRateList .rateItem {
display: inline-block;
margin-right: 15rpx;
line-height: 44rpx;
padding: 0 14rpx;
border-radius: 10rpx;
font-size: 22rpx;
font-weight: bold;
color: white;
}
.list .item .increaseRateList .rateItem .arrow {
width: 15rpx;
height: auto;
}
.list .item .increaseRateList .rateItem.up {
background-color: #C00000;
}
.list .item .increaseRateList .rateItem.down {
background-color: #355422;
}
.list .item .stockList {
white-space: nowrap;
margin-top: 20rpx;
}
.list .item .stockList .stockItem {
background-color: #F8F8F8;
margin-right: 21rpx;
display: inline-block;
padding: 0 20rpx;
line-height: 60rpx;
border-radius: 10rpx;
font-size: 30rpx;
font-weight: bold;
color: #222;
}
.list .item .stockList .stockItem .change {
color: #F97316;
}
.list .item .timeToolBarC {
margin-top: 20rpx;
}
.list .item .timeToolBarC .time {
font-size: 22rpx;
font-weight: 500;
color: #aaa;
}
.list .item .timeToolBarC .toolBarC .toolItem {
padding: 0 20rpx;
font-size: 26rpx;
font-weight: bold;
color: #666;
}
.list .item .timeToolBarC .toolBarC .toolItem .icon {
margin-right: 13rpx;
width: 29rpx;
height: auto;
}
.list .item .timeToolBarC .toolBarC .toolItem:first-child .icon {
margin-right: 15rpx;
width: 33rpx;
height: auto;
}

View File

@@ -1,11 +1,16 @@
"use strict";
const common_vendor = require("../../../common/vendor.js");
const request_api = require("../../../request/api.js");
const common_assets = require("../../../common/assets.js");
const _sfc_main = {
data() {
return {
avatarTop: "",
contentTop: "",
avatar: "",
//选择头像临时地址
avatarUrl: "",
//已上传的链接
investPreferenceList: ["长期投资", "中短期投资", "风险控制型"],
selectInvestIndex: -1,
stockYearList: ["新手入门", "1年以内", "1-3年", "3-5年", "5-10年", "10年以上"],
@@ -20,8 +25,16 @@ const _sfc_main = {
onLoad() {
this.avatarTop = common_vendor.inject("navHeight") + 60 / 750 * common_vendor.inject("windowWidth");
this.contentTop = this.avatarTop + 75 / 750 * common_vendor.inject("windowWidth");
this.getUserInfoData();
},
methods: {
/**
* 点击选择头像
* @param {Object} e
*/
chooseAvatar(e) {
this.avatar = e.detail.avatarUrl;
},
/**
* 点击选择投资偏好
* @param {Object} index
@@ -64,6 +77,129 @@ const _sfc_main = {
*/
clickMarketItem(index) {
this.preferredMarketList[index].select = !this.preferredMarketList[index].select;
},
/**
* 点击上一步
*/
clickPre() {
common_vendor.index.navigateBack();
},
/**
* 点击完成
*/
clickFinish() {
if (this.selectInvestIndex < 0) {
common_vendor.index.showToast({
title: "请选择投资偏好",
icon: "none"
});
return;
}
if (this.selectYearIndex < 0) {
common_vendor.index.showToast({
title: "请选择炒股年限",
icon: "none"
});
return;
}
if (this.selectRiskIndex < 0) {
common_vendor.index.showToast({
title: "请选择风险偏好",
icon: "none"
});
return;
}
if (this.selectScaleIndex < 0) {
common_vendor.index.showToast({
title: "请选择投资规模",
icon: "none"
});
return;
}
let arr2 = [];
for (let item of this.preferredMarketList) {
if (item.select) {
arr2.push(item.title);
}
}
if (arr2.length == 0) {
common_vendor.index.showToast({
title: "请选择偏好市场",
icon: "none"
});
return;
}
if (this.avatar) {
let param = { avatar: this.avatar, isFile: 1 };
updateBasicInfo(param).then((res) => {
this.uploadInvestPreferenceData();
}).catch((error) => {
});
} else
this.uploadInvestPreferenceData();
},
/**
* 更新投资偏好设置
*/
uploadInvestPreferenceData() {
let param = {
trading_experience: this.selectYearIndex,
investment_style: this.investPreferenceList[this.selectInvestIndex],
risk_preference: this.riskPreferenceList[this.selectRiskIndex],
investment_amount: this.investmentScaleList[this.selectScaleIndex],
preferred_markets: arr
};
request_api.updateInvestPreference(param).then((res) => {
common_vendor.index.navigateBack({
delta: 2
});
}).catch((error) => {
});
},
/**
* 获取用户偏好设置数据
*/
getUserInfoData() {
request_api.userInfo().then((res) => {
if (res.code == 200) {
let data = res.data.investment_preferences;
for (var i = 0; i < this.investPreferenceList.length; i++) {
let item = this.investPreferenceList[i];
if (item == data.investment_style) {
this.selectInvestIndex = i;
break;
}
}
this.selectYearIndex = data.trading_experience;
for (var i = 0; i < this.riskPreferenceList.length; i++) {
let item = this.riskPreferenceList[i];
if (item == data.risk_preference) {
this.selectRiskIndex = i;
break;
}
}
for (var i = 0; i < this.investmentScaleList.length; i++) {
let item = this.investmentScaleList[i];
if (item == data.investment_amount) {
this.selectScaleIndex = i;
break;
}
}
for (let item of this.preferredMarketList) {
let arr2 = JSON.parse(data.preferred_markets);
let arr1 = arr2[0].split(",");
if (arr1.indexOf(item.title) > -1) {
item.select = true;
} else {
item.select = false;
}
}
} else
common_vendor.wx$1.showToast({
title: res.message
});
}).catch((error) => {
});
}
}
};
@@ -81,9 +217,11 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
leftText: "信息完善"
}),
b: common_assets._imports_0,
c: common_assets._imports_1$3,
d: common_vendor.s("top:" + $data.avatarTop + "px;"),
e: common_vendor.f($data.investPreferenceList, (item, index, i0) => {
c: $data.avatar ? $data.avatar : $data.avatarUrl,
d: common_assets._imports_1$3,
e: common_vendor.o((...args) => $options.chooseAvatar && $options.chooseAvatar(...args)),
f: common_vendor.s("top:" + $data.avatarTop + "px;"),
g: common_vendor.f($data.investPreferenceList, (item, index, i0) => {
return {
a: common_vendor.t(item),
b: common_vendor.n("item " + ($data.selectInvestIndex == index ? "select" : "")),
@@ -91,7 +229,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
d: common_vendor.o(($event) => $options.clickInvestItem(index), index)
};
}),
f: common_vendor.f($data.stockYearList, (item, index, i0) => {
h: common_vendor.f($data.stockYearList, (item, index, i0) => {
return {
a: common_vendor.t(item),
b: common_vendor.n("item " + ($data.selectYearIndex == index ? "select" : "")),
@@ -99,7 +237,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
d: common_vendor.o(($event) => $options.clickYearItem(index), index)
};
}),
g: common_vendor.f($data.riskPreferenceList, (item, index, i0) => {
i: common_vendor.f($data.riskPreferenceList, (item, index, i0) => {
return {
a: common_vendor.t(item),
b: common_vendor.n("item " + ($data.selectRiskIndex == index ? "select" : "")),
@@ -107,7 +245,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
d: common_vendor.o(($event) => $options.clickRiskItem(index), index)
};
}),
h: common_vendor.f($data.investmentScaleList, (item, index, i0) => {
j: common_vendor.f($data.investmentScaleList, (item, index, i0) => {
return {
a: common_vendor.t(item),
b: common_vendor.n("item " + ($data.selectScaleIndex == index ? "select" : "")),
@@ -115,7 +253,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
d: common_vendor.o(($event) => $options.clickScaleItem(index), index)
};
}),
i: common_vendor.f($data.preferredMarketList, (item, index, i0) => {
k: common_vendor.f($data.preferredMarketList, (item, index, i0) => {
return {
a: common_vendor.t(item.title),
b: common_vendor.n("item " + (item.select ? "select" : "")),
@@ -123,7 +261,9 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
d: common_vendor.o(($event) => $options.clickMarketItem(index), index)
};
}),
j: common_vendor.s("top:" + $data.contentTop + "px;")
l: common_vendor.s("top:" + $data.contentTop + "px;"),
m: common_vendor.o(($event) => $options.clickPre()),
n: common_vendor.o(($event) => $options.clickFinish())
};
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);

View File

@@ -1 +1 @@
<view><nav-bar wx:if="{{a}}" u-i="ea3a6ff8-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view class="avatarC fixed" style="{{d}}"><image class="avatar" src="{{''}}" mode="aspectFill"></image><image class="icon absolute" src="{{c}}" mode="widthFix"></image></view><view class="preferenceC fixed" style="{{j}}"><view class="title">投资偏好设置</view><view class="section first">投资偏好</view><view class="list flexWrap"><view wx:for="{{e}}" wx:for-item="item" wx:key="c" class="{{item.b}}" bindtap="{{item.d}}">{{item.a}}</view></view><view class="section">炒股年限</view><view class="list flexWrap"><view wx:for="{{f}}" wx:for-item="item" wx:key="c" class="{{item.b}}" bindtap="{{item.d}}">{{item.a}}</view></view><view class="section">风险偏好</view><view class="list flexWrap"><view wx:for="{{g}}" wx:for-item="item" wx:key="c" class="{{item.b}}" bindtap="{{item.d}}">{{item.a}}</view></view><view class="section">投资规模</view><view class="list flexWrap"><view wx:for="{{h}}" wx:for-item="item" wx:key="c" class="{{item.b}}" bindtap="{{item.d}}">{{item.a}}</view></view><view class="section">偏好市场(可多选)</view><view class="list flexWrap"><view wx:for="{{i}}" wx:for-item="item" wx:key="c" class="{{item.b}}" bindtap="{{item.d}}">{{item.a}}</view></view></view><view class="bottomC fixed flex"><view class="pre btn">上一步</view><view class="finish btn flex1">完成</view></view></view>
<view><nav-bar wx:if="{{a}}" u-i="ea3a6ff8-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view class="avatarC fixed" style="{{f}}"><image class="avatar" src="{{c}}" mode="aspectFill"></image><image class="icon absolute" src="{{d}}" mode="widthFix"></image><button class="absolute" open-type="chooseAvatar" bindchooseavatar="{{e}}"></button></view><view class="preferenceC fixed" style="{{l}}"><view class="title">投资偏好设置</view><view class="section first">投资偏好</view><view class="list flexWrap"><view wx:for="{{g}}" wx:for-item="item" wx:key="c" class="{{item.b}}" bindtap="{{item.d}}">{{item.a}}</view></view><view class="section">炒股年限</view><view class="list flexWrap"><view wx:for="{{h}}" wx:for-item="item" wx:key="c" class="{{item.b}}" bindtap="{{item.d}}">{{item.a}}</view></view><view class="section">风险偏好</view><view class="list flexWrap"><view wx:for="{{i}}" wx:for-item="item" wx:key="c" class="{{item.b}}" bindtap="{{item.d}}">{{item.a}}</view></view><view class="section">投资规模</view><view class="list flexWrap"><view wx:for="{{j}}" wx:for-item="item" wx:key="c" class="{{item.b}}" bindtap="{{item.d}}">{{item.a}}</view></view><view class="section">偏好市场(可多选)</view><view class="list flexWrap"><view wx:for="{{k}}" wx:for-item="item" wx:key="c" class="{{item.b}}" bindtap="{{item.d}}">{{item.a}}</view></view></view><view class="bottomC fixed flex"><view class="pre btn" bindtap="{{m}}">上一步</view><view class="finish btn flex1" bindtap="{{n}}">完成</view></view></view>

View File

@@ -11,7 +11,6 @@
z-index: 10;
}
.avatarC .avatar {
background-color: red;
width: 100%;
height: 150rpx;
border-radius: 50%;
@@ -23,6 +22,12 @@
width: 40rpx;
height: auto;
}
.avatarC button {
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.preferenceC {
background-color: white;
left: 0;

View File

@@ -1,5 +1,6 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const request_api = require("../../request/api.js");
const common_assets = require("../../common/assets.js");
const _sfc_main = {
data() {
@@ -7,6 +8,7 @@ const _sfc_main = {
menuTop: common_vendor.inject("menuTop"),
menuH: common_vendor.inject("menuHeight"),
infoTop: "",
userInfo: null,
menuList: [
{
icon: "/static/icon/mine/aboutUs.png",
@@ -39,6 +41,9 @@ const _sfc_main = {
onLoad() {
this.infoTop = common_vendor.inject("navHeight") + 32 / 750 * common_vendor.inject("windowWidth");
},
onShow() {
this.getUserInfoData();
},
methods: {
/**
* 点击查看个人信息
@@ -65,7 +70,14 @@ const _sfc_main = {
common_vendor.index.navigateTo({
url: "/pages/mine/commentReply/commentReply"
});
}
} else if (index == 1) {
common_vendor.index.navigateTo({
url: "/pages/mine/followCollect/followCollect"
});
} else
common_vendor.index.navigateTo({
url: "/pages/mine/myLike/myLike"
});
},
clickMenuItem(url) {
if (url) {
@@ -73,22 +85,42 @@ const _sfc_main = {
url
});
}
},
/**
* 获取用户信息数据
*/
getUserInfoData() {
request_api.userInfo().then((res) => {
if (res.code == 200) {
this.userInfo = res.data;
} else
common_vendor.wx$1.showToast({
title: res.message
});
}).catch((error) => {
});
}
}
};
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return {
return common_vendor.e({
a: common_assets._imports_0,
b: common_vendor.s("top:" + $data.menuTop + "px;line-height:" + $data.menuH + "px;"),
c: common_assets._imports_1$2,
d: common_vendor.s("margin-top:" + $data.infoTop + "px;"),
e: common_vendor.o(($event) => $options.clickPersonalInfo()),
f: common_vendor.o(($event) => $options.clickNumItem(0)),
g: common_vendor.o(($event) => $options.clickNumItem(1)),
h: common_vendor.o(($event) => $options.clickNumItem(2)),
i: common_assets._imports_2$4,
j: common_vendor.o(($event) => $options.clickVip()),
k: common_vendor.f($data.menuList, (item, index, i0) => {
c: $data.userInfo
}, $data.userInfo ? {
d: $data.userInfo.basic_info.avatar_url,
e: common_vendor.t($data.userInfo.basic_info.username),
f: common_vendor.t($data.userInfo.basic_info.phone),
g: common_assets._imports_1$2,
h: common_vendor.s("margin-top:" + $data.infoTop + "px;"),
i: common_vendor.o(($event) => $options.clickPersonalInfo())
} : {}, {
j: common_vendor.o(($event) => $options.clickNumItem(0)),
k: common_vendor.o(($event) => $options.clickNumItem(1)),
l: common_vendor.o(($event) => $options.clickNumItem(2)),
m: common_assets._imports_2$4,
n: common_vendor.o(($event) => $options.clickVip()),
o: common_vendor.f($data.menuList, (item, index, i0) => {
return common_vendor.e({
a: item.icon,
b: common_vendor.t(item.title),
@@ -98,8 +130,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
e: common_vendor.o(($event) => $options.clickMenuItem(item.url), index)
});
}),
l: common_assets._imports_3$3
};
p: common_assets._imports_3$3
});
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
wx.createPage(MiniProgramPage);

View File

@@ -1 +1 @@
<view><image class="topBg absolute" src="{{a}}" mode="widthFix"></image><view class="navTitle fixed" style="{{b}}">个人中心</view><view class="personalInfoC relative flex" style="{{d}}" bindtap="{{e}}"><image class="avatar" src="{{''}}" mode="aspectFill"></image><view class="flex1"><view class="nickname">星河滚烫的理想</view><view class="mobile">手机号:13654800065</view></view><image class="arrow" src="{{c}}" mode="widthFix"></image></view><view class="numList relative flex"><view class="item flex1 flexColumnCenter" bindtap="{{f}}"><view class="num">1</view><view class="title">评论回复</view></view><view class="item flex1 flexColumnCenter" bindtap="{{g}}"><view class="num">1</view><view class="title">关注收藏</view></view><view class="item flex1 flexColumnCenter" bindtap="{{h}}"><view class="num">1</view><view class="title">我的点赞</view></view></view><view class="vipC relative" bindtap="{{j}}"><image class="icon" src="{{i}}" mode="widthFix"></image></view><view class="menuList relative"><view class="list"><view wx:for="{{k}}" wx:for-item="item" wx:key="d" class="item relative flex" bindtap="{{item.e}}"><image class="icon" src="{{item.a}}" mode="aspectFit"></image><view class="title flex1">{{item.b}}</view><image class="arrow" src="{{l}}" mode="widthFix"></image><button wx:if="{{item.c}}" class="absolute" open-type="contact"></button></view></view></view></view>
<view><image class="topBg absolute" src="{{a}}" mode="widthFix"></image><view class="navTitle fixed" style="{{b}}">个人中心</view><view wx:if="{{c}}" class="personalInfoC relative flex" style="{{h}}" bindtap="{{i}}"><image class="avatar" src="{{d}}" mode="aspectFill"></image><view class="flex1"><view class="nickname">{{e}}</view><view class="mobile">手机号:{{f}}</view></view><image class="arrow" src="{{g}}" mode="widthFix"></image></view><view class="numList relative flex"><view class="item flex1 flexColumnCenter" bindtap="{{j}}"><view class="num">1</view><view class="title">评论回复</view></view><view class="item flex1 flexColumnCenter" bindtap="{{k}}"><view class="num">1</view><view class="title">关注收藏</view></view><view class="item flex1 flexColumnCenter" bindtap="{{l}}"><view class="num">1</view><view class="title">我的点赞</view></view></view><view class="vipC relative" bindtap="{{n}}"><image class="icon" src="{{m}}" mode="widthFix"></image></view><view class="menuList relative"><view class="list"><view wx:for="{{o}}" wx:for-item="item" wx:key="d" class="item relative flex" bindtap="{{item.e}}"><image class="icon" src="{{item.a}}" mode="aspectFit"></image><view class="title flex1">{{item.b}}</view><image class="arrow" src="{{p}}" mode="widthFix"></image><button wx:if="{{item.c}}" class="absolute" open-type="contact"></button></view></view></view></view>

View File

@@ -0,0 +1,83 @@
"use strict";
const common_vendor = require("../../../common/vendor.js");
const request_api = require("../../../request/api.js");
const utils_util = require("../../../utils/util.js");
const common_assets = require("../../../common/assets.js");
const _sfc_main = {
data() {
return {
navH: common_vendor.inject("navHeight"),
myLikeList: [],
page: 1,
loadAll: false,
getLocaleHourMinute: utils_util.getLocaleHourMinute
};
},
onLoad() {
this.getMyLikeListData();
},
onPullDownRefresh() {
this.page = 1;
this.getMyLikeListData();
},
onReachBottom() {
if (!this.loadAll) {
this.page++;
this.getMyLikeListData();
}
},
methods: {
/**
* 获取我的点赞列表数据
*/
getMyLikeListData() {
let param = { page: this.page, type: "likes" };
request_api.userActivityList(param).then((res) => {
if (res.code == 200) {
if (res.data.current_page == 1) {
this.myLikeList = res.data.activities;
} else
this.myLikeList = this.myLikeList.concat(res.data.activities);
if (res.data.current_page == res.data.pages) {
this.loadAll = true;
}
} else
common_vendor.index.showToast({
title: res.message,
icon: "none"
});
}).catch((error) => {
});
}
}
};
if (!Array) {
const _easycom_navBar2 = common_vendor.resolveComponent("navBar");
_easycom_navBar2();
}
const _easycom_navBar = () => "../../../components/navBar/navBar.js";
if (!Math) {
_easycom_navBar();
}
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return {
a: common_vendor.p({
leftText: "我的点赞"
}),
b: common_assets._imports_0,
c: common_vendor.f($data.myLikeList, (item, index, i0) => {
return {
a: item.author.avatarurl,
b: common_vendor.t(item.author.nickname),
c: item.post_content,
d: common_vendor.t($data.getLocaleHourMinute(item.like_time)),
e: index
};
}),
d: common_assets._imports_1$6,
e: common_vendor.s("top:" + $data.navH + "px;")
};
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pages/mine/myLike/myLike.js.map

View File

@@ -0,0 +1,6 @@
{
"navigationBarTitleText": "",
"usingComponents": {
"nav-bar": "../../../components/navBar/navBar"
}
}

View File

@@ -0,0 +1 @@
<view><nav-bar wx:if="{{a}}" u-i="005f0838-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view class="list fixed" style="{{e}}"><view wx:for="{{c}}" wx:for-item="item" wx:key="e" class="item"><image class="avatar" src="{{item.a}}" mode="aspectFill"></image><view class="flex1"><view class="nickname">{{item.b}}</view><rich-text class="content" nodes="{{item.c}}"></rich-text><view class="timeReplyLikeC flex between"><view class="timeReplyC flex"><view class="time">{{item.d}}</view></view><view class="likeC flex"><image class="icon" src="{{d}}" mode="widthFix"></image></view></view></view></view></view></view>

View File

@@ -0,0 +1,79 @@
.topBg {
top: 0;
left: 0;
width: 100%;
height: auto;
}
.list {
background-color: white;
margin-top: 10rpx;
left: 0;
right: 0;
bottom: 0;
overflow-y: scroll;
}
.list .item {
display: flex;
padding: 30rpx 25rpx;
border-bottom: solid 1rpx #E4E4E4;
}
.list .item .avatar {
margin-right: 23rpx;
width: 80rpx;
height: 80rpx;
border-radius: 50%;
}
.list .item .nickname {
font-size: 28rpx;
font-weight: bold;
color: #111;
}
.list .item .content {
margin-top: 10rpx;
line-height: 1.2rem;
font-size: 24rpx;
font-weight: 500;
color: #666;
}
.list .item .timeReplyLikeC .time {
margin-right: 36rpx;
font-size: 26rpx;
font-weight: 500;
color: #aaa;
}
.list .item .timeReplyLikeC .reply {
font-size: 26rpx;
font-weight: 500;
color: #F97316;
}
.list .item .timeReplyLikeC .likeC {
padding: 14rpx 0;
font-size: 28rpx;
font-weight: bold;
color: #999;
}
.list .item .timeReplyLikeC .likeC .icon {
margin-right: 12rpx;
width: 27rpx;
height: auto;
}
.list .item .timeReplyLikeC .likeC.like {
color: #F97316;
}
.list .item .totalCommentNumC {
padding: 14rpx 0 22rpx;
font-size: 26rpx;
font-weight: 500;
color: #999;
}
.list .item .totalCommentNumC .line {
background-color: #aaa;
margin-right: 18rpx;
width: 30rpx;
height: 2rpx;
}
.list .item .totalCommentNumC .arrow {
margin-left: 14rpx;
width: 13rpx;
height: auto;
}

View File

@@ -1,54 +1,66 @@
"use strict";
const common_vendor = require("../../../common/vendor.js");
const request_api = require("../../../request/api.js");
const common_assets = require("../../../common/assets.js");
const _sfc_main = {
data() {
return {
navH: common_vendor.inject("navHeight"),
memberInfo: null,
//会员信息
questionList: ["信息纷杂难辨真伪?", "信息纷杂难辨真伪?", "无法把握宏观趋势与行业动向?"],
privilegeList: [
{
icon: "/static/icon/mine/vip/depthReport.png",
icon_v: "/static/icon/mine/vip/depthReport_v.png",
title: "深度研报",
tips: "行业/公司独家分析"
},
{
icon: "/static/icon/mine/vip/strategicInsight.png",
icon_v: "/static/icon/mine/vip/strategicInsight_v.png",
title: "策略洞察",
tips: "赛道趋势+拐点信号"
},
{
icon: "/static/icon/mine/vip/dataTool.png",
icon_v: "/static/icon/mine/vip/dataTool_v.png",
title: "数据工具",
tips: "行业/公司独家分析"
},
{
icon: "/static/icon/mine/vip/dataTool.png",
icon_v: "/static/icon/mine/vip/intelligentScreening_v.png",
title: "智能筛选",
tips: "按需定制标的列表"
},
{
icon: "/static/icon/mine/vip/decisionSupport.png",
icon_v: "/static/icon/mine/vip/decisionSupport_v.png",
title: "决策辅助",
tips: "关键因子评分系统"
},
{
icon: "/static/icon/mine/vip/expertMeeting.png",
icon_v: "/static/icon/mine/vip/expertMeeting_v.png",
title: "专家闭门会",
tips: "深度交流机会"
},
{
icon: "/static/icon/mine/vip/dailyReport.png",
icon_v: "/static/icon/mine/vip/dailyReport_v.png",
title: "日报周报",
tips: "研判速递、节奏掌控"
},
{
icon: "/static/icon/mine/vip/specialColumn.png",
icon_v: "/static/icon/mine/vip/specialColumn_v.png",
title: "专题专栏",
tips: "核心团队观点集结"
},
{
icon: "/static/icon/mine/vip/continuouslyUnlock.png",
icon_v: "/static/icon/mine/vip/continuouslyUnlock_v.png",
title: "持续解锁",
tips: "不定期上线新功能"
}
@@ -56,6 +68,7 @@ const _sfc_main = {
};
},
onLoad() {
this.getMemberStatus();
},
methods: {
/**
@@ -65,6 +78,21 @@ const _sfc_main = {
common_vendor.index.navigateTo({
url: "/pages/mine/vipMeal/vipMeal"
});
},
/**
* 获取会员状态
*/
getMemberStatus() {
request_api.membershipStatus().then((res) => {
if (res.code == 200) {
this.memberInfo = res.data;
} else
common_vendor.index.showToast({
title: res.message,
icon: "none"
});
}).catch((error) => {
});
}
}
};
@@ -77,44 +105,120 @@ if (!Math) {
_easycom_navBar();
}
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return {
return common_vendor.e({
a: common_vendor.p({
leftText: "会员中心"
}),
b: common_assets._imports_0,
c: common_assets._imports_1$4,
d: common_assets._imports_2$6,
e: common_assets._imports_3$4,
f: common_assets._imports_4$3,
g: common_assets._imports_5$3,
h: common_assets._imports_6$1,
i: common_assets._imports_7,
j: common_assets._imports_8,
k: common_vendor.f($data.questionList, (item, index, i0) => {
c: $data.memberInfo
}, $data.memberInfo ? common_vendor.e({
d: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
e: common_assets._imports_1$5
} : {
f: common_assets._imports_2$7
}, {
g: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
h: common_vendor.t($data.memberInfo.member_expire_date)
} : {}, {
i: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
j: common_assets._imports_3$4
} : {
k: common_assets._imports_4$2
}, {
l: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
m: common_assets._imports_5$1
} : {
n: common_assets._imports_6
}, {
o: common_vendor.n("impormant " + ($data.memberInfo.is_member ? "vip" : "")),
p: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
q: common_assets._imports_7$1
} : {
r: common_assets._imports_8$1
}, {
s: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
t: common_assets._imports_9$1
} : {
v: common_assets._imports_10$1
}, {
w: common_vendor.n("impormant " + ($data.memberInfo.is_member ? "vip" : "")),
x: common_vendor.n("impormant " + ($data.memberInfo.is_member ? "vip" : "")),
y: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
z: common_assets._imports_11$2
} : {
A: common_assets._imports_12$1
}, {
B: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
C: common_assets._imports_13
} : {
D: common_assets._imports_14
}, {
E: common_assets._imports_15,
F: common_vendor.f($data.questionList, (item, index, i0) => {
return {
a: common_vendor.t(item),
b: index
};
}),
l: common_assets._imports_2$6,
m: common_assets._imports_3$4,
n: common_assets._imports_9$1,
o: common_assets._imports_2$6,
p: common_assets._imports_3$4,
q: common_assets._imports_10,
r: common_assets._imports_2$6,
s: common_assets._imports_3$4,
t: common_vendor.f($data.privilegeList, (item, index, i0) => {
G: common_vendor.n("item " + ($data.memberInfo.is_member ? "vip" : "")),
H: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
I: common_assets._imports_3$4
} : {
J: common_assets._imports_4$2
}, {
K: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
L: common_assets._imports_5$1
} : {
M: common_assets._imports_6
}, {
N: common_assets._imports_16,
O: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
P: common_assets._imports_3$4
} : {
Q: common_assets._imports_4$2
}, {
R: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
S: common_assets._imports_5$1
} : {}, {
T: common_assets._imports_6,
U: common_assets._imports_17,
V: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
W: common_assets._imports_3$4
} : {
X: common_assets._imports_4$2
}, {
Y: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
Z: common_assets._imports_5$1
} : {
aa: common_assets._imports_6
}, {
ab: common_vendor.f($data.privilegeList, (item, index, i0) => {
return {
a: item.icon,
a: $data.memberInfo.is_member ? item.icon_v : item.icon,
b: common_vendor.t(item.title),
c: common_vendor.t(item.tips),
d: index
};
}),
v: common_vendor.s("margin-top:" + $data.navH + "px;"),
w: common_vendor.o(($event) => $options.clickVipMeal())
};
ac: common_vendor.n("privilegeList flexWrap " + ($data.memberInfo.is_member ? "vip" : "")),
ad: common_vendor.s("margin-top:" + $data.navH + "px;")
}) : {}, {
ae: common_vendor.o(($event) => $options.clickVipMeal())
});
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
wx.createPage(MiniProgramPage);

File diff suppressed because one or more lines are too long

View File

@@ -28,6 +28,12 @@
font-weight: 500;
color: #65758A;
}
.vipC .vipInfoC .infoC.vip .title {
color: #AB3D1A;
}
.vipC .vipInfoC .infoC.vip .tips {
color: #AB3D1A;
}
.vipC .vipProfitIntroC {
background-color: white;
margin-top: -70rpx;
@@ -79,6 +85,9 @@
.vipC .vipProfitIntroC .stepC .step .impormant {
font-weight: bold;
}
.vipC .vipProfitIntroC .stepC .step .impormant.vip {
color: #F97316;
}
.vipC .vipProfitIntroC .picList {
padding: 0 25rpx;
margin-top: 34rpx;
@@ -120,6 +129,10 @@
color: #555;
text-align: center;
}
.vipC .vipProfitIntroC .questionC .iconListC .list .item.vip {
background-color: #FFEBDB;
color: #F97316;
}
.vipC .vipProfitIntroC .introC {
display: flex;
box-shadow: 0px 0px 9rpx 0px rgba(0, 0, 0, 0.1);
@@ -168,6 +181,9 @@
font-size: 22rpx;
color: #555;
}
.vipC .vipProfitIntroC .privilegeList.vip {
box-shadow: 0px 0px 9px 0px rgba(249, 115, 22, 0.4);
}
.vipC .vipProfitIntroC .bottomTitle {
margin-top: 80rpx;
font-size: 45rpx;

View File

@@ -1,18 +1,39 @@
"use strict";
const common_vendor = require("../../../common/vendor.js");
const request_api = require("../../../request/api.js");
const common_assets = require("../../../common/assets.js");
const _sfc_main = {
data() {
return {
navH: common_vendor.inject("navHeight"),
memberInfo: null,
//会员信息
privilegeList: ["高效选股工具", "股票基金明星榜单", "定期专属晨报、股票动态", "独家产业研报", "个股产业分析", "股票、基金基础指标", "7x24 财经直播"]
};
},
onLoad() {
this.getMemberStatus();
},
methods: {
/**
* 点击加入vip
*/
clickJoinVip() {
},
/**
* 获取会员状态
*/
getMemberStatus() {
request_api.membershipStatus().then((res) => {
if (res.code == 200) {
this.memberInfo = res.data;
} else
common_vendor.index.showToast({
title: res.message,
icon: "none"
});
}).catch((error) => {
});
}
}
};
@@ -25,20 +46,41 @@ if (!Math) {
_easycom_navBar();
}
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return {
return common_vendor.e({
a: common_vendor.p({
leftText: "会员中心"
}),
b: common_assets._imports_0,
c: common_assets._imports_1$4,
d: common_assets._imports_2$6,
e: common_assets._imports_3$4,
f: common_vendor.f($data.privilegeList, (item, index, i0) => {
c: $data.memberInfo
}, $data.memberInfo ? common_vendor.e({
d: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
e: common_assets._imports_1$5
} : {
f: common_assets._imports_2$7
}, {
g: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
h: common_vendor.t($data.memberInfo.member_expire_date)
} : {}, {
i: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
j: common_assets._imports_3$4
} : {
k: common_assets._imports_4$2
}, {
l: $data.memberInfo.is_member
}, $data.memberInfo.is_member ? {
m: common_assets._imports_5$1
} : {
n: common_assets._imports_6
}, {
o: common_vendor.f($data.privilegeList, (item, index, i0) => {
return common_vendor.e({
a: common_vendor.t(item),
b: index == 0 || index == 1 || index == 2
}, index == 0 || index == 1 || index == 2 ? {
c: common_assets._imports_4$4
c: common_assets._imports_7$2
} : {}, {
d: index == 3 || index == 4
}, index == 3 || index == 4 ? common_vendor.e({
@@ -48,15 +90,20 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
}, index == 4 ? {} : {}) : {}, {
g: index == 5 || index == 6
}, index == 5 || index == 6 ? {
h: common_assets._imports_5$4
h: common_assets._imports_8$2
} : {}, {
i: index
});
}),
g: common_assets._imports_5$4,
h: common_vendor.s("margin-top:" + $data.navH + "px;"),
i: common_vendor.o(($event) => $options.clickJoinVip())
};
p: common_assets._imports_8$2,
q: common_vendor.n("privilegeList " + ($data.memberInfo.is_member ? "vip" : "")),
r: common_vendor.s("margin-top:" + $data.navH + "px;")
}) : {}, {
s: $data.memberInfo
}, $data.memberInfo ? {
t: common_vendor.t($data.memberInfo.is_member ? "您已是年度VIP" : "立即加入年度VIP"),
v: common_vendor.o(($event) => $options.clickJoinVip())
} : {});
}
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
wx.createPage(MiniProgramPage);

View File

@@ -1 +1 @@
<view><nav-bar wx:if="{{a}}" u-i="667ff406-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view class="vipC" style="{{h}}"><view class="vipInfoC relative"><image class="bg" src="{{c}}" mode="widthFix"></image><view class="infoC absolute"><view class="title">价值前沿</view><view class="tips">您还不是会员 加入尊享N项服务</view></view></view><view class="privilegeCompareC relative"><view class="titleC flexCenter"><image class="icon" src="{{d}}" mode="widthFix"></image><view class="title">特权对比</view><image class="icon" src="{{e}}" mode="widthFix"></image></view><view class="privilegeList"><view class="header flex"><view class="privilege item">专属特权</view><view class="item free">普通免费</view><view class="item vip">VIP会员</view></view><view class="list"><view wx:for="{{f}}" wx:for-item="item" wx:key="i" class="item flex"><view class="optionItem privilege flex">{{item.a}}</view><view class="optionItem free flexCenter"><block wx:if="{{item.b}}"><image class="notContain" src="{{item.c}}" mode="widthFix"></image></block><block wx:if="{{item.d}}"><block wx:if="{{item.e}}">限制查看数量</block><block wx:if="{{item.f}}">每日查看2只</block></block><block wx:if="{{item.g}}"><image class="contain" src="{{item.h}}" mode="widthFix"></image></block></view><view class="optionItem vip flexCenter"><image class="contain" src="{{g}}" mode="widthFix"></image></view></view></view></view></view></view><view class="joinVipC fixed" bindtap="{{i}}">立即加入年度VIP</view></view>
<view><nav-bar wx:if="{{a}}" u-i="667ff406-0" bind:__l="__l" u-p="{{a}}"></nav-bar><image class="topBg absolute" src="{{b}}" mode="widthFix"></image><view wx:if="{{c}}" class="vipC" style="{{r}}"><view class="vipInfoC relative"><image wx:if="{{d}}" class="bg" src="{{e}}" mode="widthFix"></image><image wx:else class="bg" src="{{f}}" mode="widthFix"></image><view wx:if="{{g}}" class="infoC vip absolute"><view class="title">尊贵的VIP会员</view><view class="tips">会员有效期至:{{h}}</view></view><view wx:else class="infoC absolute"><view class="title">价值前沿</view><view class="tips">您还不是会员 加入尊享N项服务</view></view></view><view class="privilegeCompareC relative"><view class="titleC flexCenter"><image wx:if="{{i}}" class="icon" src="{{j}}" mode="widthFix"></image><image wx:else class="icon" src="{{k}}" mode="widthFix"></image><view class="title">特权对比</view><image wx:if="{{l}}" class="icon" src="{{m}}" mode="widthFix"></image><image wx:else class="icon" src="{{n}}" mode="widthFix"></image></view><view class="{{q}}"><view class="header flex"><view class="privilege item">专属特权</view><view class="item free">普通免费</view><view class="item vip">VIP会员</view></view><view class="list"><view wx:for="{{o}}" wx:for-item="item" wx:key="i" class="item flex"><view class="optionItem privilege flex">{{item.a}}</view><view class="optionItem free flexCenter"><block wx:if="{{item.b}}"><image class="notContain" src="{{item.c}}" mode="widthFix"></image></block><block wx:if="{{item.d}}"><block wx:if="{{item.e}}">限制查看数量</block><block wx:if="{{item.f}}">每日查看2只</block></block><block wx:if="{{item.g}}"><image class="contain" src="{{item.h}}" mode="widthFix"></image></block></view><view class="optionItem vip flexCenter"><image class="contain" src="{{p}}" mode="widthFix"></image></view></view></view></view></view></view><view wx:if="{{s}}" class="joinVipC fixed" bindtap="{{v}}">{{t}}</view></view>

View File

@@ -28,6 +28,12 @@
font-weight: 500;
color: #65758A;
}
.vipC .vipInfoC .infoC.vip .title {
color: #AB3D1A;
}
.vipC .vipInfoC .infoC.vip .tips {
color: #AB3D1A;
}
.vipC .privilegeCompareC {
background-color: white;
margin-top: -70rpx;
@@ -100,6 +106,9 @@
.vipC .privilegeCompareC .privilegeList .list .optionItem.vip {
width: 160rpx;
}
.vipC .privilegeCompareC .privilegeList.vip {
box-shadow: 0px 0px 9px 0px rgba(249, 115, 22, 0.4);
}
.joinVipC {
background-color: #F97316;
margin: 0 25rpx;