From aad28a866d7d200e1228f7a5d053348e7f9653a4 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期二, 17 十二月 2024 13:47:38 +0800 Subject: [PATCH] 统计+首页+电路试验提交bug --- inspect-server/src/main/java/com/yuanchu/mom/controller/InsReportController.java | 112 +++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 98 insertions(+), 14 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsReportController.java b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsReportController.java index c580fc2..5ea7804 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsReportController.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsReportController.java @@ -1,29 +1,38 @@ package com.yuanchu.mom.controller; -import cn.hutool.core.lang.UUID; +import cn.hutool.core.io.FileUtil; +import cn.hutool.http.HttpUtil; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.annotation.ValueAuth; +import com.yuanchu.mom.annotation.ValueClassify; +import com.yuanchu.mom.dto.InsReportDto; import com.yuanchu.mom.dto.ReportPageDto; -import com.yuanchu.mom.dto.SampleOrderDto; import com.yuanchu.mom.exception.ErrorException; import com.yuanchu.mom.service.InsReportService; import com.yuanchu.mom.utils.JackSonUtil; import com.yuanchu.mom.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import lombok.AllArgsConstructor; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import java.io.File; -import java.util.HashMap; +import java.io.IOException; +import java.io.PrintWriter; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.Map; +import java.util.Objects; +import java.util.Scanner; @RestController @RequestMapping("/insReport") -@Api("妫�楠屾姤鍛�") +@Api(tags = "妫�楠屾姤鍛�") public class InsReportController { @Resource @@ -32,6 +41,7 @@ @Value("${wordUrl}") private String wordUrl; + @ValueClassify("鎶ュ憡缂栧埗") @ApiOperation(value = "鏌ヨ妫�楠屾姤鍛婃暟鎹�") @PostMapping("/pageInsReport") public Result pageInsReport(@RequestBody Map<String, Object> data) throws Exception { @@ -40,13 +50,7 @@ return Result.success(insReportService.pageInsReport(page, reportPageDto)); } - @ApiOperation(value = "Word杞琀TML") - @PostMapping("/wordToHtml") - @ValueAuth - public Result wordToHtml(String path) { - return Result.success("杞崲鎴愬姛", insReportService.wordToHtml(path)); - } - + @ValueClassify("鎶ュ憡缂栧埗") @ApiOperation(value = "鎶ュ憡涓婁紶") @PostMapping("/inReport") public Result inReport(MultipartFile file, Integer id) { @@ -58,25 +62,105 @@ if (!realpath.exists()) { realpath.mkdirs(); } - pathName = UUID.randomUUID() + "_" + file.getOriginalFilename(); + pathName = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyMMddHHmmss")) + "_" + file.getOriginalFilename(); urlString = realpath + "/" + pathName; file.transferTo(new File(urlString)); - return Result.success(insReportService.inReport("/word/"+pathName, id)); + return Result.success(insReportService.inReport("/word/" + pathName, id)); } catch (Exception e) { throw new ErrorException("鏂囦欢涓婁紶澶辫触"); } } + @ValueClassify("鎶ュ憡缂栧埗") @ApiOperation(value = "鎶ュ憡杩樺師") @PostMapping("/upReportUrl") public Result upReportUrl(Integer id) { return Result.success(insReportService.upReportUrl(id)); } + /*@ValueClassify("鎶ュ憡缂栧埗") @ApiOperation(value = "鎶ュ憡鍦ㄧ嚎缂栧埗") @GetMapping("/upReportFile") public Result upReportFile() { return Result.success(); + }*/ + + @ValueClassify("鎶ュ憡缂栧埗") + @ApiOperation(value = "鎻愪氦") + @PostMapping("/writeReport") + public Result writeReport(Integer id) { + return Result.success(insReportService.writeReport(id)); } + @ValueClassify("鎶ュ憡缂栧埗") + @ApiOperation(value = "瀹℃牳") + @PostMapping("/examineReport") + public Result examineReport(Integer id, Integer isExamine, String examineTell) { + return Result.success(insReportService.examineReport(id, isExamine, examineTell)); + } + + @ValueClassify("鎶ュ憡缂栧埗") + @ApiOperation(value = "鎵瑰噯") + @PostMapping("/ratifyReport") + public Result ratifyReport(Integer id, Integer isRatify, String ratifyTell,String sealUrl) { + return Result.success(insReportService.ratifyReport(id, isRatify, ratifyTell,sealUrl)); + } + + @RequestMapping("/onlyOffice/save") + @ValueAuth + public void saveFile(@RequestParam String fileName, HttpServletRequest request, HttpServletResponse response) { + PrintWriter writer = null; + try { + writer = response.getWriter(); + // 鑾峰彇浼犺緭鐨刯son鏁版嵁 + Scanner scanner = new Scanner(request.getInputStream()).useDelimiter("\\A"); + String body = scanner.hasNext() ? scanner.next() : ""; + JSONObject jsonObject = JSONObject.parseObject(body); + + if (jsonObject.containsKey("url")) { + String jsonArray = jsonObject.get("lastsave").toString(); // 鏇存柊鏃堕棿 + String fileUrl = jsonObject.get("url").toString(); // 鏇存柊鏂囦欢url + HttpUtil.downloadFile(fileUrl, FileUtil.file(wordUrl + "/" + fileName)); + } + } catch (Exception e) { + e.printStackTrace(); + writer.write("{\"error\":-1}"); + return; + } + /* + * status = 1锛屾垜浠粰onlyOffice鐨勬湇鍔¤繑鍥瀧"error":"0"}鐨勪俊鎭�� + * 杩欐牱onlyOffice浼氳涓哄洖璋冩帴鍙f槸娌¢棶棰樼殑锛岃繖鏍峰氨鍙互鍦ㄧ嚎缂栬緫鏂囨。浜嗭紝鍚﹀垯鐨勮瘽浼氬脊鍑虹獥鍙h鏄� + */ + if (Objects.nonNull(writer)) { + writer.write("{\"error\":0}"); + } + } + + @ValueAuth + @ApiOperation(value = "鎶ュ憡鎵归噺涓嬭浇") + @GetMapping("/downAll") + public Result downAll(String ids) { + return Result.success(insReportService.downAll(ids)); + } + + @ValueAuth + @ApiOperation(value = "鎶ュ憡鎵归噺涓婁紶") + @PostMapping("/upAll") + public Result upAll(MultipartFile file) throws IOException { + return Result.success(insReportService.upAll(file)); + } + + @ValueAuth + @ApiOperation(value = "鏌ュ嚭璇ヨ鍗曚笅姣忎釜鏍峰搧涓嬫瘡涓珯鐐圭殑妫�楠屾鏁�") + @GetMapping("/getInsOrderStateCount") + public Result getInsOrderStateCount(Integer id){ + return Result.success(insReportService.getInsOrderStateCount(id)); + } + + @ValueClassify("鎶ュ憡缂栧埗") + @ApiOperation(value = "鍒ゆ柇鏄惁鐢熸垚鎬绘姤鍛�") + @PostMapping("/isReport") + public Result isReport(@RequestBody InsReportDto insReportDto) { + return Result.success(insReportService.isReport(insReportDto)); + } } -- Gitblit v1.9.3