From 0c40e0515f6661313e8ac4a14895860e8b4ebb69 Mon Sep 17 00:00:00 2001
From: zhouxiantao <1026371446@qq.com>
Date: Mon, 23 Sep 2024 16:33:51 +0800
Subject: [PATCH] 综合查询-条件
---
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridCompanyService.java | 32 +++++++-
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java | 8 ++
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/controller/GridCompanyController.java | 48 ++++++++++-
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java | 32 ++++++++
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml | 52 +++++++++++--
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseRegisterInfoWebController.java | 2
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java | 6 +
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseRegisterDTO.java | 9 ++
8 files changed, 169 insertions(+), 20 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 e6688cf..cd27017 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
@@ -86,6 +86,38 @@
if (StringUtils.isNotBlank(areaType)){
terms.put("areaType", areaType);
}
+ // 实际调解组织编号
+ String mediateUnitId = request.getParameter("mediateUnitId");
+ if (StringUtils.isNotBlank(mediateUnitId)){
+ terms.put("mediateUnitId", mediateUnitId);
+ }
+ // 配合组织,多个用,隔开
+ String assistUnitId = request.getParameter("assistUnitId");
+ if (StringUtils.isNotBlank(assistUnitId)){
+ terms.put("assistUnitId", assistUnitId);
+ }
+ // 配合组织,多个用,隔开
+ String evaluateGrade = request.getParameter("evaluateGrade");
+ if (StringUtils.isNotBlank(evaluateGrade)){
+ terms.put("evaluateGrade", evaluateGrade);
+ }
+ String peopleNum = request.getParameter("peopleNum");
+ if (StringUtils.isNotBlank(peopleNum)){
+ String[] split = peopleNum.split("-");
+ terms.put("peopleNumStart", split[0]);
+ if(split.length>1){
+ terms.put("peopleNumEnd", split[1]);
+ }
+
+ }
+ String amount = request.getParameter("amount");
+ if (StringUtils.isNotBlank(amount)){
+ String[] split = amount.split("-");
+ terms.put("amountStart", split[0]);
+ if(split.length>1){
+ terms.put("amountEnd", split[1]);
+ }
+ }
return terms;
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseRegisterInfoWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseRegisterInfoWebController.java
index 711bdfd..561f1ff 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseRegisterInfoWebController.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseRegisterInfoWebController.java
@@ -158,7 +158,7 @@
Page<CaseRegisterDTO> caseInfoPage = service.pageQueryRegister(pageRequest, terms);
return ReturnSucUtils.getRepInfo("处理成功", caseInfoPage);
} catch (Exception e) {
-
+ log.error("Controller接口[CaseRegisterInfoWebController.pageQuery]请求异常:"+e, e);
return ReturnFailUtils.getRepInfo();
}
}
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 0e5b563..4a8dd37 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
@@ -103,14 +103,13 @@
<result property="agreeTypeName" column="agree_type_name"/>
<result property="agreeContent" column="agree_content"/>
<result property="createTime" column="create_time"/>
+ <result property="plaintiffs" column="plaintiffs"/>
+ <result property="defendants" column="defendants"/>
</resultMap>
<!-- 表 -->
<sql id='table-name'>dyh_case_info</sql>
<sql id="column-part-all">
- a
- .
- id
- ,
+ a.id,
a.status,
a.status_name,
a.canal,
@@ -121,6 +120,8 @@
a.input_unit_id,
a.input_unit_name,
a.create_time,
+ a.plaintiffs,
+ a.defendants,
b.medi_result,
b.medi_result_name,
b.mediate_unit_id,
@@ -338,6 +339,36 @@
</if>
<if test="terms.isArea != null and terms.isArea !=''">
and a.que_city is not null and a.que_area is not null and a.que_road is not null
+ </if>
+ <if test="terms.caseRef != null and terms.caseRef !=''">
+ and a.case_ref = #{terms.caseRef}
+ </if>
+ <if test="terms.plaintiffs != null and terms.plaintiffs !=''">
+ and a.plaintiffs = #{terms.plaintiffs}
+ </if>
+ <if test="terms.defendants != null and terms.defendants !=''">
+ and a.defendants = #{terms.defendants}
+ </if>
+ <if test="terms.peopleNumStart != null and terms.peopleNumStart !=''">
+ and a.people_num <![CDATA[ >= ]]> #{terms.peopleNumStart}
+ </if>
+ <if test="terms.peopleNumEnd != null and terms.peopleNumEnd !=''">
+ and a.people_num <![CDATA[ <= ]]> #{terms.peopleNumEnd}
+ </if>
+ <if test="terms.amountStart != null and terms.amountStart !=''">
+ and a.amount <![CDATA[ >= ]]> #{terms.amountStart}
+ </if>
+ <if test="terms.amountEnd != null and terms.amountEnd !=''">
+ and a.amount <![CDATA[ <= ]]> #{terms.amountEnd}
+ </if>
+ <if test="terms.evaluateGrade != null and terms.evaluateGrade !=''">
+ and a.id in(select case_id from dyh_case_evaluate where evaluate_grade = #{terms.evaluateGrade})
+ </if>
+ <if test="terms.mediateUnitId != null and terms.mediateUnitId !=''">
+ and b.mediate_unit_id = #{terms.mediateUnitId}
+ </if>
+ <if test="terms.assistUnitId != null and terms.assistUnitId !=''">
+ and b.assist_unit_id = #{terms.assistUnitId}
</if>
</where>
</if>
@@ -703,14 +734,17 @@
<select id="pageTermsCaseRegister" resultType="cn.huge.module.cases.domain.dto.CaseRegisterDTO">
SELECT
- t1.create_time as createTime,t1.input_user_name as inputUserName,t1.status_name as statusName,t1.case_level as
+ t1.id as caseId,t1.create_time as createTime,t1.input_user_name as inputUserName,t1.status_name as statusName,t1.case_level as
caseLevel,t1.canal_name as canalName,
t1.case_type_first_name as caseTypeFirstName,t1.case_type_name as caseTypeName,t1.plaintiffs as
plaintiffs,t1.defendants as defendants,t2.medi_result_name as mediResultName,
- t3.number as superviseCount
+ t3.number as superviseCount,
+ t4.id as caseTaskId
FROM
- dyh_case_info t1 left join dyh_case_info_unfold t2 on t1.id = t2.id
+ dyh_case_info t1
+ left join dyh_case_info_unfold t2 on t1.id = t2.id
left join (select count(*) as number ,case_id from dyh_case_supervise group by case_id) t3 on t3.case_id=t1.id
+ left join dyh_case_task t4 on t1.id = t4.case_id
<include refid="where-register-part"/>
<if test="page.sort != null">
<foreach collection="page.sort" item="s" index="index" separator="," open="order by ">
@@ -728,7 +762,9 @@
SELECT
count(t1.id)
FROM
- dyh_case_info t1 left join dyh_case_info_unfold t2 on t1.id = t2.id
+ dyh_case_info t1
+ left join dyh_case_info_unfold t2 on t1.id = t2.id
+ left join dyh_case_task t4 on t1.id = t4.case_id
<include refid="where-register-part"/>
</select>
<!-- 根据条件统计 -->
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java
index 71fa3f4..5454663 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java
@@ -119,4 +119,12 @@
* 被申请人集合
* */
private List<CasePersonWeDTO> defendantList;
+ /**
+ * 申请方当事人名称
+ */
+ private String plaintiffs;
+ /**
+ * 被申请方当事人名称
+ */
+ private String defendants;
}
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseRegisterDTO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseRegisterDTO.java
index 042ebf8..970823c 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseRegisterDTO.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseRegisterDTO.java
@@ -7,6 +7,10 @@
@Data
public class CaseRegisterDTO {
/**
+ * 案件ID
+ */
+ private String caseId;
+ /**
* 登记时间
*/
private Date createTime;
@@ -50,6 +54,9 @@
* 督办次数
*/
private int superviseCount;
-
+ /**
+ * 纠纷任务编号
+ * */
+ private String caseTaskId;
}
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 9b5bb46..ebd4fec 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
@@ -601,6 +601,12 @@
caseInfo.setInputUserId(loginUser.getId());
caseInfo.setInputUserName(loginUser.getTrueName());
caseInfo.setInputWay(CaseBaseConsts.INPUT_WAY_1);
+ if(ObjectUtils.isEmpty(registerSaveDTO.getPeopleNum())){
+ caseInfo.setPeopleNum(0);
+ }
+ if(ObjectUtils.isEmpty(registerSaveDTO.getAmount())){
+ caseInfo.setAmount(0.0);
+ }
//默认添加省市
caseInfo.setQueProv("19");
caseInfo.setQueProvName("广东省");
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/controller/GridCompanyController.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/controller/GridCompanyController.java
index c5fbdc9..5353cfe 100644
--- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/controller/GridCompanyController.java
+++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/controller/GridCompanyController.java
@@ -1,23 +1,29 @@
package cn.huge.module.grid.controller;
import cn.huge.base.common.bo.R;
+import cn.huge.base.common.utils.ObjectUtils;
+import cn.huge.base.common.utils.ReturnFailUtils;
+import cn.huge.base.common.utils.ReturnSucUtils;
import cn.huge.module.grid.domain.dto.GridCompanyDTO;
import cn.huge.module.grid.domain.vo.GridCompanyVo;
-import cn.huge.module.grid.domain.vo.GridTokenVo;
-import cn.huge.module.grid.domain.vo.GridUserVo;
import cn.huge.module.grid.service.GridCompanyService;
+import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.util.Map;
@Slf4j
@RestController
@RequestMapping("/api/thrid/grid/company")
public class GridCompanyController {
+ @Autowired(required = false)
+ private HttpServletRequest request;
+
@Resource
private GridCompanyService gridCompanyService;
@@ -25,4 +31,34 @@
public R<GridCompanyDTO> getCompanyList(@RequestBody GridCompanyVo gridCompanyVo) throws Exception {
return gridCompanyService.getCompanyList(gridCompanyVo);
}
+
+ /**
+ * 条件分页查询
+ * @url {ctx}/api/thrid/grid/company/pageQuery
+ * @param page 页码
+ * @param size 每页数量
+ * @return Object
+ */
+ @GetMapping("/pageQuery")
+ public Object pageQuery(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size) {
+ try {
+ Map<String, Object> terms = Maps.newHashMap();
+ GridCompanyVo gridCompanyVo = new GridCompanyVo();
+ String integratedQuery = request.getParameter("integratedQuery");
+ gridCompanyVo.setIntegratedQuery(integratedQuery);
+ String state = request.getParameter("state");
+ if(ObjectUtils.isNotEmpty(state)){
+ gridCompanyVo.setState(Integer.valueOf(state));
+ }
+ String gridCode = request.getParameter("gridCode");
+ gridCompanyVo.setGridCode(gridCode);
+ gridCompanyVo.setPage(page);
+ gridCompanyVo.setPageSize(size);
+ gridCompanyVo.setNeedCount(true);
+ return ReturnSucUtils.getRepInfo( "处理成功", gridCompanyService.pageQuery(gridCompanyVo));
+ } catch (Exception e) {
+ log.error("Controller接口[GridCompanyController.pageQuery]请求异常:"+e, e);
+ return ReturnFailUtils.getRepInfo();
+ }
+ }
}
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridCompanyService.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridCompanyService.java
index 1a14f5a..9a6a478 100644
--- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridCompanyService.java
+++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridCompanyService.java
@@ -3,6 +3,7 @@
import cn.huge.base.common.bo.R;
import cn.huge.base.common.utils.AesUtils;
import cn.huge.base.common.utils.HttpClientUtils;
+import cn.huge.base.common.utils.ObjectUtils;
import cn.huge.module.grid.domain.dto.GridCompanyDTO;
import cn.huge.module.grid.domain.vo.*;
import com.alibaba.fastjson.JSON;
@@ -10,15 +11,16 @@
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageImpl;
+import org.springframework.data.domain.PageRequest;
+import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestBody;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
-import java.util.Base64;
-import java.util.HashMap;
-import java.util.List;
-import java.util.UUID;
+import java.util.*;
import static cn.huge.base.common.utils.AesUtils.KEY_ALGORITHM;
@@ -70,4 +72,26 @@
return headVo;
}
+ public Page pageQuery(GridCompanyVo gridCompanyVo) throws Exception {
+ Sort sort = Sort.by(Sort.Direction.DESC, "create_time");
+ PageRequest pageRequest = PageRequest.of(gridCompanyVo.getPage()-1, gridCompanyVo.getPageSize(), sort);
+// R<GridCompanyDTO> companyList = getCompanyList(gridCompanyVo);
+ String url = "http://183.2.142.21:9007/api/thrid/grid/company/get-company-list";
+ Map<String, String> headers = new HashMap<>();
+ headers.put("Content-Type", "application/json");
+ String s = HttpClientUtils.httpPostRaw(url, JSON.toJSONString(gridCompanyVo), headers, "utf-8");
+ R companyList = JSON.parseObject(s, R.class);
+ if(companyList.getCode() != 0){
+ throw new Exception(companyList.getMsg());
+ }
+ if(ObjectUtils.isNotEmpty(companyList)){
+ GridCompanyDTO data = JSON.parseObject(JSON.toJSONString(companyList.getData()), GridCompanyDTO.class);
+ if(ObjectUtils.isNotEmpty(data)){
+ List<GridCompanyDTO.UnitDTO> records = data.getRecords();
+ return new PageImpl<>(records, pageRequest, data.getTotal());
+ }
+ }
+ return new PageImpl<>(new ArrayList<>(), pageRequest, 0);
+ }
+
}
--
Gitblit v1.8.0