Commit 6310ce26 authored by zhangjianqian's avatar zhangjianqian

应急处置功能

parent caf4c63d
...@@ -3,7 +3,6 @@ package com.zehong.web.controller.complainDeal; ...@@ -3,7 +3,6 @@ package com.zehong.web.controller.complainDeal;
import java.util.List; import java.util.List;
import com.zehong.common.core.domain.model.LoginUser; import com.zehong.common.core.domain.model.LoginUser;
import com.zehong.framework.web.service.SysLoginService;
import com.zehong.framework.web.service.TokenService; import com.zehong.framework.web.service.TokenService;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -52,6 +51,7 @@ public class TComplainDealController extends BaseController ...@@ -52,6 +51,7 @@ public class TComplainDealController extends BaseController
if(loginUser.getUser().getDeptId()!=-2){ if(loginUser.getUser().getDeptId()!=-2){
tComplainDeal.setComplainAssignEnterproseId(loginUser.getUser().getDeptId()); tComplainDeal.setComplainAssignEnterproseId(loginUser.getUser().getDeptId());
} }
System.out.println("=========="+loginUser.getUser().getDeptId());
startPage(); startPage();
List<TComplainDeal> list = tComplainDealService.selectTComplainDealList(tComplainDeal); List<TComplainDeal> list = tComplainDealService.selectTComplainDealList(tComplainDeal);
return getDataTable(list); return getDataTable(list);
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
/> />
</el-form-item> </el-form-item>
<el-form-item label="指派单位" prop="complainAssignEnterproseId"> <el-form-item label="指派单位" prop="complainAssignEnterproseId" v-if="deptId==-2" >
<el-select v-model="queryParams.complainAssignEnterproseId" placeholder="请选择预案等级" clearable size="small"> <el-select v-model="queryParams.complainAssignEnterproseId" placeholder="请选择预案等级" clearable size="small">
<el-option <el-option
v-for = "dict in enterpriseList" v-for = "dict in enterpriseList"
...@@ -54,6 +54,7 @@ ...@@ -54,6 +54,7 @@
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
v-if="deptId==-2"
plain plain
icon="el-icon-plus" icon="el-icon-plus"
size="mini" size="mini"
...@@ -94,12 +95,12 @@ ...@@ -94,12 +95,12 @@
style="color: red" style="color: red"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handlefankui(scope.row)"
v-hasPermi="['complainDeal:complainDeal:edit']" v-hasPermi="['complainDeal:complainDeal:edit']"
>反馈</el-button> >反馈</el-button>
<el-button <el-button
size="mini" size="mini"
v-if="scope.row.complainStatus==2" v-if="scope.row.complainStatus==2 && deptId==-2"
style="color: #30B46B" style="color: #30B46B"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
...@@ -109,6 +110,7 @@ ...@@ -109,6 +110,7 @@
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
v-if="scope.row.complainStatus==1 && deptId==-2"
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
v-hasPermi="['complainDeal:complainDeal:edit']" v-hasPermi="['complainDeal:complainDeal:edit']"
...@@ -146,14 +148,6 @@ ...@@ -146,14 +148,6 @@
<el-form-item label="投诉人姓名" prop="complainName"> <el-form-item label="投诉人姓名" prop="complainName">
<el-input v-model="form.complainName" placeholder="请输入投诉人姓名" :disabled="readonly"/> <el-input v-model="form.complainName" placeholder="请输入投诉人姓名" :disabled="readonly"/>
</el-form-item> </el-form-item>
<el-form-item label="投诉人电话" prop="complainPhone">
<el-input v-model="form.complainPhone" placeholder="请输入投诉人电话" :disabled="readonly"/>
</el-form-item>
<el-form-item label="投诉事项" prop="complainMatter">
<el-input v-model="form.complainMatter" placeholder="请输入投诉事项" :disabled="readonly"/>
</el-form-item>
</div>
<div style="width: 50%;">
<el-form-item label="指派单位" prop="complainAssignEnterproseId" > <el-form-item label="指派单位" prop="complainAssignEnterproseId" >
<el-select style="width: 100%" v-model="form.complainAssignEnterproseName" placeholder="请选择预案等级" @change="qiyechang" :disabled="readonly"> <el-select style="width: 100%" v-model="form.complainAssignEnterproseName" placeholder="请选择预案等级" @change="qiyechang" :disabled="readonly">
<el-option <el-option
...@@ -165,6 +159,12 @@ ...@@ -165,6 +159,12 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</div>
<div style="width: 50%;">
<el-form-item label="投诉人电话" prop="complainPhone">
<el-input v-model="form.complainPhone" placeholder="请输入投诉人电话" :disabled="readonly"/>
</el-form-item>
<el-form-item label="指派人" prop="complainAssignManId"> <el-form-item label="指派人" prop="complainAssignManId">
<el-select v-model="form.complainAssignMan" placeholder="请选择预案等级" clearable style = "width: 100%" @change="manChang" :disabled="readonly"> <el-select v-model="form.complainAssignMan" placeholder="请选择预案等级" clearable style = "width: 100%" @change="manChang" :disabled="readonly">
<el-option <el-option
...@@ -175,17 +175,19 @@ ...@@ -175,17 +175,19 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="办理情况" prop="dealCondition">
<el-input v-model="form.dealCondition" placeholder="请输入办理情况" :disabled="readonly"/>
</el-form-item>
</div> </div>
</div> </div>
<el-form-item label="投诉事项" prop="complainMatter">
<el-form-item label="转办记录" prop="transferRecord"> <el-input v-model="form.complainMatter" type = "textarea" placeholder="请输入投诉事项" :disabled="readonly"/>
</el-form-item>
<el-form-item label="办理情况" prop="dealCondition" :style="display">
<el-input v-model="form.dealCondition" type = "textarea" placeholder="请输入办理情况" :disabled="readonly"/>
</el-form-item>
<el-form-item label="转办记录" prop="transferRecord" :style="display">
<el-input v-model="form.transferRecord" type="textarea" placeholder="请输入转办记录" :disabled="readonly"/> <el-input v-model="form.transferRecord" type="textarea" placeholder="请输入转办记录" :disabled="readonly"/>
</el-form-item> </el-form-item>
<el-form-item label="任务状态"> <el-form-item label="任务状态" :style="display">
<el-select v-model="form.complainStatus" placeholder="请选择任务状态" :disabled="readonly"> <el-select v-model="form.complainStatus" placeholder="请选择任务状态" :disabled="readonly">
<el-option <el-option
v-for="dict in taskStateOptions" v-for="dict in taskStateOptions"
...@@ -196,7 +198,7 @@ ...@@ -196,7 +198,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="remarks"> <el-form-item label="备注" prop="remarks">
<el-input v-model="form.remarks" placeholder="请输入备注" :disabled="readonly"/> <el-input v-model="form.remarks" type="textarea" placeholder="请输入备注" :disabled="readonly"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
...@@ -204,12 +206,22 @@ ...@@ -204,12 +206,22 @@
<el-button @click="cancel">取 消</el-button> <el-button @click="cancel">取 消</el-button>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog title="反馈内容" :visible.sync="dialogFormVisible" width="600px">
<el-form :model="form2">
<textarea class="inputstyle" v-model="form2.concent" type ="textarea" ></textarea>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogFormVisible = false">取 消</el-button>
<el-button type="primary" @click="submint2">确 定</el-button>
</div>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { listComplainDeal, getComplainDeal, delComplainDeal, addComplainDeal, updateComplainDeal, exportComplainDeal,getUserList } from "@/api/complainDeal/complainDeal"; import { listComplainDeal, getComplainDeal, delComplainDeal, addComplainDeal, updateComplainDeal, exportComplainDeal,getUserList } from "@/api/complainDeal/complainDeal";
import {enterpriseList} from "@/api/system/eventInfo"; import {enterpriseList} from "@/api/system/eventInfo";
import { getUserProfile } from "@/api/system/user";
export default { export default {
name: "ComplainDeal", name: "ComplainDeal",
components: { components: {
...@@ -235,12 +247,14 @@ export default { ...@@ -235,12 +247,14 @@ export default {
enterpriseList:[], enterpriseList:[],
peopleList:[], peopleList:[],
readonly:false, readonly:false,
display:"display:none",
// 投书状态类型:1.派发中 2.反馈 3.归档 // 投书状态类型:1.派发中 2.反馈 3.归档
taskStateOptions: [], taskStateOptions: [],
// 弹出层标题 // 弹出层标题
title: "", title: "",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
dialogFormVisible:false,
// 查询参数 // 查询参数
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
...@@ -262,6 +276,12 @@ export default { ...@@ -262,6 +276,12 @@ export default {
form: { form: {
peopleList:[], peopleList:[],
}, },
form2:{
complainDealId:'',
concent:'',
},
//身份
deptId:'',
// 表单校验 // 表单校验
rules: { rules: {
complainName: [ complainName: [
...@@ -281,12 +301,21 @@ export default { ...@@ -281,12 +301,21 @@ export default {
}, },
created() { created() {
this.getList(); this.getList();
this.getUser();
this.getEnterpriseList(); this.getEnterpriseList();
this.getDicts("task_state").then(response => { this.getDicts("task_state").then(response => {
this.taskStateOptions = response.data; this.taskStateOptions = response.data;
}); });
}, },
methods: { methods: {
//获取deptId
getUser() {
getUserProfile().then(response => {
this.user = response.data;
this.deptId = response.data.deptId;
//console.log(this.deptId)
});
},
/** 查询投诉处置列表 */ /** 查询投诉处置列表 */
getList() { getList() {
this.loading = true; this.loading = true;
...@@ -374,7 +403,7 @@ export default { ...@@ -374,7 +403,7 @@ export default {
var status = this.selectDictLabel(this.taskStateOptions, row.complainStatus); var status = this.selectDictLabel(this.taskStateOptions, row.complainStatus);
if(status=='派发中'){ if(status=='派发中'){
return <p style='color: #ff4949'>派发中</p> return <p style='color: #ff4949'>派发中</p>
}else if(status=="反馈"){ }else if(status=="反馈"){
return <p style='color: #1890ff'>已反馈</p> return <p style='color: #1890ff'>已反馈</p>
}else{ }else{
return <p style='color: #30B46B'>已归档</p> return <p style='color: #30B46B'>已归档</p>
...@@ -383,6 +412,7 @@ export default { ...@@ -383,6 +412,7 @@ export default {
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
handleAdd() { handleAdd() {
this.display="display:none";
this.readonly = false; this.readonly = false;
this.peopleList=[]; this.peopleList=[];
this.reset(); this.reset();
...@@ -391,6 +421,7 @@ export default { ...@@ -391,6 +421,7 @@ export default {
}, },
/** 修改按钮操作 */ /** 修改按钮操作 */
handleUpdate(row) { handleUpdate(row) {
this.display="display:none";
this.readonly = false; this.readonly = false;
this.peopleList=[]; this.peopleList=[];
this.reset(); this.reset();
...@@ -421,7 +452,9 @@ export default { ...@@ -421,7 +452,9 @@ export default {
} }
}); });
}, },
//详情
handleDtail(row) { handleDtail(row) {
this.display="display:";
this.readonly = true; this.readonly = true;
this.reset(); this.reset();
const complainDealId = row.complainDealId || this.ids const complainDealId = row.complainDealId || this.ids
...@@ -445,6 +478,7 @@ export default { ...@@ -445,6 +478,7 @@ export default {
this.msgSuccess("删除成功"); this.msgSuccess("删除成功");
}).catch(() => {}); }).catch(() => {});
}, },
//归档
handlegui(row) { handlegui(row) {
const complainDealIds = row.complainDealId || this.ids; const complainDealIds = row.complainDealId || this.ids;
this.$confirm('是否确认归档选中的投诉处置数据项?', "提示", { this.$confirm('是否确认归档选中的投诉处置数据项?', "提示", {
...@@ -459,6 +493,21 @@ export default { ...@@ -459,6 +493,21 @@ export default {
this.getList(); this.getList();
}).catch(() => {}); }).catch(() => {});
}, },
//反馈
handlefankui(row){
this.form2.concent="";
this.dialogFormVisible = true;
this.form2.complainDealId=row.complainDealId;
},
//提交反馈信息
submint2(){
var a = {"complainDealId":this.form2.complainDealId,"complainStatus":2,"dealCondition":this.form2.concent}
updateComplainDeal(a).then(response => {
this.msgSuccess("修改成功");
this.dialogFormVisible = false;
this.getList();
});
},
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {
const queryParams = this.queryParams; const queryParams = this.queryParams;
...@@ -483,4 +532,12 @@ export default { ...@@ -483,4 +532,12 @@ export default {
flex-direction:row; flex-direction:row;
justify-content:flex-start; justify-content:flex-start;
} }
.inputstyle{
min-height: 200px;
max-height: 300px;
width: 100%;
border-color: 0.5px #99a9bf;
outline:none;
}
</style> </style>
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