From e49e70544a71a2c1622b9a80a1d99f17d1cdeab6 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Tue, 28 Jul 2020 16:57:45 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=B8=89=E6=96=B9=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E4=B8=8A=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/constant/CodeConstant.java | 3 +++ .../epmet/service/impl/CodeServiceImpl.java | 15 +++++++------ .../epmet/wxapi/service/WxMaCodeService.java | 2 +- .../service/impl/WxMaCodeServiceImpl.java | 22 +++++++++++++------ 4 files changed, 27 insertions(+), 15 deletions(-) diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/CodeConstant.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/CodeConstant.java index e3735ec240..58da54fe8f 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/CodeConstant.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/CodeConstant.java @@ -49,6 +49,9 @@ public interface CodeConstant { String OPER_UPLOAD = "上传代码"; String OPER_SUBMIT = "提交审核"; + String OPER_SUCCESS = "审核成功"; + String OPER_FAILED = "审核被拒绝"; + String OPER_DELAY = "审核延后"; String OPER_UNDO = "审核撤回"; String OPER_RELEASE = "发布"; } diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/CodeServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/CodeServiceImpl.java index 85979d119d..df3c720e97 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/CodeServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/CodeServiceImpl.java @@ -178,18 +178,18 @@ public class CodeServiceImpl implements CodeService { if (result.getStatus() == NumConstant.ZERO) { code.setStatus(CodeConstant.AUDIT_SUCCESS); auditResult.setResult(CodeConstant.AUDIT_SUCCESS); - codeOperationHistoryService.updateDescribe(code.getId(), "审核成功"); + saveOperation(formDTO.getCustomerId(), code.getId(), code.getUserVersion(), CodeConstant.OPER_SUCCESS, "审核成功"); } else if (result.getStatus() == NumConstant.ONE) { code.setStatus(CodeConstant.AUDIT_FAILED); auditResult.setResult(CodeConstant.AUDIT_FAILED); auditResult.setReason(result.getReason()); auditResult.setScreenShot(result.getScreenshot()); - codeOperationHistoryService.updateDescribe(code.getId(), result.getReason()); + saveOperation(formDTO.getCustomerId(), code.getId(), code.getUserVersion(), CodeConstant.OPER_FAILED, result.getReason()); } else if (result.getStatus() == NumConstant.FOUR) { code.setStatus(CodeConstant.DELAY); auditResult.setResult(CodeConstant.DELAY); auditResult.setReason(result.getReason()); - codeOperationHistoryService.updateDescribe(code.getId(), "审核延后"); + saveOperation(formDTO.getCustomerId(), code.getId(), code.getUserVersion(), CodeConstant.OPER_DELAY, result.getReason()); } codeCustomerService.update(code); codeAuditResultService.update(auditResult); @@ -238,6 +238,7 @@ public class CodeServiceImpl implements CodeService { codeAuditResultDTO.setResult(CodeConstant.AUDITING); codeAuditResultService.save(codeAuditResultDTO); } else { + codeAuditResultDTO.setAuditId(wxResult.getData()); codeAuditResultDTO.setResult(CodeConstant.AUDITING); codeAuditResultService.update(codeAuditResultDTO); } @@ -349,10 +350,10 @@ public class CodeServiceImpl implements CodeService { request.setAuditId(codeAuditResultDTO.getAuditId()); WxMaNewsReq wxMaNewsReq = new WxMaNewsReq(); wxMaNewsReq.setMediaId(mediaId); - WxResult wxAuditResult = wxMaCodeService.getMaterial(authInfo.getAuthorizerAccessToken(), wxMaNewsReq); - wxAuditResult.getData().getNewsItem().forEach(news -> { - urlList.add(news.getUrl()); - }); + WxResult wxAuditResult = wxMaCodeService.getMaterial(authInfo.getAuthorizerAccessToken(), wxMaNewsReq); + MultipartFile file = new MockMultipartFile("file", "QRCode.jpg", "image/jpeg", wxAuditResult.getData()); + Result uploadResult = ossFeignClient.uploadQrCode(file); + urlList.add(uploadResult.getData().getUrl()); }); result.setScreenshotUrl(urlList); return result; diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/WxMaCodeService.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/WxMaCodeService.java index dca678a55e..b22c03e451 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/WxMaCodeService.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/WxMaCodeService.java @@ -110,7 +110,7 @@ public interface WxMaCodeService { * @author zhaoqifeng * @date 2020/7/16 14:52 */ - WxResult getMaterial(String accessToken, WxMaNewsReq request); + WxResult getMaterial(String accessToken, WxMaNewsReq request); /** * 设置服务器郁闷 diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/impl/WxMaCodeServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/impl/WxMaCodeServiceImpl.java index e6fcafb53f..3c9917d9e8 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/impl/WxMaCodeServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/impl/WxMaCodeServiceImpl.java @@ -10,6 +10,7 @@ import com.epmet.wxapi.result.*; import com.epmet.wxapi.service.WxMaCodeService; import com.google.gson.Gson; import com.google.gson.GsonBuilder; +import com.google.gson.reflect.TypeToken; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -19,7 +20,9 @@ import java.io.InputStream; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.nio.charset.StandardCharsets; +import java.util.Collections; import java.util.List; +import java.util.Map; /** * 描述一下 @@ -198,19 +201,16 @@ public class WxMaCodeServiceImpl implements WxMaCodeService { } @Override - public WxResult getMaterial(String accessToken, WxMaNewsReq request) { - WxResult result = new WxResult<>(); + public WxResult getMaterial(String accessToken, WxMaNewsReq request) { + WxResult result = new WxResult<>(); String url = WxMaCodeConstant.GET_MATERIAL_URL + "?" + "access_token=" + accessToken; - Result statusResult = HttpClientManager.getInstance().sendPostByJSON(url, toJson(request)); + Result statusResult = HttpClientManager.getInstance().getByteArray(url, toMap(request)); if (!statusResult.success()) { result.setErrorCode(statusResult.getCode()); result.setErrorMsg(statusResult.getMsg()); return result; } - Gson gson = new Gson(); - InputStream inputStream = gson.fromJson(statusResult.getData(), InputStream.class); - WxMaNewsResult newsResult = gson.fromJson(statusResult.getData(), WxMaNewsResult.class); - result.ok(newsResult); + result.ok(statusResult.getData()); return result; } @@ -279,4 +279,12 @@ public class WxMaCodeServiceImpl implements WxMaCodeService { Gson gson = gsonBuilder.create(); return gson.toJson(object); } + + private Map toMap(Object object) { + Gson gson = new Gson(); + if(object == null){ + return Collections.emptyMap(); + } + return gson.fromJson(toJson(object), new TypeToken>() {}.getType()); + } } \ No newline at end of file