1
This commit is contained in:
parent
64ec8aa50e
commit
a87bc36956
@ -97,6 +97,12 @@
|
||||
"style": {
|
||||
"navigationBarTitleText": "订阅"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/mine/card/my-card",
|
||||
"style": {
|
||||
"navigationBarTitleText": "我的名片"
|
||||
}
|
||||
}
|
||||
],
|
||||
"subPackages": [{
|
||||
|
75
pages/mine/card/my-card.vue
Normal file
75
pages/mine/card/my-card.vue
Normal file
@ -0,0 +1,75 @@
|
||||
<template>
|
||||
<view class="my-card-box">
|
||||
<view class="card-dom">
|
||||
<view class="card-title">
|
||||
<image src="@/static/platform/xiaohongshu.png" mode="aspectFit"></image>
|
||||
<text>小红书博主</text>
|
||||
<view class="edit-text">
|
||||
<image style="margin-right: 10rpx;" src="@/static/platform/xiaohongshu.png" mode="aspectFit">
|
||||
</image>
|
||||
编辑
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.my-card-box {
|
||||
border-top: 1rpx solid #F4F4F4;
|
||||
padding: 30rpx;
|
||||
width: 100%;
|
||||
color: #363636;
|
||||
font-size: 30rpx;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
position: relative;
|
||||
|
||||
.card-dom {
|
||||
width: 100%;
|
||||
background-color: white;
|
||||
position: relative;
|
||||
z-index: 10;
|
||||
font-size: 26rpx;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
.card-title {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
image {
|
||||
width: 80rpx;
|
||||
height: 80rpx;
|
||||
}
|
||||
|
||||
text {
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.edit-text {
|
||||
width: 100rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
@ -71,7 +71,7 @@
|
||||
<image src="@/static/mine/dizhi.png" mode="aspectFit"></image>
|
||||
<view>地址</view>
|
||||
</view>
|
||||
<view class="menu-item">
|
||||
<view class="menu-item" @click="goMyCard()">
|
||||
<image src="@/static/mine/mingpian.png" mode="aspectFit"></image>
|
||||
<view>名片</view>
|
||||
</view>
|
||||
@ -152,6 +152,12 @@
|
||||
handleToInfo() {
|
||||
this.$tab.navigateTo('/pages/mine/info/index')
|
||||
},
|
||||
/**
|
||||
*
|
||||
*/
|
||||
goMyCard() {
|
||||
this.$tab.navigateTo('/pages/mine/card/my-card')
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
415
pages/notice/subscribe-set.vue
Normal file
415
pages/notice/subscribe-set.vue
Normal file
@ -0,0 +1,415 @@
|
||||
<template>
|
||||
<view class="dingyue-box">
|
||||
<view class="line-box">
|
||||
<view class="dl-title">领域</view>
|
||||
<view class="dl-content">
|
||||
<view class="line-row" v-for="(item,index) in bloggerTypeList">
|
||||
<view v-for="(t,i) in item" :class="t.code==dataObj.bloggerTypeCode?'line-item click':'line-item'"
|
||||
@click="changeChooseValue(t,'bloggerTypeCode')">
|
||||
{{t.title}}
|
||||
</view>
|
||||
<view style="clear: both;"></view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="line-box">
|
||||
<view class="dl-title">平台</view>
|
||||
<view class="dl-content">
|
||||
<view class="line-row" v-for="(item,index) in platformList">
|
||||
<view v-for="(t,i) in item" :class="t.code==dataObj.platformCode?'line-item click':'line-item'"
|
||||
@click="changeChooseValue(t,'platformCode')">
|
||||
{{t.title}}
|
||||
</view>
|
||||
<view style="clear: both;"></view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="line-box">
|
||||
<view class="dl-title">通告类型</view>
|
||||
<view class="dl-content">
|
||||
<view class="line-row" v-for="(item,index) in noticeTypeList">
|
||||
<view v-for="(t,i) in item" :class="t.code==dataObj.noticeTypeCode?'line-item click':'line-item'"
|
||||
@click="changeChooseValue(t,'noticeTypeCode')">
|
||||
{{t.title}}
|
||||
</view>
|
||||
<view style="clear: both;"></view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="line-box">
|
||||
<view class="dl-title">关键词<text>包含以下关键词的通告将被收入订阅</text></view>
|
||||
<view class="dl-content">
|
||||
<view class="line-row">
|
||||
<view class="keywords-item" v-for="(item,index) in dataObj.keywordsList">
|
||||
{{checkKeywords(item)}} <uni-icons class="icon-text" type="closeempty" size="13"
|
||||
@click="delKeywords(item)"></uni-icons>
|
||||
</view>
|
||||
<view class="keywords-item" @click="addNewKeys()">
|
||||
<uni-icons type="plusempty" size="13"></uni-icons>
|
||||
</view>
|
||||
<view style="clear: both;"></view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="line-box">
|
||||
<view class="dl-title">粉丝</view>
|
||||
<view class="dl-content">
|
||||
<view class="line-row">
|
||||
<uni-data-select v-model="dataObj.fansLimit" :localdata="range" @change="change($event,'fans')"
|
||||
:clear="false"></uni-data-select>
|
||||
</view>
|
||||
<view class="line-row" v-show="dataObj.fansLimit">
|
||||
<view class="dl-drawer-item">
|
||||
<input class="uni-input" v-model="dataObj.fansDown" type="digit" placeholder="最低" />
|
||||
<view>—</view>
|
||||
<input class="uni-input" v-model="dataObj.fansUp" type="digit" placeholder="最高" />
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="line-box">
|
||||
<view class="dl-title">奖励</view>
|
||||
<view class="dl-content">
|
||||
<view class="line-row" v-for="(item,index) in rewardTypeList">
|
||||
<view v-for="(t,i) in item" :class="t.code==dataObj.rewardTypeCode?'line-item click':'line-item'"
|
||||
@click="changeChooseValue(t,'rewardTypeCode')">
|
||||
{{t.title}}
|
||||
</view>
|
||||
<view style="clear: both;"></view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="line-box">
|
||||
<view class="dl-title">稿费要求</view>
|
||||
<view class="dl-content">
|
||||
<view class="line-row">
|
||||
<uni-data-select v-model="dataObj.feeLimit" :localdata="range" @change="change($event,'fee')"
|
||||
:clear="false"></uni-data-select>
|
||||
</view>
|
||||
<view class="line-row" v-show="dataObj.feeLimit">
|
||||
<view class="dl-drawer-item">
|
||||
<input class="uni-input" v-model="dataObj.feeDown" type="digit" placeholder="最低" />
|
||||
<view>—</view>
|
||||
<input class="uni-input" v-model="dataObj.feeUp" type="digit" placeholder="最高" />
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="line-box">
|
||||
<view class="dl-title">推送</view>
|
||||
<view class="dl-content">
|
||||
<view class="line-row">
|
||||
<view class="seting-view"><text>符合订阅设置的新通告</text>
|
||||
<switch v-if="dataObj.newNotice" style="float: right;display: flex;" checked color="#FC1F3E"
|
||||
@change="switchChange($event,'newNotice')" />
|
||||
<switch v-else style="float: right;display: flex;" color="#FC1F3E"
|
||||
@change="switchChange($event,'newNotice')" />
|
||||
</view>
|
||||
<view class="seting-view"><text>订阅通告主新通告</text>
|
||||
<switch v-if="dataObj.forkNotice" style="float: right;display: flex;" checked color="#FC1F3E"
|
||||
@change="switchChange($event,'forkNotice')" />
|
||||
<switch v-else style="float: right;display: flex;" color="#FC1F3E"
|
||||
@change="switchChange($event,'forkNotice')" />
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 输入框示例 -->
|
||||
<uni-popup ref="inputDialog" type="dialog" :key="keywordsValue">
|
||||
<uni-popup-dialog ref="inputClose" mode="input" title="新增关键词" placeholder="请输入关键词"
|
||||
@confirm="dialogInputConfirm"></uni-popup-dialog>
|
||||
</uni-popup>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
getCatgByCode
|
||||
} from '@/api/system/config.js'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
//一行显示几个
|
||||
showNum: 4,
|
||||
//平台列表
|
||||
platformList: [],
|
||||
//博主分类
|
||||
bloggerTypeList: [],
|
||||
//通告类型--这个只能固定死
|
||||
noticeTypeList: [
|
||||
[{
|
||||
code: "",
|
||||
title: "不限"
|
||||
}, {
|
||||
code: "money",
|
||||
title: "高奖励"
|
||||
}, {
|
||||
code: "gift",
|
||||
title: "品牌置换"
|
||||
}]
|
||||
],
|
||||
//奖励--这个只能固定死
|
||||
rewardTypeList: [
|
||||
[{
|
||||
code: "",
|
||||
title: "不限"
|
||||
}, {
|
||||
code: "money",
|
||||
title: "稿费"
|
||||
}, {
|
||||
code: "gift",
|
||||
title: "赠品"
|
||||
}]
|
||||
],
|
||||
//订阅设置对象---后端存储
|
||||
dataObj: {
|
||||
bloggerTypeCode: "",
|
||||
platformCode: "",
|
||||
noticeTypeCode: "",
|
||||
//关键词集和
|
||||
keywordsList: ['关键词1', '关键词2'],
|
||||
rewardTypeCode: "",
|
||||
//粉丝是否限制
|
||||
fansLimit: false,
|
||||
fansUp: null,
|
||||
fansDown: null,
|
||||
feeLimit: false,
|
||||
feeDown: null,
|
||||
feeUp: null,
|
||||
newNotice: true,
|
||||
forkNotice: false
|
||||
},
|
||||
//是否限制下拉框可选值
|
||||
range: [{
|
||||
value: false,
|
||||
text: "不限制"
|
||||
},
|
||||
{
|
||||
value: true,
|
||||
text: "限制"
|
||||
}
|
||||
],
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
keywords(value) {
|
||||
|
||||
}
|
||||
},
|
||||
onLoad() {
|
||||
this.initData("dl_platform", "platformList")
|
||||
this.initData("dl_blogger_type", "bloggerTypeList")
|
||||
},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
switchChange(e, code) {
|
||||
this.dataObj[code] = e.detail.value
|
||||
},
|
||||
//改变选中值
|
||||
change(e, type) {
|
||||
// if('fans'==type){
|
||||
// //粉丝
|
||||
|
||||
// }else if('fee'==type){
|
||||
// //稿费
|
||||
|
||||
// }
|
||||
// console.log("e:", e);
|
||||
// console.log("type", type);
|
||||
},
|
||||
dialogInputConfirm(val) {
|
||||
this.dataObj.keywordsList.push(val)
|
||||
// 关闭窗口后,恢复默认内容
|
||||
this.$refs.inputDialog.close()
|
||||
},
|
||||
/**
|
||||
* 计算关键词的长度
|
||||
* @param {Object} value
|
||||
*/
|
||||
checkKeywords(value) {
|
||||
if (value.length > 5) {
|
||||
return value.substring(0, 5) + "..."
|
||||
} else {
|
||||
return value
|
||||
}
|
||||
},
|
||||
/**
|
||||
* 删除某个关键词
|
||||
* @param {Object} value
|
||||
*/
|
||||
delKeywords(value) {
|
||||
this.dataObj.keywordsList = this.dataObj.keywordsList.filter(item => item !== value);
|
||||
},
|
||||
/**
|
||||
* 初始化数据
|
||||
* @param {Object} code
|
||||
* @param {Object} dataObj
|
||||
*/
|
||||
initData(code, dataObj) {
|
||||
let that = this
|
||||
getCatgByCode({
|
||||
code: code
|
||||
}).then(res => {
|
||||
if (res.code == 200) {
|
||||
let thisArray = [{
|
||||
id: '0',
|
||||
title: "不限",
|
||||
code: ""
|
||||
}]
|
||||
thisArray = thisArray.concat(res.data)
|
||||
for (let i = 0; i < thisArray.length; i += this.showNum) {
|
||||
this[dataObj].push(thisArray.slice(i, i + this.showNum));
|
||||
}
|
||||
console.log(this.bloggerTypeList, this.platformList)
|
||||
}
|
||||
}).catch((e) => {
|
||||
uni.showToast({
|
||||
icon: 'error',
|
||||
duration: 2000,
|
||||
title: e
|
||||
});
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 改变选中值
|
||||
* @param {Object} item
|
||||
* @param {Object} key
|
||||
*/
|
||||
changeChooseValue(item, key) {
|
||||
this.dataObj[key] = item.code
|
||||
},
|
||||
/**
|
||||
* 添加关键词
|
||||
*/
|
||||
addNewKeys() {
|
||||
this.$refs.inputDialog.open()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.dingyue-box {
|
||||
border-top: 1rpx solid #F4F4F4;
|
||||
width: 100%;
|
||||
color: #363636;
|
||||
background-color: white;
|
||||
font-size: 30rpx;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
position: relative;
|
||||
|
||||
.line-box {
|
||||
width: 100%;
|
||||
padding: 30rpx 30rpx 20rpx 30rpx;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: self-start;
|
||||
justify-content: inherit;
|
||||
|
||||
.dl-title {
|
||||
font-weight: bold;
|
||||
font-size: 38rpx;
|
||||
|
||||
text {
|
||||
margin-left: 20rpx;
|
||||
font-weight: normal !important;
|
||||
font-size: 22rpx;
|
||||
color: #929292;
|
||||
}
|
||||
}
|
||||
|
||||
.dl-content {
|
||||
width: 100%;
|
||||
font-size: 24rpx;
|
||||
padding: 15rpx;
|
||||
border-bottom: 1rpx solid #F7F7F7;
|
||||
|
||||
.line-row {
|
||||
width: 100%;
|
||||
|
||||
.line-item {
|
||||
width: calc(25% - 16rpx);
|
||||
border: 1rpx solid #E9E9E9;
|
||||
margin: 8rpx 8rpx;
|
||||
float: left;
|
||||
border-radius: 25rpx;
|
||||
color: #363636;
|
||||
text-align: center;
|
||||
padding: 8rpx 15rpx;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.keywords-item {
|
||||
border: 1rpx solid #E9E9E9;
|
||||
margin: 8rpx 8rpx;
|
||||
float: left;
|
||||
border-radius: 25rpx;
|
||||
color: #363636;
|
||||
text-align: center;
|
||||
padding: 8rpx 20rpx;
|
||||
|
||||
.icon-text {
|
||||
margin-left: 8rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.dl-drawer-item {
|
||||
display: flex;
|
||||
color: #929292;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border-bottom: 1px solid #F4F4F4;
|
||||
margin-bottom: 20rpx;
|
||||
|
||||
input {
|
||||
width: 100%;
|
||||
border: 1rpx solid #F4F4F4;
|
||||
border-radius: 15rpx;
|
||||
color: #929292;
|
||||
padding: 5rpx 10rpx;
|
||||
margin: 10rpx 0;
|
||||
text-align: center;
|
||||
height: 60rpx;
|
||||
line-height: 60rpx;
|
||||
}
|
||||
|
||||
.dl-reward-type {
|
||||
flex: 1;
|
||||
text-align: center;
|
||||
border: 1rpx solid #F4F4F4;
|
||||
color: #929292;
|
||||
border-radius: 15rpx;
|
||||
padding: 10rpx 25rpx;
|
||||
margin: 10rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.seting-view {
|
||||
padding: 20rpx 0;
|
||||
font-size: 30rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
|
||||
text {
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.click {
|
||||
color: #FC1F3E !important;
|
||||
border: 1rpx solid #FC1F3E !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
BIN
static/set.png
Normal file
BIN
static/set.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.6 KiB |
Loading…
Reference in New Issue
Block a user