诉求调解相关接口完成

master
liuqingkun 3 years ago
parent 7e805cdd2f
commit d5d2721107
  1. 263
      doc/api.md
  2. 11
      src/main/java/org/springblade/common/constant/BusinessConstant.java
  3. 40
      src/main/java/org/springblade/modules/business/controller/AppealMediateController.java
  4. 2
      src/main/java/org/springblade/modules/business/mapper/AppealRegMapper.xml
  5. 28
      src/main/java/org/springblade/modules/business/service/IAppealMediationService.java
  6. 9
      src/main/java/org/springblade/modules/business/service/IAppealRegService.java
  7. 135
      src/main/java/org/springblade/modules/business/service/impl/AppealMediationServiceImpl.java
  8. 12
      src/main/java/org/springblade/modules/business/service/impl/AppealRegServiceImpl.java
  9. 50
      src/main/java/org/springblade/modules/business/vo/AppealMediationDetailListVO.java
  10. 106
      src/main/java/org/springblade/modules/business/vo/AppealMediationVO.java

@ -346,9 +346,9 @@
| - addressNow | string | N | 现住址 |
| - phone | string | N | 联系电话 |
| disposeDept | string | N | 何单位处理过 |
| hasProtocol | string | N | 协议书 |
| hasOpinion | string | N | 处理意见 |
| hasReviewOpinion | string | N | 复查意见 |
| protocol | string | N | 协议书 |
| opinion | string | N | 处理意见 |
| reviewOpinion | string | N | 复查意见 |
| legalPaper | string | N | 法律文书 |
| problemDesc | string | N | 主要问题 |
@ -381,7 +381,7 @@
"reviewOpinion": "无",
"legalPaper": "无",
"firstRegTime": "2023-03-02 00:00:00",
"problemDesc": "来访者为"
"problemDesc": "来访者为.........."
}
```
@ -410,16 +410,17 @@
- 返回示例
```json
{
"code": 200,
"success": true,
"data": [
{
"id": "122555646684684",
"mediateTime": "2012-05-15 12:30",
"talkingAdvice": "接谈意见..........."
}
],
"msg": "操作成功"
"code": 200,
"success": true,
"data": [
{
"appealId": 1,
"mediationId": 1,
"talkingTime": "2023-03-01 13:00:00",
"talkingHis": "谈话记录谈话记录"
}
],
"msg": "操作成功"
}
```
@ -437,48 +438,58 @@
- 返回示例
```json
{
"code": 200,
"success": true,
"data": [
{
"appealId": "诉求ID",
"appealRegId": "诉求登记ID",
"streetName": "胶州市",
"disputeName": "土地纠纷",
"disposeDept": "市住建局",
"hasProtocol": "无协议书",
"hasOpinion": "无处理意见",
"hasReviewOpinion": "无复查意见",
"legalPaper": "无法律文书",
"regTime": "2012-05-15 12:30",
"problemDesc": "矛盾描述...........",
"talkingAdviceList": [
{
"id": "调解记录id",
"talkingTime": "2022-06-03 12:05",
"talkingHis": "第一次接谈意见..........."
},{
"id": "调解记录id",
"talkingTime": "2022-06-02 10:05",
"talkingHis": "第二次接谈意见..........."
}
],
"userList": [
{
"id": 1546486176165,
"username": "张三",
"gender": 1,
"age": 32,
"cardno": "3708821548488178",
"address": "洋河镇",
"addressNow": "洋河镇",
"phone": "13564854126"
}
]
}
],
"msg": "操作成功"
"code": 200,
"success": true,
"data": {
"appealId": 1,
"appealRegId": 1,
"visitors": [
{
"appealId": 1,
"appealRegId": 1,
"username": "庄培燕",
"gender": "女",
"age": 25,
"cardno": "37234635323451345",
"address": "大相家村",
"addressNow": "",
"phone": "13566457424",
"sort": 1
}
],
"personNum": -1,
"streetId": "1666697016771792897",
"disputeId": "1666697784342007809",
"disputeName": "损害赔偿纠纷",
"disposeDept": "",
"disposeDeptName": "",
"protocol": "无",
"opinion": "无",
"reviewOpinion": "无",
"legalPaper": "无",
"firstRegTime": "2023-03-02 00:00:00",
"skipGrant": -1,
"problemDesc": "来访者为",
"talkingHisList": [
{
"appealId": 1,
"mediationId": 1,
"talkingTime": "2023-03-01 13:00:00",
"talkingHis": "谈话记录谈话记录"
}
],
"attitude": "",
"talkingAdvice": "",
"dutyDeptIds": "",
"copyDeptIds": "",
"disputeLevel": -1,
"feedbackDeadline": "",
"finishDeadline": "",
"remark": "",
"submitTime": "",
"fileList": []
},
"msg": "操作成功"
}
```
@ -496,58 +507,58 @@
- 返回示例
```json
{
"code": 200,
"success": true,
"data": [
{
"id": "调解记录id",
"appealId": "诉求ID",
"appealRegId": "诉求登记ID",
"streetName": "胶州市",
"disputeLevel": "事件等级",
"status": "诉求状态",
"disputeName": "土地纠纷",
"disposeDept": "市住建局",
"hasProtocol": "无协议书",
"hasOpinion": "无处理意见",
"hasReviewOpinion": "无复查意见",
"legalPaper": "无法律文书",
"regTime": "2012-05-15 12:30",
"problemDesc": "矛盾描述...........",
"attitude": "上访人意见",
"dutyDeptNames": "负责部门名称, 以逗号分割",
"copyDeptNames": "抄送部门名称, 以逗号分割",
"feedbackDeadline": "2022-12-02",
"finishDeadline": "2022-12-02",
"remark": "备注",
"submitTime": "2022-08-19",
"talkingAdviceList": [
{
"id": "调解记录id",
"talkingTime": "2022-06-03 12:05",
"talkingHis": "第一次接谈意见..........."
},{
"id": "调解记录id",
"talkingTime": "2022-06-02 10:05",
"talkingHis": "第二次接谈意见..........."
}
],
"userList": [
{
"id": 1546486176165,
"username": "张三",
"gender": 1,
"age": 32,
"cardno": "3708821548488178",
"address": "洋河镇",
"addressNow": "洋河镇",
"phone": "13564854126"
}
]
}
],
"msg": "操作成功"
"code": 200,
"success": true,
"data": {
"appealId": 1,
"appealRegId": 1,
"visitors": [
{
"appealId": 1,
"appealRegId": 1,
"username": "庄培燕",
"gender": "女",
"age": 25,
"cardno": "37234635323451345",
"address": "大相家村",
"addressNow": "",
"phone": "13566457424",
"sort": 1
}
],
"personNum": -1,
"streetId": "1666697016771792897",
"disputeId": "1666697784342007809",
"disputeName": "损害赔偿纠纷",
"disposeDept": "",
"disposeDeptName": "",
"protocol": "无",
"opinion": "无",
"reviewOpinion": "无",
"legalPaper": "无",
"firstRegTime": "2023-03-02 00:00:00",
"skipGrant": -1,
"problemDesc": "来访者为",
"talkingHisList": [
{
"appealId": 1,
"mediationId": 1,
"talkingTime": "2023-03-01 13:00:00",
"talkingHis": "谈话记录谈话记录"
}
],
"attitude": "上访人态度",
"talkingAdvice": "上访人态度",
"dutyDeptIds": "上访人态度",
"copyDeptIds": "上访人态度",
"disputeLevel": 1,
"feedbackDeadline": "2023-10-01 00:00:00",
"finishDeadline": "2023-10-01 00:00:00",
"remark": "",
"submitTime": "2023-03-01 00:00:00",
"fileList": []
},
"msg": "操作成功"
}
```
@ -584,6 +595,42 @@
| fileList | list | N | 上传文件列表 |
| - url | list | N | 上传文件路径 |
- 请求示例
```json
{
"appealId": 1,
"appealRegId": 1,
"streetId": "1666697016771792897",
"disputeName": "损害赔偿纠纷",
"disposeDept": "",
"disposeDeptName": "",
"protocol": "无",
"opinion": "无",
"reviewOpinion": "无",
"legalPaper": "无",
"firstRegTime": "2023-03-02 00:00:00",
"skipGrant": -1,
"problemDesc": "来访者为",
"talkingHisList": [
{
"appealId": 1,
"mediationId": 1,
"talkingTime": "2023-03-01 13:00:00",
"talkingHis": "谈话记录谈话记录"
}
],
"attitude": "",
"talkingAdvice": "",
"dutyDeptIds": "",
"copyDeptIds": "",
"disputeLevel": -1,
"feedbackDeadline": "",
"finishDeadline": "",
"remark": "",
"submitTime": "",
"fileList": []
}
```
- 返回示例
```json

