dengsixing 8 ay önce
ebeveyn
işleme
d5979099e9

+ 27 - 27
src/main/java/com/fdkankan/SceneApplication.java

@@ -51,32 +51,32 @@ public class SceneApplication implements CommandLineRunner {
     @Override
     public void run(String... args) throws Exception {
 
-        String initscene = redisClient.get("initscene");
-        if(StrUtil.isNotEmpty(initscene)){
-            return;
-        }
-        redisClient.add("initscene", "111");
-
-        log.info("初始化站址编码和时间任务开始");
-        List<Scene> list = sceneService.list(new LambdaQueryWrapper<Scene>().select(Scene::getId, Scene::getNum).isNull(Scene::getStationcode));
-        list.stream().forEach(s->{
-            String num = s.getNum();
-            try {
-                List<SceneConvertLog> logs = sceneConvertLogService.list(new LambdaQueryWrapper<SceneConvertLog>()
-                        .eq(SceneConvertLog::getEntityId, num)
-                        .eq(SceneConvertLog::getStatus, 1)
-                        .orderByDesc(SceneConvertLog::getCreateTime));
-                if(CollUtil.isNotEmpty(logs)){
-                    SceneConvertLog sceneConvertLog = logs.get(0);
-                    s.setStationcode(sceneConvertLog.getStationCode());
-                    s.setAlgorithmTime(sceneConvertLog.getCreateTime());
-                    sceneService.updateById(s);
-                }
-            }catch (Exception e){
-                log.error("填充场景站址编码和时间失败, num:{}", num, e);
-            }
-        });
-        log.info("初始化站址编码和时间任务结束");
-        redisClient.del("initscene");
+//        String initscene = redisClient.get("initscene");
+//        if(StrUtil.isNotEmpty(initscene)){
+//            return;
+//        }
+//        redisClient.add("initscene", "111");
+//
+//        log.info("初始化站址编码和时间任务开始");
+//        List<Scene> list = sceneService.list(new LambdaQueryWrapper<Scene>().select(Scene::getId, Scene::getNum).isNull(Scene::getStationcode));
+//        list.stream().forEach(s->{
+//            String num = s.getNum();
+//            try {
+//                List<SceneConvertLog> logs = sceneConvertLogService.list(new LambdaQueryWrapper<SceneConvertLog>()
+//                        .eq(SceneConvertLog::getEntityId, num)
+//                        .eq(SceneConvertLog::getStatus, 1)
+//                        .orderByDesc(SceneConvertLog::getCreateTime));
+//                if(CollUtil.isNotEmpty(logs)){
+//                    SceneConvertLog sceneConvertLog = logs.get(0);
+//                    s.setStationcode(sceneConvertLog.getStationCode());
+//                    s.setAlgorithmTime(sceneConvertLog.getCreateTime());
+//                    sceneService.updateById(s);
+//                }
+//            }catch (Exception e){
+//                log.error("填充场景站址编码和时间失败, num:{}", num, e);
+//            }
+//        });
+//        log.info("初始化站址编码和时间任务结束");
+//        redisClient.del("initscene");
     }
 }

+ 97 - 97
src/main/java/com/fdkankan/scene/Interceptor/CheckTokenAspect.java

