diff --git a/mall-account/src/main/java/com/suisung/mall/account/controller/mobile/WeiXinController.java b/mall-account/src/main/java/com/suisung/mall/account/controller/mobile/WeiXinController.java index adaf468a..21715055 100644 --- a/mall-account/src/main/java/com/suisung/mall/account/controller/mobile/WeiXinController.java +++ b/mall-account/src/main/java/com/suisung/mall/account/controller/mobile/WeiXinController.java @@ -84,8 +84,14 @@ public class WeiXinController extends BaseControllerImpl { return CommonResult.success(weiXinService.jsCode2Session(code, encryptedData, iv, activity_id, user_info)); } + @ApiOperation(value = "获取微信的 OpenId") + @RequestMapping(value = "/getWxOpenId", method = {RequestMethod.GET, RequestMethod.POST}) + public CommonResult jsCode2Session(@RequestParam(name = "code") String code) { + return CommonResult.success(weiXinService.getJsCode2Session(code)); + } + @ApiOperation(value = "获取微信小程序用户授权手机号,并绑定登录用户") - @RequestMapping(value = "/getUserPhoneNumber", method = RequestMethod.GET) + @RequestMapping(value = "/getUserPhoneNumber", method = {RequestMethod.GET, RequestMethod.POST}) public CommonResult getUserPhoneNumber(@RequestParam(name = "code") String code) { return CommonResult.success(weiXinService.getUserPhoneNumberAndBindUser(code, getCurrentUser())); } diff --git a/mall-account/src/main/java/com/suisung/mall/account/service/WeiXinService.java b/mall-account/src/main/java/com/suisung/mall/account/service/WeiXinService.java index 581f4faf..c81aadaa 100644 --- a/mall-account/src/main/java/com/suisung/mall/account/service/WeiXinService.java +++ b/mall-account/src/main/java/com/suisung/mall/account/service/WeiXinService.java @@ -35,6 +35,14 @@ public interface WeiXinService { Map checkAppLogin(String code); + /** + * 纯粹获取微信用户的 OpenId + * + * @param code + * @return + */ + Map getJsCode2Session(String code); + Map jsCode2Session(String code, String encryptedData, String iv, String activity_id, String user_info); /** diff --git a/mall-account/src/main/java/com/suisung/mall/account/service/impl/WeiXinServiceImpl.java b/mall-account/src/main/java/com/suisung/mall/account/service/impl/WeiXinServiceImpl.java index 6d679c9d..4cf67f78 100644 --- a/mall-account/src/main/java/com/suisung/mall/account/service/impl/WeiXinServiceImpl.java +++ b/mall-account/src/main/java/com/suisung/mall/account/service/impl/WeiXinServiceImpl.java @@ -359,7 +359,14 @@ public class WeiXinServiceImpl implements WeiXinService { return userInfo; } - private Map getJsCode2Session(String code) { + /** + * 纯粹获取微信用户的 OpenId + * + * @param code + * @return + */ + @Override + public Map getJsCode2Session(String code) { //从微信服务器获得session_key,openid,unionid String url = "https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code"; diff --git a/mall-admin/src/main/java/com/suisung/mall/admin/oss/service/impl/OssServiceImpl.java b/mall-admin/src/main/java/com/suisung/mall/admin/oss/service/impl/OssServiceImpl.java index a7fa5262..96a35ed2 100644 --- a/mall-admin/src/main/java/com/suisung/mall/admin/oss/service/impl/OssServiceImpl.java +++ b/mall-admin/src/main/java/com/suisung/mall/admin/oss/service/impl/OssServiceImpl.java @@ -41,6 +41,7 @@ import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletRequest; import java.io.*; +import java.nio.charset.StandardCharsets; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; @@ -92,6 +93,18 @@ public class OssServiceImpl implements OssService { @Value("${upload.filepath}") private String FILEPATH; + /** + * 判断路径是否存在,不存在创建 + * + * @param dirPath + */ + private static void isChartPathExist(String dirPath) { + File file = new File(dirPath); + if (!file.exists()) { + file.mkdirs(); + } + } + /** * 移动端上传文件 * @@ -163,7 +176,7 @@ public class OssServiceImpl implements OssService { if (uploadType.equals(1)) { url = ConfigConstant.URL_BASE + "/admin/oss/upload/" + dir + "/" + uploadName; // 文件本地路径 - } else if (uploadType.equals(2)){ + } else if (uploadType.equals(2)) { // oss 服务 try { url = uploadObject2OSS(new File(uploadPath), ALIYUN_OSS_DIR_PREFIX.concat("/").concat(dir).concat(uploadName)); @@ -186,13 +199,11 @@ public class OssServiceImpl implements OssService { //截图 //todo 放入upload中 String thumb_file_url = ""; - if (VideoUtil.videoAllowFiles.contains(VideoUtil.getVideoFormat(uploadPath))) - { + if (VideoUtil.videoAllowFiles.contains(VideoUtil.getVideoFormat(uploadPath))) { String cover_path = uploadPath.replace("." + VideoUtil.getVideoFormat(uploadPath), ".jpg"); String cover_upname = uploadName.replace("." + VideoUtil.getVideoFormat(uploadName), ".jpg"); - if (VideoUtil.getVideoCover(uploadPath, cover_path, 1, "375*667")) - { + if (VideoUtil.getVideoCover(uploadPath, cover_path, 1, "375*667")) { try { thumb_file_url = uploadObject2OSS(new File(cover_path), ALIYUN_OSS_DIR_PREFIX.concat("/").concat(dir).concat("/").concat(cover_upname)); } catch (Exception e) { @@ -200,9 +211,7 @@ public class OssServiceImpl implements OssService { thumb_file_url = ""; } - } - else - { + } else { thumb_file_url = ""; } } @@ -247,7 +256,7 @@ public class OssServiceImpl implements OssService { // 创建唯一文件名称 String suffix = fileName.substring(fileName.lastIndexOf(".")); String uploadName = IdUtil.simpleUUID() + suffix; - String uploadPath = FILEPATH + "/" + dir + "/" + uploadName; + String uploadPath = FILEPATH + "/" + dir + "/" + uploadName; String imageAllowExt = configService.getConfig("image_allow_ext", ""); String[] imageAllowExtList = imageAllowExt.split(","); @@ -297,9 +306,9 @@ public class OssServiceImpl implements OssService { } } - /** * 腾讯云上传 + * * @param file * @param concat * @return @@ -378,10 +387,10 @@ public class OssServiceImpl implements OssService { SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); String dir = ALIYUN_OSS_DIR_PREFIX + sdf.format(new Date()); // 签名有效期 - long expireEndTime = System.currentTimeMillis() + ALIYUN_OSS_EXPIRE * 1000; + long expireEndTime = System.currentTimeMillis() + ALIYUN_OSS_EXPIRE * 1000L; Date expiration = new Date(expireEndTime); // 文件大小 - long maxSize = ALIYUN_OSS_MAX_SIZE * 1024 * 1024; + long maxSize = (long) ALIYUN_OSS_MAX_SIZE * 1024 * 1024; // 回调 OssCallbackParamDTO callback = new OssCallbackParamDTO(); callback.setCallbackUrl(ALIYUN_OSS_CALLBACK); @@ -394,10 +403,10 @@ public class OssServiceImpl implements OssService { policyConds.addConditionItem(PolicyConditions.COND_CONTENT_LENGTH_RANGE, 0, maxSize); policyConds.addConditionItem(MatchMode.StartWith, PolicyConditions.COND_KEY, dir); String postPolicy = ossClient.generatePostPolicy(expiration, policyConds); - byte[] binaryData = postPolicy.getBytes("utf-8"); + byte[] binaryData = postPolicy.getBytes(StandardCharsets.UTF_8); String policy = BinaryUtil.toBase64String(binaryData); String signature = ossClient.calculatePostSignature(postPolicy); - String callbackData = BinaryUtil.toBase64String(JSONUtil.parse(callback).toString().getBytes("utf-8")); + String callbackData = BinaryUtil.toBase64String(JSONUtil.parse(callback).toString().getBytes(StandardCharsets.UTF_8)); // 返回结果 result.setAccessKeyId(ossClient.getCredentialsProvider().getCredentials().getAccessKeyId()); result.setPolicy(policy); @@ -486,7 +495,7 @@ public class OssServiceImpl implements OssService { * @return */ private String getUserDirName(UserDto user) { - if (user.getId() == null) { + if (user == null || user.getId() == null) { throw new ApiException(I18nUtil._("获取用户信息失败!")); } if (user.isPlatform()) { @@ -499,16 +508,4 @@ public class OssServiceImpl implements OssService { } } } - - /** - * 判断路径是否存在,不存在创建 - * - * @param dirPath - */ - private static void isChartPathExist(String dirPath) { - File file = new File(dirPath); - if (!file.exists()) { - file.mkdirs(); - } - } } \ No newline at end of file diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/impl/EsignContractServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/impl/EsignContractServiceImpl.java index cbdebd77..5dfa1e1b 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/impl/EsignContractServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/impl/EsignContractServiceImpl.java @@ -295,7 +295,7 @@ public class EsignContractServiceImpl extends BaseServiceImpl { - // 申请分账 + // 1、(电子合同)给商家申请分账功能;2、商家绑定接收方; // 新建一个正式的已审核通过的店铺 Pair retPair = shopStoreBaseService.merchEntryInfo2StoreInfo(esignContract.getMch_mobile()); diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/lakala/controller/mobile/LklTkController.java b/mall-shop/src/main/java/com/suisung/mall/shop/lakala/controller/mobile/LklTkController.java index 6f39485f..39e8cb7c 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/lakala/controller/mobile/LklTkController.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/lakala/controller/mobile/LklTkController.java @@ -9,6 +9,7 @@ package com.suisung.mall.shop.lakala.controller.mobile; import cn.hutool.json.JSONObject; +import com.suisung.mall.common.api.CommonResult; import com.suisung.mall.common.service.impl.BaseControllerImpl; import com.suisung.mall.shop.lakala.service.impl.LklTkServiceImpl; import io.swagger.annotations.Api; @@ -17,7 +18,9 @@ import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; @@ -44,9 +47,18 @@ public class LklTkController extends BaseControllerImpl { } @ApiOperation(value = "上传文件", notes = "上传文件") - @RequestMapping(value = "/uploadWithOCR", method = {RequestMethod.POST, RequestMethod.GET}) - public JSONObject uploadWithOCR(String fileURL) { - return lklTkService.uploadFileWithOcr("", fileURL, "ID_CARD_FRONT"); + @RequestMapping(value = "/uploadOcrImg", method = RequestMethod.POST) + public CommonResult uploadOcrImg(@RequestParam(name = "upfile") MultipartFile file, + @RequestParam(name = "imgType") String imgType) { + + return lklTkService.uploadOcrImg(file, imgType); + } + + @ApiOperation(value = "获取(身份证、营业执照、身份证)图片的信息", notes = "获取(身份证、营业执照、身份证)图片的信息") + @RequestMapping(value = "/imgOcrResult", method = RequestMethod.POST) + public CommonResult imgOcrResult(@RequestParam(name = "batchNo") String batchNo, + @RequestParam(name = "imgType") String imgType) { + return lklTkService.imgOcrResult(batchNo, imgType); } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/LakalaApiService.java b/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/LakalaApiService.java index b5334ce4..5f20588f 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/LakalaApiService.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/LakalaApiService.java @@ -14,6 +14,9 @@ import com.suisung.mall.common.api.CommonResult; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +/** + * 拉卡拉业务接口 + */ public interface LakalaApiService { Boolean initLKLSDK(); @@ -143,5 +146,13 @@ public interface LakalaApiService { */ JSONObject getBankCardBin(String bankCardNo); + /** + * @param imgURL + * @param imgType 法人身份证正面图:FR_ID_CARD_FRONT;法人身份证反面:FR_ID_CARD_BEHIND; + * 身份证正面:ID_CARD_FRONT;身份证反面:ID_CARD_BEHIND; + * 营业执照:BUSINESS_LICENSE;银行卡:BANK_CARD + * @return + */ + } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/impl/LakalaApiServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/impl/LakalaApiServiceImpl.java index c22ab1db..af91a5bc 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/impl/LakalaApiServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/impl/LakalaApiServiceImpl.java @@ -556,6 +556,10 @@ public class LakalaApiServiceImpl implements LakalaApiService { respData.put("retCode", lklSuccessCode); respData.put("retMsg", "操作成功!"); log.info("商户分账申请业务回调:处理成功"); + + // TODO 绑定接收方(平台方和代理商),绑定之前,判断是否已经绑定过了? + + } } @@ -753,6 +757,7 @@ public class LakalaApiServiceImpl implements LakalaApiService { LklLedgerMerReceiverBind lklLedgerMerReceiverBind = JSONUtil.toBean(StringUtils.convertCamelToSnake(paramsJSON.toString()), LklLedgerMerReceiverBind.class); lklLedgerMerReceiverBindService.saveOrUpdateByMerCupNoReceiverNo(lklLedgerMerReceiverBind); + return CommonResult.success(lklLedgerMerReceiverBind, "提交成功,待审核中!"); } catch (SDKException e) { log.error("分账绑定关系申请失败:", e); @@ -797,6 +802,9 @@ public class LakalaApiServiceImpl implements LakalaApiService { paramsJSON.getStr("remark")); if (success) { respData.put("retCode", lklSuccessCode); + + // TODO 新建一个正式的已审核通过的店铺, 新建之前判断是否已经新建过了? + respData.put("retMsg", "操作成功!"); } } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/impl/LklTkServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/impl/LklTkServiceImpl.java index 963a6e12..8a96559f 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/impl/LklTkServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/lakala/service/impl/LklTkServiceImpl.java @@ -14,7 +14,10 @@ import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; +import com.suisung.mall.common.api.CommonResult; +import com.suisung.mall.common.api.ResultCode; import com.suisung.mall.common.constant.CommonConstant; +import com.suisung.mall.common.domain.UserDto; import com.suisung.mall.common.modules.store.ShopMchEntry; import com.suisung.mall.common.utils.RestTemplateHttpUtil; import com.suisung.mall.common.utils.StringUtils; @@ -23,6 +26,7 @@ import com.suisung.mall.core.web.service.RedisService; import com.suisung.mall.shop.esign.service.EsignContractService; import com.suisung.mall.shop.lakala.service.LklLedgerReceiverService; import com.suisung.mall.shop.lakala.utils.LakalaUtil; +import com.suisung.mall.shop.page.service.impl.OssServiceImpl; import com.suisung.mall.shop.store.service.ShopMchEntryService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -33,6 +37,7 @@ import org.springframework.data.util.Pair; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import javax.crypto.Cipher; @@ -46,6 +51,8 @@ import java.util.Base64; import java.util.HashMap; import java.util.Map; +import static com.suisung.mall.common.utils.ContextUtil.getCurrentUser; + @Service public class LklTkServiceImpl { @@ -82,6 +89,10 @@ public class LklTkServiceImpl { @Resource private EsignContractService esignContractService; + @Lazy + @Resource + private OssServiceImpl ossService; + @Autowired private RedisService redisService; @@ -135,26 +146,49 @@ public class LklTkServiceImpl { /** * 上传文件(图片)到拉卡拉,带 OCR识别卡信息,身份证信息,营业执照信息 * - * @param fileBase64 图片的base64字符串 - * @param fileURL 图片的url地址 - * @param imgType 图片类型 + * @param file 图片URL地址 + * @param imgType 法人身份证正面图:FR_ID_CARD_FRONT; + * 法人身份证反面:FR_ID_CARD_BEHIND; + * 身份证正面:ID_CARD_FRONT; + * 身份证反面:ID_CARD_BEHIND; + * 营业执照:BUSINESS_LICENCE; + * 银行卡:BANK_CARD * @return */ - public JSONObject uploadFileWithOcr(String fileBase64, String fileURL, String imgType) { + public CommonResult uploadOcrImg(MultipartFile file, String imgType) { + + if (file == null || StrUtil.isBlank(imgType)) { + return CommonResult.failed("上传文件或图片类型不能为空"); + } + + UserDto user = getCurrentUser(); + if (user == null) { + return CommonResult.failed("请先登录"); + } + + CommonResult ossImgInfo = ossService.uploadFile(file, user); + if (ossImgInfo == null) { + return CommonResult.failed("上传文件失败"); + } + + if (ossImgInfo.getStatus() != ResultCode.SUCCESS.getStatus() || ossImgInfo.getData() == null) { + return CommonResult.failed(ossImgInfo.getMsg()); + } + + String imgURL = JSONUtil.parseObj(ossImgInfo.getData()).getStr("url"); + String authorization = getLklTkAuthorization(); if (StrUtil.isBlank(authorization)) { - return JSONUtil.createObj().set("code", 500).set("msg", "获取拉卡拉token失败"); + return CommonResult.failed("获取拉卡拉token失败"); } JSONObject header = new JSONObject(); header.put("Authorization", authorization); - String urlPath = isProd() ? "/registration/file/upload" : "/sit/htkregistration/file/upload"; - if (StrUtil.isBlank(fileBase64)) { - // web url 转 base64 字节 - fileBase64 = UploadUtil.URLFileToBase64(fileURL); - } + String updUrlPath = isProd() ? "/registration/file/base/upload" : "/sit/htkregistration/file/base/upload"; + String fileBase64 = UploadUtil.URLFileToBase64(imgURL); + JSONObject requestBody = new JSONObject(); requestBody.put("fileBase64", fileBase64); @@ -162,15 +196,82 @@ public class LklTkServiceImpl { requestBody.put("sourcechnl", "0"); // 来源: 0:PC,1:安卓,2:IOS requestBody.put("isOcr", "true"); - ResponseEntity response = RestTemplateHttpUtil.sendPostBodyBackEntity(buildLklServiceUrl(urlPath), header, requestBody, JSONObject.class); - if (ObjectUtil.isEmpty(response) - || response.getStatusCode() != HttpStatus.OK - || ObjectUtil.isEmpty(response.getBody())) { - return JSONUtil.createObj().set("code", 500).set("msg", "返回值有误!"); + ResponseEntity updResponse = RestTemplateHttpUtil.sendPostBodyBackEntity(buildLklTkUrl(updUrlPath), header, requestBody, JSONObject.class); + if (ObjectUtil.isEmpty(updResponse) + || updResponse.getStatusCode() != HttpStatus.OK + || ObjectUtil.isEmpty(updResponse.getBody())) { + return CommonResult.failed("上传文件返回值有误"); } // {batchNo,status,url,showUrl,result{} } - return response.getBody(); + JSONObject updObj = updResponse.getBody(); + String batchNo = updObj.getStr("batchNo"); + if (StrUtil.isBlank(batchNo)) { + return CommonResult.failed("上传文件返回值有误"); + } + + updObj.put("url", imgURL); + + // 调用 OCR 识别接口 +// String ocrUrlPath = isProd() ? "/registration/ocr/result" : "/sit/htkregistration/ocr/result"; +// JSONObject ocrRequestBody = new JSONObject(); +// ocrRequestBody.put("batchNo", batchNo); +// ocrRequestBody.put("imgType", imgType); +// +// ResponseEntity ocrResponse = RestTemplateHttpUtil.sendPostBodyBackEntity(buildLklTkUrl(ocrUrlPath), header, ocrRequestBody, JSONObject.class); +// if (ObjectUtil.isEmpty(ocrResponse) +// || ocrResponse.getStatusCode() != HttpStatus.OK +// || ObjectUtil.isEmpty(ocrResponse.getBody())) { +// return CommonResult.failed("OCR响应数据有误"); +// } +// +// +// JSONObject ocrObj = ocrResponse.getBody().get("result", JSONObject.class); +// if (ObjectUtil.isEmpty(ocrObj)) { +// return CommonResult.failed("OCR返回结果有误"); +// } +// +// ocrObj.put("url", updObj.getStr("url")); +// ocrObj.put("showUrl", updObj.getStr("showUrl")); +// ocrObj.put("imgType", imgType); +// ocrObj.put("batchNo", batchNo); + + return CommonResult.success(updObj); + + } + + public CommonResult imgOcrResult(String batchNo, String imgType) { + + // 调用 OCR 识别接口 + String authorization = getLklTkAuthorization(); + if (StrUtil.isBlank(authorization)) { + return CommonResult.failed("获取拉卡拉token失败"); + } + + JSONObject header = new JSONObject(); + header.put("Authorization", authorization); + + String ocrUrlPath = isProd() ? "/registration/ocr/result" : "/sit/htkregistration/ocr/result"; + JSONObject ocrRequestBody = new JSONObject(); + ocrRequestBody.put("batchNo", batchNo); + ocrRequestBody.put("imgType", imgType); + + ResponseEntity ocrResponse = RestTemplateHttpUtil.sendPostBodyBackEntity(buildLklTkUrl(ocrUrlPath), header, ocrRequestBody, JSONObject.class); + if (ObjectUtil.isEmpty(ocrResponse) + || ocrResponse.getStatusCode() != HttpStatus.OK + || ObjectUtil.isEmpty(ocrResponse.getBody())) { + return CommonResult.failed("OCR响应数据有误"); + } + + + JSONObject ocrObj = ocrResponse.getBody().get("result", JSONObject.class); + if (ObjectUtil.isEmpty(ocrObj)) { + return CommonResult.failed("OCR返回结果有误"); + } + + + return CommonResult.success(ocrObj); + } /** @@ -563,4 +664,5 @@ public class LklTkServiceImpl { return jsonObject; } + } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/page/service/impl/OssServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/page/service/impl/OssServiceImpl.java index 541ee80d..3199fbde 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/page/service/impl/OssServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/page/service/impl/OssServiceImpl.java @@ -553,8 +553,9 @@ public class OssServiceImpl implements OssService { * @return */ private String getUserDirName(UserDto user) { - if (user.getId() == null) { + if (user == null || user.getId() == null) { //throw new ApiException(I18nUtil._("获取用户信息失败!")); + logger.error("cos 文件上传,获取用户信息失败!"); return "media/plantform/default/"; } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreMediaServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreMediaServiceImpl.java index 168ba534..13affa8a 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreMediaServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreMediaServiceImpl.java @@ -66,7 +66,7 @@ public class ShopStoreMediaServiceImpl extends BaseServiceImpl