package cn.huge.module.aidata.controller; import cn.huge.module.aidata.domain.po.LawSimilarityRelations; import cn.huge.module.aidata.service.ILawSimilarityRelationsService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.web.bind.annotation.*; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 案件与法条关系表 控制器 */ @Slf4j @RestController @RequestMapping("/api/aidata/law-similarity") public class LawSimilarityRelationsController { @Autowired private ILawSimilarityRelationsService lawSimilarityRelationsService; /** * 分页查询案件与法条关系列表 */ @GetMapping("/list") public Page list(@RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum, @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, @RequestParam(value = "caseId", required = false) String caseId) { Map terms = new HashMap<>(); terms.put("deleteStatus", "1"); if (caseId != null) { terms.put("caseId", caseId); } return lawSimilarityRelationsService.pageTerms(PageRequest.of(pageNum - 1, pageSize), terms); } /** * 获取案件与法条关系详细信息 */ @GetMapping("/{id}") public LawSimilarityRelations getInfo(@PathVariable String id) { return lawSimilarityRelationsService.getById(id); } /** * 新增案件与法条关系 */ @PostMapping public LawSimilarityRelations add(@RequestBody LawSimilarityRelations relations) { return lawSimilarityRelationsService.saveLawSimilarityRelations(relations); } /** * 修改案件与法条关系 */ @PutMapping public void edit(@RequestBody LawSimilarityRelations relations) { lawSimilarityRelationsService.updateLawSimilarityRelations(relations); } /** * 更新点赞状态 */ @PutMapping("/like/{id}/{status}") public void updateLikeStatus(@PathVariable String id, @PathVariable String status) { lawSimilarityRelationsService.updateLikeStatus(id, status); } /** * 删除案件与法条关系 */ @DeleteMapping("/{id}") public void remove(@PathVariable String id) { lawSimilarityRelationsService.logicDelete(id); } /** * 根据条件检查案件与法条关系 */ @PostMapping("/check") public List checkRelations(@RequestBody LawSimilarityRelations relations) { List result = lawSimilarityRelationsService.findByConditions(relations); if (result.isEmpty()) { log.info("未找到匹配的案件与法条关系记录, 查询条件: {}", relations); } return result; } }