@@ -1,97 +1,97 @@
-//package com.fdkankan.scene.Interceptor;
-//
-//import cn.hutool.http.HttpUtil;
-//import com.alibaba.fastjson.JSON;
-//import com.alibaba.fastjson.JSONArray;
-//import com.alibaba.fastjson.JSONObject;
-//import com.fdkankan.common.exception.BusinessException;
-//import com.fdkankan.common.util.ThreeDESUtil;
-//import com.fdkankan.common.util.UserAgentUtils;
-//import com.fdkankan.common.util.WebUtil;
-//import com.fdkankan.feign.TietaFeignClient;
-//import com.fdkankan.feign.WS4AServiceClient;
-//import com.fdkankan.scene.entity.SceneViewLog;
-//import com.fdkankan.scene.service.SceneViewLogService;
-//import lombok.extern.log4j.Log4j2;
-//import org.aspectj.lang.JoinPoint;
-//import org.aspectj.lang.annotation.Aspect;
-//import org.aspectj.lang.annotation.Before;
-//import org.aspectj.lang.annotation.Pointcut;
-//import org.springframework.beans.factory.annotation.Autowired;
-//import org.springframework.beans.factory.annotation.Value;
-//import org.springframework.core.annotation.Order;
-//import org.springframework.stereotype.Component;
-//import org.springframework.web.context.request.RequestContextHolder;
-//import org.springframework.web.context.request.ServletRequestAttributes;
-//
-//import javax.annotation.Resource;
-//import javax.servlet.http.HttpServletRequest;
-//import java.io.IOException;
-//import java.util.Date;
-//import java.util.HashMap;
-//import java.util.Map;
-//
-//@Log4j2
-//@Aspect
-//@Component
-//@Order(101)
-//public class CheckTokenAspect {
-//
-//	@Value("${spring.cloud.nacos.discovery.access-key}")
-//	private String accessKey;
-//
-//	@Value("${tieta.checkToken.syscode}")
-//	private String syscode;
-//	@Value("${gateway.key:6#dPz>3F}")
-//	private String gatewayKey;
-//	@Value("${gateway.url}")
-//	private String gatewayUrl;
-//	@Resource
-//	private TietaFeignClient tietaFeignClient;
-//	@Autowired
-//	private WS4AServiceClient ws4AServiceClient;
-//	@Autowired
-//	private SceneViewLogService sceneViewLogService;
-//
-//	@Pointcut("@annotation(com.fdkankan.scene.annotation.CheckToken)")
-//	public void CheckToken() {
-//	}
-//
-//	/**
-//	 * 前置通知 用于判断用户协作场景是否有协作权限
-//	 *
-//	 * @param joinPoint
-//	 *            切点
-//	 * @throws IOException
-//	 */
-//	@Before("CheckToken()")
-//	public void doBefore(JoinPoint joinPoint) throws Exception {
-//		HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
-//
-//		//请求4a接口获取用户信息
-//		Map<String, Object> parameter = WebUtil.getParameter(joinPoint, request);
-//		String acctId = (String) parameter.get("acctId");
-//		String token = (String) parameter.get("token");
-//		String num = (String) parameter.get("num");
-//
-//		//token校验
-//		JSONObject checkProwadaTokenParam = new JSONObject();
-//		JSONObject params = new JSONObject();
-//		params.put("SYSCODE", syscode);
-//		params.put("ACCTID", acctId);
-//		params.put("TOKEN", token);
-//		String encode = ThreeDESUtil.encode(JSON.toJSONString(params), gatewayKey);
-//		checkProwadaTokenParam.put("args", encode);
-//		JSONObject result = ws4AServiceClient.checkProwadaToken(checkProwadaTokenParam);
-//		log.info("场景:{},4A校验token结果:{}", num, result);
-//		if(!"SUCCESS".equals(result.getString("resultStat"))){
-//			throw new BusinessException(4000, "4A鉴权失败");
-//		}
-//		String data = result.getString("data");
-//		JSONObject dataObj = JSONObject.parseObject(data);
-//		if(!"0".equals(dataObj.getString("RSP"))){
-//			throw new BusinessException(4000, "4A鉴权失败:" + dataObj.getString("ERRDESC"));
-//		}
-//	}
-//
-//}
+package com.fdkankan.scene.Interceptor;
+
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.fdkankan.common.exception.BusinessException;
+import com.fdkankan.common.util.ThreeDESUtil;
+import com.fdkankan.common.util.UserAgentUtils;
+import com.fdkankan.common.util.WebUtil;
+import com.fdkankan.feign.TietaFeignClient;
+import com.fdkankan.feign.WS4AServiceClient;
+import com.fdkankan.scene.entity.SceneViewLog;
+import com.fdkankan.scene.service.SceneViewLogService;
+import lombok.extern.log4j.Log4j2;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.annotation.Aspect;
+import org.aspectj.lang.annotation.Before;
+import org.aspectj.lang.annotation.Pointcut;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.core.annotation.Order;
+import org.springframework.stereotype.Component;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
+@Log4j2
+@Aspect
+@Component
+@Order(101)
+public class CheckTokenAspect {
+
+	@Value("${spring.cloud.nacos.discovery.access-key}")
+	private String accessKey;
+
+	@Value("${tieta.checkToken.syscode}")
+	private String syscode;
+	@Value("${gateway.key:6#dPz>3F}")
+	private String gatewayKey;
+	@Value("${gateway.url}")
+	private String gatewayUrl;
+	@Resource
+	private TietaFeignClient tietaFeignClient;
+	@Autowired
+	private WS4AServiceClient ws4AServiceClient;
+	@Autowired
+	private SceneViewLogService sceneViewLogService;
+
+	@Pointcut("@annotation(com.fdkankan.scene.annotation.CheckToken)")
+	public void CheckToken() {
+	}
+
+	/**
+	 * 前置通知 用于判断用户协作场景是否有协作权限
+	 *
+	 * @param joinPoint
+	 *            切点
+	 * @throws IOException
+	 */
+	@Before("CheckToken()")
+	public void doBefore(JoinPoint joinPoint) throws Exception {
+		HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
+
+		//请求4a接口获取用户信息
+		Map<String, Object> parameter = WebUtil.getParameter(joinPoint, request);
+		String acctId = (String) parameter.get("acctId");
+		String token = (String) parameter.get("token");
+		String num = (String) parameter.get("num");
+
+		//token校验
+		JSONObject checkProwadaTokenParam = new JSONObject();
+		JSONObject params = new JSONObject();
+		params.put("SYSCODE", syscode);
+		params.put("ACCTID", acctId);
+		params.put("TOKEN", token);
+		String encode = ThreeDESUtil.encode(JSON.toJSONString(params), gatewayKey);
+		checkProwadaTokenParam.put("args", encode);
+		JSONObject result = ws4AServiceClient.checkProwadaToken(checkProwadaTokenParam);
+		log.info("场景:{},4A校验token结果:{}", num, result);
+		if(!"SUCCESS".equals(result.getString("resultStat"))){
+			throw new BusinessException(4000, "4A鉴权失败");
+		}
+		String data = result.getString("data");
+		JSONObject dataObj = JSONObject.parseObject(data);
+		if(!"0".equals(dataObj.getString("RSP"))){
+			throw new BusinessException(4000, "4A鉴权失败:" + dataObj.getString("ERRDESC"));
+		}
+	}
+
+}

+ 172 - 172
src/main/java/com/fdkankan/scene/Interceptor/ViewLogAspect.java

@@ -1,172 +1,172 @@
-//package com.fdkankan.scene.Interceptor;
-//
-//import cn.hutool.http.HttpUtil;
-//import com.alibaba.fastjson.JSON;
-//import com.alibaba.fastjson.JSONArray;
-//import com.alibaba.fastjson.JSONObject;
-//import com.fdkankan.common.util.ThreeDESUtil;
-//import com.fdkankan.common.util.UserAgentUtils;
-//import com.fdkankan.common.util.WebUtil;
-//import com.fdkankan.common.exception.BusinessException;
-//import com.fdkankan.feign.TietaFeignClient;
-//import com.fdkankan.feign.WS4AServiceClient;
-//import com.fdkankan.scene.entity.SceneViewLog;
-//import com.fdkankan.scene.service.SceneViewLogService;
-//import lombok.extern.log4j.Log4j2;
-//import org.aspectj.lang.JoinPoint;
-//import org.aspectj.lang.annotation.Aspect;
-//import org.aspectj.lang.annotation.Before;
-//import org.aspectj.lang.annotation.Pointcut;
-//import org.springframework.beans.factory.annotation.Autowired;
-//import org.springframework.beans.factory.annotation.Value;
-//import org.springframework.core.annotation.Order;
-//import org.springframework.stereotype.Component;
-//import org.springframework.web.context.request.RequestContextHolder;
-//import org.springframework.web.context.request.ServletRequestAttributes;
-//
-//import javax.annotation.Resource;
-//import javax.servlet.http.HttpServletRequest;
-//import java.io.IOException;
-//import java.util.Date;
-//import java.util.HashMap;
-//import java.util.Map;
-//
-//@Log4j2
-//@Aspect
-//@Component
-//@Order(101)
-//public class ViewLogAspect {
-//
-//	@Value("${spring.cloud.nacos.discovery.access-key}")
-//	private String accessKey;
-//
-//	@Value("${tieta.checkToken.syscode}")
-//	private String syscode;
-//	@Value("${gateway.key:6#dPz>3F}")
-//	private String gatewayKey;
-//	@Value("${gateway.url}")
-//	private String gatewayUrl;
-//	@Resource
-//	private TietaFeignClient tietaFeignClient;
-//	@Autowired
-//	private WS4AServiceClient ws4AServiceClient;
-//	@Autowired
-//	private SceneViewLogService sceneViewLogService;
-//
-//	@Pointcut("@annotation(com.fdkankan.scene.annotation.VrLog)")
-//	public void checkCooperationPermit() {
-//	}
-//
-//	/**
-//	 * 前置通知 用于判断用户协作场景是否有协作权限
-//	 *
-//	 * @param joinPoint
-//	 *            切点
-//	 * @throws IOException
-//	 */
-//	@Before("checkCooperationPermit()")
-//	public void doBefore(JoinPoint joinPoint) throws Exception {
-//		log.info("记录日志开始");
-//		HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
-//		boolean mobileDevice = UserAgentUtils.isMobileDevice(request);
-//		String userAgent = "pc";
-//		if(mobileDevice){
-//			userAgent = "mobile";
-//		}
-//
-//		//请求4a接口获取用户信息
-//		Map<String, Object> parameter = WebUtil.getParameter(joinPoint, request);
-//		String acctId = (String) parameter.get("acctId");
-//		String token = (String) parameter.get("token");
-//		String num = (String) parameter.get("num");
-//        String syscode = (String) parameter.get("syscode");
-//
-//		//token校验
-//		JSONObject checkProwadaTokenParam = new JSONObject();
-//		JSONObject params = new JSONObject();
-//		params.put("SYSCODE", syscode);
-//		params.put("ACCTID", acctId);
-//		params.put("TOKEN", token);
-//		String encode = ThreeDESUtil.encode(JSON.toJSONString(params), gatewayKey);
-//		checkProwadaTokenParam.put("args", encode);
-//		JSONObject result = ws4AServiceClient.checkProwadaToken(checkProwadaTokenParam);
-//		log.info("场景:{},4A校验token结果:{}", num, result);
-//		if(!"SUCCESS".equals(result.getString("resultStat"))){
-//			throw new BusinessException(4000, "4A鉴权失败");
-//		}
-//		String data = result.getString("data");
-//		JSONObject dataObj = JSONObject.parseObject(data);
-//		if(!"0".equals(dataObj.getString("RSP"))){
-//			throw new BusinessException(4000, "4A鉴权失败:" + dataObj.getString("ERRDESC"));
-//		}
-//		String USERCODE = dataObj.getString("USERCODE");
-////		String SERVICEID = dataObj.getString("SERVICEID");
-//		String ORGCODE = dataObj.getString("ORGCODE");
-//
-//		//查询用户信息
-//		JSONObject param2 = new JSONObject();
-//		param2.put("SERVICEID", syscode);
-//		param2.put("LOGINACCOUNT", USERCODE);
-//		param2.put("TOKEN", token);
-//		encode = ThreeDESUtil.encode(JSON.toJSONString(param2), gatewayKey);
-//		Map<String, Object> param = new HashMap<>();
-//		param.put("args", encode);
-//		String queryLoginUserInfoResp = HttpUtil.get(gatewayUrl + "/QUERY4A/user/queryLoginUserInfo?args=" + encode);
-//		result = JSON.parseObject(queryLoginUserInfoResp);
-////		result = ws4AServiceClient.queryLoginUserInfo(encode);
-//		log.info("场景:{},4A查询用户信息结果:{}", num, result);
-//		if(!"SUCCESS".equals(result.getString("resultStat"))){
-//			throw new BusinessException(4000, "4A查询用户信息失败");
-//		}
-//		data = result.getString("data");
-//		dataObj = JSONObject.parseObject(data);
-//		if(!"0".equals(dataObj.getString("RSP"))){
-//			throw new BusinessException(4000, "4A查询用户信息失败:" + dataObj.getString("ERRDESC"));
-//		}
-//		String nickName = dataObj.getString("LOGINNAME");
-//
-//		JSONObject param3 = new JSONObject();
-//		param3.put("SERVICEID", syscode);
-//		param3.put("QUERYMODE", "3");
-//		param3.put("ORGCODE", ORGCODE);
-//		param3.put("TOKEN", token);
-//		encode = ThreeDESUtil.encode(JSON.toJSONString(param3), gatewayKey);
-////		result = ws4AServiceClient.queryOrgs(encode);
-//		String queryOrgsResp = HttpUtil.get(gatewayUrl + "/QUERY4A/query/queryOrgs?args=" + encode);
-//		result = JSON.parseObject(queryOrgsResp);
-//		log.info("场景:{},4A查询用户组织结果:{}", num, result);
-//		if(!"SUCCESS".equals(result.getString("resultStat"))){
-//			throw new BusinessException(4000, "查询用户组织失败");
-//		}
-//		data = result.getString("data");
-//		dataObj = JSONObject.parseObject(data);
-//		if(!"0".equals(dataObj.getString("RSP"))){
-//			throw new BusinessException(4000, "4A查询用户组织失败:" + dataObj.getString("ERRDESC"));
-//		}
-//		JSONObject ORGS = dataObj.getJSONObject("ORGS");
-//		JSONArray ORG = ORGS.getJSONArray("ORG");
-//		JSONObject ORG1 = ORG.getJSONObject(0);
-//		String ORGNAMEPATH = ORG1.getString("ORGNAMEPATH");
-//
-//		//写入表
-//		SceneViewLog sceneViewLog = new SceneViewLog();
-//		sceneViewLog.setOrgNamePath(ORGNAMEPATH);
-//		sceneViewLog.setFuncName("VR全景");
-//		sceneViewLog.setFuncDesc("VR全景试图");
-//		sceneViewLog.setUserName(USERCODE);
-//		sceneViewLog.setNickName(nickName);
-//		sceneViewLog.setCreateTime(new Date());
-//		sceneViewLog.setTerminalType(userAgent);
-//		sceneViewLogService.save(sceneViewLog);
-//	}
-//
-//	public static void main(String[] args) {
-//		JSONObject param2 = new JSONObject();
-//		param2.put("SERVICEID", "CHNTRMS2");
-//		param2.put("LOGINACCOUNT", "wx-sunql3");
-//		param2.put("TOKEN", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJSRVMiLCJpc3MiOiJXUzRBIiwiZXhwIjoxNzMzMzEwNjY1LCJOQU5PU0VDT05EIjo0MjAxNTczODIzODYyMjgzOH0.sQR4qkTeRZEOQMI-Rjck35dFswoOMYHsGSuNcXH45TI");
-//		String encode = ThreeDESUtil.encode(JSON.toJSONString(param2), "6#dPz>3F");
-//		System.out.println(encode);
-//	}
-//
-//}
+package com.fdkankan.scene.Interceptor;
+
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.fdkankan.common.util.ThreeDESUtil;
+import com.fdkankan.common.util.UserAgentUtils;
+import com.fdkankan.common.util.WebUtil;
+import com.fdkankan.common.exception.BusinessException;
+import com.fdkankan.feign.TietaFeignClient;
+import com.fdkankan.feign.WS4AServiceClient;
+import com.fdkankan.scene.entity.SceneViewLog;
+import com.fdkankan.scene.service.SceneViewLogService;
+import lombok.extern.log4j.Log4j2;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.annotation.Aspect;
+import org.aspectj.lang.annotation.Before;
+import org.aspectj.lang.annotation.Pointcut;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.core.annotation.Order;
+import org.springframework.stereotype.Component;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
+@Log4j2
+@Aspect
+@Component
+@Order(101)
+public class ViewLogAspect {
+
+	@Value("${spring.cloud.nacos.discovery.access-key}")
+	private String accessKey;
+
+	@Value("${tieta.checkToken.syscode}")
+	private String syscode;
+	@Value("${gateway.key:6#dPz>3F}")
+	private String gatewayKey;
+	@Value("${gateway.url}")
+	private String gatewayUrl;
+	@Resource
+	private TietaFeignClient tietaFeignClient;
+	@Autowired
+	private WS4AServiceClient ws4AServiceClient;
+	@Autowired
+	private SceneViewLogService sceneViewLogService;
+
+	@Pointcut("@annotation(com.fdkankan.scene.annotation.VrLog)")
+	public void checkCooperationPermit() {
+	}
+
+	/**
+	 * 前置通知 用于判断用户协作场景是否有协作权限
+	 *
+	 * @param joinPoint
+	 *            切点
+	 * @throws IOException
+	 */
+	@Before("checkCooperationPermit()")
+	public void doBefore(JoinPoint joinPoint) throws Exception {
+		log.info("记录日志开始");
+		HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
+		boolean mobileDevice = UserAgentUtils.isMobileDevice(request);
+		String userAgent = "pc";
+		if(mobileDevice){
+			userAgent = "mobile";
+		}
+
+		//请求4a接口获取用户信息
+		Map<String, Object> parameter = WebUtil.getParameter(joinPoint, request);
+		String acctId = (String) parameter.get("acctId");
+		String token = (String) parameter.get("token");
+		String num = (String) parameter.get("num");
+        String syscode = (String) parameter.get("syscode");
+
+		//token校验
+		JSONObject checkProwadaTokenParam = new JSONObject();
+		JSONObject params = new JSONObject();
+		params.put("SYSCODE", syscode);
+		params.put("ACCTID", acctId);
+		params.put("TOKEN", token);
+		String encode = ThreeDESUtil.encode(JSON.toJSONString(params), gatewayKey);
+		checkProwadaTokenParam.put("args", encode);
+		JSONObject result = ws4AServiceClient.checkProwadaToken(checkProwadaTokenParam);
+		log.info("场景:{},4A校验token结果:{}", num, result);
+		if(!"SUCCESS".equals(result.getString("resultStat"))){
+			throw new BusinessException(4000, "4A鉴权失败");
+		}
+		String data = result.getString("data");
+		JSONObject dataObj = JSONObject.parseObject(data);
+		if(!"0".equals(dataObj.getString("RSP"))){
+			throw new BusinessException(4000, "4A鉴权失败:" + dataObj.getString("ERRDESC"));
+		}
+		String USERCODE = dataObj.getString("USERCODE");
+//		String SERVICEID = dataObj.getString("SERVICEID");
+		String ORGCODE = dataObj.getString("ORGCODE");
+
+		//查询用户信息
+		JSONObject param2 = new JSONObject();
+		param2.put("SERVICEID", syscode);
+		param2.put("LOGINACCOUNT", USERCODE);
+		param2.put("TOKEN", token);
+		encode = ThreeDESUtil.encode(JSON.toJSONString(param2), gatewayKey);
+		Map<String, Object> param = new HashMap<>();
+		param.put("args", encode);
+		String queryLoginUserInfoResp = HttpUtil.get(gatewayUrl + "/QUERY4A/user/queryLoginUserInfo?args=" + encode);
+		result = JSON.parseObject(queryLoginUserInfoResp);
+//		result = ws4AServiceClient.queryLoginUserInfo(encode);
+		log.info("场景:{},4A查询用户信息结果:{}", num, result);
+		if(!"SUCCESS".equals(result.getString("resultStat"))){
+			throw new BusinessException(4000, "4A查询用户信息失败");
+		}
+		data = result.getString("data");
+		dataObj = JSONObject.parseObject(data);
+		if(!"0".equals(dataObj.getString("RSP"))){
+			throw new BusinessException(4000, "4A查询用户信息失败:" + dataObj.getString("ERRDESC"));
+		}
+		String nickName = dataObj.getString("LOGINNAME");
+
+		JSONObject param3 = new JSONObject();
+		param3.put("SERVICEID", syscode);
+		param3.put("QUERYMODE", "3");
+		param3.put("ORGCODE", ORGCODE);
+		param3.put("TOKEN", token);
+		encode = ThreeDESUtil.encode(JSON.toJSONString(param3), gatewayKey);
+//		result = ws4AServiceClient.queryOrgs(encode);
+		String queryOrgsResp = HttpUtil.get(gatewayUrl + "/QUERY4A/query/queryOrgs?args=" + encode);
+		result = JSON.parseObject(queryOrgsResp);
+		log.info("场景:{},4A查询用户组织结果:{}", num, result);
+		if(!"SUCCESS".equals(result.getString("resultStat"))){
+			throw new BusinessException(4000, "查询用户组织失败");
+		}
+		data = result.getString("data");
+		dataObj = JSONObject.parseObject(data);
+		if(!"0".equals(dataObj.getString("RSP"))){
+			throw new BusinessException(4000, "4A查询用户组织失败:" + dataObj.getString("ERRDESC"));
+		}
+		JSONObject ORGS = dataObj.getJSONObject("ORGS");
+		JSONArray ORG = ORGS.getJSONArray("ORG");
+		JSONObject ORG1 = ORG.getJSONObject(0);
+		String ORGNAMEPATH = ORG1.getString("ORGNAMEPATH");
+
+		//写入表
+		SceneViewLog sceneViewLog = new SceneViewLog();
+		sceneViewLog.setOrgNamePath(ORGNAMEPATH);
+		sceneViewLog.setFuncName("VR全景");
+		sceneViewLog.setFuncDesc("VR全景试图");
+		sceneViewLog.setUserName(USERCODE);
+		sceneViewLog.setNickName(nickName);
+		sceneViewLog.setCreateTime(new Date());
+		sceneViewLog.setTerminalType(userAgent);
+		sceneViewLogService.save(sceneViewLog);
+	}
+
+	public static void main(String[] args) {
+		JSONObject param2 = new JSONObject();
+		param2.put("SERVICEID", "CHNTRMS2");
+		param2.put("LOGINACCOUNT", "wx-sunql3");
+		param2.put("TOKEN", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJSRVMiLCJpc3MiOiJXUzRBIiwiZXhwIjoxNzMzMzEwNjY1LCJOQU5PU0VDT05EIjo0MjAxNTczODIzODYyMjgzOH0.sQR4qkTeRZEOQMI-Rjck35dFswoOMYHsGSuNcXH45TI");
+		String encode = ThreeDESUtil.encode(JSON.toJSONString(param2), "6#dPz>3F");
+		System.out.println(encode);
+	}
+
+}