| 
				
				
					
				
				
				 | 
			
			 | 
			@@ -46,6 +46,14 @@ import org.springframework.beans.factory.annotation.Autowired; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import org.springframework.stereotype.Controller; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import org.springframework.web.bind.annotation.*; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import javax.servlet.ServletOutputStream; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import javax.servlet.http.HttpServletRequest; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import javax.servlet.http.HttpServletResponse; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import java.io.File; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import java.io.FileInputStream; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import java.io.IOException; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import java.io.InputStream; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import java.net.URLEncoder; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import java.util.*; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			/** | 
		
		
	
	
		
			
				| 
				
					
				
				
					
				
				
				 | 
			
			 | 
			@@ -1048,4 +1056,43 @@ public class WxWeappInfoController extends BaseController { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			     * 22. oauth2refreshAccessToken | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			     */ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    @ApiOperation("获取体验小程序的体验二维码") | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    @GetMapping("/getQrcode") | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    public void getQrcode(@RequestParam(value = "appId") String appId, @RequestParam(value = "pagePath") String pagePath, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                          @RequestParam(value = "params", required = false) Map<String, String> params, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                          HttpServletResponse response, HttpServletRequest req) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        try { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            TtOpenMaService openMaService = openService.getTtOpenComponentService().getTtMaServiceByAppid(appId); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            File file = openMaService.getTestQrcode(pagePath,params); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            ServletOutputStream out = response.getOutputStream(); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            response.reset(); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            response.setContentType("image/jpeg"); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            String agent = req.getHeader("user-agent"); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            String filename = "QRCode.jpg"; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            if (agent.contains("Firefox")) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                response.setHeader("Content-disposition", | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        "attachment; filename=" + new String(filename.getBytes("GB2312"),"ISO-8859-1")); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            } else { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                response.setHeader("Content-disposition", | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        "attachment; filename=" + URLEncoder.encode(filename,"UTF-8")); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            // 循环取出流中的数据 | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            byte[] b = new byte[1024]; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            int len; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            InputStream inStream = new FileInputStream(file); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            while ((len = inStream.read(b)) > 0) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                response.getOutputStream().write(b, 0, len); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            inStream.close(); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        } catch (WxErrorException e) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            logger.error(e.getMessage()); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        } catch (IOException e) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            logger.error(e.getMessage()); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			} |