|  | @ -4,8 +4,10 @@ import com.alibaba.fastjson.JSONObject;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.base.patient.BasePatientDO;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.base.patient.BasePatientFamilyMemberDO;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.base.wx.BasePatientWechatDo;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.care.common.GetuiClientDO;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.hospital.family.WlyyPatientFamilyMemberDO;
 | 
	
		
			
				|  |  | import com.yihu.jw.security.core.userdetails.SaltUser;
 | 
	
		
			
				|  |  | import com.yihu.jw.security.dao.patient.BaseGetuiClientDao;
 | 
	
		
			
				|  |  | import com.yihu.jw.security.dao.patient.BasePatientDao;
 | 
	
		
			
				|  |  | import com.yihu.jw.security.dao.patient.BasePatientWechatDao;
 | 
	
		
			
				|  |  | import com.yihu.jw.security.dao.patient.WlyyPatientFamilyMemberDao;
 | 
	
	
		
			
				|  | @ -97,6 +99,8 @@ public class WlyyUserDetailsService extends JdbcDaoSupport implements UserDetail
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     private WlyyPatientFamilyMemberDao familyMemberDao;
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     private BaseGetuiClientDao baseGetuiClientDao;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     public WlyyUserDetailsService(DataSource dataSource) {
 | 
	
		
			
				|  |  |         this.setDataSource(dataSource);
 | 
	
	
		
			
				|  | @ -630,6 +634,64 @@ public class WlyyUserDetailsService extends JdbcDaoSupport implements UserDetail
 | 
	
		
			
				|  |  |         } //...
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 更新个推clientId 和老人平板登录信息
 | 
	
		
			
				|  |  |      * @param clientId
 | 
	
		
			
				|  |  |      * @param padImei
 | 
	
		
			
				|  |  |      * @param loginType
 | 
	
		
			
				|  |  |      * @param username
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public void updateInfo(String clientId,String padImei,String loginType,String username){
 | 
	
		
			
				|  |  |         int isPateint = isPatient(loginType);
 | 
	
		
			
				|  |  |         if(StringUtils.isNotBlank(padImei)){
 | 
	
		
			
				|  |  |             try {
 | 
	
		
			
				|  |  |                 if(isPateint == 1){
 | 
	
		
			
				|  |  |                     this.getJdbcTemplate().update("update base_patient p set p.pad_imei = ? where p.mobile = ? or p.idcard = ?", padImei, username, username);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |             }catch (Exception e){
 | 
	
		
			
				|  |  |                 e.printStackTrace();
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         if(StringUtils.isNotBlank(clientId)&&isPateint<3){
 | 
	
		
			
				|  |  |             try {
 | 
	
		
			
				|  |  |                 List<WlyyUserDetails> users;
 | 
	
		
			
				|  |  |                 if(isPateint==1){
 | 
	
		
			
				|  |  |                     users = this.getJdbcTemplate().query(DEFAULT_PATIENT_DETAILS_STATEMENT, new BeanPropertyRowMapper(WlyyUserDetails.class), username, username);
 | 
	
		
			
				|  |  |                 }else{
 | 
	
		
			
				|  |  |                     users = this.getJdbcTemplate().query(DEFAULT_DOCTOR_DETAILS_STATEMENT, new BeanPropertyRowMapper(WlyyUserDetails.class), username, username);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 String user = users.get(0).getId();
 | 
	
		
			
				|  |  |                 List<GetuiClientDO> list = baseGetuiClientDao.findByUser(user,isPateint,clientId);
 | 
	
		
			
				|  |  |                 if(list.size() == 0){
 | 
	
		
			
				|  |  |                     GetuiClientDO getuiClientDO = new GetuiClientDO();
 | 
	
		
			
				|  |  |                     getuiClientDO.setClientId(clientId);
 | 
	
		
			
				|  |  |                     getuiClientDO.setType(isPateint);
 | 
	
		
			
				|  |  |                     getuiClientDO.setUser(user);
 | 
	
		
			
				|  |  |                     getuiClientDO.setCreateTime(new Date());
 | 
	
		
			
				|  |  |                     baseGetuiClientDao.save(getuiClientDO);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |             }catch (Exception e){
 | 
	
		
			
				|  |  |                 e.printStackTrace();
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 根据登录类型判断登录是医生2 ,居民1 还是后台管理员 3
 | 
	
		
			
				|  |  |      * @param loginType
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public int isPatient(String loginType){
 | 
	
		
			
				|  |  |         if(StringUtils.isBlank(loginType) || "1".equals(loginType)){
 | 
	
		
			
				|  |  |             return 3;
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         if("2".equals(loginType)){
 | 
	
		
			
				|  |  |             return 2;
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         return 1;
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     private Collection<? extends GrantedAuthority> getGrantedAuthorities(String username) {
 | 
	
		
			
				|  |  |         Collection<GrantedAuthority> authorities = new ArrayList<>(1);
 | 
	
		
			
				|  |  |         authorities.add(new SimpleGrantedAuthority("ROLE_USER"));
 |