From 3a73d5c21bb96dde33c97a6d4d50f4632678b329 Mon Sep 17 00:00:00 2001
From: zhouxiantao <1026371446@qq.com>
Date: Wed, 09 Oct 2024 20:32:35 +0800
Subject: [PATCH] web查询个人来访记录
---
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CasePersonService.java | 9 ++
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/bo/CasePersonCountBO.java | 20 +++++
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAgentService.java | 5 +
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CasePersonMapper.xml | 10 ++
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAgentMapper.xml | 8 ++
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java | 68 +++++++++++++++++
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml | 6 +
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java | 99 ++++++++++++++++++++++++
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseAgentMapper.java | 3
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CasePersonMapper.java | 7 +
10 files changed, 235 insertions(+), 0 deletions(-)
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java
index 8490553..be07a0b 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java
@@ -5,6 +5,7 @@
import cn.huge.base.common.utils.ReturnFailUtils;
import cn.huge.base.common.utils.ReturnSucUtils;
import cn.huge.base.config.CurrentUser;
+import cn.huge.module.cases.domain.bo.CasePersonCountBO;
import cn.huge.module.cases.domain.dto.*;
import cn.huge.module.cases.domain.po.CaseInfo;
import cn.huge.module.cases.service.CaseInfoService;
@@ -755,4 +756,71 @@
return ReturnFailUtils.getRepInfo();
}
}
+
+ /**
+ * 个人查询
+ * @url {ctx}/api/web/caseInfo/pagePerson
+ * @param page 页码
+ * @param size 每页数量
+ * @return Object
+ */
+ @GetMapping("/pagePerson")
+ public Object pagePerson(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, @RequestParam(value = "certiNo") String certiNo) {
+ try {
+ Map<String, Object> terms = getParameterAll();
+ Sort sort = null;
+ String sortName = null;
+ String sortColmnStr = request.getParameter("sortColmn");
+ String sortTypeStr = request.getParameter("sortType");
+ int sortColmn = 1;
+ int sortType = 1;
+ if (StringUtils.isNotBlank(sortColmnStr)) {
+ sortColmn = Integer.valueOf(sortColmnStr);
+ }
+ if (StringUtils.isNotBlank(sortTypeStr)) {
+ sortType = Integer.valueOf(sortTypeStr);
+ }
+ switch (sortColmn) {
+ case 1:
+ sortName = "a.create_time";
+ break;
+ case 2:
+ sortName = "b.close_time";
+ break;
+ }
+ switch (sortType) {
+ case 1:
+ sort = Sort.by(Sort.Direction.ASC, sortName);
+ break;
+ case 2:
+ sort = Sort.by(Sort.Direction.DESC, sortName);
+ break;
+ }
+ if (ObjectUtils.isEmpty(sort)) {
+ sort = Sort.by(Sort.Direction.DESC, "a.create_time");
+ }
+ PageRequest pageRequest = PageRequest.of(page-1, size, sort);
+ Page<CasePageDTO> caseInfoPage = service.pagePerson(pageRequest, terms,certiNo);
+ return ReturnSucUtils.getRepInfo( "处理成功", caseInfoPage);
+ } catch (Exception e) {
+ log.error("Controller接口[CaseInfoWebController.pageQueryAll]请求异常:"+e, e);
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
+
+ /**
+ * 个人查询统计
+ * @url {ctx}/api/web/caseInfo/countPerson
+ * @return Object
+ */
+ @GetMapping("/countPerson")
+ public Object countPerson(@RequestParam(value = "certiNo") String certiNo) {
+ try {
+ CasePersonCountBO casePersonCountBO = service.countPerson(certiNo);
+ return ReturnSucUtils.getRepInfo( "处理成功", casePersonCountBO);
+ } catch (Exception e) {
+ log.error("Controller接口[CaseInfoWebController.pageQueryAll]请求异常:"+e, e);
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseAgentMapper.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseAgentMapper.java
index 21e65e6..be6f524 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseAgentMapper.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseAgentMapper.java
@@ -1,6 +1,7 @@
package cn.huge.module.cases.dao.mapper;
import cn.huge.module.cases.domain.po.CaseAgent;
+import cn.huge.module.cases.domain.po.CasePerson;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.data.domain.PageRequest;
@@ -67,4 +68,6 @@
* @return List<String>
*/
List<String> listIdByCaseId(@Param("caseId") String caseId);
+
+ List<CaseAgent> listByCertiNo(@Param("certiNo") String certiNo);
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CasePersonMapper.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CasePersonMapper.java
index 1950d7f..0e650c1 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CasePersonMapper.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CasePersonMapper.java
@@ -67,4 +67,11 @@
* @return List<String>
*/
List<String> listIdByCaseId(@Param("caseId") String caseId);
+ /**
+ * 根据证件编号查询人员
+ * @param certiNo 证件编号
+ * @return List<String>
+ */
+ List<CasePerson> listByCertiNo(@Param("certiNo") String certiNo);
+
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAgentMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAgentMapper.xml
index 8795500..33ac591 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAgentMapper.xml
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAgentMapper.xml
@@ -435,4 +435,12 @@
<include refid="table-name" />
where case_id = #{caseId}
</select>
+
+ <select id="listByCertiNo" resultMap="dataResult">
+ select
+ a.case_id,a.certi_no,a.per_type
+ from
+ dyh_case_agent a INNER JOIN dyh_case_info b ON a.case_id = b.id
+ where a.certi_no = #{certiNo} and b.delete_status = 0
+ </select>
</mapper>
\ No newline at end of file
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml
index 0508102..68ae3d9 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml
@@ -297,6 +297,12 @@
<if test="terms != null">
<where>
and delete_status = 0
+ <if test="terms.ids != null and terms.ids.size > 0">
+ and a.id in
+ <foreach collection="terms.ids" item="id" index="index" open="(" separator="," close=")">
+ #{id}
+ </foreach>
+ </if>
<if test="terms.status != null and terms.status !=''">
and a.status = #{terms.status}
</if>
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CasePersonMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CasePersonMapper.xml
index 27a66ab..df5e756 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CasePersonMapper.xml
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CasePersonMapper.xml
@@ -441,4 +441,14 @@
<include refid="table-name" />
where case_id = #{caseId}
</select>
+
+ <!-- 根据纠纷编号查询人员编号 -->
+ <select id="listByCertiNo" resultMap="dataResult">
+ select
+ a.case_id,a.certi_no,a.per_type
+ from
+ dyh_case_person a INNER JOIN dyh_case_info b ON a.case_id = b.id
+ where a.certi_no = #{certiNo} and b.delete_status = 0
+ </select>
+
</mapper>
\ No newline at end of file
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/bo/CasePersonCountBO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/bo/CasePersonCountBO.java
new file mode 100644
index 0000000..a0945c3
--- /dev/null
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/bo/CasePersonCountBO.java
@@ -0,0 +1,20 @@
+package cn.huge.module.cases.domain.bo;
+
+import lombok.Data;
+
+/**
+ * @author zhouxiantao
+ * @create 2024-10-09 19:55
+ */
+@Data
+public class CasePersonCountBO {
+ private Integer totalNum = 0;//来访总数
+ private Integer zzzxNum = 0;//综治中心数
+ private Integer xfNum = 0;//信访数
+ private Integer wlNum = 0;//网络数据
+ private Integer ottfNum = 0;//12345数量
+ private Integer plaintiffNum = 0;//申请方当事人数
+ private Integer defendantNum = 0;//被申请方当事人数
+ private Integer pagentsNum = 0;//申请方代理人数
+ private Integer dagentsNum = 0;//被申请方代理人数
+}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAgentService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAgentService.java
index ad2d568..6b3bef3 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAgentService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAgentService.java
@@ -3,6 +3,7 @@
import cn.huge.base.common.exception.ServiceException;
import cn.huge.base.common.utils.DateUtils;
import cn.huge.base.common.utils.IdUtils;
+import cn.huge.module.cases.domain.po.CasePerson;
import cn.huge.module.client.api.impl.UtilsClientImpl;
import cn.huge.module.cases.dao.mapper.CaseAgentMapper;
import cn.huge.module.cases.domain.po.CaseAgent;
@@ -139,4 +140,8 @@
return mapper.listIdByCaseId(caseId);
}
+ public List<CaseAgent> listByCertiNo(String certiNo){
+ return mapper.listByCertiNo(certiNo);
+ }
+
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
index 0584249..e6b6067 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
@@ -4,6 +4,7 @@
import cn.huge.base.common.utils.*;
import cn.huge.module.cases.domain.bo.CaseAgentBO;
import cn.huge.module.cases.domain.bo.CasePersonBO;
+import cn.huge.module.cases.domain.bo.CasePersonCountBO;
import cn.huge.module.cases.domain.dto.*;
import cn.huge.module.cases.domain.dto.CaseAreaDTO;
@@ -981,6 +982,7 @@
return new PageImpl<CasePageDTO>(content, page, total);
}
+
public CaseStatisticsBaseDTO statistics(Map<String, Object> terms) throws IOException {
Object canal = null;
if(ObjectUtils.isNotEmpty(terms.get("canal"))){
@@ -1191,4 +1193,101 @@
List<QueAreaDTO> queAreaDTOS = sysClient.listByParentId(parentId);
return queAreaDTOS;
}
+
+ public Page<CasePageDTO> pagePerson(PageRequest page, Map<String, Object> terms,String certiNo) {
+ QueryWrapper<CasePerson> personWrapper = new QueryWrapper<>();
+ personWrapper.select("case_id,certi_no");
+ personWrapper.eq("certi_no", certiNo);
+ List<CasePerson> personList = personService.list(personWrapper);
+ List<String> ids = new ArrayList<>();
+ if(ObjectUtils.isNotEmpty(personList)){
+ for (CasePerson casePerson : personList) {
+ ids.add(casePerson.getCaseId());
+ }
+ }
+ QueryWrapper<CaseAgent> agentWrapper = new QueryWrapper<>();
+ agentWrapper.select("case_id,certi_no");
+ agentWrapper.in("certi_no", certiNo);
+ List<CaseAgent> agentList = agentService.list(agentWrapper);
+ if(ObjectUtils.isNotEmpty(agentList)){
+ for (CaseAgent caseAgent : agentList) {
+ ids.add(caseAgent.getCaseId());
+ }
+ }
+ if(ObjectUtils.isEmpty(ids)){
+ return new PageImpl<CasePageDTO>(new ArrayList<>(), page, 0);
+ }
+ terms.put("ids", ids);
+ long total = mapper.countTermsAll(terms);
+ List<CasePageDTO> content = mapper.pageTermsAll(page, terms);
+ if (ObjectUtils.isNotEmpty(content)) {
+ for (CasePageDTO casePageDTO : content) {
+ if(ObjectUtils.isNotEmpty(casePageDTO.getQueRoadName())){
+ casePageDTO.setAreaName(casePageDTO.getQueRoadName());
+ }else if(ObjectUtils.isNotEmpty(casePageDTO.getAreaName())){
+ casePageDTO.setAreaName(casePageDTO.getAreaName());
+ }else if(ObjectUtils.isNotEmpty(casePageDTO.getQueCityName())){
+ casePageDTO.setAreaName(casePageDTO.getQueCityName());
+ }
+ if(ObjectUtils.isNotEmpty(casePageDTO.getCaseLevel())){
+ switch (casePageDTO.getCaseLevel()){
+ case "1":
+ casePageDTO.setCaseLevel("一级");
+ break;
+ case "2":
+ casePageDTO.setCaseLevel("二级");
+ break;
+ case "3":
+ casePageDTO.setCaseLevel("三级");
+ break;
+ }
+ }
+ }
+ }
+ return new PageImpl<CasePageDTO>(content, page, total);
+ }
+
+ public CasePersonCountBO countPerson(String certiNo){
+ CasePersonCountBO casePersonCountBO = new CasePersonCountBO();
+
+ Integer plaintiffNum = 0;//申请方当事人数
+ Integer defendantNum = 0;//被申请方当事人数
+ Integer pagentsNum = 0;//申请方代理人数
+ Integer dagentsNum = 0;//被申请方代理人数
+
+ List<CasePerson> personList = personService.listByCertiNo(certiNo);
+ List<String> ids = new ArrayList<>();
+ if(ObjectUtils.isNotEmpty(personList)){
+ for (CasePerson casePerson : personList) {
+ ids.add(casePerson.getCaseId());
+ if(CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())){
+ plaintiffNum++;
+ }
+ if(CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())){
+ defendantNum++;
+ }
+ }
+ }
+
+ List<CaseAgent> agentList = agentService.listByCertiNo(certiNo);
+ if(ObjectUtils.isNotEmpty(agentList)){
+ for (CaseAgent caseAgent : agentList) {
+ ids.add(caseAgent.getCaseId());
+ if(CaseBaseConstsEnum.PERSON_TYPE_3.getIndex().equals(caseAgent.getPerType())){
+ pagentsNum++;
+ }
+ if(CaseBaseConstsEnum.PERSON_TYPE_4.getIndex().equals(caseAgent.getPerType())){
+ dagentsNum++;
+ }
+ }
+ }
+ casePersonCountBO.setDagentsNum(dagentsNum);
+ casePersonCountBO.setPagentsNum(pagentsNum);
+ casePersonCountBO.setDefendantNum(defendantNum);
+ casePersonCountBO.setPlaintiffNum(plaintiffNum);
+ casePersonCountBO.setTotalNum(ids.size());
+ casePersonCountBO.setZzzxNum(ids.size());
+ return casePersonCountBO;
+ }
+
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CasePersonService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CasePersonService.java
index 9f99be6..b4f686f 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CasePersonService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CasePersonService.java
@@ -141,4 +141,13 @@
public List<String> listIdByCaseId(String caseId){
return mapper.listIdByCaseId(caseId);
}
+
+ /**
+ * 根据证件编号查询人员
+ * @param certiNo 证件编号
+ * @return List<String>
+ */
+ public List<CasePerson> listByCertiNo(String certiNo){
+ return mapper.listByCertiNo(certiNo);
+ }
}
--
Gitblit v1.8.0