|
|
@@ -0,0 +1,762 @@
|
|
|
+<template>
|
|
|
+ <div class="mainBox">
|
|
|
+ <div class="layerBox">
|
|
|
+ <tableTitle :name="'添加网站导航'" v-if="pageMode == 'add'"/>
|
|
|
+ <tableTitle :name="'编辑网站导航'" v-if="pageMode == 'edit'"/>
|
|
|
+ <tableTitle :name="'留言网站导航'" v-if="pageMode == 'view'"/>
|
|
|
+ <el-form :model="form" ref="form" :rules="formRules" label-position="left" label-width="120px">
|
|
|
+ <div class="formDiv">
|
|
|
+ <div>
|
|
|
+ <!--1.添加信息标题-->
|
|
|
+ <el-form-item label="信息标题:" :label-width="formLabelWidth" prop="title" class="custom-align-right" v-if="pageMode == 'add'">
|
|
|
+ <el-input v-model="form.title" autocomplete="off" placeholder="请输入调研标题"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--1.编辑信息标题-->
|
|
|
+ <el-form-item label="信息标题:" :label-width="formLabelWidth" prop="title" class="custom-align-right" v-else>
|
|
|
+ <el-input v-model="form.title" autocomplete="off" placeholder="请输入调研标题" :disabled="pageMode == 'view' || isme == false"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--2.网站属性 只作为显示使用-->
|
|
|
+ <el-form-item label="栏目名称:" :label-width="formLabelWidth" class="custom-align-right">
|
|
|
+ <el-input v-model="form.cate_name" autocomplete="off" disabled="disabled"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--3.推荐分类-->
|
|
|
+ <el-form-item label="分类:" :label-width="formLabelWidth" prop="content" class="custom-align-right" v-if="pageMode == 'add'">
|
|
|
+ <el-select v-model="form.type_id" clearable placeholder="请选择推荐等级..">
|
|
|
+ <el-option label="党委" :value="1"></el-option>
|
|
|
+ <el-option label="人大" :value="2"></el-option>
|
|
|
+ <el-option label="政府" :value="3"></el-option>
|
|
|
+ <el-option label="政协" :value="4"></el-option>
|
|
|
+ <el-option label="公安" :value="5"></el-option>
|
|
|
+ <el-option label="检察院" :value="6"></el-option>
|
|
|
+ <el-option label="法院" :value="7"></el-option>
|
|
|
+ <el-option label="司法" :value="8"></el-option>
|
|
|
+ <el-option label="纪检监察" :value="9"></el-option>
|
|
|
+ <el-option label="信访" :value="10"></el-option>
|
|
|
+ <el-option label="政法委" :value="11"></el-option>
|
|
|
+ <el-option label="国安" :value="12"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <!--3.编辑分类-->
|
|
|
+ <el-form-item label="分类:" :label-width="formLabelWidth" prop="content" class="custom-align-right" v-else>
|
|
|
+ <el-select v-model="form.type_id" clearable placeholder="请选择推荐等级.." :disabled="pageMode == 'view' || isme == false">
|
|
|
+ <el-option label="党委" :value="1"></el-option>
|
|
|
+ <el-option label="人大" :value="2"></el-option>
|
|
|
+ <el-option label="政府" :value="3"></el-option>
|
|
|
+ <el-option label="政协" :value="4"></el-option>
|
|
|
+ <el-option label="公安" :value="5"></el-option>
|
|
|
+ <el-option label="检察院" :value="6"></el-option>
|
|
|
+ <el-option label="法院" :value="7"></el-option>
|
|
|
+ <el-option label="司法" :value="8"></el-option>
|
|
|
+ <el-option label="纪检监察" :value="9"></el-option>
|
|
|
+ <el-option label="信访" :value="10"></el-option>
|
|
|
+ <el-option label="政法委" :value="11"></el-option>
|
|
|
+ <el-option label="国安" :value="12"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <!--4.添加缩略图-->
|
|
|
+ <div v-if="pageMode == 'add'">
|
|
|
+ <el-form-item label="缩略图:" :label-width="formLabelWidth" :class="['custom-form-item']" class="custom-align-right" >
|
|
|
+ <div class="uploaderBox">
|
|
|
+ <div class="avatar-upload-container" @mouseenter="hovering = true" @mouseleave="hovering = false">
|
|
|
+ <el-upload class="avatar-uploader" action="#" :show-file-list="false" :before-upload="beforeAvatarUpload">
|
|
|
+ <img v-if="imgUrl" :src="imgUrl" class="avatar">
|
|
|
+ <div v-else class="chooseImgDiv">
|
|
|
+ <div>
|
|
|
+ <img src="@/assets/public/upload/noImage.png">
|
|
|
+ <div>选择图片</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <input type="hidden" name="logo" v-model="form.img_url">
|
|
|
+ </el-upload>
|
|
|
+ <div v-if="hovering && imgUrl" class="delete-button" @click="handleDelete">
|
|
|
+ <i class="el-icon-delete"></i>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <!--4.编辑缩略图-->
|
|
|
+ <div v-else>
|
|
|
+ <el-form-item label="缩略图:" :label-width="formLabelWidth" :class="['custom-form-item']" class="custom-align-right" v-if="pageMode != 'view' && isme == true">
|
|
|
+ <div class="uploaderBox">
|
|
|
+ <div class="avatar-upload-container" @mouseenter="hovering = true" @mouseleave="hovering = false">
|
|
|
+ <el-upload class="avatar-uploader" action="#" :show-file-list="false" :before-upload="beforeAvatarUpload">
|
|
|
+ <img v-if="imgUrl" :src="imgUrl" class="avatar">
|
|
|
+ <div v-else class="chooseImgDiv">
|
|
|
+ <div>
|
|
|
+ <img src="@/assets/public/upload/noImage.png">
|
|
|
+ <div>选择图片</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <input type="hidden" name="logo" v-model="form.img_url">
|
|
|
+ </el-upload>
|
|
|
+ <div v-if="hovering && imgUrl" class="delete-button" @click="handleDelete">
|
|
|
+ <i class="el-icon-delete"></i>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="缩略图:" :label-width="formLabelWidth" :class="['custom-form-item']" class="custom-align-right" v-else>
|
|
|
+ <img :src="imgUrl" class="avatarView">
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <!--5.调研关键词-->
|
|
|
+ <div v-if="pageMode == 'add'">
|
|
|
+ <!--5.添加调研关键词-->
|
|
|
+ <el-form-item label="SEO关键词:" class="custom-align-right">
|
|
|
+ <template #label>
|
|
|
+ <span class="askBox">
|
|
|
+ SEO关键词:
|
|
|
+ <el-tooltip class="item" effect="dark" content="调研关键词,如:三农市场网、全国三农、信息一体化。" placement="top">
|
|
|
+ <i class="el-icon-question"></i>
|
|
|
+ </el-tooltip>
|
|
|
+ </span>
|
|
|
+ </template>
|
|
|
+ <tagInput :initialTags="tags" @tags-updated="updateTags"></tagInput>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <div v-else>
|
|
|
+ <!--5.编辑调研关键词-->
|
|
|
+ <el-form-item label="SEO关键词:" class="custom-align-right" v-if="pageMode != 'view' && isme == true">
|
|
|
+ <template #label>
|
|
|
+ <span class="askBox">
|
|
|
+ SEO关键词:
|
|
|
+ <el-tooltip class="item" effect="dark" content="调研关键词,如:三农市场网、全国三农、信息一体化。" placement="top">
|
|
|
+ <i class="el-icon-question"></i>
|
|
|
+ </el-tooltip>
|
|
|
+ </span>
|
|
|
+ </template>
|
|
|
+ <tagInput :initialTags="tags" @tags-updated="updateTags"></tagInput>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="调研关键词:" class="custom-align-right" v-else>
|
|
|
+ <el-input v-model="this.form.keyword" autocomplete="off" placeholder="请输入调研关键词" disabled="disabled"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <!--6.添加调研描述-->
|
|
|
+ <el-form-item label="SEO描述:" class="custom-align-right" v-if="pageMode == 'add'">
|
|
|
+ <template #label>
|
|
|
+ <span class="askBox">
|
|
|
+ SEO描述:
|
|
|
+ <el-tooltip class="item" effect="dark" content="调研描述,如:中国三农市场网创建以来,社会效益和会员经济效益贡献。" placement="top">
|
|
|
+ <i class="el-icon-question"></i>
|
|
|
+ </el-tooltip>
|
|
|
+ </span>
|
|
|
+ </template>
|
|
|
+ <el-input type="textarea" v-model="form.description" class="custom-textarea" placeholder="请输入调研描述"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--6.编辑调研描述-->
|
|
|
+ <el-form-item label="SEO描述:" class="custom-align-right" v-else>
|
|
|
+ <template #label>
|
|
|
+ <span class="askBox">
|
|
|
+ SEO描述:
|
|
|
+ <el-tooltip class="item" effect="dark" content="调研描述,如:中国三农市场网创建以来,社会效益和会员经济效益贡献。" placement="top">
|
|
|
+ <i class="el-icon-question"></i>
|
|
|
+ </el-tooltip>
|
|
|
+ </span>
|
|
|
+ </template>
|
|
|
+ <el-input type="textarea" v-model="form.description" class="custom-textarea" placeholder="请输入调研描述" :disabled="pageMode == 'view' || isme == false"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--7.添加信息内容-->
|
|
|
+ <div v-if="pageMode == 'add'">
|
|
|
+ <el-form-item label="信息内容:" prop="content" class="custom-align-right">
|
|
|
+ <myEditor ref="myEditor" v-model="form.content"></myEditor>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <!--7.编辑信息内容-->
|
|
|
+ <div v-else>
|
|
|
+ <el-form-item label="信息内容:" prop="content" class="custom-align-right" v-if="pageMode == 'add' || pageMode == 'edit' && isme == true">
|
|
|
+ <myEditor ref="myEditor" v-model="form.content"></myEditor>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="信息内容:" prop="content" class="custom-align-right" v-else>
|
|
|
+ <div v-html="form.content" class="contentBox "></div>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <!--8.添加网址-->
|
|
|
+ <el-form-item label="网址:" :label-width="formLabelWidth" class="custom-align-right" v-if="pageMode == 'add'">
|
|
|
+ <el-input v-model="form.web_url" autocomplete="off" placeholder="请输入网址"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--8.编辑网址-->
|
|
|
+ <el-form-item label="网址:" :label-width="formLabelWidth" class="custom-align-right" v-else>
|
|
|
+ <el-input v-model="form.web_url" autocomplete="off" placeholder="请输入网址" :disabled="pageMode == 'view' || isme == false"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--9.添加主办单位-->
|
|
|
+ <el-form-item label="主办单位:" :label-width="formLabelWidth" class="custom-align-right" v-if="pageMode == 'add'">
|
|
|
+ <el-input v-model="form.organizer" autocomplete="off" placeholder="请输入主办单位"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--9.编辑主办单位-->
|
|
|
+ <el-form-item label="主办单位:" :label-width="formLabelWidth" class="custom-align-right" v-else>
|
|
|
+ <el-input v-model="form.organizer" autocomplete="off" placeholder="请输入主办单位" :disabled="pageMode == 'view' || isme == false"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--10.添加联系电话-->
|
|
|
+ <el-form-item label="联系电话:" :label-width="formLabelWidth" class="custom-align-right" v-if="pageMode == 'add'">
|
|
|
+ <el-input v-model="form.telephone" autocomplete="off" placeholder="请输入联系电话"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--10.编辑联系电话-->
|
|
|
+ <el-form-item label="联系电话:" :label-width="formLabelWidth" class="custom-align-right" v-else>
|
|
|
+ <el-input v-model="form.telephone" autocomplete="off" placeholder="请输入联系电话" :disabled="pageMode == 'view' || isme == false"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--11.添加邮箱-->
|
|
|
+ <el-form-item label="邮箱:" :label-width="formLabelWidth" class="custom-align-right" v-if="pageMode == 'add'">
|
|
|
+ <el-input v-model="form.email" autocomplete="off" placeholder="请输入邮箱"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--11.编辑邮箱-->
|
|
|
+ <el-form-item label="邮箱:" :label-width="formLabelWidth" class="custom-align-right" v-else>
|
|
|
+ <el-input v-model="form.email" autocomplete="off" placeholder="请输入邮箱" :disabled="pageMode == 'view' || isme == false"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--12.添加地址-->
|
|
|
+ <el-form-item label="地址:" :label-width="formLabelWidth" class="custom-align-right" v-if="pageMode == 'add'">
|
|
|
+ <el-input type="textarea" maxlength="200" :autosize="{ minRows: 4}" v-model="form.address" autocomplete="off" placeholder="请输入地址"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--12.编辑地址-->
|
|
|
+ <el-form-item label="地址:" :label-width="formLabelWidth" class="custom-align-right" v-else>
|
|
|
+ <el-input type="textarea" maxlength="200" :autosize="{ minRows: 4}" v-model="form.address" autocomplete="off" placeholder="请输入地址" :disabled="pageMode == 'view' || isme == false"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <!--13.添加地区-->
|
|
|
+ <div v-if="pageMode == 'add'">
|
|
|
+ <el-form-item label="地区:" class="custom-align-right">
|
|
|
+ <div class="regionBox">
|
|
|
+ <div>
|
|
|
+ <el-select v-model="form.province_id" placeholder="请选择省" @change="province_change">
|
|
|
+ <el-option v-for="item in province_array" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <el-select v-model="form.city_id" placeholder="请选择市" @change="city_change">
|
|
|
+ <el-option v-for="item in city_array" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <el-select v-model="form.county_id" placeholder="请选择县">
|
|
|
+ <el-option v-for="item in county_array" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <!--13.编辑地区-->
|
|
|
+ <div v-else>
|
|
|
+ <el-form-item label="地区:" class="custom-align-right">
|
|
|
+ <div class="regionBox">
|
|
|
+ <div>
|
|
|
+ <el-select v-model="form.province_id" placeholder="请选择省" @change="province_change" :disabled="pageMode == 'view' || isme == false">
|
|
|
+ <el-option v-for="item in province_array" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <el-select v-model="form.city_id" placeholder="请选择市" @change="city_change" :disabled="pageMode == 'view' || isme == false">
|
|
|
+ <el-option v-for="item in city_array" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <el-select v-model="form.county_id" placeholder="请选择县" :disabled="pageMode == 'view' || isme == false">
|
|
|
+ <el-option v-for="item in county_array" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-form>
|
|
|
+ </div>
|
|
|
+ <div class="bottomBtnBox">
|
|
|
+ <el-button type="info" @click="returnPage">返回</el-button>
|
|
|
+ <el-button type="primary" @click="addToServe" v-if="pageMode == 'add'">确定</el-button>
|
|
|
+ <!--管理员编辑-->
|
|
|
+ <el-button type="primary" @click="editToServe" v-if="pageMode != 'view' && isme == true">编辑</el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import { getWebSiteId, getUseType } from '@/utils/auth'
|
|
|
+//表格标题
|
|
|
+import tableTitle from './components/tableTitle.vue';
|
|
|
+//引入tag标签组件
|
|
|
+import tagInput from '../../components/InputTag/index.vue';
|
|
|
+//引入公用样式
|
|
|
+import '@/styles/global.less';
|
|
|
+//引入富文本编辑器
|
|
|
+import myEditor from '../../components/edit/myEditor.vue';
|
|
|
+export default {
|
|
|
+ components: {
|
|
|
+ tableTitle,
|
|
|
+ tagInput,
|
|
|
+ myEditor,
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ const validateEmpty = (rule, value, callback) => {
|
|
|
+ if (value == '') {
|
|
|
+ callback(new Error('该项不能为空!'))
|
|
|
+ } else {
|
|
|
+ callback()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ let self = this;
|
|
|
+ return {
|
|
|
+ isme:false,//是否是自己发布的
|
|
|
+ pageMode: 'add',//页面模式 add=新建 edit=编辑 view=查看
|
|
|
+ pageName: 'messageReviewList',//页面名称
|
|
|
+ formLabelWidth: '120px',
|
|
|
+ creatNews_user_type: 0,//用户身份
|
|
|
+ tags: [],//标签数组
|
|
|
+ province_array:[],//省列表
|
|
|
+ city_array:[],//市列表
|
|
|
+ county_array:[],//县列表
|
|
|
+ imgUrl:"",//缩略图
|
|
|
+ hovering: false,//鼠标悬浮状态 悬浮时显示删除
|
|
|
+ form: {
|
|
|
+ title:"",//网站导航
|
|
|
+ cate_name:"官网导航",//栏目名称
|
|
|
+ type_id:"",//类型id 1:党委;2:人大;3:政府;4:政协;5:公安;6:检察院;7:法院;8:司法;9:纪检监察;10:信访;11:政法委;12:国安;
|
|
|
+ img_url:"",//缩略图
|
|
|
+ keyword:"",//关键词
|
|
|
+ description:"",//描述
|
|
|
+ content:"",//内容
|
|
|
+ web_url:"",//网站地址
|
|
|
+ organizer:"",//主办单位
|
|
|
+ telephone:"",//电话
|
|
|
+ email:"",//邮箱
|
|
|
+ address:"",//地址
|
|
|
+ province_id:"",//省id
|
|
|
+ city_id:"",//市id
|
|
|
+ county_id:"",//县id
|
|
|
+ },
|
|
|
+ formRules: {
|
|
|
+ title: [{ required: true, trigger: 'blur', validator: validateEmpty }],
|
|
|
+ content: [{ required: true, trigger: 'blur', validator: validateEmpty }],
|
|
|
+ },
|
|
|
+ };
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ //拆解标签
|
|
|
+ updateTags(newTags) {
|
|
|
+ this.tags = newTags;
|
|
|
+ this.form.keyword = newTags.join(',');
|
|
|
+ },
|
|
|
+ //提交表单
|
|
|
+ addToServe() {
|
|
|
+ //表单验证
|
|
|
+ this.$refs.form.validate(valid => {
|
|
|
+ if (valid) {
|
|
|
+ this.$store.dispatch('news/addWebCateinfo',this.form).then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ console.log(res)
|
|
|
+ this.$router.push({
|
|
|
+ path: '/' + this.$route.query.page,
|
|
|
+ })
|
|
|
+ this.$message.success("信息发布成功!");
|
|
|
+ } else {
|
|
|
+ this.$message.error(res.message);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //管理员编辑表单
|
|
|
+ editToServe() {
|
|
|
+ this.form.id = this.$route.query.id;
|
|
|
+ //表单验证
|
|
|
+ this.$refs.form.validate(valid => {
|
|
|
+ if (valid) {
|
|
|
+ this.$store.dispatch('news/upWebCateinfo',this.form).then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ console.log(res)
|
|
|
+ this.$router.push({
|
|
|
+ path: '/' + this.$route.query.page,
|
|
|
+ })
|
|
|
+ this.$message.success("选题发布成功!");
|
|
|
+ } else {
|
|
|
+ this.$message.error(res.message);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //清理表单
|
|
|
+ cleatForm() {
|
|
|
+ this.tags = [];
|
|
|
+ this.form.title = "";
|
|
|
+ this.form.cate_name = "官网导航";
|
|
|
+ this.form.type_id = "";
|
|
|
+ this.form.img_url = "";
|
|
|
+ this.form.keyword = "";
|
|
|
+ this.form.description = "";
|
|
|
+ this.form.content = "";
|
|
|
+ this.form.web_url = "";
|
|
|
+ this.form.organizer = "";
|
|
|
+ this.form.telephone = "";
|
|
|
+ this.form.email = "";
|
|
|
+ this.form.address = "";
|
|
|
+ this.form.province_id = "";
|
|
|
+ this.form.city_id = "";
|
|
|
+ this.form.county_id = "";
|
|
|
+ //删除编辑id
|
|
|
+ delete this.form.id;
|
|
|
+ },
|
|
|
+ //回显数据
|
|
|
+ getMainData(id) {
|
|
|
+ this.$store.dispatch('news/getWebCateinfoDetail',{id:id}).then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ //判断当前的留言是否是自己发布的
|
|
|
+ if(res.data.user_id == this.$store.state.user.userid) {
|
|
|
+ this.isme = true;
|
|
|
+ } else {
|
|
|
+ this.isme = false;
|
|
|
+ }
|
|
|
+ //还原省
|
|
|
+ this.form.province_id = res.data.province_id;
|
|
|
+ //如果市不为空
|
|
|
+ if(res.data.city_id != "") {
|
|
|
+ this.province_change(res.data.province_id,res.data.city_id)
|
|
|
+ }
|
|
|
+ //如果县不为空
|
|
|
+ if(res.data.county_id){
|
|
|
+ this.city_change(res.data.city_id,res.data.county_id)
|
|
|
+ }
|
|
|
+ //还原内容
|
|
|
+ setTimeout(() => {
|
|
|
+ this.form.content = res.data.content;
|
|
|
+ }, 100);
|
|
|
+ //还原其他内容
|
|
|
+ this.form.title = res.data.title;
|
|
|
+ this.form.type_id = res.data.type_id;
|
|
|
+ this.form.description = res.data.description;
|
|
|
+ this.form.web_url = res.data.web_url;
|
|
|
+ this.form.organizer = res.data.organizer;
|
|
|
+ this.form.address = res.data.address;
|
|
|
+ this.form.telephone = res.data.telephone;
|
|
|
+ this.form.email = res.data.email;
|
|
|
+ //关键词
|
|
|
+ this.form.keyword = res.data.keyword;
|
|
|
+ this.tags = res.data.keyword.split(',');
|
|
|
+ //缩略图
|
|
|
+ this.form.img_url = res.data.img_url;
|
|
|
+ this.imgUrl = res.data.img_url;
|
|
|
+ } else {
|
|
|
+ this.$message.error(res.message);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //上传图片
|
|
|
+ beforeAvatarUpload(file,type) {
|
|
|
+ const isJPG = file.type === 'image/jpeg';
|
|
|
+ const isPNG = file.type === 'image/png';
|
|
|
+ const isGIF = file.type === 'image/gif';
|
|
|
+ const isLt2M = file.size / 1024 / 1024 < 2;
|
|
|
+ if (!isJPG && !isPNG && !isGIF) {
|
|
|
+ this.$message.error('上传缩略图只能是 JPG 或 PNG 或 GIF 格式!');
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ if (!isLt2M) {
|
|
|
+ this.$message.error('上传缩略图大小不能超过 2MB!');
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ const formData = new FormData();
|
|
|
+ formData.append('file', file);
|
|
|
+ this.$store.dispatch('pool/uploadFile', formData).then(res => {
|
|
|
+ this.imgUrl = res.data.imgUrl;//显示缩略图
|
|
|
+ this.form.img_url = res.data.imgUrl;//提供表单地址
|
|
|
+ }).catch(() => {
|
|
|
+ this.$message({
|
|
|
+ type: 'info',
|
|
|
+ message: '网络错误,请重试!'
|
|
|
+ });
|
|
|
+ })
|
|
|
+ // 阻止默认的上传行为
|
|
|
+ return false;
|
|
|
+ },
|
|
|
+ //删除图片
|
|
|
+ handleDelete() {
|
|
|
+ this.form.img_url = '';
|
|
|
+ this.imgUrl = '';
|
|
|
+ },
|
|
|
+ //返回上一级
|
|
|
+ returnPage(){
|
|
|
+ let pagename = this.$route.query.page
|
|
|
+ console.log(this.$route.query.page)
|
|
|
+ this.$router.push({
|
|
|
+ path: "/" + pagename,
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //获得省
|
|
|
+ get_provinceid(value) {
|
|
|
+ this.$store.dispatch('news/getJobRecruitingArea').then(res => {
|
|
|
+ this.province_array = res.data;
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //获得市
|
|
|
+ province_change(value,city_id) {
|
|
|
+ this.form.city_id = ''; // 清空城市选择
|
|
|
+ this.form.county_id = ''; // 清空县选择
|
|
|
+ this.$store.dispatch('news/getJobRecruitingArea', { pid: value }).then(res => {
|
|
|
+ this.city_array = res.data;
|
|
|
+ if(city_id){
|
|
|
+ this.form.city_id = city_id;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //获得县
|
|
|
+ city_change(value,county_id) {
|
|
|
+ this.form.county_id = ''; // 清空县选择
|
|
|
+ this.$store.dispatch('news/getJobRecruitingArea', { pid: value }).then(res => {
|
|
|
+ this.county_array = res.data;
|
|
|
+ if(county_id){
|
|
|
+ this.form.county_id = county_id;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ //1.清理表单
|
|
|
+ this.cleatForm();
|
|
|
+ //2.获得用户身份
|
|
|
+ this.creatNews_user_type = getUseType()
|
|
|
+ //3.获得站点id
|
|
|
+ this.websiteid = getWebSiteId()
|
|
|
+ //5.判断是新建还是回显
|
|
|
+ //5.1 新建留言
|
|
|
+ if (this.$route.query.id == undefined && this.$route.query.type == 'add') {
|
|
|
+ this.pageMode = "add"
|
|
|
+ this.pageName = this.$route.query.page;
|
|
|
+ }
|
|
|
+ //5.2 编辑留言
|
|
|
+ if(this.$route.query.id != undefined && this.$route.query.type == 'edit') {
|
|
|
+ this.pageMode = "edit";
|
|
|
+ this.pageName = this.$route.query.page;
|
|
|
+ this.getMainData(this.$route.query.id)
|
|
|
+ }
|
|
|
+ //5.3 查看留言
|
|
|
+ if(this.$route.query.id != undefined && this.$route.query.type == 'view') {
|
|
|
+ this.pageMode = "view";
|
|
|
+ this.pageName = this.$route.query.page;
|
|
|
+ this.getMainData(this.$route.query.id)
|
|
|
+ }
|
|
|
+ //5.4 获得所有省
|
|
|
+ this.get_provinceid();
|
|
|
+ }
|
|
|
+};
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped lang="less">
|
|
|
+//同行人员 start ------------------------------------------------------------>
|
|
|
+.personListBox {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-items: space-between;
|
|
|
+ border-radius: 4px;
|
|
|
+ .personLiTitle {
|
|
|
+ background: #f0f2f5;
|
|
|
+ width: 100%;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-items: space-between;
|
|
|
+ padding: 0 10px;
|
|
|
+ border-radius: 4px;
|
|
|
+ border:1px solid #DCDFE6;
|
|
|
+ border-bottom-left-radius: 0;
|
|
|
+ border-bottom-right-radius: 0;
|
|
|
+ }
|
|
|
+ .personLi {
|
|
|
+ width: 100%;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-items: space-between;
|
|
|
+ font-size: 14px;
|
|
|
+ .personLiId {
|
|
|
+ width: 100px;
|
|
|
+ text-align: center;
|
|
|
+ }
|
|
|
+ .personLiName {
|
|
|
+ width: 150px;
|
|
|
+ text-align: center;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .personOption {
|
|
|
+ span {
|
|
|
+ width: 20px;
|
|
|
+ height: 20px;
|
|
|
+ text-align: center;
|
|
|
+ background-color:#67c23a;
|
|
|
+ color: #fff;
|
|
|
+ cursor: pointer;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ border-radius: 4px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+.personLiList {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ padding: 0 10px;
|
|
|
+ border:1px solid #DCDFE6;
|
|
|
+ border-top: 0;
|
|
|
+ width: 100%;
|
|
|
+ .personLi {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-items: space-between;
|
|
|
+ .personLiId {
|
|
|
+ width: 100px;
|
|
|
+ text-align: center;
|
|
|
+ }
|
|
|
+ .personLiName {
|
|
|
+ width: 150px;
|
|
|
+ text-align: center;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .personOption {
|
|
|
+ span {
|
|
|
+ width: 20px;
|
|
|
+ height: 20px;
|
|
|
+ text-align: center;
|
|
|
+ background-color:#f56c6c;
|
|
|
+ color: #fff;
|
|
|
+ cursor: pointer;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ border-radius: 4px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+//同行人员 end ------------------------------------------------------------>
|
|
|
+//选择同行人员弹窗 start ------------------------------------------------------------>
|
|
|
+.personDialogOption {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ margin-bottom: 20px;
|
|
|
+ .personDialogOptionItem {
|
|
|
+ width: 50%;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ span {
|
|
|
+ white-space: nowrap;
|
|
|
+ margin-right: 10px;
|
|
|
+ }
|
|
|
+ padding-right: 10px;
|
|
|
+ }
|
|
|
+}
|
|
|
+//选择同行人员弹窗 end ------------------------------------------------------------>
|
|
|
+//缩略图
|
|
|
+.avatarView {
|
|
|
+ width: 140px;
|
|
|
+ height: auto;
|
|
|
+ border-radius: 10px;
|
|
|
+ display: block;
|
|
|
+ border: 1px solid #dfe4ed;
|
|
|
+ height: 135px;
|
|
|
+}
|
|
|
+.uploaderBox {
|
|
|
+ .avatar {
|
|
|
+ width: 140px;
|
|
|
+ height: auto;
|
|
|
+ }
|
|
|
+ .chooseImgDiv {
|
|
|
+ background-color: #fff;
|
|
|
+ img {
|
|
|
+ display: inline-block;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+//地区 start ------------------------------------------------------------>
|
|
|
+.regionBox {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ >div{
|
|
|
+ width: 33%;
|
|
|
+ }
|
|
|
+}
|
|
|
+//地区 end ------------------------------------------------------------>
|
|
|
+.contentBox {
|
|
|
+ padding: 5px 15px;
|
|
|
+ border: 1px solid #DCDFE6;
|
|
|
+ border-radius: 4px;
|
|
|
+ background: #F5F7FA;
|
|
|
+ color: #C0C4CC;
|
|
|
+ ::v-deep * {
|
|
|
+ color: #C0C4CC;
|
|
|
+ }
|
|
|
+}
|
|
|
+.custom-textarea-height {
|
|
|
+ ::v-deep .el-textarea__inner {
|
|
|
+ height: 100px;
|
|
|
+ resize: none;
|
|
|
+ /* 禁止用户拖拽调整大小 */
|
|
|
+ }
|
|
|
+}
|
|
|
+//执行v-deep穿透scope选择器 start------------------------------------------------------------>*/
|
|
|
+::v-deep .custom-form-item>.el-form-item__label {
|
|
|
+ line-height: 140px !important;
|
|
|
+}
|
|
|
+::v-deep .custom-textarea .el-textarea__inner {
|
|
|
+ resize: none;
|
|
|
+ /* 禁止用户拖拽调整大小 */
|
|
|
+}
|
|
|
+::v-deep .custom-align-right .el-form-item__label {
|
|
|
+ text-align: right;
|
|
|
+ /* 设置标签文字右对齐 */
|
|
|
+}
|
|
|
+::v-deep .el-popper {
|
|
|
+ height: 500px;
|
|
|
+}
|
|
|
+::v-deep .el-select {
|
|
|
+ width: 100%;
|
|
|
+ /* 禁止用户拖拽调整大小 */
|
|
|
+}
|
|
|
+::v-deep .el-input-group__prepend {
|
|
|
+ color: black !important;
|
|
|
+}
|
|
|
+.formLabelFloatBox {
|
|
|
+ margin-bottom: 10px;
|
|
|
+ position: relative;
|
|
|
+ .formLabeladdIcon {
|
|
|
+ position: absolute;
|
|
|
+ right: 45px;
|
|
|
+ top: 5px;
|
|
|
+ width: 38px;
|
|
|
+ height: 24px;
|
|
|
+ }
|
|
|
+ .formLabelDelIcon {
|
|
|
+ position: absolute;
|
|
|
+ right: 5px;
|
|
|
+ top: 5px;
|
|
|
+ width: 38px;
|
|
|
+ height: 24px;
|
|
|
+ }
|
|
|
+}
|
|
|
+//该项不能为空几个字的位置
|
|
|
+::v-deep .el-form-item__error {
|
|
|
+ color: #ff4949;
|
|
|
+ font-size: 12px;
|
|
|
+ line-height: 1;
|
|
|
+ padding-top: 4px;
|
|
|
+ position: relative;
|
|
|
+ // top: 22%;
|
|
|
+ // left: 93%;
|
|
|
+}
|
|
|
+//输入框距离底部的距离
|
|
|
+::v-deep .el-form-item {
|
|
|
+ margin-bottom: 5px;
|
|
|
+}
|
|
|
+//图片提示文字样式
|
|
|
+.photo_tips {
|
|
|
+ font-size: 12px;
|
|
|
+ color: #999;
|
|
|
+}
|
|
|
+.notchooseImgDiv img {
|
|
|
+ width: 120px;
|
|
|
+ height: 120px;
|
|
|
+ margin-left: 11px;
|
|
|
+}
|
|
|
+.notchooseImgDiv .notchooseImgDivText {
|
|
|
+ font-size: 14px;
|
|
|
+ margin-top: -25px;
|
|
|
+}
|
|
|
+// 执行v-deep穿透scope选择器 end------------------------------------------------------------>
|
|
|
+</style>
|