Commit 2fe886e3 authored by 廖旭伟's avatar 廖旭伟

Merge remote-tracking branch 'origin/master'

parents 3af2e14b 5e787d18
<template> <template>
<!-- 弹出框表单 --> <!-- 弹出框表单 -->
<el-drawer <el-drawer
:title="title" :title="title"
:visible.sync="open" :visible.sync="open"
:direction="direction" :direction="direction"
:destroy-on-close="true" :destroy-on-close="true"
size="80%"> size="80%"
<div class="drawer"> >
<div class="card drleft"> <div class="drawer">
<div class="lefttitle">建议内容</div> <div class="card drleft">
<div class="diyhang"> <div class="lefttitle">建议内容</div>
<div class="jyitem"> <div class="diyhang">
<div class="leftlabel">真实姓名</div> <div class="jyitem">
<div class="leftanser">{{form.feedbackName}}</div> <div class="leftlabel">真实姓名</div>
</div> <div class="leftanser">
<div class="jyitem"> {{ form.feedbackName ? form.feedbackName : "--" }}
<div class="leftlabel">联系电话</div>
<div class="leftanser">{{form.contactInfo}}</div>
</div>
<div class="jyitem">
<div class="leftlabel">邮箱地址</div>
<div class="leftanser">{{form.email}}</div>
</div>
<div class="jyitem">
<div class="leftlabel">单位名称</div>
<div class="leftanser">{{form.companyName}}</div>
</div> </div>
</div> </div>
<div class="jyitem">
<div class="jyitem"> <div class="leftlabel">联系电话</div>
<div class="leftlabel">用户备注</div> <div class="leftanser">
<div class="leftanser">{{form.remark}}</div> {{ form.contactInfo ? form.contactInfo : "--" }}
</div> </div>
<div class="jyitem"> </div>
<div class="leftlabel">具体内容</div> <div class="jyitem">
<div class="leftanser">{{form.content}}</div> <div class="leftlabel">邮箱地址</div>
<div class="leftanser">{{ form.email ? form.email : "--" }}</div>
</div>
<div class="jyitem">
<div class="leftlabel">单位名称</div>
<div class="leftanser">
{{ form.companyName ? form.companyName : "--" }}
</div> </div>
<div class="jyitem"> </div>
<div class="leftlabel">附件</div> </div>
<!-- <Field label="附件名称,多个逗号分割" prop="fileName" v-model="form.fileName" placeholder="请输入附件名称,多个逗号分割"/>
<div class="jyitem">
<div class="leftlabel">用户备注</div>
<div class="leftanser">{{ form.remark ? form.remark : "--" }}</div>
</div>
<div class="jyitem">
<div class="leftlabel">具体内容</div>
<div class="leftanser">{{ form.content ? form.content : "--" }}</div>
</div>
<div class="jyitem">
<div class="leftlabel">附件</div>
<!-- <Field label="附件名称,多个逗号分割" prop="fileName" v-model="form.fileName" placeholder="请输入附件名称,多个逗号分割"/>
<Field label="附件地址,多个逗号分割"><fileUpload v-model="form.filePath" prePath="/file/fileupload"/></Field> --> <Field label="附件地址,多个逗号分割"><fileUpload v-model="form.filePath" prePath="/file/fileupload"/></Field> -->
</div>
<div class="jyitem">
<div class="leftlabel">提交日期</div>
<div class="leftanser">{{createTime}}</div>
</div>
</div> </div>
<div class="card drright"> <div class="jyitem">
<div class="righttitle">建议答复</div> <div class="leftlabel">提交日期</div>
<el-form ref="form" :model="form" :rules="rules" label-width="120px"> <div class="leftanser">{{ createTime ? createTime : "--" }}</div>
<el-row> </div>
<Field :span="23" label="所属部门" type="select" prop="deptId" v-model="form.deptId" placeholder="请输入所属部门"/> </div>
</el-row> <div class="card drright">
<!-- <el-row> <div class="righttitle">建议答复</div>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field
:span="23"
label="所属部门"
type="select"
prop="deptId"
v-model="form.deptId"
placeholder="请输入所属部门"
/>
</el-row>
<!-- <el-row>
<Field :span="23" label="所属部门名称" prop="deptName" v-model="form.deptName" placeholder="请输入所属部门名称"/> <Field :span="23" label="所属部门名称" prop="deptName" v-model="form.deptName" placeholder="请输入所属部门名称"/>
</el-row> --> </el-row> -->
<el-row> <el-row>
<Field :span="23" label="回复内容" type="textarea" prop="replyContent" v-model="form.replyContent" placeholder="请输入回复内容"/> <Field
</el-row> :span="23"
<!-- <el-row> label="回复内容"
type="textarea"
prop="replyContent"
v-model="form.replyContent"
placeholder="请输入回复内容"
/>
</el-row>
<!-- <el-row>
<Field :span="23" label="回复附件名称,多个逗号分割" prop="replyFileName" v-model="form.replyFileName" placeholder="请输入回复附件名称,多个逗号分割"/> <Field :span="23" label="回复附件名称,多个逗号分割" prop="replyFileName" v-model="form.replyFileName" placeholder="请输入回复附件名称,多个逗号分割"/>
</el-row> --> </el-row> -->
<el-row> <el-row>
<Field :span="23" label="选择附件"><fileUpload v-model="form.replyFilePath" :fileType="['png', 'jpg', 'jpeg','pdf','gif']" prePath="/file/fileupload"/></Field> <Field :span="23" label="选择附件"
</el-row> ><fileUpload
<el-row> v-model="form.replyFilePath"
<Field :span="23" label="是否公开 " prop="isShow" v-model="form.isShow" type="select" :enumData="dict.isShow" placeholder="请选择是否公开 "/> :fileType="['png', 'jpg', 'jpeg', 'pdf', 'gif']"
prePath="/file/fileupload"
/></Field>
</el-row>
<el-row>
<Field
:span="23"
label="是否公开 "
prop="isShow"
v-model="form.isShow"
type="select"
:enumData="dict.isShow"
placeholder="请选择是否公开 "
/>
<!-- <Field label="标题" prop="title" v-model="form.title" type="textarea" placeholder="请输入标题"/> --> <!-- <Field label="标题" prop="title" v-model="form.title" type="textarea" placeholder="请输入标题"/> -->
<!-- <Field label="身份证号" prop="idCard" v-model="form.idCard" placeholder="请输入身份证号"/> --> <!-- <Field label="身份证号" prop="idCard" v-model="form.idCard" placeholder="请输入身份证号"/> -->
<!-- <Field label="地址" prop="address" v-model="form.address" placeholder="请输入地址"/> <!-- <Field label="地址" prop="address" v-model="form.address" placeholder="请输入地址"/>
<Field label="是否回复 " prop="reply" v-model="form.reply" type="select" :enumData="dict.reply" placeholder="请选择是否回复 "/> <Field label="是否回复 " prop="reply" v-model="form.reply" type="select" :enumData="dict.reply" placeholder="请选择是否回复 "/>
<Field label="回复人" prop="replyPerson" v-model="form.replyPerson" placeholder="请输入回复人"/> <Field label="回复人" prop="replyPerson" v-model="form.replyPerson" placeholder="请输入回复人"/>
<Field label="回复"><editor v-model="form.replyContent" :min-height="256"/></Field> <Field label="回复"><editor v-model="form.replyContent" :min-height="256"/></Field>
...@@ -81,148 +115,156 @@ ...@@ -81,148 +115,156 @@
<Field label="处理状态" prop="processStatus" v-model="form.processStatus" type="select" :enumData="dict.processStatus" placeholder="请选择处理状态"/> <Field label="处理状态" prop="processStatus" v-model="form.processStatus" type="select" :enumData="dict.processStatus" placeholder="请选择处理状态"/>
<Field label="处理意见" prop="processComments" v-model="form.processComments" placeholder="请输入处理意见"/> <Field label="处理意见" prop="processComments" v-model="form.processComments" placeholder="请输入处理意见"/>
<Field label="处理时间" prop="processTime" v-model="form.processTime" type="date" /> --> <Field label="处理时间" prop="processTime" v-model="form.processTime" type="date" /> -->
</el-row>
</el-row> <!-- <form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn /> -->
</el-form>
<!-- <form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn /> -->
</el-form>
</div>
</div> </div>
<div class="footbtn"> </div>
<el-button type="primary" @click='submitForm' icon='el-icon-circle-check-outline'>确认</el-button> <div class="footbtn">
<el-button @click='()=>{open = false}' icon='el-icon-circle-close-outline'>取消</el-button> <el-button
</div> type="primary"
@click="submitForm"
icon="el-icon-circle-check-outline"
>确认</el-button
>
<el-button
@click="
() => {
open = false;
}
"
icon="el-icon-circle-close-outline"
>取消</el-button
>
</div>
</el-drawer> </el-drawer>
</template> </template>
<script> <script>
import moment from 'moment' import moment from "moment";
import form from "@/assets/mixins/formdialog"; import form from "@/assets/mixins/formdialog";
export default { export default {
name: "FeedbackDetail", name: "FeedbackDetail",
mixins: [form], mixins: [form],
components: { components: {},
watch: {
}, form(newval) {
watch:{ if (newval.createTime) {
form(newval){ this.createTime = moment(newval.createTime).format("yyyy-MM-DD");
if(newval.createTime){ } else {
this.createTime = moment(newval.createTime).format('yyyy-MM-DD') this.createTime = "--";
}else{ }
this.createTime = '--' },
}
}
}, },
created() { created() {
this.changePath("feedback") this.changePath("feedback");
}, },
data() { data() {
return { return {
createTime:'', createTime: "",
// 遮罩层 // 遮罩层
loading: true, loading: true,
// 弹出层标题 // 弹出层标题
title: "反馈信息", title: "反馈信息",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
direction:"rtl", direction: "rtl",
toString:[ toString: ["isShow", "reply", "feedbackType", "processStatus"],
"isShow", toDate: ["replyTime", "processTime"],
"reply",
"feedbackType",
"processStatus",
],
toDate:[
"replyTime",
"processTime",
],
// 表单校验 // 表单校验
rules: { rules: {
title: [ title: [
{required: true,message: "请输入标题", trigger: "blur" }, { required: true, message: "请输入标题", trigger: "blur" },
{max: 512,message: "最多只能录入512个字符",trigger: "blur",}, { max: 512, message: "最多只能录入512个字符", trigger: "blur" },
], ],
isShow: [ isShow: [
{required: true,message: "请输入是否公开 ", trigger: "blur" }, { required: true, message: "请输入是否公开 ", trigger: "blur" },
], ],
feedbackName: [ feedbackName: [
{required: true,message: "请输入反馈人姓名", trigger: "blur" }, { required: true, message: "请输入反馈人姓名", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",}, { max: 64, message: "最多只能录入64个字符", trigger: "blur" },
], ],
companyName: [ companyName: [
{required: true,message: "请输入单位名称", trigger: "blur" }, { required: true, message: "请输入单位名称", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",}, { max: 64, message: "最多只能录入64个字符", trigger: "blur" },
], ],
contactInfo: [ contactInfo: [
{required: true,message: "请输入联系方式", trigger: "blur" }, { required: true, message: "请输入联系方式", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",}, { max: 64, message: "最多只能录入64个字符", trigger: "blur" },
], ],
idCard: [ idCard: [
{required: true,message: "请输入身份证号", trigger: "blur" }, { required: true, message: "请输入身份证号", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",}, { max: 64, message: "最多只能录入64个字符", trigger: "blur" },
], ],
address: [ address: [
{required: true,message: "请输入地址", trigger: "blur" }, { required: true, message: "请输入地址", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",}, { max: 64, message: "最多只能录入64个字符", trigger: "blur" },
], ],
email: [ email: [
{required: true,message: "请输入邮箱地址", trigger: "blur" }, { required: true, message: "请输入邮箱地址", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",}, { max: 64, message: "最多只能录入64个字符", trigger: "blur" },
], ],
reply: [ reply: [
{required: true,message: "请输入是否回复 ", trigger: "blur" }, { required: true, message: "请输入是否回复 ", trigger: "blur" },
], ],
replyPerson: [ replyPerson: [
{required: true,message: "请输入回复人", trigger: "blur" }, { required: true, message: "请输入回复人", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",}, { max: 64, message: "最多只能录入64个字符", trigger: "blur" },
], ],
replyContent: [ replyContent: [
{required: true,message: "请输入回复", trigger: "blur" }, { required: true, message: "请输入回复", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",}, { max: 64, message: "最多只能录入64个字符", trigger: "blur" },
], ],
feedbackType: [ feedbackType: [
{required: true,message: "请输入反馈类型 ", trigger: "blur" }, { required: true, message: "请输入反馈类型 ", trigger: "blur" },
], ],
fileName: [ fileName: [
{required: true,message: "请输入附件名称,多个逗号分割", trigger: "blur" }, {
{max: 64,message: "最多只能录入64个字符",trigger: "blur",}, required: true,
message: "请输入附件名称,多个逗号分割",
trigger: "blur",
},
{ max: 64, message: "最多只能录入64个字符", trigger: "blur" },
], ],
replyFileName: [ replyFileName: [
{required: true,message: "请输入回复附件名称,多个逗号分割", trigger: "blur" }, {
{max: 64,message: "最多只能录入64个字符",trigger: "blur",}, required: true,
], message: "请输入回复附件名称,多个逗号分割",
createTime: [ trigger: "blur",
{required: true,message: "请选择创建时间" }, },
{ max: 64, message: "最多只能录入64个字符", trigger: "blur" },
], ],
} createTime: [{ required: true, message: "请选择创建时间" }],
},
}; };
}, },
methods: { methods: {
/** 编辑 */ /** 编辑 */
edit(row) { edit(row) {
this.reset() this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl ="feedback/edit"; this.urls.currUrl = "feedback/edit";
this.getData(); this.getData();
this.pageInfo.type="edit" this.pageInfo.type = "edit";
this.title = "修改反馈信息"; this.title = "修改反馈信息";
}, },
/** 新增 */ /** 新增 */
add(row) { add(row) {
this.reset() this.reset();
this.urls.currUrl = "feedback/add"; this.urls.currUrl = "feedback/add";
this.getData(); this.getData();
this.pageInfo.type="add" this.pageInfo.type = "add";
this.title = "新增反馈信息"; this.title = "新增反馈信息";
}, },
/** 查看*/ /** 查看*/
view(row) { view(row) {
this.reset() this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl ="feedback/view"; this.urls.currUrl = "feedback/view";
this.getData(); this.getData();
this.pageInfo.type="view" this.pageInfo.type = "view";
this.title = "反馈信息详细"; this.title = "反馈信息详细";
}, },
/**取消按钮 */ /**取消按钮 */
...@@ -242,32 +284,32 @@ export default { ...@@ -242,32 +284,32 @@ export default {
// 表单重置 // 表单重置
reset() { reset() {
this.form = { this.form = {
title : "", title: "",
content : "", content: "",
isShow : 0, isShow: 0,
feedbackName : "", feedbackName: "",
companyName : "", companyName: "",
contactInfo : "", contactInfo: "",
idCard : "", idCard: "",
address : "", address: "",
email : "", email: "",
reply : 0, reply: 0,
replyPerson : "", replyPerson: "",
replyContent : "", replyContent: "",
deptId : null, deptId: null,
deptName : "", deptName: "",
feedbackType : 1, feedbackType: 1,
fileName : "", fileName: "",
filePath : "", filePath: "",
replyFileName : "", replyFileName: "",
replyFilePath : "", replyFilePath: "",
replyTime : null, replyTime: null,
processId : null, processId: null,
processName : "", processName: "",
processStatus : 1, processStatus: 1,
processComments : "", processComments: "",
processTime : null, processTime: null,
remark : "", remark: "",
}; };
this.resetForm("form"); this.resetForm("form");
}, },
...@@ -280,50 +322,49 @@ export default { ...@@ -280,50 +322,49 @@ export default {
}; };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.footbtn{ .footbtn {
height: 100px; height: 100px;
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.drawer{ .drawer {
min-height: calc(100% - 100px); min-height: calc(100% - 100px);
width: 100%; width: 100%;
background: rgba(220, 220, 220, 0.466); background: rgba(220, 220, 220, 0.466);
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
padding: 20px; padding: 20px;
.drright{ .drright {
.righttitle{ .righttitle {
font-weight: 600; font-weight: 600;
margin:8px 0 20px; margin: 8px 0 20px;
color: red; color: red;
} }
} }
.drleft{ .drleft {
.jyitem{ .jyitem {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: center; justify-content: center;
.leftlabel{ .leftlabel {
color: #0377FF; color: #0377ff;
font-weight: 600; font-weight: 600;
margin:8px 0; margin: 8px 0;
} }
} }
.diyhang{ .diyhang {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
} }
.lefttitle{ .lefttitle {
font-size: 16px; font-size: 16px;
font-weight: 600; font-weight: 600;
margin-bottom: 10px; margin-bottom: 10px;
} }
} }
.card{ .card {
width: calc( 50% - 10px); width: calc(50% - 10px);
background: #ffffff; background: #ffffff;
border-radius: 25px; border-radius: 25px;
padding: 20px; padding: 20px;
......
...@@ -24,11 +24,37 @@ ...@@ -24,11 +24,37 @@
<el-table :data="tableData.data" border style="width: 100%"> <el-table :data="tableData.data" border style="width: 100%">
<el-table-column type="index" width="50" label="序号"> <el-table-column type="index" width="50" label="序号">
</el-table-column> </el-table-column>
<el-table-column prop="viewName" label="浏览人员"> </el-table-column> <el-table-column label="浏览人员">
<el-table-column prop="sumViews" label="浏览次数"> </el-table-column> <template slot-scope="scope">
<span>{{
scope.row.viewName
? scope.row.viewName
: scope.row.shareName
? scope.row.shareName
: "--"
}}</span>
</template>
</el-table-column>
<el-table-column label="浏览次数">
<template slot-scope="scope">
<span>{{
scope.row.sumViews
? scope.row.sumViews
: scope.row.sumShares
? scope.row.sumShares
: "--"
}}</span>
</template>
</el-table-column>
<el-table-column prop="viewTime" label="最近浏览时间"> <el-table-column prop="viewTime" label="最近浏览时间">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ timeFix(scope.row.viewTime) }}</span> <span>{{
scope.row.viewTime
? timeFix(scope.row.viewTime)
: scope.row.shareTime
? timeFix(scope.row.shareTime)
: "--"
}}</span>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
......
...@@ -32,6 +32,14 @@ module.exports = { ...@@ -32,6 +32,14 @@ module.exports = {
secure: false, secure: false,
cookieDomainRewrite: "localhost", cookieDomainRewrite: "localhost",
}, },
"/basics_api": {
// target: "http://test.office.com:11073",
// target: 'http://8.136.255.30:11078',
target: 'http://192.168.0.98:11086',
changeOrigin: true,
secure: false,
cookieDomainRewrite: "localhost",
},
}, },
}, },
}; };
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment