| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -19,12 +19,10 @@ import com.epmet.constant.SmsTemplateConstant; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dto.CustomerAgencyDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dto.CustomerStaffDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dto.GovStaffRoleDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dto.UserWechatDTO; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dto.form.*; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.dto.result.*; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.feign.EpmetMessageOpenFeignClient; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.feign.EpmetUserFeignClient; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.feign.EpmetUserOpenFeignClient; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.feign.GovOrgFeignClient; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.feign.*; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.jwt.JwtTokenProperties; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.jwt.JwtTokenUtils; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import com.epmet.redis.CaptchaRedis; | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -67,6 +65,8 @@ public class GovLoginServiceImpl implements GovLoginService { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    private EpmetMessageOpenFeignClient epmetMessageOpenFeignClient; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    @Autowired | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    private EpmetUserOpenFeignClient userOpenFeignClient; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    @Autowired | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    private EpmetThirdFeignClient epmetThirdFeignClient; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    /** | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					     * @param formDTO | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -272,8 +272,24 @@ public class GovLoginServiceImpl implements GovLoginService { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            throw new RenException(customerStaffDTOResult.getCode()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        CustomerStaffDTO customerStaff = customerStaffDTOResult.getData(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        //2、解析微信用户
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        WxMaJscode2SessionResult wxMaJscode2SessionResult = loginService.getWxMaUser(LoginConstant.APP_GOV, formDTO.getWxCode()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        /*//2、解析微信用户
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        WxMaJscode2SessionResult wxMaJscode2SessionResult = loginService.getWxMaUser(LoginConstant.APP_GOV, formDTO.getWxCode());*/ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        //2020.7.24 获取微信信息接口调整,改调用微信api的方式  sun
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        //2.调用epmet_third服务,校验appId是否有效以及是否授权,校验通过的调用微信API获取用户基本信息
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        WxLoginFormDTO resiLoginFormDTO = new WxLoginFormDTO(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        resiLoginFormDTO.setAppId(formDTO.getAppId()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        resiLoginFormDTO.setWxCode(formDTO.getWxCode()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        Result<UserWechatDTO> result = epmetThirdFeignClient.resiAndWorkLogin(resiLoginFormDTO); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        if (!result.success()) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            logger.error("工作端小程序登陆,调用epmet_third服务获取数据失败"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            throw new RenException(result.getCode()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        UserWechatDTO userWechatDTO = result.getData(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        WxMaJscode2SessionResult wxMaJscode2SessionResult = new WxMaJscode2SessionResult(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        wxMaJscode2SessionResult.setOpenid(userWechatDTO.getWxOpenId()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        wxMaJscode2SessionResult.setSessionKey(userWechatDTO.getSessionKey()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        wxMaJscode2SessionResult.setUnionid(""); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        //3、记录staff_wechat,并记录用户激活状态,激活时间
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        this.savestaffwechat(customerStaff.getUserId(), wxMaJscode2SessionResult.getOpenid()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        //4、记录登录日志
 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -437,7 +453,7 @@ public class GovLoginServiceImpl implements GovLoginService { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        govTokenDto.setUserId(staffId); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        govTokenDto.setOpenId(wxMaJscode2SessionResult.getOpenid()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        govTokenDto.setSessionKey(wxMaJscode2SessionResult.getSessionKey()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        govTokenDto.setUnionId(wxMaJscode2SessionResult.getUnionid()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        govTokenDto.setUnionId(null == wxMaJscode2SessionResult.getUnionid() ? "" : wxMaJscode2SessionResult.getUnionid()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        govTokenDto.setToken(token); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        govTokenDto.setUpdateTime(System.currentTimeMillis()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        govTokenDto.setExpireTime(jwtTokenUtils.getExpiration(token).getTime()); | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |