dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseRegisterInfoWebController.java
New file @@ -0,0 +1,133 @@ package cn.huge.module.cases.controller.web; import cn.huge.base.common.utils.ReturnFailUtils; import cn.huge.base.common.utils.ReturnSucUtils; import cn.huge.module.cases.domain.dto.CaseRegisterDTO; import cn.huge.module.cases.domain.po.CaseInfo; import cn.huge.module.cases.service.CaseInfoService; import com.google.common.collect.Maps; import dm.jdbc.util.StringUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Sort; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; import java.util.Map; @Slf4j @RestController @RequestMapping("/api/web/caseRegisterInfo") public class CaseRegisterInfoWebController { @Autowired(required = false) private HttpServletRequest request; private Map<String, Object> getParameter(){ Map<String, Object> terms = Maps.newHashMap(); // 登记部门 String inputUnitName = request.getParameter("inputUnitName"); if (org.apache.commons.lang3.StringUtils.isNotBlank(inputUnitName)){ terms.put("inputUnitName", inputUnitName); } // 事项等级 String caseLevel = request.getParameter("caseLevel"); if (org.apache.commons.lang3.StringUtils.isNotBlank(caseLevel)){ terms.put("caseLevel", caseLevel); } // 纠纷一级类型 String caseTypeFirst = request.getParameter("caseTypeFirst"); if (org.apache.commons.lang3.StringUtils.isNotBlank(caseTypeFirst)){ terms.put("caseTypeFirst", caseTypeFirst); } // 纠纷一级类型名称 String caseTypeFirstName = request.getParameter("caseTypeFirstName"); if (org.apache.commons.lang3.StringUtils.isNotBlank(caseTypeFirstName)){ terms.put("caseTypeFirstName", caseTypeFirstName); } // 纠纷类型 String caseType = request.getParameter("caseType"); if (org.apache.commons.lang3.StringUtils.isNotBlank(caseType)){ terms.put("caseType", caseType); } // 纠纷类型名称 String caseTypeName = request.getParameter("caseTypeName"); if (org.apache.commons.lang3.StringUtils.isNotBlank(caseTypeName)){ terms.put("caseTypeName", caseTypeName); } // 事项来源 String canal = request.getParameter("canal"); if (org.apache.commons.lang3.StringUtils.isNotBlank(canal)){ terms.put("canal", canal); } // 事项来源名称 String canalName = request.getParameter("canalName"); if (org.apache.commons.lang3.StringUtils.isNotBlank(canalName)){ terms.put("canalName", canalName); } // 申请方当事人名称 String plaintiffs = request.getParameter("plaintiffs"); if (org.apache.commons.lang3.StringUtils.isNotBlank(plaintiffs)){ terms.put("plaintiffs", plaintiffs); } // 被申请方当事人名称 String defendants = request.getParameter("defendants"); if (org.apache.commons.lang3.StringUtils.isNotBlank(defendants)){ terms.put("defendants", defendants); } // 事项状态,1:待分派,2:待签收,3:待受理,:4:办理中,5:结案审核,6:待评价,7:已归档 String status = request.getParameter("status"); if (org.apache.commons.lang3.StringUtils.isNotBlank(status)){ terms.put("status", status); } // 事项状态名称 String statusName = request.getParameter("statusName"); if (org.apache.commons.lang3.StringUtils.isNotBlank(statusName)){ terms.put("statusName", statusName); } // 事项状态名称 String mediResultName = request.getParameter("mediResultName"); if (org.apache.commons.lang3.StringUtils.isNotBlank(mediResultName)){ terms.put("mediResultName", mediResultName); } // 登记时间区间 String createStart = request.getParameter("createStart"); String createEnd = request.getParameter("createEnd"); if(org.apache.commons.lang3.StringUtils.isNotBlank(createStart) && org.apache.commons.lang3.StringUtils.isNotBlank(createEnd)) { terms.put("createStart", createStart); terms.put("createEnd", createEnd); } return terms; } @Autowired private CaseInfoService service; @GetMapping("/pageQuery") public Object pageQuery(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, @RequestParam(value = "orderBy") String orderBy) { try { Sort sort = null; if (StringUtil.isEmpty(orderBy)) { sort = Sort.by(Sort.Direction.DESC, "create_time"); } else { sort = Sort.by(Sort.Direction.DESC, orderBy); } Map<String, Object> terms = getParameter(); PageRequest pageRequest = PageRequest.of(page - 1, size, sort); Page<CaseRegisterDTO> caseInfoPage = service.pageQueryRegister(pageRequest, terms); return ReturnSucUtils.getRepInfo("处理成功", caseInfoPage); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); } } } dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseInfoMapper.java
@@ -69,6 +69,9 @@ */ List<CaseInfo> pageTerms(@Param("page") PageRequest page, @Param("terms") Map<String, Object> terms); List<CaseRegisterDTO> pageTermsCaseRegister(@Param("page") PageRequest page, @Param("terms") Map<String, Object> terms); long countTermsCaseRegister(@Param("terms") Map<String, Object> terms); /** * 按条件查询实体总数 * @param terms 查询条件集合 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml
@@ -11,75 +11,75 @@ <mapper namespace="cn.huge.module.cases.dao.mapper.CaseInfoMapper"> <!-- 结果集 --> <resultMap id="dataResult" type="cn.huge.module.cases.domain.po.CaseInfo"> <result property="id" column="id"/> <result property="caseTitle" column="case_title"/> <result property="caseRef" column="case_ref"/> <result property="caseLevel" column="case_level"/> <result property="visitTime" column="visit_time"/> <result property="visitPeopleNum" column="visit_people_num"/> <result property="mediType" column="medi_type"/> <result property="mediTypeName" column="medi_type_name"/> <result property="caseTypeFirst" column="case_type_first"/> <result property="caseTypeFirstName" column="case_type_first_name"/> <result property="caseType" column="case_type"/> <result property="caseTypeName" column="case_type_name"/> <result property="occurTime" column="occur_time"/> <result property="addr" column="addr"/> <result property="lng" column="lng"/> <result property="lat" column="lat"/> <result property="wgAddr" column="wg_addr"/> <result property="wgLng" column="wg_lng"/> <result property="wgLat" column="wg_lat"/> <result property="queProv" column="que_prov"/> <result property="queProvName" column="que_prov_name"/> <result property="queCity" column="que_city"/> <result property="queCityName" column="que_city_name"/> <result property="queArea" column="que_area"/> <result property="queAreaName" column="que_area_name"/> <result property="queRoad" column="que_road"/> <result property="queRoadName" column="que_road_name"/> <result property="queVillage" column="que_village"/> <result property="queVillageName" column="que_village_name"/> <result property="peopleNum" column="people_num"/> <result property="amount" column="amount"/> <result property="crowd" column="crowd"/> <result property="crowdName" column="crowd_name"/> <result property="canal" column="canal"/> <result property="canalName" column="canal_name"/> <result property="visitWay" column="visit_way"/> <result property="visitWayName" column="visit_way_name"/> <result property="caseDes" column="case_des"/> <result property="caseClaim" column="case_claim"/> <result property="majorStatus" column="major_status"/> <result property="source" column="source"/> <result property="sourceName" column="source_name"/> <result property="caseNo" column="case_no"/> <result property="mediateNo" column="mediate_no"/> <result property="mediateBookNo" column="mediate_book_no"/> <result property="civilNo" column="civil_no"/> <result property="plaintiffs" column="plaintiffs"/> <result property="pagents" column="pagents"/> <result property="defendants" column="defendants"/> <result property="dagents" column="dagents"/> <result property="inputUnitId" column="input_unit_id"/> <result property="inputUnitName" column="input_unit_name"/> <result property="inputUserId" column="input_user_id"/> <result property="inputUserName" column="input_user_name"/> <result property="inputWay" column="input_way"/> <result property="status" column="status"/> <result property="statusName" column="status_name"/> <result property="process" column="process"/> <result property="processName" column="process_name"/> <result property="infoProcess" column="info_process"/> <result property="infoProcessName" column="info_process_name"/> <result property="wantUnitId" column="want_unit_id"/> <result property="wantUnitName" column="want_unit_name"/> <result property="wantUserId" column="want_user_id"/> <result property="wantUserName" column="want_user_name"/> <result property="deleteStatus" column="delete_status"/> <result property="custId" column="cust_id"/> <result property="createTime" column="create_time"/> <result property="updateTime" column="update_time"/> <result property="id" column="id"/> <result property="caseTitle" column="case_title"/> <result property="caseRef" column="case_ref"/> <result property="caseLevel" column="case_level"/> <result property="visitTime" column="visit_time"/> <result property="visitPeopleNum" column="visit_people_num"/> <result property="mediType" column="medi_type"/> <result property="mediTypeName" column="medi_type_name"/> <result property="caseTypeFirst" column="case_type_first"/> <result property="caseTypeFirstName" column="case_type_first_name"/> <result property="caseType" column="case_type"/> <result property="caseTypeName" column="case_type_name"/> <result property="occurTime" column="occur_time"/> <result property="addr" column="addr"/> <result property="lng" column="lng"/> <result property="lat" column="lat"/> <result property="wgAddr" column="wg_addr"/> <result property="wgLng" column="wg_lng"/> <result property="wgLat" column="wg_lat"/> <result property="queProv" column="que_prov"/> <result property="queProvName" column="que_prov_name"/> <result property="queCity" column="que_city"/> <result property="queCityName" column="que_city_name"/> <result property="queArea" column="que_area"/> <result property="queAreaName" column="que_area_name"/> <result property="queRoad" column="que_road"/> <result property="queRoadName" column="que_road_name"/> <result property="queVillage" column="que_village"/> <result property="queVillageName" column="que_village_name"/> <result property="peopleNum" column="people_num"/> <result property="amount" column="amount"/> <result property="crowd" column="crowd"/> <result property="crowdName" column="crowd_name"/> <result property="canal" column="canal"/> <result property="canalName" column="canal_name"/> <result property="visitWay" column="visit_way"/> <result property="visitWayName" column="visit_way_name"/> <result property="caseDes" column="case_des"/> <result property="caseClaim" column="case_claim"/> <result property="majorStatus" column="major_status"/> <result property="source" column="source"/> <result property="sourceName" column="source_name"/> <result property="caseNo" column="case_no"/> <result property="mediateNo" column="mediate_no"/> <result property="mediateBookNo" column="mediate_book_no"/> <result property="civilNo" column="civil_no"/> <result property="plaintiffs" column="plaintiffs"/> <result property="pagents" column="pagents"/> <result property="defendants" column="defendants"/> <result property="dagents" column="dagents"/> <result property="inputUnitId" column="input_unit_id"/> <result property="inputUnitName" column="input_unit_name"/> <result property="inputUserId" column="input_user_id"/> <result property="inputUserName" column="input_user_name"/> <result property="inputWay" column="input_way"/> <result property="status" column="status"/> <result property="statusName" column="status_name"/> <result property="process" column="process"/> <result property="processName" column="process_name"/> <result property="infoProcess" column="info_process"/> <result property="infoProcessName" column="info_process_name"/> <result property="wantUnitId" column="want_unit_id"/> <result property="wantUnitName" column="want_unit_name"/> <result property="wantUserId" column="want_user_id"/> <result property="wantUserName" column="want_user_name"/> <result property="deleteStatus" column="delete_status"/> <result property="custId" column="cust_id"/> <result property="createTime" column="create_time"/> <result property="updateTime" column="update_time"/> </resultMap> <resultMap id="dataResult-all" type="cn.huge.module.cases.domain.dto.CasePageDTO"> <result property="id" column="id"/> @@ -107,7 +107,10 @@ <!-- 表 --> <sql id='table-name'>dyh_case_info</sql> <sql id="column-part-all"> a.id, a . id , a.status, a.status_name, a.canal, @@ -131,7 +134,8 @@ </sql> <!-- 字段 --> <sql id="column-part"> id, id , case_title, case_ref, case_level, @@ -203,74 +207,74 @@ </sql> <!-- 更新实体字段 --> <sql id="set-part"> <if test="entity.caseTitle != null">case_title = #{entity.caseTitle},</if> <if test="entity.caseRef != null">case_ref = #{entity.caseRef},</if> <if test="entity.caseLevel != null">case_level = #{entity.caseLevel},</if> <if test="entity.visitTime != null">visit_time = #{entity.visitTime},</if> <if test="entity.visitPeopleNum != null">visit_people_num = #{entity.visitPeopleNum},</if> <if test="entity.mediType != null">medi_type = #{entity.mediType},</if> <if test="entity.mediTypeName != null">medi_type_name = #{entity.mediTypeName},</if> <if test="entity.caseTypeFirst != null">case_type_first = #{entity.caseTypeFirst},</if> <if test="entity.caseTypeFirstName != null">case_type_first_name = #{entity.caseTypeFirstName},</if> <if test="entity.caseType != null">case_type = #{entity.caseType},</if> <if test="entity.caseTypeName != null">case_type_name = #{entity.caseTypeName},</if> <if test="entity.occurTime != null">occur_time = #{entity.occurTime},</if> <if test="entity.addr != null">addr = #{entity.addr},</if> <if test="entity.lng != null">lng = #{entity.lng},</if> <if test="entity.lat != null">lat = #{entity.lat},</if> <if test="entity.wgAddr != null">wg_addr = #{entity.wgAddr},</if> <if test="entity.wgLng != null">wg_lng = #{entity.wgLng},</if> <if test="entity.wgLat != null">wg_lat = #{entity.wgLat},</if> <if test="entity.queProv != null">que_prov = #{entity.queProv},</if> <if test="entity.queProvName != null">que_prov_name = #{entity.queProvName},</if> <if test="entity.queCity != null">que_city = #{entity.queCity},</if> <if test="entity.queCityName != null">que_city_name = #{entity.queCityName},</if> <if test="entity.queArea != null">que_area = #{entity.queArea},</if> <if test="entity.queAreaName != null">que_area_name = #{entity.queAreaName},</if> <if test="entity.queRoad != null">que_road = #{entity.queRoad},</if> <if test="entity.queRoadName != null">que_road_name = #{entity.queRoadName},</if> <if test="entity.queVillage != null">que_village = #{entity.queVillage},</if> <if test="entity.queVillageName != null">que_village_name = #{entity.queVillageName},</if> <if test="entity.peopleNum != null">people_num = #{entity.peopleNum},</if> <if test="entity.amount != null">amount = #{entity.amount},</if> <if test="entity.crowd != null">crowd = #{entity.crowd},</if> <if test="entity.crowdName != null">crowd_name = #{entity.crowdName},</if> <if test="entity.canal != null">canal = #{entity.canal},</if> <if test="entity.canalName != null">canal_name = #{entity.canalName},</if> <if test="entity.visitWay != null">visit_way = #{entity.visitWay},</if> <if test="entity.visitWayName != null">visit_way_name = #{entity.visitWayName},</if> <if test="entity.caseDes != null">case_des = #{entity.caseDes},</if> <if test="entity.caseClaim != null">case_claim = #{entity.caseClaim},</if> <if test="entity.majorStatus != null">major_status = #{entity.majorStatus},</if> <if test="entity.source != null">source = #{entity.source},</if> <if test="entity.sourceName != null">source_name = #{entity.sourceName},</if> <if test="entity.caseNo != null">case_no = #{entity.caseNo},</if> <if test="entity.mediateNo != null">mediate_no = #{entity.mediateNo},</if> <if test="entity.mediateBookNo != null">mediate_book_no = #{entity.mediateBookNo},</if> <if test="entity.civilNo != null">civil_no = #{entity.civilNo},</if> <if test="entity.plaintiffs != null">plaintiffs = #{entity.plaintiffs},</if> <if test="entity.pagents != null">pagents = #{entity.pagents},</if> <if test="entity.defendants != null">defendants = #{entity.defendants},</if> <if test="entity.dagents != null">dagents = #{entity.dagents},</if> <if test="entity.inputUnitId != null">input_unit_id = #{entity.inputUnitId},</if> <if test="entity.inputUnitName != null">input_unit_name = #{entity.inputUnitName},</if> <if test="entity.inputUserId != null">input_user_id = #{entity.inputUserId},</if> <if test="entity.inputUserName != null">input_user_name = #{entity.inputUserName},</if> <if test="entity.inputWay != null">input_way = #{entity.inputWay},</if> <if test="entity.status != null">status = #{entity.status},</if> <if test="entity.statusName != null">status_name = #{entity.statusName},</if> <if test="entity.process != null">process = #{entity.process},</if> <if test="entity.processName != null">process_name = #{entity.processName},</if> <if test="entity.infoProcess != null">info_process = #{entity.infoProcess},</if> <if test="entity.infoProcessName != null">info_process_name = #{entity.infoProcessName},</if> <if test="entity.wantUnitId != null">want_unit_id = #{entity.wantUnitId},</if> <if test="entity.wantUnitName != null">want_unit_name = #{entity.wantUnitName},</if> <if test="entity.wantUserId != null">want_user_id = #{entity.wantUserId},</if> <if test="entity.wantUserName != null">want_user_name = #{entity.wantUserName},</if> <if test="entity.deleteStatus != null">delete_status = #{entity.deleteStatus},</if> <if test="entity.custId != null">cust_id = #{entity.custId},</if> <if test="entity.createTime != null">create_time = #{entity.createTime},</if> <if test="entity.updateTime != null">update_time = #{entity.updateTime}</if> <if test="entity.caseTitle != null">case_title = #{entity.caseTitle},</if> <if test="entity.caseRef != null">case_ref = #{entity.caseRef},</if> <if test="entity.caseLevel != null">case_level = #{entity.caseLevel},</if> <if test="entity.visitTime != null">visit_time = #{entity.visitTime},</if> <if test="entity.visitPeopleNum != null">visit_people_num = #{entity.visitPeopleNum},</if> <if test="entity.mediType != null">medi_type = #{entity.mediType},</if> <if test="entity.mediTypeName != null">medi_type_name = #{entity.mediTypeName},</if> <if test="entity.caseTypeFirst != null">case_type_first = #{entity.caseTypeFirst},</if> <if test="entity.caseTypeFirstName != null">case_type_first_name = #{entity.caseTypeFirstName},</if> <if test="entity.caseType != null">case_type = #{entity.caseType},</if> <if test="entity.caseTypeName != null">case_type_name = #{entity.caseTypeName},</if> <if test="entity.occurTime != null">occur_time = #{entity.occurTime},</if> <if test="entity.addr != null">addr = #{entity.addr},</if> <if test="entity.lng != null">lng = #{entity.lng},</if> <if test="entity.lat != null">lat = #{entity.lat},</if> <if test="entity.wgAddr != null">wg_addr = #{entity.wgAddr},</if> <if test="entity.wgLng != null">wg_lng = #{entity.wgLng},</if> <if test="entity.wgLat != null">wg_lat = #{entity.wgLat},</if> <if test="entity.queProv != null">que_prov = #{entity.queProv},</if> <if test="entity.queProvName != null">que_prov_name = #{entity.queProvName},</if> <if test="entity.queCity != null">que_city = #{entity.queCity},</if> <if test="entity.queCityName != null">que_city_name = #{entity.queCityName},</if> <if test="entity.queArea != null">que_area = #{entity.queArea},</if> <if test="entity.queAreaName != null">que_area_name = #{entity.queAreaName},</if> <if test="entity.queRoad != null">que_road = #{entity.queRoad},</if> <if test="entity.queRoadName != null">que_road_name = #{entity.queRoadName},</if> <if test="entity.queVillage != null">que_village = #{entity.queVillage},</if> <if test="entity.queVillageName != null">que_village_name = #{entity.queVillageName},</if> <if test="entity.peopleNum != null">people_num = #{entity.peopleNum},</if> <if test="entity.amount != null">amount = #{entity.amount},</if> <if test="entity.crowd != null">crowd = #{entity.crowd},</if> <if test="entity.crowdName != null">crowd_name = #{entity.crowdName},</if> <if test="entity.canal != null">canal = #{entity.canal},</if> <if test="entity.canalName != null">canal_name = #{entity.canalName},</if> <if test="entity.visitWay != null">visit_way = #{entity.visitWay},</if> <if test="entity.visitWayName != null">visit_way_name = #{entity.visitWayName},</if> <if test="entity.caseDes != null">case_des = #{entity.caseDes},</if> <if test="entity.caseClaim != null">case_claim = #{entity.caseClaim},</if> <if test="entity.majorStatus != null">major_status = #{entity.majorStatus},</if> <if test="entity.source != null">source = #{entity.source},</if> <if test="entity.sourceName != null">source_name = #{entity.sourceName},</if> <if test="entity.caseNo != null">case_no = #{entity.caseNo},</if> <if test="entity.mediateNo != null">mediate_no = #{entity.mediateNo},</if> <if test="entity.mediateBookNo != null">mediate_book_no = #{entity.mediateBookNo},</if> <if test="entity.civilNo != null">civil_no = #{entity.civilNo},</if> <if test="entity.plaintiffs != null">plaintiffs = #{entity.plaintiffs},</if> <if test="entity.pagents != null">pagents = #{entity.pagents},</if> <if test="entity.defendants != null">defendants = #{entity.defendants},</if> <if test="entity.dagents != null">dagents = #{entity.dagents},</if> <if test="entity.inputUnitId != null">input_unit_id = #{entity.inputUnitId},</if> <if test="entity.inputUnitName != null">input_unit_name = #{entity.inputUnitName},</if> <if test="entity.inputUserId != null">input_user_id = #{entity.inputUserId},</if> <if test="entity.inputUserName != null">input_user_name = #{entity.inputUserName},</if> <if test="entity.inputWay != null">input_way = #{entity.inputWay},</if> <if test="entity.status != null">status = #{entity.status},</if> <if test="entity.statusName != null">status_name = #{entity.statusName},</if> <if test="entity.process != null">process = #{entity.process},</if> <if test="entity.processName != null">process_name = #{entity.processName},</if> <if test="entity.infoProcess != null">info_process = #{entity.infoProcess},</if> <if test="entity.infoProcessName != null">info_process_name = #{entity.infoProcessName},</if> <if test="entity.wantUnitId != null">want_unit_id = #{entity.wantUnitId},</if> <if test="entity.wantUnitName != null">want_unit_name = #{entity.wantUnitName},</if> <if test="entity.wantUserId != null">want_user_id = #{entity.wantUserId},</if> <if test="entity.wantUserName != null">want_user_name = #{entity.wantUserName},</if> <if test="entity.deleteStatus != null">delete_status = #{entity.deleteStatus},</if> <if test="entity.custId != null">cust_id = #{entity.custId},</if> <if test="entity.createTime != null">create_time = #{entity.createTime},</if> <if test="entity.updateTime != null">update_time = #{entity.updateTime}</if> </sql> <!-- 条件 --> <sql id="where-part-all"> @@ -521,7 +525,8 @@ </if> <if test="terms.processList != null and terms.processList.size > 0"> and process in <foreach collection="terms.processList" item="process" index="index" open="(" separator="," close=")"> <foreach collection="terms.processList" item="process" index="index" open="(" separator="," close=")"> #{process} </foreach> </if> @@ -563,14 +568,14 @@ </if> <if test="terms.createStart != null and terms.createStart !='' and terms.createEnd != null and terms.createEnd !=''"> and (DATE_FORMAT(create_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.createStart} and DATE_FORMAT(create_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.createEnd}) and DATE_FORMAT(create_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.createEnd}) </if> <if test="terms.updateTime != null and terms.updateTime !=''"> and DATE_FORMAT(update_time,'%Y-%m-%d') = #{terms.updateTime} </if> <if test="terms.updateStart != null and terms.updateStart !='' and terms.updateEnd != null and terms.updateEnd !=''"> and (DATE_FORMAT(update_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.updateStart} and DATE_FORMAT(update_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.updateEnd}) and DATE_FORMAT(update_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.updateEnd}) </if> </where> </if> @@ -614,7 +619,7 @@ <!-- 根据编号物理删除 --> <delete id="deleteCaseInfo"> delete from <include refid="table-name" /> <include refid="table-name"/> where id = #{id} </delete> <!-- 根据条件查询 --> @@ -622,7 +627,7 @@ select <include refid="column-part"/> from <include refid="table-name" /> <include refid="table-name"/> <include refid="where-part"/> </select> <!-- 根据条件统计 --> @@ -630,7 +635,7 @@ select COUNT(1) from <include refid="table-name" /> <include refid="table-name"/> <include refid="where-part"/> </select> <!-- 根据条件分页查询 --> @@ -638,7 +643,7 @@ SELECT <include refid="column-part"/> FROM <include refid="table-name" /> <include refid="table-name"/> <include refid="where-part"/> <if test="page.sort != null"> <foreach collection="page.sort" item="s" index="index" separator="," open="order by "> @@ -652,6 +657,80 @@ </select> <sql id="where-register-part"> <if test="terms != null"> <where> <if test="terms.inputUnitName != null and terms.inputUnitName !=''"> and t1.input_unit_mame = #{inputUnitName} </if> <if test="terms.createStart != null and terms.createStart !='' and terms.createEnd != null and terms.createEnd !=''"> and (DATE_FORMAT(t1.create_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.createStart} and DATE_FORMAT(t1.create_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.createEnd}) </if> <if test="terms.caseLevel != null and terms.caseLevel !=''"> and t1.case_level = #{terms.caseLevel} </if> <if test="terms.caseTypeFirstName != null and terms.caseTypeFirstName !=''"> and t1.case_type_first_name = #{caseTypeFirstName} </if> <if test="terms.caseTypeName != null and terms.caseTypeName !=''"> and t1.case_type_name = #{terms.caseTypeName} </if> <if test="terms.canal != null and terms.canal !=''"> and t1.canal = #{canal} </if> <if test="terms.canalName != null and terms.canalName !=''"> and t1.canal_name = #{canalName} </if> <if test="terms.plaintiffs != null and terms.plaintiffs !=''"> and t1.plaintiffs = #{terms.plaintiffs} </if> <if test="terms.defendants != null and terms.defendants !=''"> and t1.defendants = #{terms.defendants} </if> <if test="terms.status != null and terms.status !=''"> and t1.status = #{terms.status} </if> <if test="terms.statusName != null and terms.statusName !=''"> and t1.statusName = #{terms.statusName} </if> <if test="terms.mediResultName != null and terms.mediResultName !=''"> and t2.medi_result_name = #{terms.mediResultName} </if> </where> </if> </sql> <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 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 FROM 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 <include refid="where-register-part"/> <if test="page.sort != null"> <foreach collection="page.sort" item="s" index="index" separator="," open="order by "> isnull(${s.property}), ${s.property} ${s.direction} </foreach> </if> <if test="page.sort == null"> order by isnull(create_time), create_time desc </if> limit #{page.offset}, #{page.size} </select> <select id="countTermsCaseRegister" resultType="java.lang.Long" > SELECT count(t1.id) FROM dyh_case_info t1 left join dyh_case_info_unfold t2 on t1.id = t2.id <include refid="where-register-part"/> </select> <!-- 根据条件统计 --> <select id="countTermsAll" resultType="java.lang.Long"> select dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseRegisterDTO.java
New file @@ -0,0 +1,55 @@ package cn.huge.module.cases.domain.dto; import lombok.Data; import java.util.Date; @Data public class CaseRegisterDTO { /** * 登记时间 */ private Date createTime; /** * 登记人员 */ private String inputUserName; /** * 事项状态 */ private String statusName; /** * 事项登记 */ private int caseLevel; /** * 事项来源 */ private String canalName; /** * 纠纷一级类型名称 */ private String caseTypeFirstName; /** * 纠纷二级类型名称 */ private String caseTypeName; /** *化解结果 */ private String mediResultName; /** * 申请方 */ private String plaintiffs; /** * 被申请方 */ private String defendants; /** * 督办次数 */ private int superviseCount; } dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
@@ -44,17 +44,17 @@ import java.util.stream.Collectors; /** * @author wangwh * @version 1.0.0 * @title: 纠纷信息主表业务逻辑处理 * @Description 纠纷信息主表业务逻辑处理 * @company hugeinfo * @author wangwh * @Time 2024-08-27 10:00:57 * @version 1.0.0 */ @Slf4j @Service @Transactional(rollbackFor = Exception.class) public class CaseInfoService extends ServiceImpl<CaseInfoMapper, CaseInfo>{ public class CaseInfoService extends ServiceImpl<CaseInfoMapper, CaseInfo> { @Autowired private CaseInfoMapper mapper; @@ -88,116 +88,138 @@ /** * 更新对象 * @param entity 对象 */ public void updateCaseInfo(CaseInfo entity){ try{ * 更新对象 * * @param entity 对象 */ public void updateCaseInfo(CaseInfo entity) { try { mapper.updateCaseInfo(entity); }catch (Exception e){ log.error("[CaseInfoService.updateCaseInfo]调用失败,异常信息:"+e, e); } catch (Exception e) { log.error("[CaseInfoService.updateCaseInfo]调用失败,异常信息:" + e, e); throw new ServiceException("CaseInfoService.updateCaseInfo", e); } } /** * 批量更新对象 * @param entity 对象 * * @param entity 对象 * @param caseIdList */ public void updateCaseInfoList(CaseInfo entity, List<String> caseIdList){ try{ public void updateCaseInfoList(CaseInfo entity, List<String> caseIdList) { try { mapper.updateCaseInfoList(entity, caseIdList); }catch (Exception e){ log.error("[CaseInfoService.updateCaseInfoList]调用失败,异常信息:"+e, e); } catch (Exception e) { log.error("[CaseInfoService.updateCaseInfoList]调用失败,异常信息:" + e, e); throw new ServiceException("CaseInfoService.updateCaseInfoList", e); } } /** * 条件更新对象 * @param entity 对象 * @param terms 条件 */ public void updateCaseInfoTerms(CaseInfo entity, Map<String, Object> terms){ try{ * 条件更新对象 * * @param entity 对象 * @param terms 条件 */ public void updateCaseInfoTerms(CaseInfo entity, Map<String, Object> terms) { try { mapper.updateCaseInfoTerms(entity, terms); }catch (Exception e){ log.error("[CaseInfoService.updateCaseInfoTerms]调用失败,异常信息:"+e, e); } catch (Exception e) { log.error("[CaseInfoService.updateCaseInfoTerms]调用失败,异常信息:" + e, e); throw new ServiceException("CaseInfoService.updateCaseInfoTerms", e); } } /** * 根据编号物理删除 * @param id 查询条件集合 */ public void deleteCaseInfo(String id){ try{ * 根据编号物理删除 * * @param id 查询条件集合 */ public void deleteCaseInfo(String id) { try { mapper.deleteCaseInfo(id); }catch (Exception e){ log.error("[CaseInfoService.deleteCaseInfo]调用失败,异常信息:"+e, e); } catch (Exception e) { log.error("[CaseInfoService.deleteCaseInfo]调用失败,异常信息:" + e, e); throw new ServiceException("CaseInfoService.deleteCaseInfo", e); } } /** * 按条件查询 * @param terms 条件 * @return List */ public List<CaseInfo> listTerms(Map<String, Object> terms){ * 按条件查询 * * @param terms 条件 * @return List */ public List<CaseInfo> listTerms(Map<String, Object> terms) { return mapper.listTerms(terms); } /** * 按条件统计 * @param terms 条件 * @return long */ public long countTerms(Map<String, Object> terms){ * 按条件统计 * * @param terms 条件 * @return long */ public long countTerms(Map<String, Object> terms) { return mapper.countTerms(terms); } /** * 按条件分页查询 * @param page 分页对象 * @param terms 条件 * @return Page */ public Page<CaseInfo> pageQuery(PageRequest page, Map<String, Object> terms){ * 按条件分页查询 * * @param page 分页对象 * @param terms 条件 * @return Page */ public Page<CaseInfo> pageQuery(PageRequest page, Map<String, Object> terms) { long total = mapper.countTerms(terms); List<CaseInfo> content = mapper.pageTerms(page, terms); return new PageImpl<CaseInfo>(content, page, total); } /** * 新增或更新对象 * @param caseInfo 实体对象 */ public void saveCaseInfo(CaseInfo caseInfo){ try{ * 按条件分页查询 * * @param page 分页对象 * @param terms 条件 * @return Page */ public Page<CaseRegisterDTO> pageQueryRegister(PageRequest page, Map<String, Object> terms) { long total = mapper.countTermsCaseRegister(terms); List<CaseRegisterDTO> content = mapper.pageTermsCaseRegister(page, terms); return new PageImpl<CaseRegisterDTO>(content, page, total); } /** * 新增或更新对象 * * @param caseInfo 实体对象 */ public void saveCaseInfo(CaseInfo caseInfo) { try { Date nowDate = DateUtils.getNowDate(); // 判断是否新增 if (IdUtils.checkNewId(caseInfo.getId())){ if (IdUtils.checkNewId(caseInfo.getId())) { caseInfo.setId(utilsClient.getNewTimeId()); caseInfo.setCreateTime(nowDate); } caseInfo.setUpdateTime(nowDate); this.saveOrUpdate(caseInfo); }catch (Exception e){ log.error("[CaseInfoService.saveCaseInfo]调用失败,异常信息:"+e, e); } catch (Exception e) { log.error("[CaseInfoService.saveCaseInfo]调用失败,异常信息:" + e, e); throw new ServiceException("CaseInfoService.saveCaseInfo", e); } } /** * PC端-纠纷登记-保存纠纷信息-正常案件 * * @param registerSaveDTO 纠纷信息 * @param userId 用户编号 * @param userId 用户编号 * @return String 纠纷编号 */ public String caseRegister(RegisterSaveDTO registerSaveDTO, String userId){ public String caseRegister(RegisterSaveDTO registerSaveDTO, String userId) { try { // 获取当前登录用户 CtUserDTO loginUser = custClient.clientGetUserAll(userId); @@ -224,7 +246,7 @@ caseInfo.setVisitWay(CaseBaseConstsEnum.VISIT_WAY_1.getIndex()); caseInfo.setVisitWayName(CaseBaseConstsEnum.VISIT_WAY_1.getDes()); //todo case_title生成、经纬度转换 if(0 == registerSaveDTO.getOperateType()){ if (0 == registerSaveDTO.getOperateType()) { caseInfo.setInputUnitId(loginUser.getUnitId()); caseInfo.setInputUnitName(loginUser.getUnitName()); caseInfo.setInputUserId(loginUser.getId()); @@ -238,7 +260,7 @@ caseInfo.setQueCity("1601"); caseInfo.setQueCityName("广州市"); // 删除草稿案件 if(1 == registerSaveDTO.getIsDraft() ){ if (1 == registerSaveDTO.getIsDraft()) { draftInfoService.removeDraftInfo(registerSaveDTO.getId()); } // 新增纠纷信息 @@ -251,34 +273,35 @@ caseInfoUnfoldService.save(caseInfoUnfold); // 启动工作流 // 判断是否自行受理 if(1 == registerSaveDTO.getIsSelfAccept()){ if (1 == registerSaveDTO.getIsSelfAccept()) { // 自行受理流程 return caseTaskService.webStartFlowZXSL(caseInfo, loginUser); }else { return caseTaskService.webStartFlowZXSL(caseInfo, loginUser); } else { // 自动调度流程 caseTaskService.webStartFlowLFDJ(caseInfo); } }else if(1 == registerSaveDTO.getOperateType()){ } else if (1 == registerSaveDTO.getOperateType()) { this.updateById(caseInfo); } return registerSaveDTO.getId(); }catch (Exception e){ log.error("service方法[CaseInfoService.caseRegister]调用异常:"+e, e); } catch (Exception e) { log.error("service方法[CaseInfoService.caseRegister]调用异常:" + e, e); throw new ServiceException("CaseInfoService.caseRegister", e); } } /** * pc端-常规登记-保存正式案件-保存人员信息 * * @param registerSaveDTO 纠纷信息 * @param plaintiffs 申请人 * @param pagents 申请人代理人 * @param defendants 被申请人 * @param dagents 被申请人代理人 * @param plaintiffs 申请人 * @param pagents 申请人代理人 * @param defendants 被申请人 * @param dagents 被申请人代理人 * @return int */ private void saveCasePerson(RegisterSaveDTO registerSaveDTO, StringBuffer plaintiffs, StringBuffer pagents, StringBuffer defendants, StringBuffer dagents){ StringBuffer defendants, StringBuffer dagents) { Date now = DateUtils.getNowDate(); @@ -293,8 +316,8 @@ List<String> newPersonIdList = new ArrayList<>(); List<String> newAgentIdList = new ArrayList<>(); if(CollectionUtils.isNotEmpty(personList)){ for(CasePerson casePerson: personList){ if (CollectionUtils.isNotEmpty(personList)) { for (CasePerson casePerson : personList) { newPersonIdList.add(casePerson.getId()); casePerson.setCaseId(registerSaveDTO.getId()); casePerson.setCustId(registerSaveDTO.getCustId()); @@ -302,13 +325,13 @@ //绑定当事人小程序 this.setPartyUserId(casePerson); //添加申请方和被申请方人名组合 if(CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())){ if (CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())) { //申请方 if (StringUtils.isNotEmpty(plaintiffs.toString())) { plaintiffs.append(BaseConsts.COMMA); } plaintiffs.append(casePerson.getTrueName()); }else if(CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())){ } else if (CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())) { //被申请方 if (StringUtils.isNotEmpty(defendants.toString())) { defendants.append(BaseConsts.COMMA); @@ -317,9 +340,9 @@ } //判断是否为更新(用原有的Id对比性的Id) if(oldPersonIds.contains(casePerson.getId())){ if (oldPersonIds.contains(casePerson.getId())) { personService.updateById(casePerson); }else{ } else { casePerson.setCreateTime(now); personService.save(casePerson); } @@ -327,7 +350,7 @@ } } if(CollectionUtils.isNotEmpty(agentList)) { if (CollectionUtils.isNotEmpty(agentList)) { for (CaseAgent caseAgent : agentList) { newAgentIdList.add(caseAgent.getId()); caseAgent.setCaseId(registerSaveDTO.getId()); @@ -336,12 +359,12 @@ caseAgent.setUpdateTime(now); //绑定当事人小程序 this.setPartyUserId(caseAgent); if(CaseBaseConstsEnum.PERSON_TYPE_3.getIndex().equals(caseAgent.getPerType())) { if (CaseBaseConstsEnum.PERSON_TYPE_3.getIndex().equals(caseAgent.getPerType())) { if (StringUtils.isNotEmpty(pagents.toString())) { pagents.append(BaseConsts.COMMA); } pagents.append(caseAgent.getTrueName()); }else if(CaseBaseConstsEnum.PERSON_TYPE_4.getIndex().equals(caseAgent.getPerType())) { } else if (CaseBaseConstsEnum.PERSON_TYPE_4.getIndex().equals(caseAgent.getPerType())) { if (StringUtils.isNotEmpty(dagents.toString())) { dagents.append(BaseConsts.COMMA); } @@ -349,9 +372,9 @@ } //判断是否为更新(用原有的Id对比性的Id) if(oldAgentIds.contains(caseAgent.getId())){ if (oldAgentIds.contains(caseAgent.getId())) { agentService.updateById(caseAgent); }else{ } else { caseAgent.setCreateTime(now); agentService.save(caseAgent); } @@ -363,23 +386,23 @@ for (String oldPersonId : oldPersonIdList) { if (!newPersonIdList.contains(oldPersonId)) { personService.removeById(oldPersonId); }else{ } else { } } }else{ } else { QueryWrapper<CasePerson> casePersonQueryWrapper = new QueryWrapper<>(); casePersonQueryWrapper.eq("case_id", registerSaveDTO.getId()); personService.remove(casePersonQueryWrapper); } //删除冗余的代理人 if(CollectionUtils.isNotEmpty(newAgentIdList)){ for(String oldAgentId: oldAgentIdList){ if(!newAgentIdList.contains(oldAgentId)){ if (CollectionUtils.isNotEmpty(newAgentIdList)) { for (String oldAgentId : oldAgentIdList) { if (!newAgentIdList.contains(oldAgentId)) { agentService.removeById(oldAgentId); } } }else{ } else { QueryWrapper<CaseAgent> caseAgentQueryWrapper = new QueryWrapper<>(); caseAgentQueryWrapper.eq("case_id", registerSaveDTO.getId()); agentService.remove(caseAgentQueryWrapper); @@ -388,10 +411,11 @@ /** * PC端-查询纠纷信息 * * @param caseId 纠纷编号 * @return CaseInfo 纠纷信息 */ public CaseInfoDTO getCaseInfo(String caseId){ public CaseInfoDTO getCaseInfo(String caseId) { CaseInfo caseInfo = mapper.selectById(caseId); CaseInfoDTO caseInfoDTO = new CaseInfoDTO(); if (ObjectUtils.isNotEmpty(caseInfo)) { @@ -412,28 +436,28 @@ idList.addAll(casePersonList.stream().map(CasePerson::getId).collect(Collectors.toList())); idList.addAll(caseAgentList.stream().map(CaseAgent::getId).collect(Collectors.toList())); String ids = idList.stream().map(String::valueOf).collect(Collectors.joining("','")); ids = "'"+ ids + "'"; ids = "'" + ids + "'"; Map<String, Object> term = new HashMap<>(); term.put("mainId", caseId); term.put("ownerIds", ids); //查询所有附件 List<FileIdTypeInfoBaseDTO> fileInfoList = sysClient.listIdTypeInfoByOwnerIdList(term); for(FileIdTypeInfoBaseDTO fileInfo: fileInfoList){ if(caseId.equals(fileInfo.getOwnerId())){ for (FileIdTypeInfoBaseDTO fileInfo : fileInfoList) { if (caseId.equals(fileInfo.getOwnerId())) { caseInfoDTO.setFileInfoList(fileInfo.getFileList()); } } for(CasePerson casePerson: casePersonList){ for (CasePerson casePerson : casePersonList) { //把附件根据编号放入 for(FileIdTypeInfoBaseDTO fileInfo: fileInfoList){ if(casePerson.getId().equals(fileInfo.getOwnerId())){ for (FileIdTypeInfoBaseDTO fileInfo : fileInfoList) { if (casePerson.getId().equals(fileInfo.getOwnerId())) { casePerson.setFileInfoList(fileInfo.getFileList()); } } } for(CaseAgent caseAgent: caseAgentList){ for(FileIdTypeInfoBaseDTO fileInfo: fileInfoList){ if(caseAgent.getId().equals(fileInfo.getOwnerId())){ for (CaseAgent caseAgent : caseAgentList) { for (FileIdTypeInfoBaseDTO fileInfo : fileInfoList) { if (caseAgent.getId().equals(fileInfo.getOwnerId())) { caseAgent.setFileInfoList(fileInfo.getFileList()); } } @@ -446,10 +470,11 @@ /** * PC端-查询纠纷信息 * * @param caseId 纠纷编号 * @return CaseInfo 纠纷信息 */ public CaseInfoDTO getCaseArchivesInfo(String caseId){ public CaseInfoDTO getCaseArchivesInfo(String caseId) { CaseInfo caseInfo = mapper.selectById(caseId); CaseInfoDTO caseInfoDTO = new CaseInfoDTO(); if (ObjectUtils.isNotEmpty(caseInfo)) { @@ -470,28 +495,28 @@ idList.addAll(casePersonList.stream().map(CasePerson::getId).collect(Collectors.toList())); idList.addAll(caseAgentList.stream().map(CaseAgent::getId).collect(Collectors.toList())); String ids = idList.stream().map(String::valueOf).collect(Collectors.joining("','")); ids = "'"+ ids + "'"; ids = "'" + ids + "'"; Map<String, Object> term = new HashMap<>(); term.put("mainId", caseId); term.put("ownerIds", ids); //查询所有附件 List<FileIdTypeInfoBaseDTO> fileInfoList = sysClient.listIdTypeInfoByOwnerIdList(term); for(FileIdTypeInfoBaseDTO fileInfo: fileInfoList){ if(caseId.equals(fileInfo.getOwnerId())){ for (FileIdTypeInfoBaseDTO fileInfo : fileInfoList) { if (caseId.equals(fileInfo.getOwnerId())) { caseInfoDTO.setFileInfoList(fileInfo.getFileList()); } } for(CasePerson casePerson: casePersonList){ for (CasePerson casePerson : casePersonList) { //把附件根据编号放入 for(FileIdTypeInfoBaseDTO fileInfo: fileInfoList){ if(casePerson.getId().equals(fileInfo.getOwnerId())){ for (FileIdTypeInfoBaseDTO fileInfo : fileInfoList) { if (casePerson.getId().equals(fileInfo.getOwnerId())) { casePerson.setFileInfoList(fileInfo.getFileList()); } } } for(CaseAgent caseAgent: caseAgentList){ for(FileIdTypeInfoBaseDTO fileInfo: fileInfoList){ if(caseAgent.getId().equals(fileInfo.getOwnerId())){ for (CaseAgent caseAgent : caseAgentList) { for (FileIdTypeInfoBaseDTO fileInfo : fileInfoList) { if (caseAgent.getId().equals(fileInfo.getOwnerId())) { caseAgent.setFileInfoList(fileInfo.getFileList()); } } @@ -504,6 +529,7 @@ /** * 绑定当事人小程序 * * @param casePerson 当事人信息 */ public void setPartyUserId(CasePerson casePerson) { @@ -527,9 +553,10 @@ /** * 绑定当事人小程序 * * @param caseAgent 代理人人信息 */ public void setPartyUserId(CaseAgent caseAgent){ public void setPartyUserId(CaseAgent caseAgent) { if (StringUtils.isEmpty(caseAgent.getPartyUserId())) { if (CaseBaseConstsEnum.CARD_TYPE_1.getIndex().equals(caseAgent.getCertiType())) { if (StringUtils.isNotEmpty(caseAgent.getCertiNo())) { @@ -546,14 +573,15 @@ /** * PC端-纠纷登记-保存纠纷信息-正常案件 * * @param registerSaveDTO 纠纷信息 * @param userId 用户编号 * @param userId 用户编号 * @return String 纠纷编号 */ public String caseRegisterWechat(RegisterSaveDTO registerSaveDTO, String userId){ public String caseRegisterWechat(RegisterSaveDTO registerSaveDTO, String userId) { // 获取当前登录用户 PaUserDTO loginUser = custClient.paclientGetUser(userId); if(ObjectUtils.isEmpty(registerSaveDTO.getCustId())){ if (ObjectUtils.isEmpty(registerSaveDTO.getCustId())) { registerSaveDTO.setCustId(loginUser.getCustId()); } @@ -563,7 +591,7 @@ CaseInfo caseInfo = new CaseInfo(); CaseInfoUnfold caseInfoUnfold = new CaseInfoUnfold(); BeanUtils.copyProperties(registerSaveDTO, caseInfo); if(ObjectUtils.isEmpty(caseInfo.getId())){ if (ObjectUtils.isEmpty(caseInfo.getId())) { caseInfo.setId(utilsClient.getNewTimeCaseId()); } // caseInfo.setInputUnitId(loginUser.getUnitId()); @@ -582,16 +610,15 @@ caseInfo.setVisitTime(nowDate); caseInfo.setDeleteStatus(BaseConsts.DELETE_STATUS_0); //坐标转换 if(ObjectUtils.isNotEmpty(caseInfo.getLat()) && ObjectUtils.isNotEmpty(caseInfo.getLng())){ if (ObjectUtils.isNotEmpty(caseInfo.getLat()) && ObjectUtils.isNotEmpty(caseInfo.getLng())) { PointXY pointXY = MapUtils.gcj02tobd09(Double.valueOf(caseInfo.getLng()), Double.valueOf(caseInfo.getLat())); caseInfo.setLat(pointXY.getLat()+""); caseInfo.setLng(pointXY.getLon()+""); caseInfo.setLat(pointXY.getLat() + ""); caseInfo.setLng(pointXY.getLon() + ""); } //todo case_title生成 caseInfo.setCaseRef(utilsClient.createCaseRef()); // 为了演示先兼容小程序没属地问题,写死属地 if (ObjectUtils.isEmpty(caseInfo.getQueProv())) { // caseInfo.setQueProv("19"); // caseInfo.setQueProvName("广东"); // caseInfo.setQueCity("1601"); @@ -600,18 +627,18 @@ // caseInfo.setQueAreaName("白云区"); // caseInfo.setQueRoad("62857"); // caseInfo.setQueRoadName("新市街道"); // 根据经纬度查询问题属地 QueAddrBaseDTO queAddrBaseDTO = sysClient.getQueAddrByBaiduiLngLat(caseInfo.getLng(), caseInfo.getLat()); caseInfo.setQueProv(queAddrBaseDTO.getQueProv()); caseInfo.setQueProvName(queAddrBaseDTO.getQueProvName()); caseInfo.setQueCity(queAddrBaseDTO.getQueCity()); caseInfo.setQueCityName(queAddrBaseDTO.getQueCityName()); caseInfo.setQueArea(queAddrBaseDTO.getQueArea()); caseInfo.setQueAreaName(queAddrBaseDTO.getQueAreaName()); caseInfo.setQueRoad(queAddrBaseDTO.getQueRoad()); caseInfo.setQueRoadName(queAddrBaseDTO.getQueRoadName()); } // 根据经纬度查询问题属地 QueAddrBaseDTO queAddrBaseDTO = sysClient.getQueAddrByBaiduiLngLat(caseInfo.getLng(), caseInfo.getLat()); log.info("xsdqueAddrBaseDTO:{}", queAddrBaseDTO); caseInfo.setQueProv(queAddrBaseDTO.getQueProv()); caseInfo.setQueProvName(queAddrBaseDTO.getQueProvName()); caseInfo.setQueCity(queAddrBaseDTO.getQueCity()); caseInfo.setQueCityName(queAddrBaseDTO.getQueCityName()); caseInfo.setQueArea(queAddrBaseDTO.getQueArea()); caseInfo.setQueAreaName(queAddrBaseDTO.getQueAreaName()); caseInfo.setQueRoad(queAddrBaseDTO.getQueRoad()); caseInfo.setQueRoadName(queAddrBaseDTO.getQueRoadName()); log.info("xsdcaseInfo:{}", caseInfo); caseInfoUnfold.setId(caseInfo.getId()); caseInfoUnfold.setCreateTime(nowDate); caseInfoUnfold.setUpdateTime(nowDate); @@ -621,7 +648,7 @@ StringBuffer pagents = new StringBuffer(); StringBuffer dagents = new StringBuffer(); // 常规登记-保存当事人 int peopleNum = this.saveCasePersonWechat(registerSaveDTO, plaintiffs, pagents, defendants, dagents,loginUser); int peopleNum = this.saveCasePersonWechat(registerSaveDTO, plaintiffs, pagents, defendants, dagents, loginUser); caseInfo.setVisitPeopleNum(peopleNum); caseInfo.setPlaintiffs(plaintiffs.toString()); caseInfo.setPagents(pagents.toString()); @@ -657,16 +684,17 @@ /** * 生成调解案件标题 * @param plaintiffs 申请人 * @param defendants 被申请人 * * @param plaintiffs 申请人 * @param defendants 被申请人 * @param caseTypeName 纠纷类型 * @return String */ public String createCaseTitle(String plaintiffs, String defendants, String caseTypeName){ public String createCaseTitle(String plaintiffs, String defendants, String caseTypeName) { StringBuffer caseTitle = new StringBuffer(); if (plaintiffs.indexOf(BaseConsts.COMMA) != -1){ if (plaintiffs.indexOf(BaseConsts.COMMA) != -1) { caseTitle.append(plaintiffs.split(BaseConsts.COMMA)[0]).append("等"); }else { } else { caseTitle.append(plaintiffs.split(BaseConsts.COMMA)[0]); } if (StringUtils.isNotEmpty(defendants)) { @@ -678,7 +706,7 @@ } } caseTitle.append("的"); if (StringUtils.isNotEmpty(caseTypeName)){ if (StringUtils.isNotEmpty(caseTypeName)) { caseTitle.append(caseTypeName); } caseTitle.append("案件"); @@ -687,15 +715,16 @@ /** * pc端-常规登记-保存正式案件-保存人员信息 * * @param registerSaveDTO 纠纷信息 * @param plaintiffs 申请人 * @param pagents 申请人代理人 * @param defendants 被申请人 * @param dagents 被申请人代理人 * @param plaintiffs 申请人 * @param pagents 申请人代理人 * @param defendants 被申请人 * @param dagents 被申请人代理人 * @return int */ private int saveCasePersonWechat(RegisterSaveDTO registerSaveDTO, StringBuffer plaintiffs, StringBuffer pagents, StringBuffer defendants, StringBuffer dagents,PaUserDTO loginUser){ StringBuffer defendants, StringBuffer dagents, PaUserDTO loginUser) { int peopleNum = 0; // 保存申请人 List<CasePerson> personList = registerSaveDTO.getPersonList(); @@ -711,13 +740,13 @@ personService.saveOrUpdate(casePerson); //添加申请方和被申请方人名组合 if(CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())){ if (CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())) { //申请方 if (StringUtils.isNotEmpty(plaintiffs.toString())) { plaintiffs.append(BaseConsts.COMMA); } plaintiffs.append(casePerson.getTrueName()); }else if(CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())){ } else if (CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())) { //被申请方 if (StringUtils.isNotEmpty(defendants.toString())) { defendants.append(BaseConsts.COMMA); @@ -730,7 +759,7 @@ //保存代理人 List<CaseAgent> agentList = registerSaveDTO.getAgentList(); if (CollectionUtils.isNotEmpty(agentList)) { for(CaseAgent caseAgent: agentList){ for (CaseAgent caseAgent : agentList) { caseAgent.setId(utilsClient.getNewTimeCaseId()); caseAgent.setPartyUserId(loginUser.getId()); caseAgent.setCaseId(registerSaveDTO.getId()); @@ -739,12 +768,12 @@ caseAgent.setCreateTime(registerSaveDTO.getUpdateTime()); caseAgent.setUpdateTime(registerSaveDTO.getUpdateTime()); agentService.saveOrUpdate(caseAgent); if(CaseBaseConstsEnum.PERSON_TYPE_3.getIndex().equals(caseAgent.getPerType())){ if (CaseBaseConstsEnum.PERSON_TYPE_3.getIndex().equals(caseAgent.getPerType())) { if (StringUtils.isNotEmpty(pagents.toString())) { pagents.append(BaseConsts.COMMA); } pagents.append(caseAgent.getTrueName()); }else if(CaseBaseConstsEnum.PERSON_TYPE_4.getIndex().equals(caseAgent.getPerType())){ } else if (CaseBaseConstsEnum.PERSON_TYPE_4.getIndex().equals(caseAgent.getPerType())) { if (StringUtils.isNotEmpty(dagents.toString())) { dagents.append(BaseConsts.COMMA); } @@ -758,15 +787,15 @@ return peopleNum; } public RegisterSaveDTO getCaseInfoWechat(String id){ public RegisterSaveDTO getCaseInfoWechat(String id) { RegisterSaveDTO registerSaveDTO = new RegisterSaveDTO(); CaseInfo caseInfo = this.getById(id); if(ObjectUtils.isNotEmpty(caseInfo)){ if (ObjectUtils.isNotEmpty(caseInfo)) { BeanUtils.copyProperties(caseInfo, registerSaveDTO); } QueryWrapper<CasePerson> casePersonQueryWrapper = new QueryWrapper<>(); casePersonQueryWrapper.eq("case_id", registerSaveDTO.getId()); List<CasePerson> personList = personService.list(casePersonQueryWrapper); List<CasePerson> personList = personService.list(casePersonQueryWrapper); registerSaveDTO.setPersonList(personList); QueryWrapper<CaseAgent> caseAgentQueryWrapper = new QueryWrapper<>(); @@ -779,45 +808,46 @@ /** * 按条件分页查询-小程序查询 * @param page 分页对象 * * @param page 分页对象 * @param terms 条件 * @return Page */ public Page<CaseInfoWeChatDTO> pageQueryWechat(String userId, PageRequest page, Map<String, Object> terms){ public Page<CaseInfoWeChatDTO> pageQueryWechat(String userId, PageRequest page, Map<String, Object> terms) { PaUserDTO loginUser = custClient.paclientGetUser(userId); List<CaseInfoWeChatDTO> list = new ArrayList<>(); String personType = terms.get("personType")+""; if(ObjectUtils.isEmpty(personType)){ String personType = terms.get("personType") + ""; if (ObjectUtils.isEmpty(personType)) { throw new RuntimeException("请选择人员类型"); } if(ObjectUtils.isEmpty(loginUser.getIdcard())){ if (ObjectUtils.isEmpty(loginUser.getIdcard())) { return new PageImpl<CaseInfoWeChatDTO>(list, page, 0); } QueryWrapper<CasePerson> personWrapper = new QueryWrapper<>(); personWrapper.select("case_id"); personWrapper.eq("certi_no", loginUser.getIdcard()); if("1".equals(personType)){ personWrapper.eq("per_type",CaseBaseConstsEnum.PERSON_TYPE_1.getIndex()); }else { personWrapper.eq("per_type",CaseBaseConstsEnum.PERSON_TYPE_2.getIndex()); if ("1".equals(personType)) { personWrapper.eq("per_type", CaseBaseConstsEnum.PERSON_TYPE_1.getIndex()); } else { personWrapper.eq("per_type", CaseBaseConstsEnum.PERSON_TYPE_2.getIndex()); } List<CasePerson> casePersonList = personService.list(personWrapper); if(ObjectUtils.isEmpty(casePersonList)){ if (ObjectUtils.isEmpty(casePersonList)) { return new PageImpl<CaseInfoWeChatDTO>(list, page, 0); } List<String> ids = casePersonList.stream().map(CasePerson::getCaseId).collect(Collectors.toList()); terms.put("ids",ids); terms.put("ids", ids); long total = mapper.countTerms(terms); List<CaseInfo> content = mapper.pageTerms(page, terms); if(ObjectUtils.isNotEmpty(content)){ for(CaseInfo caseInfo: content){ if (ObjectUtils.isNotEmpty(content)) { for (CaseInfo caseInfo : content) { CaseInfoWeChatDTO caseInfoWeChatDTO = new CaseInfoWeChatDTO(); BeanUtils.copyProperties(caseInfo, caseInfoWeChatDTO); caseInfoWeChatDTO.setProcessStatus(caseInfo.getInfoProcess()); caseInfoWeChatDTO.setProcessStatusName(caseInfo.getInfoProcessName()); //扩展信息 CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseInfo.getId()); if(ObjectUtils.isNotEmpty(caseInfoUnfold)){ if (ObjectUtils.isNotEmpty(caseInfoUnfold)) { caseInfoWeChatDTO.setMediResult(caseInfoUnfold.getMediResult()); caseInfoWeChatDTO.setMediResultName(caseInfoUnfold.getMediResultName()); caseInfoWeChatDTO.setMediateDeptId(caseInfoUnfold.getMediateUnitId()); @@ -837,9 +867,9 @@ for (CasePerson casePerson : casePersonList1) { CasePersonWechatDTO casePersonWechatDTO = new CasePersonWechatDTO(); BeanUtils.copyProperties(casePerson, casePersonWechatDTO); if(CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())){ if (CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())) { plaintiffList.add(casePersonWechatDTO); }else if(CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())){ } else if (CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())) { defendantList.add(casePersonWechatDTO); } } @@ -851,9 +881,9 @@ evaluateTerms.put("deleteStatus", BaseConsts.DELETE_STATUS_0); evaluateTerms.put("evaluateUserId", loginUser.getId()); long evaluateCount = caseEvaluateService.countTerms(evaluateTerms); if(evaluateCount > 0){ if (evaluateCount > 0) { caseInfoWeChatDTO.setIsEvaluate("1"); }else{ } else { caseInfoWeChatDTO.setIsEvaluate("0"); } @@ -865,14 +895,15 @@ /** * 按条件分页查询-综合查询 * @param page 分页对象 * * @param page 分页对象 * @param terms 条件 * @return Page */ public Page<CasePageDTO> pageQueryAll(PageRequest page, Map<String, Object> terms){ public Page<CasePageDTO> pageQueryAll(PageRequest page, Map<String, Object> terms) { long total = mapper.countTermsAll(terms); List<CasePageDTO> content = mapper.pageTermsAll(page, terms); if(ObjectUtils.isNotEmpty(content)){ if (ObjectUtils.isNotEmpty(content)) { for (CasePageDTO casePageDTO : content) { QueryWrapper<CasePerson> personWrapper1 = new QueryWrapper<>(); personWrapper1.eq("case_id", casePageDTO.getId()); @@ -884,9 +915,9 @@ for (CasePerson casePerson : casePersonList1) { CasePersonWeDTO casePersonWechatDTO = new CasePersonWeDTO(); BeanUtils.copyProperties(casePerson, casePersonWechatDTO); if(CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())){ if (CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())) { plaintiffList.add(casePersonWechatDTO); }else if(CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())){ } else if (CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())) { defendantList.add(casePersonWechatDTO); } }