修改背景bug

This commit is contained in:
A1300399510
2023-07-12 19:07:15 +08:00
parent 773be0659b
commit 5dcf49533d
3 changed files with 245 additions and 226 deletions

View File

@@ -1,17 +1,14 @@
<template> <template>
<div class="pop-mask flexcenter"> <div class="pop-mask flexcenter" v-if="choicePopState">
<div class="pop-box"> <div class="pop-box" :style="{ width: popType == 'choice' ? '520px' : '' }">
<div v-if="popType == 'choice'"> <div v-if="popType == 'choice'">
<img class="close-icon" src="@/assets/img/edit/close-icon.svg" /> <img class="close-icon" src="@/assets/img/edit/close-icon.svg" />
<div class="pop-header flexcenter">发布房源</div> <div class="pop-header flexcenter">发布房源</div>
<div class="please-choose">请选择</div> <div class="please-choose">请选择</div>
<div class="choice-box flexflex flex1"> <div class="choice-box flexflex flex1">
<div v-for="(item, index) in identityList" :key="index"> <div v-for="(item, index) in identityList" :key="index">
<!-- return index === items.length - 1 && index % 2 !== 0; --> <div v-if="index == identityList.length - 1 && index % 2 !== 1" class="choice-long-item flexacenter"
@click="choiceItem(item.key)">
<!-- <div v-if="index != identityList.length - 1" class="choice-item" @click="choiceItem(item.key)"> -->
<div v-if="index == identityList.length - 1 && index % 2 !== 0"
class="choice-long-item flexacenter" @click="choiceItem(item.key)">
<div class="choice-long-left"> <div class="choice-long-left">
<div class="choice-name">{{ item.value }}</div> <div class="choice-name">{{ item.value }}</div>
<div class="choice-explain">{{ item.desc }}</div> <div class="choice-explain">{{ item.desc }}</div>
@@ -32,14 +29,18 @@
<div class="affirm-hint affirm-a-hint" v-if="popType == 'agent'">确认中介身份后将不能更改</div> <div class="affirm-hint affirm-a-hint" v-if="popType == 'agent'">确认中介身份后将不能更改</div>
<div class="affirm-hint affirm-b-hint" v-else>由于您上架的房源信息中包括了中介房源系统需要确认您是否属于中介身份</div> <div class="affirm-hint affirm-b-hint" v-else>由于您上架的房源信息中包括了中介房源系统需要确认您是否属于中介身份</div>
<div class="rules-box"> <div class="rules-box">
<div class="rules-item flexflex" v-for="item in 2" :key="item"> <div class="rules-item flexflex" v-for="(item, index) in showList" :key="index">
<img class="rules-icon" src="@/assets/img/edit/green-arrow.svg" alt=""> <img class="rules-icon" src="@/assets/img/edit/green-arrow.svg" alt="">
<div class="rules-text" v-html="html"></div> <div class="rules-text" v-html="item"></div>
</div> </div>
</div> </div>
<div class="footer flexcenter"> <div class="footer flexcenter">
<div class="footer-item flexcenter" @click="backChoice">重新选择</div> <!-- <div class="footer-item flexcenter" @click="backChoice">重新选择</div> -->
<div class="footer-item affirm flexcenter">确认并继续</div>
<div v-if="popType == 'agent'" class="footer-item flexcenter" @click="backChoice">重新选择</div>
<div v-else class="footer-item flexcenter" @click="confirmIntermediary(-1)">我不是中介</div>
<div class="footer-item affirm flexcenter" @click="confirmIntermediary(1)">{{ popType == 'agent' ?
'确认并继续' : '我是中介' }}</div>
</div> </div>
</div> </div>
</div> </div>
@@ -49,81 +50,49 @@
<!-- <script> --> <!-- <script> -->
<script setup> <script setup>
import { ref, reactive, onMounted, getCurrentInstance } from 'vue' import { ref, reactive, onMounted, getCurrentInstance } from 'vue'
import { useRouter } from 'vue-router'
const { proxy } = getCurrentInstance() const { proxy } = getCurrentInstance()
const router = useRouter()
let html = `中介账号只能发布“<span style="color: #000; font-weight:650;">中介房源</span>”,如您已上架个人房源或求房源信息,在你确认中介身份后,将会自动下架;` let html = `中介账号只能发布“<span style="color: #000; font-weight:650;">中介房源</span>”,如您已上架个人房源或求房源信息,在你确认中介身份后,将会自动下架;`
let choicePopState = ref(true) // 弹窗的状态
let identityList = ref([]) let identityList = ref([])
let popType = ref('choice') // choice agent: 确认是否是中介(有个人房源) affirmAgent: 确认是否是中介(有中介房源) let popType = ref('choice') // choice agent: 确认是否是中介(有个人房源) affirmAgent: 确认是否是中介(有中介房源)
let agent = ref([{ let agent = ref([`中介账号发布的房源信息,均展示在“<span style="color: #000; font-weight:650;">中介房源</span>”频道中,即不能发布“<span style="color: #000; font-weight:650;">个人房源</span>”、“<span style="color: #000; font-weight:650;">求房源</span>”;如您已上架个人房源或求房源信息,在你确认中介身份后,将会自动下架`])
content: `中介账号发布的房源信息,均展示在“<span style="color: #000; font-weight:650;">中介房源</span>”频道中,即不能发布“<span style="color: #000; font-weight:650;">个人房源</span>”、“<span style="color: #000; font-weight:650;">求房源</span>”;如您已上架个人房源或求房源信息,在你确认中介身份后,将会自动下架`,
type: 1,
}])
let affirmAgent = ref([{ let affirmAgent = ref([`个人账号只能发布“<span style="color: #000; font-weight:650;">个人房源</span>”、“<span style="color: #000; font-weight:650;">求房源</span>”,在您确认不是中介身份后,将会自动下架您的中介房源;`, `中介账号只能发布“<span style="color: #000; font-weight:650;">中介房源</span>”,如您已上架个人房源或求房源信息,在你确认中介身份后,将会自动下架;`])
content: `个人账号只能发布“<span style="color: #000; font-weight:650;">个人房源</span>”、“<span style="color: #000; font-weight:650;">求房源</span>”,在您确认不是中介身份后,将会自动下架您的中介房源;`,
type: 1,
}, {
content: `中介账号只能发布“<span style="color: #000; font-weight:650;">中介房源</span>”,如您已上架个人房源或求房源信息,在你确认中介身份后,将会自动下架;`,
type: 1,
}])
let rulesList = ref([{ let rulesList = ref([`中介账号(未认证)最多可同时上架 <span style="color: #000; font-weight:650;">3</span> 条房源信息`, `中介账号(有认证)最多可同时上架 <span style="color: #000; font-weight:650;">20</span> 条房源信息`, `中介帐号(有认证)拥有搜索、过滤“<span style="color: #000; font-weight:650;">求房源</span>”信息的功能`,])
content: `中介账号(未认证)最多可同时上架 <span style="color: #000; font-weight:650;">3</span> 条房源信息`,
type: 1,
}, {
content: `中介账号(有认证)最多可同时上架 <span style="color: #000; font-weight:650;">20</span> 条房源信息`,
type: 1,
}, {
content: `中介帐号(有认证)拥有搜索、过滤“<span style="color: #000; font-weight:650;">求房源</span>”信息的功能`,
type: 1,
}])
let showList = ref([]) //展示的规则 let showList = ref([]) //展示的规则
// let identityKey = ref(1)
let identityKey = ref(6)
let housingnum = ref(0)
let isintermediary = ref(0)
onMounted(() => { onMounted(() => {
init() init()
}) })
async function init() { async function init() {
// if (identityList.value > 0) return
proxy.$post("/tenement/pc/api/publish/checkidentity").then(res => { proxy.$post("/tenement/pc/api/publish/checkidentity").then(res => {
if (res.code != 200) return if (res.code != 200) return
let data = res.data let data = res.data
console.log("data", data); identityList.value = data.data
housingnum.value = data.housingnum || 10
// identityList.value = data.data isintermediary.value = data.isintermediary
identityList.value = [ if (data['ispopup'] == 1) overallJump()
{
"key": 3,
"value": "我是房东",
"desc": "出租自有物业"
},
{
"key": 1,
"value": "我是中介",
"desc": "持有房产代理牌照"
},
{
"key": 4,
"value": "有房招室友",
"desc": "我已租房,需要招室友"
},
{
"key": 5,
"value": "其他",
"desc": "二房东、物业租赁公司等"
}
]
// if (data['ispopup'] == 1) {
// }
}); });
} }
// 返回选择 重新选择 // 返回选择 重新选择
let backChoice = () => { let backChoice = () => {
popType.value = "choice" popType.value = "choice"
@@ -131,51 +100,35 @@ let backChoice = () => {
// 选择身份 // 选择身份
let choiceItem = (key) => { let choiceItem = (key) => {
console.log(key, "key"); identityKey.value = key
if (key == 1) {
popType.value = "agent"
showList.value = [...agent.value, ...rulesList.value]
} else {
showList.value = [...affirmAgent.value, ...rulesList.value]
if (housingnum.value == 0) overallJump()
else popType.value = "affirmAgent"
}
} }
// /tenement/pc/api/publish/checkidentity let overallJump = () => {
// export default { choicePopState.value = false
// name: 'GterFangChoosingIdentity', router.push(`/edit?intermediary=${identityKey.value}`)
}
// data() { let confirmIntermediary = (isintermediary) => {
// return { identityKey = 1
// visible: false, overallJump()
// choiceTypeState: true,
// popType: "choice", //
// identityList: [{
// desc: "出租自有物业",
// key: 3,
// value: "我是房东",
// }, {
// desc: "持有房产代理牌照",
// key: 1,
// value: "我是中介",
// }, {
// desc: "我已租房,需要招室友",
// key: 4,
// value: "有房招室友",
// }, {
// desc: "二房东、物业租赁公司等",
// key: 5,
// value: "其他",
// }, {
// desc: "发布找房源的需求",
// key: 6,
// value: "求房源",
// }]
// };
// },
// mounted() { proxy.$post("/tenement/pc/api/publish/submitidentity", {
isintermediary
// }, }).then(res => {
choicePopState.value = false
// methods: { console.log(res);
})
// },
// };
}
</script> </script>
@@ -193,7 +146,8 @@ let choiceItem = (key) => {
border-radius: 16px; border-radius: 16px;
padding-top: 48px; padding-top: 48px;
background-color: #ffffff; background-color: #ffffff;
width: 520px; // width: 520px;
width: 640px;
-moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.117647058823529); -moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.117647058823529);
-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.117647058823529); -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.117647058823529);
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.117647058823529); box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.117647058823529);
@@ -308,22 +262,21 @@ let choiceItem = (key) => {
color: #333333; color: #333333;
margin: 0 auto; margin: 0 auto;
text-align: left; text-align: left;
padding: 0 30px;
} }
.affirm-a-hint { .affirm-a-hint {
font-size: 15px;
text-align: center; text-align: center;
margin-top: 20px; margin-top: 20px;
} }
.affirm-b-hint { .affirm-b-hint {
font-size: 27px;
margin: 36px auto 0; margin: 36px auto 0;
} }
.rules-box { .rules-box {
background: rgba(246, 246, 246, 1); background: rgba(246, 246, 246, 1);
margin: 20px; margin: 30px;
border-radius: 10px; border-radius: 10px;
padding: 15px; padding: 15px;
@@ -336,13 +289,14 @@ let choiceItem = (key) => {
.rules-text { .rules-text {
padding: 20px 0; padding: 20px 0;
font-size: 15px;
} }
} }
.rules-icon { .rules-icon {
width: 20px; width: 15px;
height: 20px; height: 15px;
margin-top: 23px; margin-top: 25px;
margin-right: 12px; margin-right: 12px;
} }
} }
@@ -353,7 +307,7 @@ let choiceItem = (key) => {
border-top: 1px solid #ebebeb; border-top: 1px solid #ebebeb;
.footer-item { .footer-item {
width: 180px; width: 200px;
height: 50px; height: 50px;
border-radius: 40px; border-radius: 40px;
font-size: 20px; font-size: 20px;
@@ -370,7 +324,6 @@ let choiceItem = (key) => {
border: none; border: none;
background-color: rgba(98, 177, 255, 1); background-color: rgba(98, 177, 255, 1);
color: #ffffff; color: #ffffff;
font-size: 22px;
font-weight: 650; font-weight: 650;
} }

View File

@@ -5,8 +5,8 @@ import router from '../router/index'
// let protocol = window.location.protocol; //协议 // let protocol = window.location.protocol; //协议
// let host = window.location.host; //主机 // let host = window.location.host; //主机
// axios.defaults.baseURL = protocol + "//" + host; // axios.defaults.baseURL = protocol + "//" + host;
// axios.defaults.baseURL = 'https://app.gter.net' axios.defaults.baseURL = 'https://app.gter.net'
axios.defaults.baseURL = '/index' // axios.defaults.baseURL = '/index'
// axios.defaults.emulateJSON = true // axios.defaults.emulateJSON = true
// axios.defaults.withCredentials = true // axios.defaults.withCredentials = true
@@ -18,7 +18,8 @@ axios.interceptors.request.use( //响应拦截
// config.headers.withCredentials = true // config.headers.withCredentials = true
// config.headers['Content-Type'] = 'multipart/form-data' // config.headers['Content-Type'] = 'multipart/form-data'
if (process.env.NODE_ENV == "development") config['headers']['authorization'] = "x2mmnl9grt51bpplj2k6ioiuummzhnw3" // if (process.env.NODE_ENV == "development") config['headers']['authorization'] = "x2mmnl9grt51bpplj2k6ioiuummzhnw3"
if (process.env.NODE_ENV == "development") config['headers']['authorization'] = "0h870ovk2xckoqfsh8a3t3sg4sg5z7eg"
return config; return config;
}, },
error => { error => {
@@ -42,7 +43,7 @@ axios.interceptors.response.use(
// 清除本地token和清空vuex中token对象 // 清除本地token和清空vuex中token对象
// 跳转登录页面 // 跳转登录页面
case 403: case 403:
router.push('/login') // router.push('/login')
break break
// 404请求不存在 // 404请求不存在
case 404: case 404:

View File

@@ -1,7 +1,7 @@
<template> <template>
<header-nav :isNoTabList="true"></header-nav> <header-nav :isNoTabList="true"></header-nav>
<map-component v-if="mapComponentState" :info="info" @choosingLocation="choosingLocation" /> <map-component v-if="mapComponentState" :info="info" @choosingLocation="choosingLocation" />
<choosing-identity v-if="true"></choosing-identity> <choosing-identity v-if="false"></choosing-identity>
<div class="content-box flexflex"> <div class="content-box flexflex">
<!-- 左边的信息盒子 --> <!-- 左边的信息盒子 -->
<user-box :user="user" :type="type" :time="{ timestamp, updatetime, offshelftime }" :status="status" <user-box :user="user" :type="type" :time="{ timestamp, updatetime, offshelftime }" :status="status"
@@ -53,8 +53,8 @@
ref="rentalduration" @click="setValue('rentalduration', 0)">随时</div> ref="rentalduration" @click="setValue('rentalduration', 0)">随时</div>
<div class="modeTwo-item flexacenter" :class="{ 'pitch': info['rentalduration'] }" <div class="modeTwo-item flexacenter" :class="{ 'pitch': info['rentalduration'] }"
ref="rentalduration"> ref="rentalduration">
<el-select class="flex1 modeTwo-select" v-model="info.rentalduration" placeholder="选择"> <el-select class="flex1 modeTwo-select" v-model="info.rentalduration" placeholder="选择租期">
<el-option :key="0" label="选择" :value="0" v-show="false"></el-option> <el-option :key="0" label="选择租期" :value="0" v-show="false"></el-option>
<el-option v-for="item in item.choices" :key="item.key" :label="item.value" <el-option v-for="item in item.choices" :key="item.key" :label="item.value"
:value="item.key"></el-option> :value="item.key"></el-option>
</el-select> </el-select>
@@ -68,7 +68,8 @@
<div class="modeTwo-item flexcenter" :class="{ 'pitch': info['leasetime'] == 0 }" ref="leasetime" <div class="modeTwo-item flexcenter" :class="{ 'pitch': info['leasetime'] == 0 }" ref="leasetime"
@click="setValue('leasetime', 0)">随时</div> @click="setValue('leasetime', 0)">随时</div>
<div class="modeTwo-item flexacenter" :class="{ 'pitch': info['leasetime'] }" ref="leasetime"> <div class="modeTwo-item flexacenter" :class="{ 'pitch': info['leasetime'] }" ref="leasetime">
<el-date-picker v-model="info.leasetime" type="date" placeholder="选择日期"></el-date-picker> <el-date-picker prefix-icon="" clear-icon="" v-model="info.leasetime" type="date"
placeholder="选择日期"></el-date-picker>
<img class="arrows-icon" src="@/assets/img/edit/arrows.svg" /> <img class="arrows-icon" src="@/assets/img/edit/arrows.svg" />
<img class="arrows-icon-pitch" src="@/assets/img/edit/blue-arrow.svg" /> <img class="arrows-icon-pitch" src="@/assets/img/edit/blue-arrow.svg" />
</div> </div>
@@ -261,12 +262,12 @@
<!-- 所在区域 --> <!-- 所在区域 -->
<div class="form-option modeOne flexacenter" v-if="intermediary != 6 && item.field == 'location'"> <div class="form-option modeOne flexacenter" v-if="intermediary != 6 && item.field == 'location'">
<el-popover placement="bottom" :width="640" :show-arrow="false" trigger="click"> <el-popover v-model:visible="areaPopState" placement="bottom" :width="640" :show-arrow="false"
trigger="click" popper-style="padding:0; border-radius:16px;" :disabled="verified == 1">
<template #reference> <template #reference>
<div ref="location" class="modeOne-item flexacenter" <div ref="location" class="modeOne-item flexacenter"
:class="{ 'pitch': info['location'], 'disabled': verified == 1 }" :class="{ 'pitch': info['location'], 'disabled': verified == 1 }"
style="width: 640px;border-color: rgba(170, 170, 170, 1);" style="width: 640px;border-color: rgba(170, 170, 170, 1);">
@click="verified == 1 ? '' : areaPopState = true">
<div class="modeOne-text flexacenter" v-if="info['location']"> <div class="modeOne-text flexacenter" v-if="info['location']">
{{ locationData[Math.floor(info.location)].name }} {{ locationData[Math.floor(info.location)].name }}
<img class="form-arrows" src="@/assets/img/edit/thin-arrow.svg" /> <img class="form-arrows" src="@/assets/img/edit/thin-arrow.svg" />
@@ -352,22 +353,26 @@
<div class="form-title flexacenter">所属小区 <div class="form-title flexacenter">所属小区
</div> </div>
<div class="form-option modeOne flexacenter"> <div class="form-option modeOne flexacenter">
<div v-if="info['communityid'] !== 0" ref="communityname" class="modeOne-item flexacenter" <el-popover v-if="info['communityid'] !== 0" v-model:visible="residentialAreaState"
placement="bottom" :width="640" :show-arrow="false" trigger="click"
popper-style="padding:0; border-radius:16px;" :disabled="verified == 1">
<template #reference>
<div ref="communityname" class="modeOne-item flexacenter"
:class="{ 'pitch': info['communityname'], 'disabled': verified == 1 }" :class="{ 'pitch': info['communityname'], 'disabled': verified == 1 }"
style="width: 640px;border-color: rgb(170, 170, 170);" @click="handleResidentialArea()"> style="width: 640px;border-color: rgb(170, 170, 170);" @click="handleResidentialArea()">
<div class="modeOne-text flexacenter" v-if="info['communityname']">{{ info.communityname }} <div class="modeOne-text flexacenter" v-if="info['communityname']">{{ info.communityname
}}
</div> </div>
<div class="modeOne-text flexacenter" style="color: #AAAAAA;" v-else>请选择</div> <div class="modeOne-text flexacenter" style="color: #AAAAAA;" v-else>请选择</div>
<img class="arrows-icon" src="@/assets/img/edit/arrows.svg" /> <img class="arrows-icon" src="@/assets/img/edit/arrows.svg" />
<img class="arrows-icon arrows-disabled-icon" src="@/assets/img/edit/disabled-icon.svg" /> <img class="arrows-icon arrows-disabled-icon"
src="@/assets/img/edit/disabled-icon.svg" />
<img class="arrows-icon-pitch" src="@/assets/img/edit/blue-arrow.svg" /> <img class="arrows-icon-pitch" src="@/assets/img/edit/blue-arrow.svg" />
</div> </div>
<div v-else ref="communityname" class="modeOne-item flexacenter"
:class="{ 'pitch': info['communityname'], 'disabled': verified == 1 }" </template>
style="width: 640px;border-color: rgb(170, 170, 170);">
<input class="communityname-input" v-model="info.communityname" placeholder="请填写" /> <div class="residential-area">
</div>
<div class="residential-area" v-if="residentialAreaState">
<div class="residential-item flexacenter" v-for="item in communityList" :key="item.id" <div class="residential-item flexacenter" v-for="item in communityList" :key="item.id"
@click="clickResidentialArea(item.id, item.name)"> @click="clickResidentialArea(item.id, item.name)">
<div class="residential-dot"></div> <div class="residential-dot"></div>
@@ -375,6 +380,14 @@
:class="{ 'pitchpitch': item.id == info['communityid'] }">{{ item.name }}</div> :class="{ 'pitchpitch': item.id == info['communityid'] }">{{ item.name }}</div>
</div> </div>
</div> </div>
</el-popover>
<div v-else ref="communityname" class="modeOne-item flexacenter"
:class="{ 'pitch': info['communityname'], 'disabled': verified == 1 }"
style="width: 640px;border-color: rgb(170, 170, 170);">
<input class="communityname-input" v-model="info.communityname" placeholder="请填写" />
</div>
</div> </div>
</div> </div>
@@ -463,9 +476,10 @@
<template v-if="item['field'] == 'introduction'"> <template v-if="item['field'] == 'introduction'">
<div class="introduce-hint">{{ item.placeholder }}</div> <div class="introduce-hint">{{ item.placeholder }}</div>
<div class="introduce-input" ref="introduction"> <div class="introduce-input" ref="introduction">
<el-input type="textarea" placeholder="请输入" v-model="info.introduction" resize="none" <el-input :autosize="true" type="textarea" placeholder="请输入" v-model="info.introduction"
show-word-limit maxlength="500"> resize="none" maxlength="500">
</el-input> </el-input>
<div class="residue">{{ info.introduction ? 500 - info.introduction.length : 500 }}</div>
</div> </div>
</template> </template>
</div> </div>
@@ -507,8 +521,9 @@
<template v-if="item['field'] == 'subject'"> <template v-if="item['field'] == 'subject'">
<div class="subject-input" ref="subject"> <div class="subject-input" ref="subject">
<el-input type="textarea" :placeholder="item.placeholder" v-model="info.subject" resize="none" <el-input type="textarea" :placeholder="item.placeholder" v-model="info.subject" resize="none"
maxlength="80" show-word-limit> maxlength="80">
</el-input> </el-input>
<div class="residue">{{ info.subject ? 80 - info.subject.length : 80 }}</div>
</div> </div>
</template> </template>
</div> </div>
@@ -530,10 +545,11 @@
<!-- 目标区域 - 弹窗 --> <!-- 目标区域 - 弹窗 -->
<div class="flexcenter pop-mask" @click="targetAreaState = false" v-if="targetAreaState"> <div class="flexcenter pop-mask" @click="targetAreaState = false" v-if="targetAreaState">
<div class="pop area-pop-box radius16 target-area"> <div class="pop area-pop-box radius16 target-area" @click.stop="">
<div class="area-pop-header">目标区域</div> <div class="area-pop-header">目标区域</div>
<div class="area-box flexflex"> <div class="area-box flexflex">
<div class="target-area-left flex1"> <div class="target-area-left flex1">
<div class="target-area-item" v-for="(item, index) in locationData" :key="index"> <div class="target-area-item" v-for="(item, index) in locationData" :key="index">
<div class="target-area-head">{{ item.name }}</div> <div class="target-area-head">{{ item.name }}</div>
<div class="box flexflex"> <div class="box flexflex">
@@ -570,7 +586,9 @@
<div class="flexcenter pop-mask" @click="succeedPopState = 0" v-if="succeedPopState == 1"> <div class="flexcenter pop-mask" @click="succeedPopState = 0" v-if="succeedPopState == 1">
<div class="pop succeed-box shadow radius16 flexflex" <div class="pop succeed-box shadow radius16 flexflex"
:style="{ backgroundImage: `url(${require('@/assets/img/edit/succeed-pop-bj2.svg')})` }" @click.stop=""> :style="{ backgroundImage: `url(${require('@/assets/img/edit/succeed-pop-bj2.svg')})` }" @click.stop="">
<a class="pop-close" :href="skipUrl" style="position: static;">
<img class="pop-close" src="@/assets/img/edit/close-icon.svg" /> <img class="pop-close" src="@/assets/img/edit/close-icon.svg" />
</a>
<div class="succeed-title flexacenter" style="margin-bottom: 95px;"> <div class="succeed-title flexacenter" style="margin-bottom: 95px;">
<img class="succeed-icon" src="@/assets/img/edit/successfully-ticked.png" />发布成功 <img class="succeed-icon" src="@/assets/img/edit/successfully-ticked.png" />发布成功
</div> </div>
@@ -594,7 +612,10 @@
</div> </div>
<div class="flexcenter pop-mask" @click="succeedPopState = 0" v-if="succeedPopState == 2"> <div class="flexcenter pop-mask" @click="succeedPopState = 0" v-if="succeedPopState == 2">
<div class="pop succeed-box shadow radius16 flexflex" style="padding-bottom: 99px;" @click.stop=""> <div class="pop succeed-box shadow radius16 flexflex" style="padding-bottom: 99px;" @click.stop="">
<a class="pop-close" :href="skipUrl" style="position: static;">
<img class="pop-close" src="@/assets/img/edit/close-icon.svg" /> <img class="pop-close" src="@/assets/img/edit/close-icon.svg" />
</a>
<div class="succeed-title flexacenter"> <div class="succeed-title flexacenter">
<img class="succeed-icon" src="@/assets/img/edit/successfully-ticked.png" />发布成功 <img class="succeed-icon" src="@/assets/img/edit/successfully-ticked.png" />发布成功
</div> </div>
@@ -611,9 +632,9 @@
<div class="flexcenter pop-mask" @click="succeedPopState = 0" v-if="succeedPopState == 3"> <div class="flexcenter pop-mask" @click="succeedPopState = 0" v-if="succeedPopState == 3">
<div class="pop succeed-box shadow radius16 flexflex" style="padding-bottom: 58px;" <div class="pop succeed-box shadow radius16 flexflex" style="padding-bottom: 58px;"
:style="{ backgroundImage: `url(${require('@/assets/img/edit/succeed-pop-bj1.svg')})` }" @click.stop=""> :style="{ backgroundImage: `url(${require('@/assets/img/edit/succeed-pop-bj1.svg')})` }" @click.stop="">
<a class="pop-close" :href="skipUrl" style="position: static;">
<img class="pop-close" src="@/assets/img/edit/close-icon.svg" /> <img class="pop-close" src="@/assets/img/edit/close-icon.svg" />
</a>
<div class="succeed-title flexacenter"> <div class="succeed-title flexacenter">
<img class="succeed-icon" src="@/assets/img/edit/successfully-ticked.png" />发布成功 <img class="succeed-icon" src="@/assets/img/edit/successfully-ticked.png" />发布成功
</div> </div>
@@ -657,7 +678,7 @@ export default {
return { return {
value: '', value: '',
user: {}, user: {},
userIntermediary: false, // 用户是否是 认证中介,需要全局获取 userIntermediary: 0, // 用户是否是 认证中介,需要全局获取
allowpublishednum: 0, allowpublishednum: 0,
fieldinfo: {}, // 字段配置 fieldinfo: {}, // 字段配置
fieldinfoBasic: [], fieldinfoBasic: [],
@@ -798,7 +819,6 @@ export default {
this.loading = this.$loading({ this.loading = this.$loading({
lock: true, lock: true,
text: 'Loading', text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)' background: 'rgba(0, 0, 0, 0.7)'
}); });
@@ -854,7 +874,7 @@ export default {
if (info['type']) this.typeValue = info['type'] >>> 0 if (info['type']) this.typeValue = info['type'] >>> 0
if (!info['leasetime']) info['leasetime'] = null // if (!info['leasetime']) info['leasetime'] = null
let intermediary = data.intermediary let intermediary = data.intermediary
@@ -994,7 +1014,6 @@ export default {
this.loading = this.$loading({ this.loading = this.$loading({
lock: true, lock: true,
text: 'Loading', text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)' background: 'rgba(0, 0, 0, 0.7)'
}); });
@@ -1142,7 +1161,6 @@ export default {
this.loading = this.$loading({ this.loading = this.$loading({
lock: true, lock: true,
text: 'Loading', text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)' background: 'rgba(0, 0, 0, 0.7)'
}); });
@@ -1324,11 +1342,12 @@ export default {
name: "以上都不是" name: "以上都不是"
}) })
this.communityList = data this.communityList = data
this.residentialAreaState = true // this.residentialAreaState = true
this.isResidentialAreaUpdate = false this.isResidentialAreaUpdate = false
}) })
} else this.residentialAreaState = true }
// else this.residentialAreaState = true
}, },
@@ -1388,6 +1407,7 @@ export default {
.arrows-icon-pitch { .arrows-icon-pitch {
width: 14px; width: 14px;
height: 14px; height: 14px;
transform: rotate(90deg);
} }
.arrows-icon-pitch, .arrows-icon-pitch,
@@ -1538,12 +1558,17 @@ export default {
width: 100%; width: 100%;
height: 100%; height: 100%;
.el-input__prefix {
display: none;
}
.el-input__wrapper, .el-input__wrapper,
.el-input__inner { .el-input__inner {
height: 100%; height: 100%;
border: none; border: none;
font-size: 16px; font-size: 16px;
color: #555; // color: #555;
color: #62B1FF;
padding-left: 0; padding-left: 0;
/* 修改 FireFox 内核浏览器的输入框提示文本样式 */ /* 修改 FireFox 内核浏览器的输入框提示文本样式 */
@@ -1557,6 +1582,11 @@ export default {
color: #555; color: #555;
opacity: 1; opacity: 1;
} }
&::placeholder {
color: #555;
opacity: 1;
}
} }
} }
@@ -1874,70 +1904,6 @@ export default {
font-size: 16px; font-size: 16px;
} }
.residential-area {
position: absolute;
top: 58px;
width: 640px;
height: 500px;
background-color: rgba(255, 255, 255, 1);
box-sizing: border-box;
border: 1px solid rgba(235, 235, 235, 1);
border-radius: 16px;
-moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.0784313725490196);
-webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.0784313725490196);
box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.0784313725490196);
z-index: 101;
padding: 10px 30px;
overflow: auto;
/*滚动条样式*/
&::-webkit-scrollbar {
width: 8px;
}
&::-webkit-scrollbar-thumb {
border-radius: 10px;
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
background: rgba(242, 242, 242, 1);
}
&::-webkit-scrollbar-track {
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
border-radius: 0;
background: transparent;
}
.residential-item {
height: 60px;
cursor: pointer;
.residential-dot {
width: 6px;
height: 6px;
background: #62b1ff;
border-radius: 50%;
margin-right: 47px;
}
.residential-text {
height: 100%;
color: #555;
font-size: 16px;
&.pitchpitch {
color: #62b1ff;
}
}
&:not(:last-of-type) {
border-bottom: 1px solid rgba(242, 242, 242, 1);
}
}
}
} }
.form-arrows { .form-arrows {
@@ -1967,13 +1933,13 @@ export default {
&.pitch { &.pitch {
.media-cover-bnt { .media-cover-bnt {
background: rgba(80, 227, 194, 1); background: rgba(98, 177, 255, 1);
border: none; border: none;
color: #fff; color: #fff;
} }
.media-item-box { .media-item-box {
border: 1px solid rgba(80, 227, 194, 1); border: 1px solid rgba(98, 177, 255, 1);
} }
} }
@@ -2020,7 +1986,7 @@ export default {
.media-img { .media-img {
width: 100px; width: 100px;
position: relative; position: relative;
filter: brightness(0.5); // filter: brightness(0.5);
} }
.media-cover-bnt { .media-cover-bnt {
@@ -2056,13 +2022,23 @@ export default {
.introduce-input, .introduce-input,
.subject-input { .subject-input {
width: 640px; width: 640px;
height: 200px;
border-radius: 10px; border-radius: 10px;
border: 1px solid rgba(170, 170, 170, 1); border: 1px solid rgba(170, 170, 170, 1);
outline: none; outline: none;
font-size: 16px; font-size: 16px;
resize: none; resize: none;
overflow: hidden; overflow: hidden;
position: relative;
.residue {
position: absolute;
right: 8px;
bottom: 0;
color: #aaa;
font-size: 14px;
line-height: 30px;
height: 34px;
}
.el-textarea__inner { .el-textarea__inner {
height: 100%; height: 100%;
@@ -2071,12 +2047,15 @@ export default {
} }
.introduce-input { .introduce-input {
// height: 200px;
.el-textarea { .el-textarea {
height: 100%; height: 100%;
/deep/ .el-textarea__inner { /deep/ .el-textarea__inner {
box-shadow: none; box-shadow: none;
height: 100%; height: 100%;
min-height: 200px !important;
} }
} }
} }
@@ -2555,10 +2534,32 @@ export default {
&.target-area { &.target-area {
width: 900px; width: 900px;
.area-box {
position: relative;
&::after {
content: "";
position: absolute;
left: 0;
bottom: 40px;
width: 560px;
height: 1px;
background-color: #ebebeb;
}
}
.target-area-left { .target-area-left {
overflow: auto; overflow: auto;
margin-top: 25px; margin-top: 25px;
margin-bottom: 40px;
margin-right: 20px; margin-right: 20px;
position: relative;
.target-area-bottom {
height: 40px;
width: 100%;
background-color: red;
}
/*滚动条样式*/ /*滚动条样式*/
&::-webkit-scrollbar { &::-webkit-scrollbar {
@@ -2580,7 +2581,6 @@ export default {
.target-area-item { .target-area-item {
margin-bottom: 20px; margin-bottom: 20px;
.target-area-head { .target-area-head {
font-size: 18px; font-size: 18px;
color: #000; color: #000;
@@ -2651,6 +2651,7 @@ export default {
font-weight: 400; font-weight: 400;
color: #7F7F7F; color: #7F7F7F;
font-size: 14px; font-size: 14px;
font-family: 'PingFangSC-Regular', 'PingFang SC', sans-serif;
.target-area-num { .target-area-num {
font-weight: 650; font-weight: 650;
@@ -2710,4 +2711,68 @@ export default {
} }
} }
.residential-area {
// position: absolute;
// top: 58px;
width: 640px;
height: 500px;
background-color: rgba(255, 255, 255, 1);
box-sizing: border-box;
border: 1px solid rgba(235, 235, 235, 1);
border-radius: 16px;
-moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.0784313725490196);
-webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.0784313725490196);
box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.0784313725490196);
z-index: 101;
padding: 10px 30px;
overflow: auto;
/*滚动条样式*/
&::-webkit-scrollbar {
width: 8px;
}
&::-webkit-scrollbar-thumb {
border-radius: 10px;
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
background: rgba(242, 242, 242, 1);
}
&::-webkit-scrollbar-track {
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0);
border-radius: 0;
background: transparent;
}
.residential-item {
height: 60px;
cursor: pointer;
.residential-dot {
width: 6px;
height: 6px;
background: #62b1ff;
border-radius: 50%;
margin-right: 47px;
}
.residential-text {
height: 100%;
color: #555;
font-size: 16px;
&.pitchpitch {
color: #62b1ff;
}
}
&:not(:last-of-type) {
border-bottom: 1px solid rgba(242, 242, 242, 1);
}
}
}
</style> </style>