This commit is contained in:
Vinjor 2025-04-03 17:00:21 +08:00
commit e5b80c2b4f
3 changed files with 243 additions and 221 deletions

View File

@ -1,6 +1,16 @@
import upload from '@/utils/upload'
import request from '@/utils/request'
//------------------博主、通告主-----------------------
//查询博主详情
export function bloggerDetail(userId) {
return request({
url: '/member/member/bloggerDetail/' + userId,
method: 'get'
})
}
//------------------名片-----------------------
// 查询当前登录用户的名片
export function getUserBusiCard() {

View File

@ -137,9 +137,7 @@
import {
getJSONData
} from '@/utils/auth.js'
import {
bloggerDetail
} from '@/api/member/member.js'
import {bloggerDetail} from '@/api/business/member.js'
export default {
components: {
tabBarVue,
@ -152,7 +150,7 @@
}
},
onLoad() {
nowUserType = getUserType()
this.nowUserType = getUserType()
},
mounted() {
if (null != getJSONData(constant.userInfo)) {

View File

@ -1,126 +1,129 @@
<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="dataObj.bloggerTypeCode.indexOf(t.code)>-1?'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="dataObj.platformCode.indexOf(t.code)>-1?'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="dataObj.noticeTypeCode.indexOf(t.code)>-1?'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="最高" />
<navigation-bar-vue style="width: 100%;" title="报名" background-color="#FFFFFF"
title-color="#3D3D3D"></navigation-bar-vue>
<view class="select-box-dom">
<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="dataObj.bloggerTypeCode.indexOf(t.code)>-1?'line-item click':'line-item'"
@click="changeChooseValue(t,'bloggerTypeCode')">
{{t.title}}
</view>
<view style="clear: both;"></view>
</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="dataObj.rewardTypeCode.indexOf(t.code)>-1?'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 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="dataObj.platformCode.indexOf(t.code)>-1?'line-item click':'line-item'"
@click="changeChooseValue(t,'platformCode')">
{{t.title}}
</view>
<view style="clear: both;"></view>
</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 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="dataObj.noticeTypeCode.indexOf(t.code)>-1?'line-item click':'line-item'"
@click="changeChooseValue(t,'noticeTypeCode')">
{{t.title}}
</view>
<view style="clear: both;"></view>
</view>
</view>
</view>
</view>
<view class="line-box" style="align-items: center;">
<view class="submit-box" @click="saveSet()">保存</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="dataObj.rewardTypeCode.indexOf(t.code)>-1?'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>
<view class="line-box" style="align-items: center;">
<view class="submit-box" @click="saveSet()">保存</view>
</view>
</view>
<!-- 输入框示例 -->
<uni-popup ref="inputDialog" type="dialog" :key="keywordsValue">
@ -131,6 +134,7 @@
</template>
<script>
import navigationBarVue from '@/components/navigation/navigationBar.vue';
import {
getCatgByCode
} from '@/api/system/config.js'
@ -139,6 +143,9 @@
saveSubscribe
} from '@/api/business/subscribeSet.js'
export default {
components: {
navigationBarVue
},
data() {
return {
//
@ -343,6 +350,7 @@
<style lang="scss">
.dingyue-box {
padding-top: calc(90rpx + var(--status-bar-height));
border-top: 1rpx solid #F4F4F4;
width: 100%;
color: #363636;
@ -355,122 +363,128 @@
justify-content: center;
position: relative;
.line-box {
.select-box-dom {
width: 100%;
padding: 30rpx 30rpx 20rpx 30rpx;
display: flex;
flex-direction: column;
align-items: self-start;
justify-content: inherit;
height: calc(100vh - var(--status-bar-height) - var(--window-bottom) - 90rpx);
overflow-y: scroll;
.submit-box {
padding: 15rpx 0;
background-color: #FC1F3E;
color: white;
width: 70%;
margin-bottom: 30rpx;
border-radius: 10rpx;
text-align: center;
}
.dl-title {
font-weight: bold;
font-size: 38rpx;
text {
margin-left: 20rpx;
font-weight: normal !important;
font-size: 22rpx;
color: #929292;
}
}
.dl-content {
.line-box {
width: 100%;
font-size: 24rpx;
padding: 15rpx;
border-bottom: 1rpx solid #F7F7F7;
padding: 30rpx 30rpx 20rpx 30rpx;
display: flex;
flex-direction: column;
align-items: self-start;
justify-content: inherit;
.line-row {
width: 100%;
.submit-box {
padding: 15rpx 0;
background-color: #FC1F3E;
color: white;
width: 70%;
margin-bottom: 30rpx;
border-radius: 10rpx;
text-align: center;
}
.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;
}
.dl-title {
font-weight: bold;
font-size: 38rpx;
.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;
text {
margin-left: 20rpx;
font-weight: normal !important;
font-size: 22rpx;
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;
.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>
</style>