Explorar o código

本网招聘

本网招聘
dangyunlong hai 10 horas
pai
achega
05e7764bf9

+ 40 - 0
src/api/news.js

@@ -745,3 +745,43 @@ export function getSinglePageList(params) {
         params
     })
 }
+//6.3 获得手动推荐列表
+export function getAdviceSinglePages(params) {
+    return request({
+        url: '/news/getAdviceSinglePages',
+        method: 'get',
+        params
+    })
+}
+//6.4 修改招聘信息
+export function upSinglePage(data) {
+    return request({
+        url: '/news/upSinglePage',
+        method: 'post',
+        data
+    })
+}
+//6.5 删除招聘信息
+export function delSinglePage(params) {
+    return request({
+        url: '/news/delSinglePage',
+        method: 'get',
+        params
+    })
+}
+//6.6 审核招聘信息
+export function checkSinglePage(data) {
+    return request({
+        url: '/news/checkSinglePage',
+        method: 'post',
+        data
+    })
+}
+//6.7 获取招聘信息详情
+export function getSinglePageInfo(params) {
+    return request({
+        url: '/news/getSinglePageInfo',
+        method: 'get',
+        params
+    })
+}

+ 47 - 1
src/store/modules/news.js

@@ -9,7 +9,8 @@ import {
     getSalary, getLanguage, getLevel, getCompanySize, getCompanyNature, checkJobRecruiting, getBookList, getBookInfo, addBook, deleteBook, updateBook, updateBookStatus, 
     getJobHuntingApply, myApplyList, getArticleCommend,getMessageList, getMessageInfo, upMessageStatus, delMessage, upMessage, addMessage, checkMessageEdit,
     getResearchTopicList, getResearchTopicInfo, checkResearchTopic, delResearchTopic, upResearchTopic, addResearchTopic, getAllResearcher, getWebCateinfoList, 
-    getWebCateinfoDetail, checkWebCateinfo, delWebCateinfo, addWebCateinfo, upWebCateinfo, addSinglePage, getSinglePageList,
+    getWebCateinfoDetail, checkWebCateinfo, delWebCateinfo, addWebCateinfo, upWebCateinfo, addSinglePage, getSinglePageList, getAdviceSinglePages, upSinglePage,
+    delSinglePage, checkSinglePage, getSinglePageInfo
 } from '@/api/news'
 
 const state = {
@@ -985,6 +986,51 @@ const actions = {
             })
         })
     },
+    getAdviceSinglePages({ commit }, data) {
+        return new Promise((resolve, reject) => {
+            getAdviceSinglePages(data).then(response => {
+                resolve(response)
+            }).catch(error => {
+                reject(error)
+            })
+        })
+    },
+    upSinglePage({ commit }, data) {
+        return new Promise((resolve, reject) => {
+            upSinglePage(data).then(response => {
+                resolve(response)
+            }).catch(error => {
+                reject(error)
+            })
+        })
+    },
+    delSinglePage({ commit }, data) {
+        return new Promise((resolve, reject) => {
+            delSinglePage(data).then(response => {
+                resolve(response)
+            }).catch(error => {
+                reject(error)
+            })
+        })
+    },
+    checkSinglePage({ commit }, data) {
+        return new Promise((resolve, reject) => {
+            checkSinglePage(data).then(response => {
+                resolve(response)
+            }).catch(error => {
+                reject(error)
+            })
+        })
+    },
+    getSinglePageInfo({ commit }, data) {
+        return new Promise((resolve, reject) => {
+            getSinglePageInfo(data).then(response => {
+                resolve(response)
+            }).catch(error => {
+                reject(error)
+            })
+        })
+    },
 }
 
 export default {

+ 1 - 4
src/utils/baseUrl.js

@@ -7,10 +7,7 @@ const URL = {
     //baseUrl: 'http://adminpre.bjzxtw.org.cn:9501',//pre环境域名
     webUrl: 'https://admincs.fzxfb.org.cn',//管理系统地址,如果用户因为某种原因以外退出,需要一个userurl用于请求接口
     //baseUrl: 'https://apipre1.bjzxtw.org.cn',//pre环境域名2
-    
-    baseUrl: 'http://bapi.t:9101',//政讯项目pre地址
-    //baseUrl: 'https://apics.fzxfb.org.cn',//政讯项目正式地址
-    
+    baseUrl: 'https://apics.fzxfb.org.cn',//政讯项目正式地址(不存在pre)
     //aiUrl: 'http://apipre3.bjzxtw.org.cn',//ai环境域名
     //baseUrl: 'http://192.168.1.201:9501',//刘佳伟本地环境
     //baseUrl:'http://192.168.1.159:9101',//冯蕊的本地环境

+ 229 - 139
src/views/news/jobManagementAdd.vue

@@ -1,30 +1,34 @@
 <template>
     <div class="mainBox">
         <div class="layerBox">
-            <tableTitle :name="tableDivTitle" />
+            <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">
                     <el-form-item label="招聘标题:" prop="title" class="custom-align-right">
-                        <el-input v-model="form.title" autocomplete="off" placeholder="请输入招聘标题"></el-input>
+                        <el-input v-model="form.title" autocomplete="off" placeholder="请输入招聘标题" :disabled="pageMode == 'view' || isme == false"></el-input>
                         <!-- <el-checkbox v-model="form.islink">是否使用外链</el-checkbox> -->
-                        <el-checkbox v-model="form.islink" v-if="creatNews_user_type == 10000">是否使用外链</el-checkbox>
+                        <el-checkbox v-model="form.islink" v-if="creatNews_user_type == 10000" :disabled="pageMode == 'view' || isme == false">是否使用外链</el-checkbox>
                     </el-form-item>
                     <div v-if="form.islink == true">
                         <el-form-item label="站点名称:" prop="website_id" class="custom-align-right">
                             <el-cascader :key="parentKey" v-model="form.website_id" placeholder="请选择站点名称"
                                 popper-class="my_cascader" :options="creatNews_nav_pool_arr"
+                                :disabled="pageMode == 'view' || isme == false"
                                 @change="creatNews_nav_pool_change_fun(form.website_id)" filterable
                                 clearable></el-cascader>
                         </el-form-item>
                         <el-form-item label="栏目名称:" prop="cat_arr_id" class="custom-align-right">
                             <el-cascader :key="parentKey_2" v-model="form.cat_arr_id" placeholder="请选择要绑定的栏目名称"
+                                :disabled="pageMode == 'view' || isme == false"
                                 :props="parentData_2" popper-class="my_cascader" filterable clearable></el-cascader>
                         </el-form-item>
                         <el-form-item label="外链地址:" prop="linkurl" class="custom-align-right">
-                            <el-input v-model="form.linkurl" autocomplete="off" placeholder="请输入外链地址"></el-input>
+                            <el-input v-model="form.linkurl" autocomplete="off" :disabled="pageMode == 'view' || isme == false" placeholder="请输入外链地址"></el-input>
                         </el-form-item>
                         <el-form-item label="作者:" class="custom-align-right">
-                            <el-input v-model="form.author" autocomplete="off" placeholder="请输入作者"></el-input>
+                            <el-input v-model="form.author" autocomplete="off" :disabled="pageMode == 'view' || isme == false" placeholder="请输入作者"></el-input>
                         </el-form-item>
                     </div>
                     <div v-if="form.islink == false">
@@ -32,6 +36,7 @@
                             <el-form-item label="栏目名称:" prop="cat_arr_id" class="custom-align-right">
                                 <el-cascader :key="parentKey" v-model="form.cat_arr_id" placeholder="请选择要绑定的栏目名称"
                                     :props="parentData" popper-class="my_cascader" style="height: 100%;" filterable
+                                    :disabled="pageMode == 'view' || isme == false"
                                     clearable>
                                 </el-cascader>
                             </el-form-item>
@@ -41,77 +46,95 @@
                                 <el-form-item label="站点名称:" prop="website_id" class="custom-align-right">
                                     <el-cascader :key="parentKey" v-model="form.website_id" placeholder="请选择站点名称"
                                         popper-class="my_cascader" :options="creatNews_nav_pool_arr"
+                                        :disabled="pageMode == 'view' || isme == false"
                                         @change="creatNews_nav_pool_change_fun(form.website_id)" filterable
                                         clearable></el-cascader>
                                 </el-form-item>
                                 <el-form-item label="栏目名称:" prop="cat_arr_id" class="custom-align-right">
                                     <el-cascader :key="parentKey_2" v-model="form.cat_arr_id" placeholder="请选择要绑定的栏目名称"
                                         popper-class="my_cascader" style="height: 100%;" :props="parentData_2"
+                                        :disabled="pageMode == 'view' || isme == false"
                                         filterable clearable>
                                     </el-cascader>
                                 </el-form-item>
                             </div>
-                            <el-form-item label="缩略图:" class="custom-align-right" prop="">
-                                <div class="uploaderBox" @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 v-if="pageMode == 'view' || isme == false">
+                                <el-form-item label="缩略图:" class="custom-align-right" prop="">
+                                    <img v-if="imgUrl" :src="imgUrl" class="avatar">
+                                </el-form-item>
+                            </div>
+                            <div v-else>
+                                <el-form-item label="缩略图:" class="custom-align-right" prop="">
+                                    <div class="uploaderBox" @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>
+                                        </el-upload>
+                                        <input type="hidden" v-model="form.imgurl">
+                                        <span class="photo_tips">推荐图片长宽比例为 16:9,大小不能超过 500 K。</span>
+                                        <div v-if="hovering && imgUrl" class="delete-button" @click="handleDelete">
+                                            <i class="el-icon-delete"></i>
                                         </div>
-                                    </el-upload>
-                                    <input type="hidden" v-model="form.imgurl">
-                                    <span class="photo_tips">推荐图片长宽比例为 16:9,大小不能超过 500 K。</span>
-                                    <div v-if="hovering && imgUrl" class="delete-button" @click="handleDelete">
-                                        <i class="el-icon-delete"></i>
                                     </div>
-                                </div>
-                            </el-form-item>
-                            <el-form-item label="资讯关键词:" prop="" class="custom-align-right">
-                                <template #label>
-                                    <span class="askBox">
-                                        资讯关键词:
-                                        <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="资讯描述:" prop="" class="custom-align-right">
+                                </el-form-item>
+                            </div>
+                            <div v-if="pageMode == 'view' || isme == false">
+                                <el-form-item label="SEO关键词:" prop="" class="custom-align-right">
+                                    <div class="disabledContentBox">
+                                        <span v-for="item in tags" :key="item">{{ item }}</span>
+                                    </div>
+                                </el-form-item>
+                            </div>
+                            <div v-else>
+                                <el-form-item label="SEO关键词:" prop="" class="custom-align-right">
+                                    <template #label>
+                                        <span class="askBox">
+                                            SEO关键词:
+                                            <el-tooltip class="item" effect="dark" content="SEO关键词,如:三农市场网、全国三农、信息一体化。"
+                                                placement="top">
+                                                <i class="el-icon-question"></i>
+                                            </el-tooltip>
+                                        </span>
+                                    </template>
+                                    <tagInput :initialTags="tags" @tags-updated="updateTags"></tagInput>
+                                </el-form-item>
+                            </div>
+                            <el-form-item label="SEO描述:" prop="" class="custom-align-right">
                                 <template #label>
                                     <span class="askBox">
-                                        资讯描述:
+                                        SEO描述:
                                         <el-tooltip class="item" effect="dark"
-                                            content="资讯描述,如:中国三农市场网创建以来,社会效益和会员经济效益贡献。" placement="top">
+                                            content="SEO描述,如:中国三农市场网创建以来,社会效益和会员经济效益贡献。" placement="top">
                                             <i class="el-icon-question"></i>
                                         </el-tooltip>
                                     </span>
                                 </template>
-                                <el-input type="textarea" v-model="form.description" class="custom-textarea"
+                                <el-input type="textarea" v-model="form.description" class="custom-textarea" :disabled="pageMode == 'view' || isme == false"
                                     placeholder="请输入资讯描述"></el-input>
                             </el-form-item>
                             <el-form-item label="作者:" class="custom-align-right">
-                                <el-input v-model="form.author" autocomplete="off" placeholder="请输入作者"></el-input>
+                                <el-input v-model="form.author" autocomplete="off" placeholder="请输入作者" :disabled="pageMode == 'view' || isme == false"></el-input>
                             </el-form-item>
                             <el-form-item label="是否为原创:" prop="is_original" class="custom-align-right">
-                                <el-radio-group v-model="form.is_original" @change="changeIsOriginal">
+                                <el-radio-group v-model="form.is_original" @change="changeIsOriginal" :disabled="pageMode == 'view' || isme == false">
                                     <el-radio :label="1">是</el-radio>
                                     <el-radio :label="0">否</el-radio>
                                 </el-radio-group>
                             </el-form-item>
                             <div v-if="form.is_original == 0">
                                 <el-form-item label="来源名称:" prop="copyfrom" class="custom-align-right">
-                                    <el-input v-model="form.copyfrom" autocomplete="off"
+                                    <el-input v-model="form.copyfrom" autocomplete="off" :disabled="pageMode == 'view' || isme == false"
                                         placeholder="请输入来源名称"></el-input>
                                 </el-form-item>
                                 <el-form-item label="来源链接:" prop="fromurl" class="custom-align-right">
-                                    <el-input v-model="form.fromurl" autocomplete="off"
+                                    <el-input v-model="form.fromurl" autocomplete="off" :disabled="pageMode == 'view' || isme == false"
                                         placeholder="请输入来源链接"></el-input>
                                 </el-form-item>
                                 <div class="disclaimerBox">
@@ -129,11 +152,18 @@
                                         disabled="disabled"></el-input>
                                 </el-form-item>
                             </div>
-                            <el-form-item label="招聘内容:" prop="content" class="custom-align-right">
-                                <myEditor ref="myEditor" v-model="form.content"></myEditor>
-                            </el-form-item>
+                            <div v-if="pageMode == 'view' || isme == false">
+                                <el-form-item label="招聘内容:" prop="content" class="custom-align-right">
+                                    <div v-html="form.content" class="disabledContentBox"></div>
+                                </el-form-item>
+                            </div>
+                            <div v-else>
+                                <el-form-item label="招聘内容:" prop="content" class="custom-align-right">
+                                    <myEditor ref="myEditor" v-model="form.content"></myEditor>
+                                </el-form-item>
+                            </div>
                             <el-form-item label="手动推荐:" prop="commend_id" class="custom-align-right">
-                                <el-select v-model="form.commend_id" placeholder="请选择手动推荐名称" multiple filterable
+                                <el-select v-model="form.commend_id" placeholder="请选择手动推荐名称" multiple filterable :disabled="pageMode == 'view' || isme == false"
                                     clearable remote :remote-method="remoteMethod" :loading="loading">
                                     <el-option v-for="item in commend_article" :key="item.id" :label="item.title"
                                         :value="item.id"></el-option>
@@ -150,11 +180,23 @@
                                 <el-input v-model="created_at" autocomplete="off" disabled></el-input>
                             </el-form-item>
                             <el-form-item label="发布时间:" class="custom-align-right">
-                                <el-date-picker v-model="form.publiced_at" type="date" placeholder="请选择发布时间"
+                                <el-date-picker v-model="form.publiced_at" type="date" placeholder="请选择发布时间" :disabled="pageMode == 'view' || isme == false"
                                     :picker-options="pickerOptions" value-format="yyyy-MM-dd">
                                 </el-date-picker>
                             </el-form-item>
-                            <el-form-item label="附件:" class="custom-align-right" prop="">
+                            <div v-if="pageMode == 'view' || isme == false">
+                                <el-form-item label="附件:" class="custom-align-right" prop="" v-if="this.fjUrl">
+                                    {{this.fjUrl}}
+                                    <div class="disabledUploaderBox">
+                                        <div>
+                                            <img src="http://192.168.1.234:19000/pre/image/png/20260107/1767778011971130.png">
+                                            <div class="disabledUploaderBoxText">已上传文档</div>
+                                        </div>
+                                    </div>
+                                </el-form-item>
+                            </div>
+                            <div v-else>
+                                <el-form-item label="附件:" class="custom-align-right" prop="">
                                 <div v-if="fjUrl" class="chooseImgDiv1">
                                     <div>
                                         {{this.fjUrl}}
@@ -184,6 +226,7 @@
                                     </div>
                                 </div>
                             </el-form-item>
+                            </div>
                         </div>
                     </div>
                 </div>
@@ -191,8 +234,8 @@
         </div>
         <div class="bottomBtnBox">
             <el-button type="info" @click="returnPage">返回</el-button>
-            <el-button type="primary" @click="editToServe" v-if="editStatus == true">确定</el-button>
-            <el-button type="primary" @click="addToServe" v-else>发布招聘信息</el-button>
+            <el-button type="primary" @click="editToServe" v-if="editStatus == true && pageMode!='view'">确定</el-button>
+            <el-button type="primary" @click="addToServe" v-if="pageMode=='add'">发布招聘信息</el-button>
         </div>
     </div>
 </template>
@@ -254,6 +297,8 @@ export default {
         let self = this;
         //0.全局操作 end ------------------------------------------------------------>
         return {
+            isme:true,//是否是我发布的
+            pageMode:"",//页面模式 add=新建 edit=编辑 view=查看
             pickerOptions: {
                 disabledDate(time) {
                     return time.getTime() > Date.now();
@@ -334,7 +379,7 @@ export default {
                     let parentId;
                     parentId = level == 0 ? 0 : data.value;
                     let parames = {
-                        'type': 1,
+                        'type': 8,
                         'website_id': getWebSiteId(),
                         'pid': parentId
                     }
@@ -345,7 +390,7 @@ export default {
                                 label: item.alias,
                                 leaf: level >= 3,
                                 children: [],
-                                disabled: item.type != 1
+                                disabled: item.type != 8
                             }))
                             resolve(nodes)
                         }
@@ -372,7 +417,7 @@ export default {
                         self.ifwebsitId = false;
                     }
                     let parames = {
-                        'type': 1,
+                        'type': 8,
                         'website_id': self.form.website_id,
                         'pid': parentId
                     }
@@ -383,7 +428,7 @@ export default {
                                 label: item.alias,
                                 leaf: level >= 3,
                                 children: [],
-                                disabled: item.type != 1
+                                disabled: item.type != 8
                             }))
                             resolve(nodes)
                         }
@@ -393,15 +438,6 @@ export default {
             //表单项 end ------------------------------------------------------------>
         };
     },
-    watch: {
-        '$route'(to, from) {
-            console.log(from, '---------------------------------------');
-            // 监听路由参数中的 id 变化,若变化则更新页面状态并获取数据
-            if (to.query.id) {
-                this.getMainData();
-            }
-        },
-    },
     methods: {
         //1.提交表单 start ------------------------------------------------------------>
         //1.1 直接上传图片
@@ -479,7 +515,7 @@ export default {
                         formData.commend_id = JSON.stringify(formData.commend_id); // 提取推荐ID
                     }
                     if (formData.commend_id.length == 0) {
-                        formData.commend_id = '[]';
+                        formData.commend_id = [];
                     }
                     this.$store.dispatch('news/addSinglePage', formData).then(res => {//
                         if (res.code == 200) {
@@ -487,9 +523,7 @@ export default {
                                 type: 'success',
                                 message: "招聘信息发布成功!"
                             });
-                            
-                            
-                            //this.returnPage()
+                            this.returnPage()
                         } else {
                             this.$message({
                                 type: 'error',
@@ -513,7 +547,7 @@ export default {
                 this.form.keyword = "";
                 this.form.description = "";
                 this.form.content = "";
-                this.form.is_original = "";
+                this.form.is_original = 0;
                 this.form.copyfrom = "";
                 this.form.fromurl = "";
             }
@@ -528,7 +562,7 @@ export default {
                 this.form.description = "";
                 this.form.content = "";
                 this.form.author = "";
-                this.form.is_original = "";
+                this.form.is_original = 0;
                 this.form.copyfrom = "";
                 this.form.fromurl = "";
                 this.form.fujian = "";//清空附件 URL
@@ -550,15 +584,11 @@ export default {
 
         //2.跳转操作 start ------------------------------------------------------------>
         returnPage() {
-            if (this.$route.query.to == "examine") {
-                this.$router.push({
-                    path: '/examine',
-                });
-            } else {
-                this.$router.push({
-                    path: '/articleList',
-                });
-            }
+            let pagename = this.$route.query.page;
+            console.log(this.$route.query.page)
+            this.$router.push({
+                path: "/" + pagename,
+            })
         },
         //跳转操作 end ------------------------------------------------------------>
         //3.回显操作 ------------------------------------------------------------>
@@ -567,67 +597,88 @@ export default {
             let data = {
                 id: this.$route.query.id
             };
-            this.$store.dispatch('news/getArticleInfo', data).then(res => {
-                this.form.title = res.data.title;
-                this.fjUrl = res.data.fujian; // 回显附件 URL
-                //判断是否使用了外链
-                if (res.data.islink == 1) {
-                    this.form.islink = true;
-                } else {
-                    this.form.islink = false;
-                }
-                //不是原创的时候显示来源
-                if (res.data.is_original == 1) {
-                    this.form.is_original = 1;
-                    this.form.copyfrom = "本网";
-                } else {
-                    this.form.is_original = 0;
-                    this.$nextTick(() => {
+            this.$store.dispatch('news/getSinglePageInfo', data).then(res => {
+                if(res.code == 200){
+                    //判断当前的留言是否是自己发布的
+                    if(res.data.user_id == this.$store.state.user.userid) {
+                        this.isme = true;
+                    } else {
+                        this.isme = false;
+                    }
+                    //1.资讯标题
+                    this.form.title = res.data.title;
+                    this.form.cat_arr_id = Array.isArray(res.data.cat_arr_id) ? res.data.cat_arr_id : JSON.parse(res.data.cat_arr_id);
+                    //2.导航池名称
+                    this.parentKey += 1; // 触发级联选择器重新加载
+                    this.loadCascaderPath(this.form.cat_arr_id); // 加载路径数据
+                    this.parentKey_2 += 1; //触发级联选择器重新加载
+                    this.loadCascaderPath(this.form.cat_arr_id); // 加载路径数据
+                    //3.站点名称
+                    //判断website_id是否为字符串,如果是转换为数字
+                    if (typeof res.data.website_id === 'string') {
+                        this.form.website_id = Number(res.data.website_id);
+                    } else {
+                        this.form.website_id = res.data.website_id//站点名称
+                    }
+                    //4.缩略图
+                    this.form.imgurl = res.data.imgurl;
+                    this.imgUrl = res.data.imgurl;
+                    //5.关键词
+                    this.form.keyword = res.data.keyword;
+                    this.tags = res.data.keyword ? res.data.keyword.split(",") : [];
+                    //6.描述
+                    this.form.description = res.data.description;
+                    //7.作者
+                    this.form.author = res.data.author;
+                    // 8.原创 9.来源名称 12.外链地址
+                    if (res.data.is_original == 1) {
+                        this.form.is_original = 1;
+                        this.form.copyfrom = "本网";
+                    } else {
                         this.form.is_original = 0;
-                        console.log('is_original:', this.form.is_original); // 确保值已更新
+                        this.$nextTick(() => {
+                            this.form.is_original = 0;
+                            console.log('is_original:', this.form.is_original); // 确保值已更新
+                        });
+                        //来源名称
+                        this.form.copyfrom = res.data.copyfrom;
+                        //来源链接
+                        this.form.linkurl = res.data.linkurl;
+                    }
+                    //10.来源地址
+                    this.form.fromurl = res.data.fromurl;
+                    //11.外链地址
+                    if (res.data.islink == 1) {
+                        this.form.islink = true;
+                    } else {
+                        this.form.islink = false;
+                    }
+                    //13.编辑器内容
+                    this.$nextTick(() => {
+                        this.form.content = res.data.content;
                     });
+                    //14.推荐文章id
+                    this.form.commend_id = res.data.commend_id;
+                    //15.附件
+                    this.fjUrl = res.data.fujian;
+                    this.form.fujian = res.data.fujian;
+                    //16.发布时间
+                    this.form.publiced_at = res.data.publiced_at;
+                    //其他
+                    this.form.updated_at = res.data.updated_at;
+                    this.created_at = res.data.created_at;
+                    this.form.is_original = res.data.is_original;
                     this.form.copyfrom = res.data.copyfrom;
-                    this.form.linkurl = res.data.linkurl;
-                }
-                //回显站点名称
-                //判断website_id是否为字符串,如果是转换为数字
-                if (typeof res.data.website_id === 'string') {
-                    this.form.website_id = Number(res.data.website_id);
-                } else {
-                    this.form.website_id = res.data.website_id//站点名称
+            
+                }else{
+                    this.$message.error(res.message);
                 }
-                this.created_at = res.data.created_at;
-                this.form.cat_arr_id = Array.isArray(res.data.cat_arr_id) ? res.data.cat_arr_id : JSON.parse(res.data.cat_arr_id);
-                console.log(this.form.cat_arr_id)
-                //回显导航池 连同非管理员得一起刷新
-                this.parentKey += 1; // 触发级联选择器重新加载
-                this.loadCascaderPath(this.form.cat_arr_id); // 加载路径数据
-                this.parentKey_2 += 1; // 触发级联选择器重新加载
-                this.loadCascaderPath(this.form.cat_arr_id); // 加载路径数据
-                //回显其他数据
-                this.form.imgurl = res.data.imgurl;
-                this.imgUrl = res.data.imgurl;
-                this.form.keyword = res.data.keyword;
-                this.tags = res.data.keyword ? res.data.keyword.split(",") : [];
-                this.form.description = res.data.description;
-                //回显编辑器内容
-                this.$nextTick(() => {
-                    this.form.content = res.data.content;
-                });
-                this.form.author = res.data.author;
-                this.form.is_original = res.data.is_original;
-                this.form.copyfrom = res.data.copyfrom;
-                this.form.fromurl = res.data.fromurl;
-                this.form.commend_id = JSON.parse(res.data.commend_id);
-                this.form.fujian = res.data.fujian;
-                this.form.publiced_at = res.data.publiced_at;
             })
         },
         async loadCascaderPath(path) {
             for (let i = 0; i < path.length; i++) {
                 const parentId = path[i - 1] || 0; // 获取当前层级的父级ID
                 const level = i; // 当前层级的索引
-
                 await this.$store.dispatch('pool/categoryList', { pid: parentId })
                     .then((res) => {
                         const nodes = res.data.map(item => ({
@@ -646,30 +697,34 @@ export default {
         },
         //1.3提交修改
         editToServe() {
-
             if (this.form.islink == 1) {
                 this.cleatForm(1)
             }
             //添加要修改的id
             this.form.id = this.editId;
-
             //先进行验证
             this.$refs.form.validate(valid => {
                 if (valid) {
                     const formData = { ...this.form };
                     if (formData.commend_id != undefined && formData.commend_id.length > 0) {
-                        formData.commend_id = JSON.stringify(formData.commend_id); // 提取推荐ID
+                        formData.commend_id = formData.commend_id; // 提取推荐ID
                     }
                     if (formData.commend_id.length == 0) {
                         formData.commend_id = '[]';
                     }
+                    //转换为数字
+                    if(this.form.islink == true){
+                        formData.islink = 1;
+                    } else {
+                        formData.islink = 0;
+                    }
                     //console.log(this.form)
-                    this.$store.dispatch('news/updateArticle', formData).then(res => {
+                    this.$store.dispatch('news/upSinglePage', formData).then(res => {
                         if (res.code != 200) {
-
-
+                            this.$message.error(res.message);
                         } else {
-                            
+                            this.$message.success("招聘信息编辑成功!");
+                            this.returnPage()
                         }
                     }).catch(() => {
                         this.$message({
@@ -726,7 +781,7 @@ export default {
             let that = this;
             this.form.website_id = this.form.website_id[0]
             that.parentKey_2 += 1;
-            this.$store.dispatch('pool/get_creatNews_nav_son_actions', { type: 1, pid: String(this.creatNews_pid_num), website_id: String(this.form.website_id) }).then(res => {
+            this.$store.dispatch('pool/get_creatNews_nav_son_actions', { type: 8, pid: String(this.creatNews_pid_num), website_id: String(this.form.website_id) }).then(res => {
                 if (res.data.length == 0) {//没有导航池子级
                     // alert("没有导航池子级");
                     return
@@ -750,9 +805,10 @@ export default {
             this.form.keyword = newTags.join(',');
         },
         getNews() {
-            this.$store.dispatch('news/getArticleCommend', {
+            this.$store.dispatch('news/getAdviceSinglePages', {
                 'page': 1,
-                'pageSize': 20,
+                'page_size': 20,
+                'title':'',
                 'website_id': this.website_id,
             }).then(res => {
                 console.log("手动推荐", res)
@@ -836,6 +892,7 @@ export default {
             this.editStatus = false;
             console.log("添加新闻!")
         }
+        this.pageMode = this.$route.query.type;
     },
     watch: {
         'form.website_id': {
@@ -852,6 +909,39 @@ export default {
 </script>
 
 <style scoped lang="less">
+.disabledContentBox {
+    border-radius: 5px;
+    font-size:14px;
+    border: #dfe4ed 1px solid;
+    color: #C0C4CC;
+    cursor: not-allowed;
+    background: #F5F7FA;
+    padding: 0 15px;
+}
+.disabledUploaderBox {
+    border-radius: 5px;
+    font-size:14px;
+    border: #dfe4ed 1px solid;
+    color: #C0C4CC;
+    cursor: not-allowed;
+    background: #fff;
+    padding: 0 15px;
+    width: 140px;
+    height: 140px;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    img {
+        width: 100px;
+        height: 100px;
+        display: block;
+    }
+    .disabledUploaderBoxText {
+        text-align: center;
+        height: 24px;
+        line-height: 24px;
+    }
+}
 //执行v-deep穿透scope选择器 start------------------------------------------------------------>*/
 ::v-deep .custom-form-item>.el-form-item__label {
     line-height: 140px !important;

+ 10 - 12
src/views/news/jobManagementList.vue

@@ -34,7 +34,7 @@
                     <el-table :data="tableData" style="width: 100%">
                         <el-table-column fixed prop="id" label="编号" width="50"></el-table-column>
                         <el-table-column prop="title" label="招聘标题" width="400"></el-table-column>
-                        <el-table-column prop="nickname" label="栏目名称" ></el-table-column>
+                        <el-table-column prop="category_alias" label="栏目名称" ></el-table-column>
                         <el-table-column prop="updated_at" label="修改时间" ></el-table-column>
                         <el-table-column prop="status" label="状态" width="100">
                             <template slot-scope="scope">
@@ -43,7 +43,7 @@
                                 <span v-if="scope.row.status == 2" class="status2">已拒绝</span>
                             </template>
                         </el-table-column>
-                        <el-table-column prop="txry_users" label="发布人" ></el-table-column>
+                        <el-table-column prop="user_nickname" label="发布人" ></el-table-column>
                         <el-table-column fixed="right" label="操作" width="350" header-align="center">
                             <template slot-scope="scope">
                                 <div class="listBtnBox">
@@ -102,15 +102,13 @@ export default {
         //0.全局操作 end ------------------------------------------------------------>
         return {
             //1.列表和分页相关 start ------------------------------------------------------------>
-            tableDivTitle: "选题列表",
+            tableDivTitle: "招聘信息列表",
             tableData: [],//内容
             getApiData: {
-                //website_id:0,//站点id
                 is_master: 1,//是否审核列表 0:全部 1:已审核;2:已拒绝;3:未审核;
                 title: "",//留言标题
                 page: 1,//当前是第几页
                 page_size: 10,//一共多少条
-                due_time:"",//结束时间
             },
             allCount: 0,//总条数
             //分页相关 end ------------------------------------------------------------>
@@ -147,7 +145,7 @@ export default {
                 type: 'warning'
             }).then(() => {
                 console.log("当前删除:" + id)
-                this.$store.dispatch('news/delResearchTopic', {id:id}).then(res => {
+                this.$store.dispatch('news/delSinglePage', {id:id}).then(res => {
                     if(res.code == 200) {
                         this.$message({
                             type: 'success',
@@ -179,7 +177,7 @@ export default {
                     status:0,
                     reason:""
                 }
-                this.$store.dispatch('news/checkResearchTopic', data).then(res => {
+                this.$store.dispatch('news/checkSinglePage', data).then(res => {
                     if(res.code == 200) {
                         this.$message({
                             type: 'success',
@@ -224,7 +222,7 @@ export default {
                 path: '/jobManagementAdd',
                 query: {
                     type: 'add',
-                    page: 'topicList'
+                    page: 'jobManagementList'
                 }
             });
         },
@@ -235,7 +233,7 @@ export default {
                 query: {
                     id: id,
                     type: 'edit',
-                    page: 'topicList'
+                    page: 'jobManagementList'
                 }
             });
         },
@@ -246,7 +244,7 @@ export default {
                 query: {
                     id: id,
                     type: 'view',
-                    page: 'topicList'
+                    page: 'jobManagementList'
                 }
             });
         },
@@ -256,9 +254,9 @@ export default {
         //获得第一页
         this.getData();
         //1.获得用户身份
-        this.creatNews_user_type = getUseType()
+        this.creatNews_user_type = getUseType();
         //2.获得站点id
-        this.getApiData.website_id = getWebSiteId();
+        //this.getApiData.website_id = getWebSiteId();
     },
 }
 </script>

+ 10 - 10
src/views/news/jobManagementReview.vue

@@ -39,7 +39,7 @@
                     <el-table :data="tableData" style="width: 100%">
                         <el-table-column fixed prop="id" label="编号" width="50"></el-table-column>
                         <el-table-column prop="title" label="招聘标题" width="500"></el-table-column>
-                        <el-table-column prop="txry_users" label="栏目名称" ></el-table-column>
+                        <el-table-column prop="category_alias" label="栏目名称" ></el-table-column>
                         <el-table-column prop="updated_at" label="修改时间" ></el-table-column>
                         <el-table-column prop="status" label="状态" width="100">
                             <template slot-scope="scope">
@@ -48,7 +48,7 @@
                                 <span v-if="scope.row.status == 2" class="status2">已拒绝</span>
                             </template>
                         </el-table-column>
-                        <el-table-column prop="txry_users" label="同行人" ></el-table-column>
+                        <el-table-column prop="user_nickname" label="发布人" ></el-table-column>
                         <el-table-column fixed="right" label="操作" width="350" header-align="center">
                             <template slot-scope="scope">
                                 <div class="listBtnBox">
@@ -145,7 +145,7 @@ export default {
             // if(this.getApiData.due_time!=''){
             //     this.getApiData.due_time = formatDate(this.getApiData.due_time);
             // }
-            this.$store.dispatch('news/getResearchTopicList', this.getApiData).then(res => {
+            this.$store.dispatch('news/getSinglePageList', this.getApiData).then(res => {
                 //列表
                 this.tableData = res.data.rows;
                 //页数
@@ -165,7 +165,7 @@ export default {
                 type: 'warning'
             }).then(() => {
                 console.log("当前删除:" + id)
-                this.$store.dispatch('news/delResearchTopic', {id:id}).then(res => {
+                this.$store.dispatch('news/delSinglePage', {id:id}).then(res => {
                     if(res.code == 200) {
                         this.$message({
                             type: 'success',
@@ -185,7 +185,7 @@ export default {
         },
         //审核
         editData(id){
-            this.$confirm('允许该留言通过审核吗?', '提示', {
+            this.$confirm('允许该招聘信息通过审核吗?', '提示', {
                 showCancelButton: true,
                 showClose: false,
                 closeOnClickModal: false,
@@ -201,7 +201,7 @@ export default {
                     status:1,
                     reason:""
                 }
-                this.$store.dispatch('news/checkResearchTopic', data).then(res => {
+                this.$store.dispatch('news/checkSinglePage', data).then(res => {
                     if(res.code == 200) {
                         this.$message({
                             type: 'success',
@@ -217,7 +217,7 @@ export default {
                 //     type: 'warning',
                 //     message: '已取消操作'
                 // });
-                this.refuseData();
+                this.refuseData(id);
             });
         },
         refuseData(id){
@@ -235,7 +235,7 @@ export default {
                     status:2,
                     reason:value
                 }
-                this.$store.dispatch('news/checkResearchTopic', data).then(res => {
+                this.$store.dispatch('news/checkSinglePage', data).then(res => {
                     if(res.code == 200) {
                         this.$message({
                             type: 'success',
@@ -273,7 +273,7 @@ export default {
         //编辑
         gotoEdit(id) {
             this.$router.push({
-                path: '/topicAdd',
+                path: '/jobManagementAdd',
                 query: {
                     id: id,
                     type: 'edit',
@@ -284,7 +284,7 @@ export default {
         //查看
         getDataMain(id) {
             this.$router.push({
-                path: '/topicAdd',
+                path: '/jobManagementAdd',
                 query: {
                     id: id,
                     type: 'view',