咨询管理

This commit is contained in:
shidongli 2024-04-16 15:09:53 +08:00
parent d97af31c58
commit 7ae7f9df44
4 changed files with 80 additions and 322 deletions

View File

@ -20,7 +20,7 @@ export function getCategory(id) {
// 新增资讯分类
export function addCategory(data) {
return request({
url: '/manage/category',
url: '/manage/category/add',
method: 'post',
data: data
})
@ -29,7 +29,7 @@ export function addCategory(data) {
// 修改资讯分类
export function updateCategory(data) {
return request({
url: '/manage/category',
url: '/manage/category/edit',
method: 'put',
data: data
})

View File

@ -20,7 +20,7 @@ export function getInfo(id) {
// 新增资讯信息
export function addInfo(data) {
return request({
url: '/manage/info',
url: '/manage/info/add',
method: 'post',
data: data
})
@ -29,7 +29,7 @@ export function addInfo(data) {
// 修改资讯信息
export function updateInfo(data) {
return request({
url: '/manage/info',
url: '/manage/info/edit',
method: 'put',
data: data
})

View File

@ -150,7 +150,7 @@
<el-table-column
label="资讯分类类型"
align="center"
prop="infoCatrgoryType"
prop="infoCategoryType"
/>
<el-table-column
label="资讯分类排序"
@ -204,7 +204,7 @@
/>
<!-- 添加或修改资讯分类对话框 -->
<el-dialog :title="title" :visible.sync="addopen" width="1100px" append-to-body>
<el-dialog :title="title" :visible.sync="addopen" width="750px" append-to-body>
<el-form
ref="form"
:model="form"
@ -213,14 +213,14 @@
:inline="true"
>
<div
v-for="(item, index) in form.infoCategory"
v-for="(item, index) in form.infoCategoryList"
:key="index"
style="margin-top: 20px; border-bottom: 1px solid #f3f3f3"
>
<el-form-item
label="资讯分类名称"
:rules="rules.infoCategory.infoCategoryName"
:prop="`infoCategory.${index}.infoCategoryName`"
:rules="rules.infoCategoryList.infoCategoryName"
:prop="`infoCategoryList.${index}.infoCategoryName`"
>
<el-input
maxlength="100"
@ -231,8 +231,8 @@
</el-form-item>
<el-form-item
label="资讯分类排序"
:rules="rules.infoCategory.infoCategorySort"
:prop="`infoCategory.${index}.infoCategorySort`"
:rules="rules.infoCategoryList.infoCategorySort"
:prop="`infoCategoryList.${index}.infoCategorySort`"
>
<el-input
v-model.number="item.infoCategorySort"
@ -242,24 +242,7 @@
placeholder="请输入资讯分类排序"
/>
</el-form-item>
<!-- <el-form-item
label="资讯分类类型"
:rules="rules.infoCategory.infoCatrgoryType"
:prop="`infoCategory.${index}.infoCatrgoryType`"
>
<el-select
v-model="item.infoCatrgoryType"
placeholder="请选择"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item> -->
<el-button
type="primary"
circle
@ -279,39 +262,6 @@
</el-button>
</div>
</el-form>
<!-- <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="资讯分类编码" prop="infoCategoryCode">
<el-input v-model="form.infoCategoryCode" placeholder="请输入资讯分类编码" />
</el-form-item>
<el-form-item label="资讯分类名称" prop="infoCategoryName">
<el-input v-model="form.infoCategoryName" placeholder="请输入资讯分类名称" />
</el-form-item>
<el-form-item label="资讯分类排序" prop="infoCategorySort">
<el-input v-model="form.infoCategorySort" placeholder="请输入资讯分类排序" />
</el-form-item>
<el-form-item label="资讯创建人" prop="infoCategoryCreator">
<el-input v-model="form.infoCategoryCreator" placeholder="请输入资讯创建人" />
</el-form-item>
<el-form-item label="资讯创建时间" prop="infoCategoryCreateTime">
<el-date-picker clearable
v-model="form.infoCategoryCreateTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择资讯创建时间">
</el-date-picker>
</el-form-item>
<el-form-item label="修改人" prop="infoCategoryReviser">
<el-input v-model="form.infoCategoryReviser" placeholder="请输入修改人" />
</el-form-item>
<el-form-item label="修改时间" prop="infoCategoryModifyTime">
<el-date-picker clearable
v-model="form.infoCategoryModifyTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择修改时间">
</el-date-picker>
</el-form-item>
</el-form> -->
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
@ -338,21 +288,7 @@
maxlength="5"
/>
</el-form-item>
<el-form-item label="资讯分类类型" prop="infoCatrgoryType">
<el-select
v-model="form.infoCatrgoryType"
placeholder="请选择"
style="width: 250px"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
@ -393,7 +329,6 @@ export default {
total: 0,
//
categoryList: [],
infoCategory: [],
//
title: "",
//
@ -413,10 +348,13 @@ export default {
infoCategoryModifyTime: null
},
//
form: {},
form: {
infoCategoryList: [],
},
//
rules: {
infoCategory: {
infoCategoryList: {
infoCategoryName: [
{
required: true,
@ -487,7 +425,7 @@ export default {
//
reset() {
this.form = {
infoCategory: [
infoCategoryList: [
{
infoCategoryName: null,
@ -534,7 +472,7 @@ export default {
},
//deldisease
deldisease(index) {
this.form.infoCategory.splice(index, 1);
this.form.infoCategoryList.splice(index, 1);
},
adddisease() {
var obj = {
@ -542,10 +480,10 @@ export default {
// infoCatrgoryType: "",
infoCategorySort: "",
};
if (this.form.infoCategory.length == 5) {
if (this.form.infoCategoryList.length == 5) {
this.$message.error("最多只能5条");
} else {
this.form.infoCategory.push(obj);
this.form.infoCategoryList.push(obj);
}
},
/** 提交按钮 */

View File

@ -21,7 +21,7 @@
<el-form-item label="资讯分类" prop="infoCategoryId">
<el-button
type=""
v-if="queryParams.infoCategoryName == '请选择资讯分类'"
v-if="infoCategoryName == '请选择资讯分类'"
@click="clickitem()"
style="
width: 250px;
@ -30,7 +30,7 @@
color: #c0c4cc;
overflow: hidden;
"
>{{ queryParams.infoCategoryName }}</el-button
>{{ infoCategoryName }}</el-button
>
<el-button
@click="clickitem()"
@ -43,7 +43,7 @@
padding-left: -10px;
overflow: hidden;
"
>{{ queryParams.infoCategoryName }}</el-button
>{{ infoCategoryName }}</el-button
>
</el-form-item>
<!-- </el-form-item> -->
@ -56,126 +56,7 @@
/>
</el-form-item>
<!-- <el-form-item label="资讯所属分类id" prop="infoCategoryId">
<el-input
v-model="queryParams.infoCategoryId"
placeholder="请输入资讯所属分类id"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯标题" prop="infoTitle">
<el-input
v-model="queryParams.infoTitle"
placeholder="请输入资讯标题"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯编码" prop="infoCode">
<el-input
v-model="queryParams.infoCode"
placeholder="请输入资讯编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="咨询点击次数" prop="infoClickCount">
<el-input
v-model="queryParams.infoClickCount"
placeholder="请输入咨询点击次数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯跳转路径" prop="infoJumpLink">
<el-input
v-model="queryParams.infoJumpLink"
placeholder="请输入资讯跳转路径"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯来源" prop="infoSource">
<el-input
v-model="queryParams.infoSource"
placeholder="请输入资讯来源"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯缩略图地址" prop="infoMainThumbnailUrl">
<el-input
v-model="queryParams.infoMainThumbnailUrl"
placeholder="请输入资讯缩略图地址"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯负缩略图1地址" prop="infoNegativeOneThumbnailUrl">
<el-input
v-model="queryParams.infoNegativeOneThumbnailUrl"
placeholder="请输入资讯负缩略图1地址"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯负缩略图2地址" prop="infoNegativeTwoThumbnailUrl">
<el-input
v-model="queryParams.infoNegativeTwoThumbnailUrl"
placeholder="请输入资讯负缩略图2地址"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯大图地址" prop="infoLargePictureUrl">
<el-input
v-model="queryParams.infoLargePictureUrl"
placeholder="请输入资讯大图地址"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯排序" prop="infoSort">
<el-input
v-model="queryParams.infoSort"
placeholder="请输入资讯排序"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯创建人" prop="infoCreator">
<el-input
v-model="queryParams.infoCreator"
placeholder="请输入资讯创建人"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯创建时间" prop="infoCreateTime">
<el-date-picker clearable
v-model="queryParams.infoCreateTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择资讯创建时间">
</el-date-picker>
</el-form-item>
<el-form-item label="资讯修改人" prop="infoReviser">
<el-input
v-model="queryParams.infoReviser"
placeholder="请输入资讯修改人"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="资讯修改时间" prop="infoModifyTime">
<el-date-picker clearable
v-model="queryParams.infoModifyTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择资讯修改时间">
</el-date-picker>
</el-form-item> -->
<el-form-item>
<el-button
type="primary"
@ -251,28 +132,10 @@
<!-- <el-table-column label="主键id" align="center" prop="id" /> -->
<el-table-column label="资讯标题" align="center" prop="infoTitle" />
<el-table-column label="资讯编码" align="center" prop="infoCode" />
<el-table-column label="资讯分类" align="center" prop="infoCategoryId" />
<!-- <el-table-column label="资讯图文内容,富文本" align="center" prop="infoContent" />
<el-table-column label="咨询点击次数" align="center" prop="infoClickCount" />
<el-table-column label="资讯跳转路径" align="center" prop="infoJumpLink" />
<el-table-column label="资讯来源" align="center" prop="infoSource" />
<el-table-column label="资讯缩略图地址" align="center" prop="infoMainThumbnailUrl" />
<el-table-column label="资讯负缩略图1地址" align="center" prop="infoNegativeOneThumbnailUrl" />
<el-table-column label="资讯负缩略图2地址" align="center" prop="infoNegativeTwoThumbnailUrl" />
<el-table-column label="资讯大图地址" align="center" prop="infoLargePictureUrl" /> -->
<el-table-column label="资讯分类" align="center" prop="infoCategoryName" />
<el-table-column label="资讯排序" align="center" prop="infoSort" />
<!-- <el-table-column label="资讯创建人" align="center" prop="infoCreator" />
<el-table-column label="资讯创建时间" align="center" prop="infoCreateTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.infoCreateTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="资讯修改人" align="center" prop="infoReviser" />
<el-table-column label="资讯修改时间" align="center" prop="infoModifyTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.infoModifyTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column> -->
<el-table-column
label="操作"
align="center"
@ -308,73 +171,6 @@
/>
<!-- 添加或修改资讯信息对话框 -->
<!-- <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="资讯所属分类id" prop="infoCategoryId">
<el-input v-model="form.infoCategoryId" placeholder="请输入资讯所属分类id" />
</el-form-item>
<el-form-item label="资讯标题" prop="infoTitle">
<el-input v-model="form.infoTitle" placeholder="请输入资讯标题" />
</el-form-item>
<el-form-item label="资讯编码" prop="infoCode">
<el-input v-model="form.infoCode" placeholder="请输入资讯编码" />
</el-form-item>
<el-form-item label="资讯图文内容,富文本">
<editor v-model="form.infoContent" :min-height="192"/>
</el-form-item>
<el-form-item label="咨询点击次数" prop="infoClickCount">
<el-input v-model="form.infoClickCount" placeholder="请输入咨询点击次数" />
</el-form-item>
<el-form-item label="资讯跳转路径" prop="infoJumpLink">
<el-input v-model="form.infoJumpLink" placeholder="请输入资讯跳转路径" />
</el-form-item>
<el-form-item label="资讯来源" prop="infoSource">
<el-input v-model="form.infoSource" placeholder="请输入资讯来源" />
</el-form-item>
<el-form-item label="资讯缩略图地址" prop="infoMainThumbnailUrl">
<el-input v-model="form.infoMainThumbnailUrl" placeholder="请输入资讯缩略图地址" />
</el-form-item>
<el-form-item label="资讯负缩略图1地址" prop="infoNegativeOneThumbnailUrl">
<el-input v-model="form.infoNegativeOneThumbnailUrl" placeholder="请输入资讯负缩略图1地址" />
</el-form-item>
<el-form-item label="资讯负缩略图2地址" prop="infoNegativeTwoThumbnailUrl">
<el-input v-model="form.infoNegativeTwoThumbnailUrl" placeholder="请输入资讯负缩略图2地址" />
</el-form-item>
<el-form-item label="资讯大图地址" prop="infoLargePictureUrl">
<el-input v-model="form.infoLargePictureUrl" placeholder="请输入资讯大图地址" />
</el-form-item>
<el-form-item label="资讯排序" prop="infoSort">
<el-input v-model="form.infoSort" placeholder="请输入资讯排序" />
</el-form-item>
<el-form-item label="资讯创建人" prop="infoCreator">
<el-input v-model="form.infoCreator" placeholder="请输入资讯创建人" />
</el-form-item>
<el-form-item label="资讯创建时间" prop="infoCreateTime">
<el-date-picker clearable
v-model="form.infoCreateTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择资讯创建时间">
</el-date-picker>
</el-form-item>
<el-form-item label="资讯修改人" prop="infoReviser">
<el-input v-model="form.infoReviser" placeholder="请输入资讯修改人" />
</el-form-item>
<el-form-item label="资讯修改时间" prop="infoModifyTime">
<el-date-picker clearable
v-model="form.infoModifyTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择资讯修改时间">
</el-date-picker>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog> -->
<el-dialog :title="title" :visible.sync="open" width="900px" append-to-body>
<el-form
ref="form"
@ -390,7 +186,7 @@
placeholder="请输入资讯标题"
/>
</el-form-item>
<el-form-item label="资讯分类" prop="infoCategoryName">
<el-form-item label="资讯分类" prop="infoCategoryId">
<el-button
type=""
v-if="form.infoCategoryName == '请选择资讯分类'"
@ -419,11 +215,11 @@
>
</el-form-item>
<el-form-item label="资讯图标" prop="infoMainThumbnailUrl">
<el-form-item label="资讯图标" prop="infoLargePictureUrl">
<stationAcatar
style="width: 208px"
@imgUrl="imgUrl"
:img="form.infoMainThumbnailUrl"
:img="form.infoLargePictureUrl"
:type="'infoMainThumbnailUrl'"
/>
<!-- <el-input v-model="form.leadThumbnailUrl" placeholder="请输入资讯主缩略图地址" /> -->
@ -438,14 +234,14 @@
maxLength="5"
/>
</el-form-item>
<el-form-item label="资讯图文内容" prop="content">
<el-form-item label="资讯图文内容" prop="infoContent">
<editor
@imgs="imgs"
maxlength="300"
:min-height="102"
placeholder="请输入资讯图文内容"
style="width: 80%; margin-left: 18%; margin-top: -5%"
v-model="form.content"
v-model="form.infoContent"
/>
</el-form-item>
</el-form>
@ -465,7 +261,6 @@
<el-form
ref="queryForm"
:model="informationqueryParams"
:rules="rules"
label-width="80px"
:inline="true"
>
@ -482,7 +277,7 @@
</el-form-item>
<el-form-item
label="资讯分类名称"
prop="infoCategoryName"
label-width="120"
>
<el-input
@ -518,7 +313,7 @@
<el-button
type="primary"
style="width: 15px; height: 15px"
v-if="form.informationCategoryId == scope.row.id"
v-if="form.infoCategoryId == scope.row.id"
circle
@click="nurseclick(scope.row)"
></el-button>
@ -584,7 +379,6 @@
<el-form
ref="queryForm"
:model="informationqueryParams"
:rules="rules"
label-width="80px"
:inline="true"
>
@ -601,7 +395,6 @@
</el-form-item>
<el-form-item
label="资讯分类名称"
prop="infoCategoryName"
label-width="120"
>
<el-input
@ -637,7 +430,7 @@
<el-button
type="primary"
style="width: 15px; height: 15px"
v-if="queryParams.informationCategoryId == scope.row.id"
v-if="queryParams.infoCategoryId == scope.row.id"
circle
@click="nurseclickzx(scope.row)"
></el-button>
@ -694,12 +487,13 @@ export default {
innerVisible: false,
innerVisiblezx: false,
imgs:'',
infoCategoryName:'请选择资讯分类',
informationqueryParams: {
pageNum: 1,
pageSize: 10,
infoCategoryCode: "",
infoCategoryName: "",
informationCategoryId: "",
infoCategoryId: "",
},
//
loading: true,
@ -725,6 +519,7 @@ export default {
queryParams: {
pageNum: 1,
pageSize: 10,
infoCategoryName:"",
infoCategoryId: null,
infoTitle: null,
@ -733,9 +528,7 @@ export default {
infoClickCount: null,
infoJumpLink: null,
infoSource: null,
infoMainThumbnailUrl: null,
infoNegativeOneThumbnailUrl: null,
infoNegativeTwoThumbnailUrl: null,
infoLargePictureUrl: null,
infoSort: null,
infoCreator: null,
@ -751,7 +544,7 @@ export default {
// infoTitle: [
// { required: true, message: "", trigger: "blur" }
// ],
infoCategoryName: [
infoCategoryId: [
{
required: true,
message: "请选择资讯分类",
@ -765,7 +558,7 @@ export default {
trigger: "blur",
},
],
infoMainThumbnailUrl: [
infoLargePictureUrl: [
{
required: true,
trigger: "blur",
@ -779,7 +572,7 @@ export default {
message: "请输入显示顺序",
},
],
content: [
infoContent: [
{
required: true,
message: "请输入资讯图文内容",
@ -800,7 +593,7 @@ export default {
},
imgUrl(imgUrl) {
console.log(imgUrl,'imgUrl')
this.form.infoMainThumbnailUrl = imgUrl;
this.form.infoLargePictureUrl = imgUrl;
},
// imgs(item) {
// this.imgsurl.pictureUrlList.push(item);
@ -821,6 +614,8 @@ export default {
infoCategoryCode: "",
informationTitle: "",
infoCategoryName: "",
};
this.getList();
},
@ -845,13 +640,14 @@ export default {
this.innerVisiblezx = true;
},
nurseclick(row) {
// this.form.informationCategoryId = row.id;
this.form.infoCategoryId = row.id;
this.form.infoCategoryName = row.infoCategoryName;
this.innerVisible = false;
},
nurseclickzx(row) {
// this.queryParams.informationCategoryId = row.id;
this.queryParams.infoCategoryId = row.id;
this.queryParams.infoCategoryName = row.infoCategoryName;
this.infoCategoryName = this.queryParams.infoCategoryName;
this.innerVisiblezx = false;
},
/** 查询资讯信息列表 */
@ -878,10 +674,7 @@ export default {
infoContent: null,
infoClickCount: null,
infoJumpLink: null,
infoSource: null,
infoMainThumbnailUrl: null,
infoNegativeOneThumbnailUrl: null,
infoNegativeTwoThumbnailUrl: null,
infoLargePictureUrl: null,
infoSort: null,
infoCreator: null,
@ -893,13 +686,39 @@ export default {
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.queryParams.pageNum= 1
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
this.queryParams= {
pageNum: 1,
pageSize: 10,
infoCategoryName:null,
infoCategoryId:null,
infoCategoryId: null,
infoTitle: null,
infoCode: null,
infoContent: null,
infoClickCount: null,
infoJumpLink: null,
infoSource: null,
infoLargePictureUrl: null,
infoSort: null,
infoCreator: null,
infoCreateTime: null,
infoReviser: null,
infoModifyTime: null
}
this.infoCategoryName="请选择资讯分类"
this.getList();
// this.handleQuery();
},
//
handleSelectionChange(selection) {
@ -928,6 +747,7 @@ export default {
/** 提交按钮 */
submitForm() {
console.log(this.form,'this.form')
// return
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {