package cn.huge.module.analysis.controller; import cn.huge.base.common.bo.ReturnBO; import cn.huge.base.common.utils.ReturnFailUtils; import cn.huge.base.common.utils.ReturnSucUtils; import cn.huge.base.config.CurrentUser; import cn.huge.module.analysis.domain.dto.CountRepeateDto; import cn.huge.module.analysis.domain.vo.CountRepeateVo; import cn.huge.module.analysis.service.AnalysisService; import cn.huge.module.client.api.impl.CustClientImpl; import cn.huge.module.cust.dto.CtUnitDTO; import cn.huge.module.cust.dto.CtUserDTO; import dm.jdbc.util.StringUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; /** * @title: 纠纷信息主表接口api-web端 * @description: 纠纷信息主表接口api-web端 * @company: hugeinfo * @author: wangwh * @time: 2024-08-27 10:00:57 * @version: 1.0.0 */ @Slf4j @RestController @RequestMapping("/api/web/analysis") public class AnalysisWebController { @Autowired(required = false) private HttpServletRequest request; @Autowired private AnalysisService service; @Autowired private CustClientImpl custClient; /** * 统计重复来访案件数量-根据案件类型分组 * @url {ctx}/api/web/analysis/countRepeatedCasesByCaseType * @param * @return Object */ @PostMapping("/countRepeatedCasesByCaseType") public ReturnBO countRepeatedCasesByCaseType(@RequestBody CountRepeateVo countRepeateVo) { try{ countRepeateVo.setGroupByCaseType("true"); List countRepeateDtoList = service.countRepeatedCases(countRepeateVo); return ReturnSucUtils.getRepInfo("请求成功",countRepeateDtoList); }catch (Exception e){ log.error("统计重复来访案件数量异常",e); return ReturnFailUtils.getRepInfo(e.getMessage()); } } /** * 统计重复来访案件数量-根据地区分组 * @url {ctx}/api/web/analysis/countRepeatedCasesByArea * @param * @return Object */ @PostMapping("/countRepeatedCasesByArea") public ReturnBO countRepeatedCasesByArea(@RequestBody CountRepeateVo countRepeateVo) { try{ countRepeateVo.setIsFinish("false"); List countRepeateDtoList = service.countRepeatedCasesByArea(countRepeateVo); countRepeateVo.setIsFinish("true"); List countRepeateDtoListIsFinish = service.countRepeatedCasesByArea(countRepeateVo); Map> collect = new HashMap<>(); collect.put("未办结",countRepeateDtoList); collect.put("已办结",countRepeateDtoListIsFinish); return ReturnSucUtils.getRepInfo("请求成功",collect); }catch (Exception e){ log.error("统计重复来访案件数量异常",e); return ReturnFailUtils.getRepInfo(e.getMessage()); } } /** * 统计重复来访案件数量-根据时间分组 * @url {ctx}/api/web/analysis/countRepeatedCasesByCaseType * @param * @return Object */ @PostMapping("/countRepeatedCasesByTime") public ReturnBO countRepeatedCasesByTime(@RequestBody CountRepeateVo countRepeateVo) { try{ countRepeateVo.setIsFinish("false"); List countRepeateDtoList = service.countRepeatedCasesByTime(countRepeateVo); countRepeateVo.setIsFinish("true"); List countRepeateDtoListIsFinish = service.countRepeatedCasesByTime(countRepeateVo); Map> collect = new HashMap<>(); collect.put("未办结",countRepeateDtoList); collect.put("已办结",countRepeateDtoListIsFinish); return ReturnSucUtils.getRepInfo("请求成功",collect); }catch (Exception e){ log.error("统计重复来访案件数量异常",e); return ReturnFailUtils.getRepInfo(e.getMessage()); } } }