Commit 59b3f3bc authored by rencs's avatar rencs

10.14 营地验证bug

parent 01262b7b
<template> <template>
<!-- 营地:创建、编辑 --> <!-- 营地:创建、编辑 -->
<div> <div>
<h4>{{title}}</h4> <h4>{{ title }}</h4>
<el-form :model="form" :rules="rules" ref="form" label-width="90px"> <el-form :model="form" :rules="rules" ref="form" label-width="90px">
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="营地名称" prop="name"> <el-form-item label="营地名称" prop="name">
<el-input v-model="form.name" placeholder="请输入营地名称" @blur="checkName()"></el-input> <el-input
<span v-if="isExist" style="color:red;">标签名已存在</span> v-model="form.name"
placeholder="请输入营地名称"
@blur="checkName()"
></el-input>
<span v-if="isExist" style="color: red">标签名已存在</span>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="营地地址" prop="addressStr"> <el-form-item label="营地地址" prop="addressStr">
<el-input placeholder="请输入营地地址" readonly v-model="form.addressStr" class="input-with-select"> <el-input
<el-button slot="append" icon="el-icon-edit" @click="selectDestination"></el-button> placeholder="请输入营地地址"
readonly
v-model="form.addressStr"
class="input-with-select"
>
<el-button
slot="append"
icon="el-icon-edit"
@click="selectDestination"
></el-button>
</el-input> </el-input>
<!-- <el-input v-model="form.addressStr" readonly placeholder="请输入营地地址" :on-icon-click="selectDestination"--> <!-- <el-input v-model="form.addressStr" readonly placeholder="请输入营地地址" :on-icon-click="selectDestination"-->
<!-- icon="edit"></el-input>--> <!-- icon="edit"></el-input>-->
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="客服电话" prop="servicePhone"> <el-form-item label="客服电话" prop="servicePhone">
<el-input v-model="form.servicePhone" placeholder="请输入客服电话"></el-input> <el-input
v-model="form.servicePhone"
placeholder="请输入客服电话"
></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="联系人" prop="concat"> <el-form-item label="联系人" prop="concat">
<el-input v-model="form.concat" placeholder="请输入联系人"></el-input> <el-input
v-model="form.concat"
placeholder="请输入联系人"
></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="联系电话" prop="phone"> <el-form-item label="联系电话" prop="phone">
<el-input v-model="form.phone" placeholder="请输入联系电话"></el-input> <el-input
v-model="form.phone"
placeholder="请输入联系电话"
></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-form-item label="营地类型" prop="approvers"> <el-form-item label="营地类型" prop="approvers">
<span v-for="item in form.campsiteTagListVos" <span
:key="item.id" style="border: 1px solid #ccc; padding: 5px 10px;border-radius: 5px;margin-right: 10px;">{{item.name}}</span> v-for="item in form.campsiteTagListVos"
<el-button size="small" class="el-button el-button--primary" type="button" icon="edit" :key="item.id"
@click="editLable(form.campsiteTagListVos)">编辑 style="
border: 1px solid #ccc;
padding: 5px 10px;
border-radius: 5px;
margin-right: 10px;
"
>{{ item.name }}</span
>
<el-button
size="small"
class="el-button el-button--primary"
type="button"
icon="edit"
@click="editLable(form.campsiteTagListVos)"
>编辑
</el-button> </el-button>
</el-form-item> </el-form-item>
<el-row> <el-row>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="热度值"> <el-form-item label="热度值">
<el-input v-model="form.hot" placeholder="请输入热度值" type="number" min="0"></el-input> <el-input
v-model="form.hot"
placeholder="请输入热度值"
type="number"
min="0"
></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<!--BASE_API + --> <!--BASE_API + -->
<el-form-item label="封面图" :style="{display:'block'}" prop="logo"> <el-form-item label="封面图" :style="{ display: 'block' }" prop="logo">
<el-upload <el-upload
class="upload-demo" class="upload-demo"
:headers="getHeaderWithToken" :headers="getHeaderWithToken"
:action="BASE_API+'/api/universal/file/app/unauth/admin/upload'" :action="BASE_API + '/api/universal/file/app/unauth/admin/upload'"
:show-file-list="false" :show-file-list="false"
:on-success="handleAvatarSuccess" :on-success="handleAvatarSuccess"
list-type="picture"> list-type="picture"
<div slot="tip" class="el-upload__tip"><span style="color: red;">建议尺寸:485*485px</span></div> >
<img v-if="$utils.isString(form.logo) && !$utils.isEmpty(form.logo)" :src="form.logo" <div slot="tip" class="el-upload__tip">
style="width:300px;max-height:300px;"> <span style="color: red">建议尺寸:485*485px</span>
<i v-else class="el-icon-plus avatar-uploader-icon" </div>
style="lineHeight:100px;width:300px;height: 100px;border: 1px dashed #ccc;"></i> <img
v-if="$utils.isString(form.logo) && !$utils.isEmpty(form.logo)"
:src="form.logo"
style="width: 300px; max-height: 300px"
/>
<i
v-else
class="el-icon-plus avatar-uploader-icon"
style="
lineheight: 100px;
width: 300px;
height: 100px;
border: 1px dashed #ccc;
"
></i>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="alt"> <el-form-item label="alt">
<el-input v-model="form.alt" type="text" placeholder="请输入替代文本"></el-input> <el-input
v-model="form.alt"
type="text"
placeholder="请输入替代文本"
></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="img-title"> <el-form-item label="img-title">
<el-input v-model="form.imgTitle" type="text" placeholder="请输入图片title"></el-input> <el-input
v-model="form.imgTitle"
type="text"
placeholder="请输入图片title"
></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="img-keyword"> <el-form-item label="img-keyword">
<el-input v-model="form.imgKeyword" type="text" placeholder="请输入图片关键字"></el-input> <el-input
v-model="form.imgKeyword"
type="text"
placeholder="请输入图片关键字"
></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="img-desc"> <el-form-item label="img-desc">
<el-input v-model="form.imgDesc" type="text" placeholder="请输入图片描述"></el-input> <el-input
v-model="form.imgDesc"
type="text"
placeholder="请输入图片描述"
></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-form-item label="海报背景" :style="{display:'block'}"> <el-form-item label="海报背景" :style="{ display: 'block' }">
<el-upload <el-upload
class="upload-demo" class="upload-demo"
:headers="getHeaderWithToken" :headers="getHeaderWithToken"
:action="BASE_API+'/api/universal/file/app/unauth/admin/upload'" :action="BASE_API + '/api/universal/file/app/unauth/admin/upload'"
:show-file-list="false" :show-file-list="false"
:on-success="handlePosterSuccess" :on-success="handlePosterSuccess"
:on-progress="uploadPosterProcess" :on-progress="uploadPosterProcess"
list-type="picture"> list-type="picture"
<div slot="tip" class="el-upload__tip"><span style="color: red;">建议尺寸:485*485px</span></div> >
<el-progress v-show="imgPosterFlag == true" type="circle" :percentage="percent_poster" <div slot="tip" class="el-upload__tip">
style="margin-top: 20px"></el-progress> <span style="color: red">建议尺寸:485*485px</span>
<img v-if="$utils.isString(form.posterBackground) && !$utils.isEmpty(form.posterBackground)&& !imgPosterFlag" </div>
:src="form.posterBackground" style="width:300px;max-height:300px;"> <el-progress
<i v-else-if="!imgPosterFlag" class="el-icon-plus avatar-uploader-icon" v-show="imgPosterFlag == true"
style="lineHeight:100px;width:300px;height: 100px;border: 1px dashed #ccc;"></i> type="circle"
:percentage="percent_poster"
style="margin-top: 20px"
></el-progress>
<img
v-if="
$utils.isString(form.posterBackground) &&
!$utils.isEmpty(form.posterBackground) &&
!imgPosterFlag
"
:src="form.posterBackground"
style="width: 300px; max-height: 300px"
/>
<i
v-else-if="!imgPosterFlag"
class="el-icon-plus avatar-uploader-icon"
style="
lineheight: 100px;
width: 300px;
height: 100px;
border: 1px dashed #ccc;
"
></i>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
<el-form-item label="轮播图" :style="{display:'block'}" prop="carouse"> <el-form-item label="轮播图" :style="{ display: 'block' }" prop="carouse">
<el-upload <el-upload
class="upload-demo" class="upload-demo"
:headers="getHeaderWithToken" :headers="getHeaderWithToken"
:action="BASE_API+'/api/universal/file/app/unauth/admin/upload'" :action="BASE_API + '/api/universal/file/app/unauth/admin/upload'"
:on-remove="handleRemove" :on-remove="handleRemove"
:file-list="fileList2" :file-list="fileList2"
:on-success="handleBannerSuccess" :on-success="handleBannerSuccess"
list-type="picture"> list-type="picture"
<div slot="tip" class="el-upload__tip">最多上传5张 <span style="color: red;">建议尺寸:1080*644px</span></div> >
<el-button v-if="fileList2.length<5" size="small" type="primary">点击上传</el-button> <div slot="tip" class="el-upload__tip">
最多上传5张 <span style="color: red">建议尺寸:1080*644px</span>
</div>
<el-button v-if="fileList2.length < 5" size="small" type="primary"
>点击上传</el-button
>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
<el-tabs v-model="activeName2" type="card" @tab-click="handleClick"> <el-tabs v-model="activeName2" type="card" @tab-click="handleClick">
<el-tab-pane label="营地详情" name="first"> <el-tab-pane label="营地详情" name="first">
<!--<Editor v-if="activeName2=='first'" @input="handelContentIncrease" :value="form.content" :myQuillEditor="'myQuillEditorContent'" :activeName2="activeName2"></Editor>--> <!--<Editor v-if="activeName2=='first'" @input="handelContentIncrease" :value="form.content" :myQuillEditor="'myQuillEditorContent'" :activeName2="activeName2"></Editor>-->
<div class="editor-container" v-if="activeName2=='first'"> <div class="editor-container" v-if="activeName2 == 'first'">
<UE :editorId="activeName2" :defaultMsg="form.content" :config=config ref="ue" <UE
@ready="editorReadyEvent"></UE> :editorId="activeName2"
:defaultMsg="form.content"
:config="config"
ref="ue"
@ready="editorReadyEvent"
></UE>
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="配套&收费" name="second"> <el-tab-pane label="配套&收费" name="second">
<!--<Editor v-if="activeName2=='second'" @input="handelIntroduceIncrease" :value="form.configure" :myQuillEditor="'myQuillEditorIntroduce'" :activeName2="activeName2"></Editor>--> <!--<Editor v-if="activeName2=='second'" @input="handelIntroduceIncrease" :value="form.configure" :myQuillEditor="'myQuillEditorIntroduce'" :activeName2="activeName2"></Editor>-->
<div class="editor-container" v-if="activeName2=='second'"> <div class="editor-container" v-if="activeName2 == 'second'">
<UE :editorId="activeName2" :defaultMsg="form.configure" :config=config ref="ue" <UE
@ready="editorReadyEvent"></UE> :editorId="activeName2"
:defaultMsg="form.configure"
:config="config"
ref="ue"
@ready="editorReadyEvent"
></UE>
</div> </div>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
...@@ -152,84 +260,94 @@ ...@@ -152,84 +260,94 @@
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button @click="cancel">取 消</el-button> <el-button @click="cancel">取 消</el-button>
<el-button type="primary" v-if="title=='创建' && !isCreate && campsiteshop_btn_update" @click="create('form')">确 定 <el-button
type="primary"
v-if="title == '创建' && !isCreate && campsiteshop_btn_update"
@click="create('form')"
>确 定
</el-button> </el-button>
<el-button type="primary" v-if="title=='编辑' && !isCreate && campsiteshop_btn_update" @click="update('form')">确 定 <el-button
type="primary"
v-if="title == '编辑' && !isCreate && campsiteshop_btn_update"
@click="update('form')"
>确 定
</el-button> </el-button>
</div> </div>
<!--编辑营地地址--> <!--编辑营地地址-->
<campsiteModal v-if="showCampsiteVisible && campsiteshop_btn_update" :obj="campsiteObj" <campsiteModal
v-on:campsiteEvent="campsiteEvent"></campsiteModal> v-if="showCampsiteVisible && campsiteshop_btn_update"
:obj="campsiteObj"
v-on:campsiteEvent="campsiteEvent"
></campsiteModal>
<!--编辑营地标签--> <!--编辑营地标签-->
<campsiteLabelModal v-if="editLableVisible && campsiteshop_btn_update" :allLabelList="allLabelList" <campsiteLabelModal
:checkList="checkList" v-on:tourLabelEvent="tourLabelEvent"></campsiteLabelModal> v-if="editLableVisible && campsiteshop_btn_update"
:allLabelList="allLabelList"
:checkList="checkList"
v-on:tourLabelEvent="tourLabelEvent"
></campsiteLabelModal>
</div> </div>
</template> </template>
<style> <style>
textarea { textarea {
display: none; display: none;
} }
.info { .info {
border-radius: 10px; border-radius: 10px;
line-height: 20px; line-height: 20px;
padding: 10px; padding: 10px;
margin: 10px; margin: 10px;
background-color: #ffffff; background-color: #ffffff;
} }
.el-upload-list { .el-upload-list {
display: flex; display: flex;
width: 100px; width: 100px;
} }
.el-upload-list li { .el-upload-list li {
margin-left: 10px; margin-left: 10px;
} }
</style> </style>
<script> <script>
// import Editor from "../../modal/editorTool";//富文本 // import Editor from "../../modal/editorTool";//富文本
import UE from '../../modal/Ueditor';//百度ue富文本 import UE from "../../modal/Ueditor"; //百度ue富文本
import campsiteLabelModal from "../../tourManage/modal/tourLabelModal";//标签 import campsiteLabelModal from "../../tourManage/modal/tourLabelModal"; //标签
import campsiteModal from "./campsiteModal";//营地地址 import campsiteModal from "./campsiteModal"; //营地地址
import { import {
getOneCampsiteShop, getOneCampsiteShop,
campsiteAllTagList, campsiteAllTagList,
editCampsiteShop, editCampsiteShop,
addCampsiteShop, addCampsiteShop,
existCampsiteShop existCampsiteShop,
} from 'api/campsiteManage'; } from "api/campsiteManage";
import { import { getSonRegionByCodes, getRegionByCodes } from "api/base_info/region/";
getSonRegionByCodes,
getRegionByCodes,
} from 'api/base_info/region/';
import rsCode from '../../../utils/rsCode'; import rsCode from "../../../utils/rsCode";
import { import { getToken } from "../../../utils/auth";
getToken import { mapGetters } from "vuex";
} from '../../../utils/auth';
import {mapGetters} from 'vuex';
export default { export default {
props: ["oneRow", "title", "campsiteshop_btn_update"], props: ["oneRow", "title", "campsiteshop_btn_update"],
name: 'upkeepDialog', name: "upkeepDialog",
components: { components: {
UE, UE,
campsiteModal, campsiteModal,
campsiteLabelModal campsiteLabelModal,
}, },
data() { data() {
var checkPhone = (rule, value, callback) => { var checkPhone = (rule, value, callback) => {
if (!value) { if (!value) {
return callback(new Error('手机号不能为空')); return callback(new Error("手机号不能为空"));
} else { } else {
const reg = /^[1](([3][0-9])|([4][5,7,9])|([5][0-9])|([6][6])|([7][1,2,3,5,6,7,8])|([8][0-9])|([9][1,8,9]))[0-9]{8}$/ const reg = /^[1](([3][0-9])|([4][5,7,9])|([5][0-9])|([6][6])|([7][1,2,3,5,6,7,8])|([8][0-9])|([9][1,8,9]))[0-9]{8}$/;
console.log(reg.test(value)); console.log(reg.test(value));
if (reg.test(value)) { if (reg.test(value)) {
callback(); callback();
} else { } else {
return callback(new Error('请输入正确的手机号')); return callback(new Error("请输入正确的手机号"));
} }
} }
}; };
...@@ -237,84 +355,85 @@ ...@@ -237,84 +355,85 @@
imgPosterFlag: false, imgPosterFlag: false,
percent_poster: 0, percent_poster: 0,
BASE_API: process.env.BASE_API, BASE_API: process.env.BASE_API,
defaultMsg: '这里是UE测试', defaultMsg: "这里是UE测试",
config: { config: {
initialFrameWidth: null, initialFrameWidth: null,
initialFrameHeight: 350 initialFrameHeight: 350,
}, },
isExist: false,//名称是否已存在 isExist: false, //名称是否已存在
campsiteObj: {},//营地地址 campsiteObj: {}, //营地地址
departureList: [],//出发地列表 departureList: [], //出发地列表
departureObj: {name: ""},//出发地 departureObj: { name: "" }, //出发地
pathway: [],//途径地 pathway: [], //途径地
isCreate: false,//是否点击了创建-确定 isCreate: false, //是否点击了创建-确定
fileList2: [], fileList2: [],
activeName2: '',//行程亮点 activeName2: "", //行程亮点
form: { form: {
alt: '', addressStr: undefined,
alt: "",
imgTitle: undefined, imgTitle: undefined,
imgKeyword: undefined, imgKeyword: undefined,
imgDesc: undefined, imgDesc: undefined,
id: undefined, id: undefined,
name: undefined,//营地名称 name: undefined, //营地名称
hot: 0,//营地热度 hot: 0, //营地热度
servicePhone: "",//客服电话 servicePhone: "", //客服电话
phone: "",//联系电话 phone: "", //联系电话
province: undefined,//省份 province: undefined, //省份
provinceName: undefined,//省份名称 provinceName: undefined, //省份名称
city: undefined,//市编号 city: undefined, //市编号
cityName: undefined,//市名称 cityName: undefined, //市名称
address: undefined,//详细地址 address: undefined, //详细地址
latitude: undefined, latitude: undefined,
longitude: undefined, longitude: undefined,
content: '',//营地详情 content: "", //营地详情
concat: "",//联系人 concat: "", //联系人
logo: undefined,//封面图 logo: undefined, //封面图
configure: '',//配套&收费 configure: "", //配套&收费
campsiteTagListVos: [],//营地类型 campsiteTagListVos: [], //营地类型
carouse: [],//banner轮播 carouse: [], //banner轮播
posterBackground: '',//海报背景 posterBackground: "", //海报背景
}, },
showCampsiteVisible: false,//编辑营地地址 showCampsiteVisible: false, //编辑营地地址
rules: { rules: {
name: { name: {
type: 'string', type: "string",
required: true, required: true,
message: '请输入营地名称', message: "请输入营地名称",
trigger: 'blur' trigger: "blur",
}, },
servicePhone: { servicePhone: {
type: 'string', type: "string",
required: true, required: true,
message: '请输入客服电话', message: "请输入客服电话",
trigger: 'blur' trigger: "blur",
}, },
phone: { phone: {
//validator: checkPhone, //validator: checkPhone,
type:'string', type: "string",
trigger: 'blur', trigger: "blur",
message: '请输入联系电话', message: "请输入联系电话",
required: true required: true,
}, },
concat: { concat: {
type: 'string', type: "string",
required: true, required: true,
message: '请输入联系人', message: "请输入联系人",
trigger: 'blur' trigger: "blur",
}, },
addressStr: { addressStr: {
type: 'string',
required: true, required: true,
message: '请输入营地地址', message: "请输入营地地址",
} trigger: "blur",
}, },
checkList: [],//已选中的标签 },
checkList: [], //已选中的标签
allCompanies: {}, allCompanies: {},
allCompaniesArr: [], allCompaniesArr: [],
oneTourDialogVisible: false, oneTourDialogVisible: false,
editLableVisible: false,//营地标签 editLableVisible: false, //营地标签
allLabelList: [],//全部营地标签 allLabelList: [], //全部营地标签
} };
}, },
created() { created() {
this.getAllLabelList(); this.getAllLabelList();
...@@ -338,7 +457,7 @@ ...@@ -338,7 +457,7 @@
}, },
computed: { computed: {
getHeaderWithToken() { getHeaderWithToken() {
return {Authorization: getToken()}; return { Authorization: getToken() };
}, },
}, },
methods: { methods: {
...@@ -346,25 +465,27 @@ ...@@ -346,25 +465,27 @@
* 判断标签名是否已存在 * 判断标签名是否已存在
* */ * */
checkName() { checkName() {
this.form.name = (this.form.name).trim(); this.form.name = this.form.name.trim();
if (!this.form.name) { if (!this.form.name) {
return; return;
} }
let params = { let params = {
name: this.form.name name: this.form.name,
}; };
if (this.title == "编辑") { if (this.title == "编辑") {
params.id = this.form.id; params.id = this.form.id;
} }
existCampsiteShop(params).then(response => { existCampsiteShop(params).then((response) => {
if (response.status === 200) { if (response.status === 200) {
this.isExist = response.data; this.isExist = response.data;
} else { } else {
this.$notify({ this.$notify({
title: '失败', title: "失败",
message: rsCode.msg[response.code] ? rsCode.msg[response.code] : '操作失败!', message: rsCode.msg[response.code]
type: 'error', ? rsCode.msg[response.code]
duration: 2000 : "操作失败!",
type: "error",
duration: 2000,
}); });
} }
}); });
...@@ -384,13 +505,13 @@ ...@@ -384,13 +505,13 @@
* */ * */
create(formName) { create(formName) {
const set = this.$refs; const set = this.$refs;
set[formName].validate(valid => { set[formName].validate((valid) => {
if (valid) { if (valid) {
let carouse = [];//营地轮播图 let carouse = []; //营地轮播图
this.form.carouse.map(function (item) { this.form.carouse.map(function (item) {
let c = { let c = {
id: item.id, id: item.id,
imgUrl: item.imgUrl imgUrl: item.imgUrl,
}; };
carouse.push(c); carouse.push(c);
}); });
...@@ -402,28 +523,28 @@ ...@@ -402,28 +523,28 @@
campsiteTagDTOS.push(item.id); campsiteTagDTOS.push(item.id);
}); });
let params = { let params = {
name: this.form.name,//营地名称 name: this.form.name, //营地名称
logo: this.form.logo,//封面图 logo: this.form.logo, //封面图
content: this.form.content,//营地详情 content: this.form.content, //营地详情
configure: this.form.configure,//配套&收费 configure: this.form.configure, //配套&收费
hot: this.form.hot,//营地热度 hot: this.form.hot, //营地热度
campsiteTagDTOS: campsiteTagDTOS,//营地类别 campsiteTagDTOS: campsiteTagDTOS, //营地类别
carouselDTOS: carouse,//轮播图 carouselDTOS: carouse, //轮播图
concat: this.form.concat,//联系人 concat: this.form.concat, //联系人
servicePhone: this.form.servicePhone,//客服电话 servicePhone: this.form.servicePhone, //客服电话
phone: this.form.phone,//联系电话 phone: this.form.phone, //联系电话
province: this.campsiteObj.province,//省份 province: this.campsiteObj.province, //省份
provinceName: this.campsiteObj.provinceName,//省份名称 provinceName: this.campsiteObj.provinceName, //省份名称
city: this.campsiteObj.city,//市编号 city: this.campsiteObj.city, //市编号
cityName: this.campsiteObj.cityName,//市名称 cityName: this.campsiteObj.cityName, //市名称
address: this.campsiteObj.address,//详细地址 address: this.campsiteObj.address, //详细地址
latitude: this.campsiteObj.latitude, latitude: this.campsiteObj.latitude,
longitude: this.campsiteObj.longitude, longitude: this.campsiteObj.longitude,
posterBackground: this.form.posterBackground,//海报背景 posterBackground: this.form.posterBackground, //海报背景
alt: this.form.alt, alt: this.form.alt,
imgTitle: this.form.imgTitle, imgTitle: this.form.imgTitle,
imgKeyword: this.form.imgKeyword, imgKeyword: this.form.imgKeyword,
imgDesc: this.form.imgDesc imgDesc: this.form.imgDesc,
}; };
console.log(params); console.log(params);
this.isExistCampsiteShop("create", params); this.isExistCampsiteShop("create", params);
...@@ -440,18 +561,20 @@ ...@@ -440,18 +561,20 @@
return; return;
} }
let params = { let params = {
name: this.form.name name: this.form.name,
}; };
if (type == 'update') {//编辑 if (type == "update") {
//编辑
params.id = this.form.id; params.id = this.form.id;
} }
existCampsiteShop(params).then(response => { existCampsiteShop(params).then((response) => {
if (response.status === 200) { if (response.status === 200) {
this.isExist = response.data; this.isExist = response.data;
if (response.data) { if (response.data) {
this.isCreate = false; this.isCreate = false;
} }
if (!response.data && type == "update") {//编辑 if (!response.data && type == "update") {
//编辑
this.toUpdate(datas); this.toUpdate(datas);
} }
if (!response.data && type == "create") { if (!response.data && type == "create") {
...@@ -460,10 +583,12 @@ ...@@ -460,10 +583,12 @@
} }
} else { } else {
this.$notify({ this.$notify({
title: '失败', title: "失败",
message: rsCode.msg[response.code] ? rsCode.msg[response.code] : '操作失败!', message: rsCode.msg[response.code]
type: 'error', ? rsCode.msg[response.code]
duration: 2000 : "操作失败!",
type: "error",
duration: 2000,
}); });
} }
}); });
...@@ -473,14 +598,14 @@ ...@@ -473,14 +598,14 @@
* */ * */
update(formName) { update(formName) {
const set = this.$refs; const set = this.$refs;
set[formName].validate(valid => { set[formName].validate((valid) => {
if (valid) { if (valid) {
this.isCreate = true; this.isCreate = true;
let carouse = [];//营地轮播图 let carouse = []; //营地轮播图
this.form.carouse.map(function (item) { this.form.carouse.map(function (item) {
let c = { let c = {
id: item.id, id: item.id,
imgUrl: item.imgUrl imgUrl: item.imgUrl,
}; };
carouse.push(c); carouse.push(c);
}); });
...@@ -493,28 +618,28 @@ ...@@ -493,28 +618,28 @@
}); });
let params = { let params = {
id: this.form.id, id: this.form.id,
name: this.form.name,//营地名称 name: this.form.name, //营地名称
logo: this.form.logo,//封面图 logo: this.form.logo, //封面图
content: this.form.content,//营地详情 content: this.form.content, //营地详情
configure: this.form.configure,//配套&收费 configure: this.form.configure, //配套&收费
hot: this.form.hot,//营地热度 hot: this.form.hot, //营地热度
campsiteTagDTOS: campsiteTagDTOS,//营地类别 campsiteTagDTOS: campsiteTagDTOS, //营地类别
carouselDTOS: carouse,//轮播图 carouselDTOS: carouse, //轮播图
concat: this.form.concat,//联系人 concat: this.form.concat, //联系人
servicePhone: this.form.servicePhone,//客服电话 servicePhone: this.form.servicePhone, //客服电话
phone: this.form.phone,//联系电话 phone: this.form.phone, //联系电话
province: this.campsiteObj.province,//省份 province: this.campsiteObj.province, //省份
provinceName: this.campsiteObj.provinceName,//省份名称 provinceName: this.campsiteObj.provinceName, //省份名称
city: this.campsiteObj.city,//市编号 city: this.campsiteObj.city, //市编号
cityName: this.campsiteObj.cityName,//市名称 cityName: this.campsiteObj.cityName, //市名称
address: this.campsiteObj.address,//详细地址 address: this.campsiteObj.address, //详细地址
latitude: this.campsiteObj.latitude, latitude: this.campsiteObj.latitude,
longitude: this.campsiteObj.longitude, longitude: this.campsiteObj.longitude,
posterBackground: this.form.posterBackground,//海报背景 posterBackground: this.form.posterBackground, //海报背景
alt: this.form.alt, alt: this.form.alt,
imgTitle: this.form.imgTitle, imgTitle: this.form.imgTitle,
imgKeyword: this.form.imgKeyword, imgKeyword: this.form.imgKeyword,
imgDesc: this.form.imgDesc imgDesc: this.form.imgDesc,
}; };
console.log(params); console.log(params);
this.isExistCampsiteShop("update", params); this.isExistCampsiteShop("update", params);
...@@ -527,21 +652,23 @@ ...@@ -527,21 +652,23 @@
* 更新 * 更新
* */ * */
toUpdate(params) { toUpdate(params) {
editCampsiteShop(params).then(response => { editCampsiteShop(params).then((response) => {
if (response.status === 200) { if (response.status === 200) {
this.$notify({ this.$notify({
title: '成功', title: "成功",
message: '编辑成功', message: "编辑成功",
type: 'success', type: "success",
duration: 2000 duration: 2000,
}); });
this.$emit("oneCampsiteDialogEvent", true); this.$emit("oneCampsiteDialogEvent", true);
} else { } else {
this.$notify({ this.$notify({
title: '编辑失败', title: "编辑失败",
message: rsCode.msg[response.code] ? rsCode.msg[response.code] : '操作失败!', message: rsCode.msg[response.code]
type: 'error', ? rsCode.msg[response.code]
duration: 2000 : "操作失败!",
type: "error",
duration: 2000,
}); });
} }
}); });
...@@ -550,21 +677,23 @@ ...@@ -550,21 +677,23 @@
* 创建 * 创建
* */ * */
toCreate(params) { toCreate(params) {
editCampsiteShop(params).then(response => { editCampsiteShop(params).then((response) => {
if (response.status === 200) { if (response.status === 200) {
this.$notify({ this.$notify({
title: '成功', title: "成功",
message: '创建成功', message: "创建成功",
type: 'success', type: "success",
duration: 2000 duration: 2000,
}); });
this.$emit("oneCampsiteDialogEvent", true); this.$emit("oneCampsiteDialogEvent", true);
} else { } else {
this.$notify({ this.$notify({
title: '创建失败', title: "创建失败",
message: rsCode.msg[response.code] ? rsCode.msg[response.code] : '操作失败!', message: rsCode.msg[response.code]
type: 'error', ? rsCode.msg[response.code]
duration: 2000 : "操作失败!",
type: "error",
duration: 2000,
}); });
} }
}); });
...@@ -573,7 +702,7 @@ ...@@ -573,7 +702,7 @@
* 获取全部营地类型 * 获取全部营地类型
* */ * */
getAllLabelList() { getAllLabelList() {
campsiteAllTagList().then(response => { campsiteAllTagList().then((response) => {
this.allLabelList = response; this.allLabelList = response;
}); });
}, },
...@@ -589,7 +718,10 @@ ...@@ -589,7 +718,10 @@
let cityObj = getRegionByCodes([obj.city]); let cityObj = getRegionByCodes([obj.city]);
this.campsiteObj.provinceName = provinceObj[0].name; this.campsiteObj.provinceName = provinceObj[0].name;
this.campsiteObj.cityName = cityObj[0].name; this.campsiteObj.cityName = cityObj[0].name;
this.form.addressStr = this.campsiteObj.provinceName + this.campsiteObj.cityName + this.campsiteObj.address; this.form.addressStr =
this.campsiteObj.provinceName +
this.campsiteObj.cityName +
this.campsiteObj.address;
console.log(this.campsiteObj); console.log(this.campsiteObj);
} }
}, },
...@@ -599,7 +731,7 @@ ...@@ -599,7 +731,7 @@
selectDestination() { selectDestination() {
let that = this; let that = this;
this.campsiteObj.showTitle = "营地地址编辑"; this.campsiteObj.showTitle = "营地地址编辑";
this.campsiteObj.eventName = 'campsiteEvent'; this.campsiteObj.eventName = "campsiteEvent";
this.campsiteObj.keyword = this.campsiteObj.address; this.campsiteObj.keyword = this.campsiteObj.address;
this.showCampsiteVisible = true; this.showCampsiteVisible = true;
}, },
...@@ -630,7 +762,7 @@ ...@@ -630,7 +762,7 @@
* */ * */
getOne(id) { getOne(id) {
let that = this; let that = this;
getOneCampsiteShop(id).then(response => { getOneCampsiteShop(id).then((response) => {
this.form = response.data; this.form = response.data;
this.campsiteObj = { this.campsiteObj = {
address: response.data.address, address: response.data.address,
...@@ -641,7 +773,10 @@ ...@@ -641,7 +773,10 @@
latitude: response.data.latitude, latitude: response.data.latitude,
longitude: response.data.longitude, longitude: response.data.longitude,
}; };
response.data.addressStr = this.campsiteObj.provinceName + this.campsiteObj.cityName + this.campsiteObj.address; response.data.addressStr =
this.campsiteObj.provinceName +
this.campsiteObj.cityName +
this.campsiteObj.address;
let arr = []; let arr = [];
that.allLabelList.map(function (b) { that.allLabelList.map(function (b) {
response.data.campsiteTagListVos.map(function (item) { response.data.campsiteTagListVos.map(function (item) {
...@@ -657,13 +792,13 @@ ...@@ -657,13 +792,13 @@
response.data.carouse.map(function (p) { response.data.carouse.map(function (p) {
let pp = { let pp = {
id: p.id, id: p.id,
url: p.imgUrl url: p.imgUrl,
}; };
fileList2.push(pp); fileList2.push(pp);
}); });
this.fileList2 = fileList2; this.fileList2 = fileList2;
this.activeName2 = "first"; this.activeName2 = "first";
}) });
}, },
/** /**
* 旅游-弹框-取消 * 旅游-弹框-取消
...@@ -683,7 +818,7 @@ ...@@ -683,7 +818,7 @@
* */ * */
editorReadyEvent(instance) { editorReadyEvent(instance) {
let t = this; let t = this;
instance.addListener('contentChange', () => { instance.addListener("contentChange", () => {
if (t.activeName2 == "first") { if (t.activeName2 == "first") {
t.form.content = instance.getContent(); t.form.content = instance.getContent();
} else if (t.activeName2 == "second") { } else if (t.activeName2 == "second") {
...@@ -720,8 +855,8 @@ ...@@ -720,8 +855,8 @@
* banner上传 * banner上传
* */ * */
handleBannerSuccess(res, file) { handleBannerSuccess(res, file) {
this.fileList2.push({url: res.data}); this.fileList2.push({ url: res.data });
this.form.carouse.push({imgUrl: res.data}); this.form.carouse.push({ imgUrl: res.data });
}, },
/** /**
* 海报背景上传 * 海报背景上传
...@@ -743,36 +878,36 @@ ...@@ -743,36 +878,36 @@
* 清空旅游弹框数据 * 清空旅游弹框数据
*/ */
cleanForm() { cleanForm() {
this.campsiteObj = {name: ""};//营地地址 this.campsiteObj = { name: "" }; //营地地址
this.fileList2 = []; this.fileList2 = [];
this.activeName2 = '';//营地详情 this.activeName2 = ""; //营地详情
this.form = { this.form = {
id: undefined, id: undefined,
name: undefined,//营地名称 name: undefined, //营地名称
hot: 0,//营地热度 hot: 0, //营地热度
servicePhone: "",//客服电话 servicePhone: "", //客服电话
phone: "",//联系电话 phone: "", //联系电话
province: undefined,//省份 province: undefined, //省份
provinceName: undefined,//省份名称 provinceName: undefined, //省份名称
city: undefined,//市编号 city: undefined, //市编号
cityName: undefined,//市名称 cityName: undefined, //市名称
address: undefined,//详细地址 address: undefined, //详细地址
latitude: undefined, latitude: undefined,
longitude: undefined, longitude: undefined,
content: '',//营地详情 content: "", //营地详情
concat: "",//联系人 concat: "", //联系人
logo: undefined,//封面图 logo: undefined, //封面图
configure: '',//配套&收费 configure: "", //配套&收费
campsiteTagListVos: [],//营地类型 campsiteTagListVos: [], //营地类型
carouse: [],//banner轮播 carouse: [], //banner轮播
posterBackground: '', posterBackground: "",
alt: '', alt: "",
imgTitle:undefined, imgTitle: undefined,
imgKeyword:undefined, imgKeyword: undefined,
imgDesc:undefined imgDesc: undefined,
}; };
this.showCampsiteVisible = false;//编辑营地地址 this.showCampsiteVisible = false; //编辑营地地址
} },
} },
} };
</script> </script>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment