From d5d2721107bd8510c0016be8ed90613137f0eae3 Mon Sep 17 00:00:00 2001 From: liuqingkun Date: Sun, 11 Jun 2023 15:47:22 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AF=89=E6=B1=82=E8=B0=83=E8=A7=A3=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E6=8E=A5=E5=8F=A3=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/api.md | 263 +++++++++++------- .../common/constant/BusinessConstant.java | 11 + .../controller/AppealMediateController.java | 40 +-- .../business/mapper/AppealRegMapper.xml | 2 + .../service/IAppealMediationService.java | 28 +- .../business/service/IAppealRegService.java | 9 + .../impl/AppealMediationServiceImpl.java | 135 ++++++++- .../service/impl/AppealRegServiceImpl.java | 12 +- .../vo/AppealMediationDetailListVO.java | 50 ++++ .../business/vo/AppealMediationVO.java | 106 ++++++- 10 files changed, 518 insertions(+), 138 deletions(-) create mode 100644 src/main/java/org/springblade/modules/business/vo/AppealMediationDetailListVO.java diff --git a/doc/api.md b/doc/api.md index 204e2f3..f8a5c24 100644 --- a/doc/api.md +++ b/doc/api.md @@ -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 diff --git a/src/main/java/org/springblade/common/constant/BusinessConstant.java b/src/main/java/org/springblade/common/constant/BusinessConstant.java index 519421b..4fcf390 100644 --- a/src/main/java/org/springblade/common/constant/BusinessConstant.java +++ b/src/main/java/org/springblade/common/constant/BusinessConstant.java @@ -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; } diff --git a/src/main/java/org/springblade/modules/business/controller/AppealMediateController.java b/src/main/java/org/springblade/modules/business/controller/AppealMediateController.java index 3ba9574..a65de8b 100644 --- a/src/main/java/org/springblade/modules/business/controller/AppealMediateController.java +++ b/src/main/java/org/springblade/modules/business/controller/AppealMediateController.java @@ -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 mediationList = mediationService.list(Wrappers.lambdaQuery().eq(AppealMediation::getAppealId, appealId)); + + List 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)); } } diff --git a/src/main/java/org/springblade/modules/business/mapper/AppealRegMapper.xml b/src/main/java/org/springblade/modules/business/mapper/AppealRegMapper.xml index 64596e3..fb9b1fe 100644 --- a/src/main/java/org/springblade/modules/business/mapper/AppealRegMapper.xml +++ b/src/main/java/org/springblade/modules/business/mapper/AppealRegMapper.xml @@ -54,5 +54,7 @@ select * from mp_appeal_reg where appeal_id = #{appealId} + order by create_time desc + limit 1 diff --git a/src/main/java/org/springblade/modules/business/service/IAppealMediationService.java b/src/main/java/org/springblade/modules/business/service/IAppealMediationService.java index 9d26a86..01a2fcf 100644 --- a/src/main/java/org/springblade/modules/business/service/IAppealMediationService.java +++ b/src/main/java/org/springblade/modules/business/service/IAppealMediationService.java @@ -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 { + /** + * 根据诉求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); } diff --git a/src/main/java/org/springblade/modules/business/service/IAppealRegService.java b/src/main/java/org/springblade/modules/business/service/IAppealRegService.java index b7d68aa..b7cd3d2 100644 --- a/src/main/java/org/springblade/modules/business/service/IAppealRegService.java +++ b/src/main/java/org/springblade/modules/business/service/IAppealRegService.java @@ -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 { * 保存 */ boolean saveReg(AppealRegVO entity); + + /** + * 获取最后一次登记记录 + * + * @param appealId + * @return + */ + AppealReg getLastReg(@Param("appealId") String appealId); } diff --git a/src/main/java/org/springblade/modules/business/service/impl/AppealMediationServiceImpl.java b/src/main/java/org/springblade/modules/business/service/impl/AppealMediationServiceImpl.java index 37d09e6..294857c 100644 --- a/src/main/java/org/springblade/modules/business/service/impl/AppealMediationServiceImpl.java +++ b/src/main/java/org/springblade/modules/business/service/impl/AppealMediationServiceImpl.java @@ -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 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 talkingHisList = entity.getTalkingHisList(); + if (Func.isEmpty(talkingHisList)) + return false; + mediation.setTalkingTime(talkingHisList.get(0).getTalkingTime()); + mediation.setTalkingHis(talkingHisList.get(0).getTalkingHis()); + save(mediation); + + List 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 mediationList = baseMapper.selectList( + Wrappers.lambdaQuery().eq(AppealMediation::getAppealId, appealId)); + + // 转化为谈话记录列表 + List 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 visitorList = visitorMapper.selectList( + Wrappers.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 fileList = fileService.list( + Wrappers.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; + } } diff --git a/src/main/java/org/springblade/modules/business/service/impl/AppealRegServiceImpl.java b/src/main/java/org/springblade/modules/business/service/impl/AppealRegServiceImpl.java index 381240e..ee7d54c 100644 --- a/src/main/java/org/springblade/modules/business/service/impl/AppealRegServiceImpl.java +++ b/src/main/java/org/springblade/modules/business/service/impl/AppealRegServiceImpl.java @@ -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 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 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 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 fileList; }