package cn.huge.module.knowledge.controller.web;
|
|
import cn.huge.base.common.utils.ReturnFailUtils;
|
import cn.huge.base.common.utils.ReturnSucUtils;
|
import cn.huge.module.knowledge.domain.dto.CpwsCaseDTO;
|
import cn.huge.module.knowledge.domain.dto.LawCpwsDTO;
|
import cn.huge.module.knowledge.domain.dto.LawIndex;
|
import cn.huge.module.knowledge.domain.po.CpwsCaseInfo;
|
import cn.huge.module.knowledge.domain.po.CpwsCaseText;
|
import cn.huge.module.knowledge.domain.po.DyhCaseInfo;
|
import cn.huge.module.knowledge.domain.po.LawOriginalInfo;
|
import cn.huge.module.knowledge.service.CpwsCaseInfoService;
|
import cn.huge.module.knowledge.service.CpwsCaseTextService;
|
import cn.huge.module.knowledge.service.LawInfoService;
|
import cn.huge.module.knowledge.service.LawOriginalInfoService;
|
import com.google.common.collect.Maps;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.commons.lang3.StringUtils;
|
import org.springframework.beans.BeanUtils;
|
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.*;
|
|
import javax.servlet.http.HttpServletRequest;
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.regex.Matcher;
|
import java.util.regex.Pattern;
|
import java.util.stream.Collectors;
|
import java.util.stream.Stream;
|
|
/**
|
* @title: 裁判文书网案件文本表接口api-web端
|
* @description: 裁判文书网案件文本表接口api-web端
|
* @company: hugeinfo
|
* @author: huangh
|
* @time: 2024-12-10 17:28:00
|
* @version: 1.0.0
|
*/
|
@Slf4j
|
@RestController
|
@RequestMapping("/api/web/cpwsCaseText")
|
public class CpwsCaseTextWebController {
|
|
@Autowired(required = false)
|
private HttpServletRequest request;
|
|
@Autowired
|
private CpwsCaseTextService service;
|
|
@Autowired
|
private CpwsCaseInfoService cpwsCaseInfoService;
|
|
/**
|
* 获取请求URL参数
|
* @return Map<String, Object>
|
*/
|
private Map<String, Object> getParameter() {
|
Map<String, Object> terms = Maps.newHashMap();
|
// 案号,与信息表关联
|
String cpwsCaseInfoId = request.getParameter("cpwsCaseInfoId");
|
if (StringUtils.isNotBlank(cpwsCaseInfoId)) {
|
terms.put("cpwsCaseInfoId", cpwsCaseInfoId);
|
}
|
// 审理经过
|
String trialProcess = request.getParameter("trialProcess");
|
if (StringUtils.isNotBlank(trialProcess)) {
|
terms.put("trialProcess", trialProcess);
|
}
|
// 案件基本情况
|
String basicCaseInfo = request.getParameter("basicCaseInfo");
|
if (StringUtils.isNotBlank(basicCaseInfo)) {
|
terms.put("basicCaseInfo", basicCaseInfo);
|
}
|
// 审理查明
|
String trialFinding = request.getParameter("trialFinding");
|
if (StringUtils.isNotBlank(trialFinding)) {
|
terms.put("trialFinding", trialFinding);
|
}
|
// 判决
|
String judgment = request.getParameter("judgment");
|
if (StringUtils.isNotBlank(judgment)) {
|
terms.put("judgment", judgment);
|
}
|
// 法律依据
|
String legalBasis = request.getParameter("legalBasis");
|
if (StringUtils.isNotBlank(legalBasis)) {
|
terms.put("legalBasis", legalBasis);
|
}
|
// 删除状态,1:未删除(默认值),99:已删除
|
String deleteStatus = request.getParameter("deleteStatus");
|
if (StringUtils.isNotBlank(deleteStatus)) {
|
terms.put("deleteStatus", deleteStatus);
|
}
|
// 创建时间区间
|
String createStart = request.getParameter("createStart");
|
String createEnd = request.getParameter("createEnd");
|
if (StringUtils.isNotBlank(createStart) && StringUtils.isNotBlank(createEnd)) {
|
terms.put("createStart", createStart);
|
terms.put("createEnd", createEnd);
|
}
|
// 更新时间区间
|
String updateStart = request.getParameter("updateStart");
|
String updateEnd = request.getParameter("updateEnd");
|
if (StringUtils.isNotBlank(updateStart) && StringUtils.isNotBlank(updateEnd)) {
|
terms.put("updateStart", updateStart);
|
terms.put("updateEnd", updateEnd);
|
}
|
return terms;
|
}
|
|
/**
|
* 条件查询多个
|
* @url {ctx}/api/web/cpwsCaseText/listQuery
|
* @return Object
|
*/
|
@GetMapping("/listQuery")
|
public Object listQuery() {
|
try {
|
Map<String, Object> terms = getParameter();
|
return ReturnSucUtils.getRepInfo(service.listTerms(terms));
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* 条件分页查询
|
* @url {ctx}/api/web/cpwsCaseText/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 = getParameter();
|
Sort sort = Sort.by(Sort.Direction.DESC, "create_time");
|
PageRequest pageRequest = PageRequest.of(page - 1, size, sort);
|
Page<CpwsCaseText> cpwsCaseTextPage = service.pageQuery(pageRequest, terms);
|
return ReturnSucUtils.getRepInfo("处理成功", cpwsCaseTextPage);
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* 根据编号查询单个
|
* @url {ctx}/api/web/cpwsCaseText/getById
|
* @param id 主键编号
|
* @return Object
|
*/
|
@GetMapping("/getById")
|
public Object getById(@RequestParam(value = "id") String id) {
|
try {
|
return ReturnSucUtils.getRepInfo(service.getById(id));
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* 根据编号查询 案件文本和信息详情
|
* @url {ctx}/api/web/cpwsCaseText/getCpwsCaseById
|
* @param id 主键编号
|
* @return Object
|
*/
|
@GetMapping("/getCpwsCaseById")
|
public Object getCpwsCaseById(@RequestParam(value = "id") String id) {
|
try {
|
CpwsCaseText cpwsCaseText = service.getById(id);
|
CpwsCaseInfo cpwsCaseInfo = cpwsCaseInfoService.getById(cpwsCaseText.getCpwsCaseInfoId());
|
CpwsCaseDTO cpwsCaseDTO = new CpwsCaseDTO();
|
BeanUtils.copyProperties(cpwsCaseInfo, cpwsCaseDTO);
|
BeanUtils.copyProperties(cpwsCaseText, cpwsCaseDTO);
|
List<LawIndex> lawList = service.extractLaws(cpwsCaseDTO.getBasicCaseInfo()+cpwsCaseDTO.getTrialFinding()+cpwsCaseDTO.getLegalBasis()+cpwsCaseDTO.getJudgment());
|
cpwsCaseDTO.setLawList(lawList);
|
|
|
return ReturnSucUtils.getRepInfo(cpwsCaseDTO);
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* 根据主键单个
|
* @url {ctx}/api/web/cpwsCaseText/deleteById
|
* @param id 主键编号
|
* @return Object
|
*/
|
@GetMapping("/deleteById")
|
public Object deleteById(@RequestParam(value = "id") String id) {
|
try {
|
service.removeById(id);
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
/**
|
* 新增或更新对象
|
* @url {ctx}/api/web/cpwsCaseText/saveCpwsCaseText
|
* @param cpwsCaseText 实体对象
|
* @return Object
|
*/
|
@PostMapping("/saveCpwsCaseText")
|
public Object saveCpwsCaseText(@RequestBody CpwsCaseText cpwsCaseText) {
|
try {
|
service.saveCpwsCaseText(cpwsCaseText);
|
return ReturnSucUtils.getRepInfo();
|
} catch (Exception e) {
|
return ReturnFailUtils.getRepInfo();
|
}
|
}
|
|
}
|