@ -23,6 +23,9 @@ package org.springblade.common.constant;
*/
public interface BusinessConstant {
Integer CODE_TRUE = 1;
Integer CODE_FALSE = 0;
/**
* 启用禁用, 0:禁用, 1:启用
*/
@ -34,4 +37,12 @@ public interface BusinessConstant {
*/
Integer SOURCE_TYPE_SYSTEM = 0;
Integer SOURCE_TYPE_IMPORT = 1;
/**
* 纠纷等级(事件等级), 0:简单, 1:一般, 2:重大, 3:疑难
*/
Integer DISPUTE_LEVEL_ZERO = 0;
Integer DISPUTE_LEVEL_ONE = 1;
Integer DISPUTE_LEVEL_TWO = 2;
Integer DISPUTE_LEVEL_THREE = 3;
}

@ -16,6 +16,7 @@
*/
package org.springblade.modules.business.controller;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.xiaoymin.knife4j.annotations.ApiSort;
import io.swagger.annotations.Api;
import lombok.AllArgsConstructor;
@ -23,14 +24,14 @@ import org.springblade.common.constant.CommonConstant;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.tenant.annotation.TenantDS;
import org.springblade.core.tool.api.R;
import org.springblade.modules.business.vo.AppealListVO;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.modules.business.entity.AppealMediation;
import org.springblade.modules.business.service.IAppealMediationService;
import org.springblade.modules.business.vo.AppealMediationDetailListVO;
import org.springblade.modules.business.vo.AppealMediationVO;
import org.springblade.modules.business.vo.AppealRegVO;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
/**
@ -46,6 +47,8 @@ import java.util.List;
@Api(value = "诉求调解管理", tags = "诉求调解管理接口")
public class AppealMediateController extends BladeController {
private final IAppealMediationService mediationService;
/**
* 调解记录列表(点击"调解记录")
*
@ -54,8 +57,16 @@ public class AppealMediateController extends BladeController {
*/
@GetMapping("/getMediateList")
public R getMediateList(String appealId) {
List<AppealMediation> mediationList = mediationService.list(Wrappers.<AppealMediation>lambdaQuery().eq(AppealMediation::getAppealId, appealId));
List<AppealMediationDetailListVO> vos = new ArrayList<>();
mediationList.forEach(entity -> {
AppealMediationDetailListVO vo = BeanUtil.copy(entity, AppealMediationDetailListVO.class);
vo.setMediationId(entity.getId());
vos.add(vo);
});
return null;
return R.data(vos);
}
/**
@ -66,20 +77,18 @@ public class AppealMediateController extends BladeController {
*/
@GetMapping("/getNewestReg")
public R getNewestReg(String appealId) {
return null;
return R.data(mediationService.getNewestReg(appealId));
}
/**
* 根据调解记录id获取详情, 获取 诉求信息, 本次调解记录(参数id指定的调解记录), 所有调解访谈记录列表(带id)
*
* @param appealId 诉求ID
* @param mediateId 调解记录ID
* @return
*/
@GetMapping("/detail")
public R detail(String appealId) {
return null;
public R detail(String mediateId) {
return R.data(mediationService.detail(mediateId));
}
/**
@ -88,9 +97,8 @@ public class AppealMediateController extends BladeController {
* @param entity 诉求调解实体
* @return
*/
@GetMapping("/save")
@PostMapping("/save")
public R save(@RequestBody AppealMediationVO entity) {
return null;
return R.status(mediationService.saveMediate(entity));
}
}

@ -54,5 +54,7 @@
select *
from mp_appeal_reg
where appeal_id = #{appealId}
order by create_time desc
limit 1
</select>
</mapper>

@ -16,14 +16,40 @@
*/
package org.springblade.modules.business.service;
import org.springblade.core.tool.api.R;
import org.springblade.modules.business.entity.AppealMediation;
import org.springblade.core.mp.base.BaseService;
import org.springblade.modules.business.vo.AppealMediationVO;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 服务类
* 服务类
*
* @author BladeX
*/
public interface IAppealMediationService extends BaseService<AppealMediation> {
/**
* 根据诉求id获取最新的登记信息及所有调解访谈记录列表(点击"诉求调解")
*
* @param appealId 诉求ID
* @return
*/
AppealMediationVO getNewestReg(String appealId);
/**
* 根据调解记录id获取详情, 获取 诉求信息, 本次调解记录(参数id指定的调解记录), 所有调解访谈记录列表(带id)
*
* @param mediateId 调解记录ID
* @return
*/
AppealMediationVO detail(String mediateId);
/**
* 根据调解记录id获取详情, 获取 诉求信息, 本次调解记录(参数id指定的调解记录), 所有调解访谈记录列表(带id)
*
* @param entity 诉求调解实体
* @return
*/
boolean saveMediate(@RequestBody AppealMediationVO entity);
}

@ -16,6 +16,7 @@
*/
package org.springblade.modules.business.service;
import org.apache.ibatis.annotations.Param;
import org.springblade.core.mp.base.BaseService;
import org.springblade.core.tool.api.R;
import org.springblade.modules.business.entity.AppealReg;
@ -59,4 +60,12 @@ public interface IAppealRegService extends BaseService<AppealReg> {
* 保存
*/
boolean saveReg(AppealRegVO entity);
/**
* 获取最后一次登记记录
*
* @param appealId
* @return
*/
AppealReg getLastReg(@Param("appealId") String appealId);
}

@ -16,18 +16,149 @@
*/
package org.springblade.modules.business.service.impl;
import org.springblade.modules.business.entity.AppealMediation;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.springblade.common.constant.BusinessConstant;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.business.entity.*;
import org.springblade.modules.business.mapper.AppealMediationMapper;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.modules.business.service.IAppealMediationService;
import org.springblade.modules.business.mapper.AppealVisitorMapper;
import org.springblade.modules.business.service.*;
import org.springblade.modules.business.vo.AppealMediationDetailListVO;
import org.springblade.modules.business.vo.AppealMediationVO;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* 服务实现类
*
* @author BladeX
*/
@Service
@RequiredArgsConstructor
public class AppealMediationServiceImpl extends BaseServiceImpl<AppealMediationMapper, AppealMediation> implements IAppealMediationService {
private final IAppealService appealService;
private final IAppealRegService appealRegService;
private final AppealVisitorMapper visitorMapper;
private final IAppealMediationFileService fileService;
@Override
public AppealMediationVO getNewestReg(String appealId) {
return getMediationDetail(appealId, null);
}
@Override
public AppealMediationVO detail(String mediateId) {
AppealMediation mediation = baseMapper.selectById(mediateId);
if (Func.isEmpty(mediation)) {
return null;
}
return getMediationDetail(mediation.getAppealId().toString(), mediateId);
}
@Override
public boolean saveMediate(AppealMediationVO entity) {
// 解析保存数据, 构建保存对象
Appeal appeal = BeanUtil.copy(entity, Appeal.class);
appeal.setId(entity.getAppealId());
AppealReg reg = BeanUtil.copy(entity, AppealReg.class);
AppealMediation mediation = BeanUtil.copy(entity, AppealMediation.class);
if (Func.isEmpty(appeal))
return false;
appeal.setSourceType(BusinessConstant.SOURCE_TYPE_SYSTEM);
// 更新诉求和诉求登记的信息
appeal.setSkipGrant(appeal.getSkipGrant() == -1 ? BusinessConstant.CODE_FALSE : appeal.getSkipGrant());
appeal.setDisputeLevel(appeal.getDisputeLevel() == -1 ? BusinessConstant.DISPUTE_LEVEL_ZERO : appeal.getDisputeLevel());
appealService.updateById(appeal);
reg.setId(entity.getAppealRegId());
appealRegService.updateById(reg);
List<AppealMediationDetailListVO> talkingHisList = entity.getTalkingHisList();
if (Func.isEmpty(talkingHisList))
return false;
mediation.setTalkingTime(talkingHisList.get(0).getTalkingTime());
mediation.setTalkingHis(talkingHisList.get(0).getTalkingHis());
save(mediation);
List<AppealMediationFile> fileList = entity.getFileList();
fileList.forEach(file -> {
file.setAppealId(mediation.getAppealId());
file.setAppealId(mediation.getAppealRegId());
file.setMediationId(mediation.getId());
});
fileService.saveBatch(fileList);
return true;
}
private AppealMediationVO getMediationDetail(String appealId, String mediationId) {
AppealMediationVO vo = new AppealMediationVO();
Appeal appeal = appealService.getById(appealId);
if (Func.isEmpty(appeal)) {
return null;
}
// 获取全部调解记录, 按照时间顺序排列
List<AppealMediation> mediationList = baseMapper.selectList(
Wrappers.<AppealMediation>lambdaQuery().eq(AppealMediation::getAppealId, appealId));
// 转化为谈话记录列表
List<AppealMediationDetailListVO> detailList = new ArrayList<>();
mediationList.forEach(mediation -> {
AppealMediationDetailListVO listVO = BeanUtil.copy(mediation, AppealMediationDetailListVO.class);
listVO.setMediationId(mediation.getId());
detailList.add(listVO);
});
// 若未指定调解记录, 取最后一次, 否则取指定的调解记录
AppealMediation mediation = null;
if (Func.isNotBlank(mediationId)) {
mediation = mediationList.stream().filter(o -> o.getId() == Long.parseLong(mediationId)).findAny().orElse(null);
}
// 若指定调解记录, 获取该记录对应的登记, 否则取最后一次登记记录
AppealReg appealReg = Func.isEmpty(mediation) ? appealRegService.getLastReg(appealId) : appealRegService.getById(mediation.getAppealRegId());
// 获取登记的来访人员
List<AppealVisitor> visitorList = visitorMapper.selectList(
Wrappers.<AppealVisitor>lambdaQuery().eq(AppealVisitor::getAppealRegId, appealReg.getId()));
// 4. 组织返回对象数据
vo.setAppealId(Long.valueOf(appealId));
vo.setVisitors(visitorList);
vo.setStreetId(appeal.getStreetId());
vo.setDisputeId(appeal.getDisputeId());
vo.setDisputeName(appeal.getDisputeName());
vo.setDisposeDept(appealReg.getDisposeDept());
vo.setDisposeDeptName(appealReg.getDisposeDeptName());
vo.setProtocol(appealReg.getProtocol());
vo.setOpinion(appealReg.getOpinion());
vo.setReviewOpinion(appealReg.getReviewOpinion());
vo.setLegalPaper(appealReg.getLegalPaper());
vo.setFirstRegTime(appeal.getFirstRegTime());
vo.setProblemDesc(appeal.getProblemDesc());
vo.setTalkingHisList(detailList);
if (Func.isNotEmpty(mediation)) {
List<AppealMediationFile> fileList = fileService.list(
Wrappers.<AppealMediationFile>lambdaQuery().eq(AppealMediationFile::getMediationId, mediation.getId()));
vo.setAttitude(mediation.getAttitude());
vo.setTalkingAdvice(mediation.getAttitude());
vo.setDutyDeptIds(mediation.getAttitude());
vo.setCopyDeptIds(mediation.getAttitude());
vo.setDisputeLevel(appeal.getDisputeLevel());
vo.setFeedbackDeadline(mediation.getFeedbackDeadline());
vo.setFinishDeadline(mediation.getFinishDeadline());
vo.setRemark(mediation.getRemark());
vo.setSubmitTime(mediation.getSubmitTime());
vo.setFileList(fileList);
}
return vo;
}
}

@ -18,6 +18,8 @@ package org.springblade.modules.business.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.springblade.common.constant.BusinessConstant;
import org.springblade.common.constant.CommonConstant;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.Func;
@ -96,7 +98,8 @@ public class AppealRegServiceImpl extends BaseServiceImpl<AppealRegMapper, Appea
AppealReg reg = BeanUtil.copy(entity, AppealReg.class);
List<AppealVisitor> visitors = entity.getVisitors();
// 1. 先保存appeal
// 1. 先保存appeal, 固定数据来源为系统
appeal.setSourceType(BusinessConstant.SOURCE_TYPE_SYSTEM);
int nums = Func.isEmpty(appeal.getId()) ? appealMapper.insert(appeal) : appealMapper.updateById(appeal);
if (nums <= 0) {
return false;
@ -105,7 +108,7 @@ public class AppealRegServiceImpl extends BaseServiceImpl<AppealRegMapper, Appea
// 2. 将appealId赋值给appealReg, 保存appealReg对象
reg.setId(null);
reg.setPersonNum(visitors.size());
baseMapper.insert(reg);
save(reg);
// 3. 将appealId和appealRegId赋值给来访人员, 保存来访人员
for (int i = 0; i < visitors.size(); i++) {
@ -118,4 +121,9 @@ public class AppealRegServiceImpl extends BaseServiceImpl<AppealRegMapper, Appea
visitorService.saveBatch(visitors);
return true;
}
@Override
public AppealReg getLastReg(String appealId) {
return baseMapper.getLastReg(appealId);
}
}

@ -0,0 +1,50 @@
/*
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the dreamlu.net developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: Chill 庄骞 (smallchill@163.com)
*/
package org.springblade.modules.business.vo;
import lombok.Data;
import org.springblade.modules.business.entity.AppealVisitor;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* 视图类
*
* @author Chill
*/
@Data
public class AppealMediationDetailListVO implements Serializable {
private static final long serialVersionUID = 1L;
private Long appealId;
private Long mediationId;
/**
* 接谈时间
*/
private Date talkingTime;
/**
* 接谈记录
*/
private String talkingHis;
}

@ -17,9 +17,12 @@
package org.springblade.modules.business.vo;
import lombok.Data;
import org.springblade.modules.business.entity.AppealMediationFile;
import org.springblade.modules.business.entity.AppealVisitor;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* 视图类
@ -32,40 +35,125 @@ public class AppealMediationVO implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
private Long appealId;
private Long appealRegId;
/**
* 来访人名称
* 来访人列表
*/
private String username;
private List<AppealVisitor> visitors;
/**
* 来访人身份证号
* 来访人
*/
private String cardno;
private Integer personNum;
/**
* 所属街道字典id
*/
private Long streetId;
/**
* 纠纷字典id
*/
private Long disputeId;
/**
* 纠纷名称
*/
private String disputeName;
/**
* 何单位处理过-单位id
*/
private String disposeDept;
/**
* 何单位处理过-单位名称
*/
private String disposeDeptName;
/**
* 基层协议
*/
private String protocol;
/**
* 基层处理意见
*/
private String opinion;
/**
* 部门复查意见
*/
private String reviewOpinion;
/**
* 法律文书
*/
private String legalPaper;
/**
* 首次登记时间
*/
private Date firstRegTime;
/**
* 办结时间
* 是否越级上报, 0:, 1:
*/
private Date finishTime;
private Integer skipGrant;
/**
* 反应问题
*/
private String problemDesc;
List<AppealMediationDetailListVO> talkingHisList;
/**
* 诉求状态(办理状态) 0:待处理, 1:正在处理, 2:达成协议, 3:调解成功
* 上访人意见和态度
*/
private int status;
private String attitude;
/**
* 接谈意见
*/
private String talkingAdvice;
/**
* 责任单位id列表, 以逗号分割
*/
private String dutyDeptIds;
/**
* 抄送单位id列表, 以逗号分割
*/
private String copyDeptIds;
/**
* 纠纷等级(事件等级), 0:简单, 1:一般, 2:重大, 3:疑难
*/
private Integer disputeLevel;
/**
* 反馈时限
*/
private Date feedbackDeadline;
/**
* 办结时限
*/
private Date finishDeadline;
/**
* 备注
*/
private String remark;
/**
* 提交时间
*/
private Date submitTime;
private List<AppealMediationFile> fileList;
}

Loading…
Cancel
Save