| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- package com.ymwk.supervisionserver.controller;
- import com.ymwk.supervisionserver.component.PageResult;
- import com.ymwk.supervisionserver.component.ResponseDTO;
- import com.ymwk.supervisionserver.entity.Evidence;
- import com.ymwk.supervisionserver.model.EvidenceByIdenRequest;
- import com.ymwk.supervisionserver.model.EvidenceListRequest;
- import com.ymwk.supervisionserver.model.EvidenceTextAddRequest;
- import com.ymwk.supervisionserver.model.EvidenceTextVerifyRequest;
- import com.ymwk.supervisionserver.service.EvidenceService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.*;
- import org.springframework.web.multipart.MultipartFile;
- import java.util.Map;
- /**
- * 存证:文本/文件存证签发、三层核验(摘要/HMAC/签名)、查询
- */
- @RestController
- @RequestMapping("/api/v1/evidence")
- public class EvidenceController {
- @Autowired
- private EvidenceService evidenceService;
- //文本存证签发:返回 {evidenceIden, hmac, url}
- @PostMapping("/textEvidenceAdd")
- public ResponseDTO<Map<String, String>> textEvidenceAdd(@RequestBody EvidenceTextAddRequest request) {
- return evidenceService.textEvidenceAdd(request);
- }
- //文件存证签发(multipart):文件上传 MinIO,返回 {evidenceIden, hmac, url}
- @PostMapping("/fileEvidenceAdd")
- public ResponseDTO<Map<String, String>> fileEvidenceAdd(@RequestParam("file") MultipartFile file,
- @RequestParam(value = "credIden", required = false) String credIden) {
- return evidenceService.fileEvidenceAdd(file, credIden);
- }
- //文本存证核验:返回 {hashEqual, hmacEqual, signEqual}
- @PostMapping("/textEvidenceVerify")
- public ResponseDTO<Map<String, Boolean>> textEvidenceVerify(@RequestBody EvidenceTextVerifyRequest request) {
- return evidenceService.textEvidenceVerify(request);
- }
- //文件存证核验(multipart):返回 {hashEqual, hmacEqual, signEqual}
- @PostMapping("/fileEvidenceVerify")
- public ResponseDTO<Map<String, Boolean>> fileEvidenceVerify(@RequestParam("file") MultipartFile file,
- @RequestParam("evidenceIden") String evidenceIden,
- @RequestParam("hmac") String hmac) {
- return evidenceService.fileEvidenceVerify(file, evidenceIden, hmac);
- }
- //存证分页列表(不含正文/文件URL,详情走 getEvidenceDataByIden)
- @PostMapping("/list")
- public ResponseDTO<PageResult<Evidence>> list(@RequestBody EvidenceListRequest request) {
- return evidenceService.list(request);
- }
- //按存证标识查询凭证数据(签名/HMAC/摘要/时间戳/原文引用)
- @PostMapping("/getEvidenceDataByIden")
- public ResponseDTO<Map<String, Object>> getEvidenceDataByIden(@RequestBody EvidenceByIdenRequest request) {
- return evidenceService.getEvidenceDataByIden(request);
- }
- }
|