|
@@ -13,7 +13,9 @@ import com.tzld.piaoquan.risk.control.service.QwLoginService;
|
|
|
import com.tzld.piaoquan.risk.control.service.qywx.Constant;
|
|
|
import com.tzld.piaoquan.risk.control.util.HttpClientUtil;
|
|
|
import com.tzld.piaoquan.risk.control.util.HttpPoolClient;
|
|
|
+import com.tzld.piaoquan.risk.control.util.ImageUtils;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.apache.http.util.TextUtils;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
@@ -21,6 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
+import java.util.Base64;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
import java.util.Optional;
|
|
@@ -61,8 +64,23 @@ public class QwLoginController {
|
|
|
String uuid = request.get("uuid");
|
|
|
QwCommonResModel<QwLoginQRCodeModel> loginModel = qwLoginService.secondaryValidation(uuid);
|
|
|
if (loginModel != null && loginModel.getErrcode() == 0) {
|
|
|
- loginModel.getData().setUuid(uuid);
|
|
|
- return CommonResponse.success(loginModel.getData());
|
|
|
+ QwLoginQRCodeModel data = loginModel.getData();
|
|
|
+ data.setUuid(uuid);
|
|
|
+
|
|
|
+ String qrcodeUrl = data.getQrcode();
|
|
|
+ if (StringUtils.isNotBlank(qrcodeUrl)) {
|
|
|
+ try {
|
|
|
+ byte[] imageBytes = ImageUtils.downloadImage(qrcodeUrl);
|
|
|
+ String base64Image = Base64.getEncoder().encodeToString(imageBytes);
|
|
|
+ // 添加 Data URL 前缀,假设图片类型为 PNG
|
|
|
+ data.setQrcode_data(base64Image);
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error("二维码下载或转换失败,URL: {}, 错误: {}", qrcodeUrl, e.getMessage());
|
|
|
+ return CommonResponse.error(null);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return CommonResponse.success(data);
|
|
|
} else {
|
|
|
return CommonResponse.error(null);
|
|
|
}
|