@源码地址来源: https://minglisoft.cn/honghu2/business.html
手机端源码:
/** * Copyright © 2012-2017 <a href="http://minglisoft.cn">HongHu</a> All rights reserved. */ package com.honghu.cloud.controller; import java.math.BigDecimal; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import com.google.common.collect.Lists; import com.honghu.cloud.bean.SmsCode; import com.honghu.cloud.bean.SmsConfig; import com.honghu.cloud.bean.SmsTemplate; import com.honghu.cloud.bean.User; import com.honghu.cloud.code.ResponseCode; import com.honghu.cloud.constant.Globals; import com.honghu.cloud.dto.AccessoryDto; import com.honghu.cloud.dto.StoreDto; import com.honghu.cloud.dto.SysConfigDto; import com.honghu.cloud.dto.UserDto; import com.honghu.cloud.feign.AccessoryFeignClient; import com.honghu.cloud.feign.DistributionUserFeignClient; import com.honghu.cloud.feign.StoreFeignClient; import com.honghu.cloud.feign.SysConfigFeignClient; import com.honghu.cloud.redis.RedisUtil; import com.honghu.cloud.service.ISmsCodeService; import com.honghu.cloud.service.ISmsConfigService; import com.honghu.cloud.service.ISmsTemplateService; import com.honghu.cloud.service.IUserService; import com.honghu.cloud.tools.AliSmsUtil; import com.honghu.cloud.tools.SecurityUserHolder; import com.honghu.cloud.utils.CommUtil; import com.honghu.cloud.utils.JWT; import com.honghu.cloud.utils.tools.Md5Encrypt; import net.sf.json.JSONObject; /** * 短信服务 * @author Administrator * */ @RestController @RequestMapping(value = "/mobile") @CrossOrigin(origins = "*",maxAge = 3600) public class MobileController { @Autowired private ISmsConfigService smsConfigService; @Autowired private ISmsTemplateService smsTemplateService; @Autowired private ISmsCodeService smsCodeService; @Autowired private SysConfigFeignClient sysConfigFeignClient; @Autowired private IUserService userService; @Autowired private RedisUtil redisUtil; @Autowired private StoreFeignClient storeFeignClient; @Autowired private DistributionUserFeignClient disUserFeignClient; @Autowired private AccessoryFeignClient accessoryFeignClient; // 短信服务类型 public static List<String> sms_items = Lists.newArrayList(); static{ sms_items.add("bind_mobile"); // 绑定手机发送短信 sms_items.add("register_mobile"); // 手机号码注册发送短信 sms_items.add("login_mobile"); // 手机登录发送短信 sms_items.add("update_password"); // 修改密码 sms_items.add("update_pay_password"); // 修改支付密码 sms_items.add("forget_password"); // 忘记密码 } /** * 发送短信服务 * @param json(sms_type:bind_mobile,register_mobile,login_mobile) * @param request * @return */ @RequestMapping(value = "/sendCode", method = RequestMethod.POST) public Map<String,Object> sendCode(@RequestBody JSONObject json, HttpServletRequest request){ String sms_type = json.optString("sms_type"); if(StringUtils.isEmpty(sms_type)){ return ResponseCode.buildCodeMap("20001", "服务类型不能为空", null); } if(!sms_items.contains(sms_type)){ return ResponseCode.buildCodeMap("20002", "服务类型错误", null); } String mobile = json.optString("mobile"); if(StringUtils.isEmpty(mobile)){ return ResponseCode.buildCodeMap("20003", "手机号码不能为空", null); } // 查询短信配置 SmsConfig smsConfig = smsConfigService.findSmsConfig(); if(smsConfig == null){ return ResponseCode.buildCodeMap("20004", "系统未配置短信服务服务", null); } // 根据(英文模板名称)查询短信模板 SmsTemplate smsTemplate = smsTemplateService.findByCodeEn(sms_type); if(smsTemplate == null){ return ResponseCode.buildCodeMap("20005", "服务模板不存在", null); } String content = ""; if (StringUtils.equals(sms_type, "bind_mobile") || StringUtils.equals(sms_type, "register_mobile") || StringUtils.equals(sms_type, "login_mobile") || StringUtils.equals(sms_type, "forget_password") || StringUtils.equals(sms_type, "update_password")|| StringUtils.equals(sms_type, "update_pay_password")) { // 入库验证码 SmsCode smsCode = new SmsCode(); smsCode.setMobile(mobile); smsCode.setSend_time(new Date()); smsCode.setCode(CommUtil.randomInt(4)); smsCode.setCode_en(sms_type); smsCodeService.saveEntity(smsCode); content = "{\"code\":\"" + smsCode.getCode() + "\"}"; } // 发送短信 String result = AliSmsUtil.sendByALY(mobile, content, smsConfig, smsTemplate); if(StringUtils.isNotEmpty(result)){ return ResponseCode.buildCodeMap("20006", result, null); } return ResponseCode.buildSuccessMap("短信发送成功"); } /** * 手机号注册(登录) * @param json * @param request * @return */ @RequestMapping(value = "/register_mobile", method = RequestMethod.POST) public Map<String,Object> register_mobile(@RequestBody JSONObject json, HttpServletRequest request){ String sms_type = json.optString("sms_type"); if(StringUtils.isEmpty(sms_type)){ return ResponseCode.buildCodeMap("20001", "服务类型不能为空", null); } if(!StringUtils.equals("register_mobile", sms_type)){ return ResponseCode.buildCodeMap("20002", "服务类型错误", null); } String mobile = json.optString("mobile"); if(StringUtils.isEmpty(mobile)){ return ResponseCode.buildCodeMap("20003", "手机号码不能为空", null); } String code = json.optString("code"); if(StringUtils.isEmpty(code)){ return ResponseCode.buildCodeMap("20004", "验证码不能为空", null); } String password = json.optString("password"); if(StringUtils.isEmpty(password)){ return ResponseCode.buildCodeMap("20004", "密码不能为空", null); } // 查询短信配置 SmsConfig smsConfig = smsConfigService.findSmsConfig(); Integer use_minute = 5; if(smsConfig != null && smsConfig.getUse_minute() != null){ use_minute = smsConfig.getUse_minute(); } // 查询手机号有效期内的验证码 SmsCode smsCode = smsCodeService.findByCode(mobile, sms_type, use_minute); if(smsCode == null){ return ResponseCode.buildCodeMap("20005", "验证码已过期,请重新获取!", null); } if(!StringUtils.equals(code, smsCode.getCode())){ return ResponseCode.buildCodeMap("20006", "验证码错误", null); } // 查询手机号码是否注册 User user = userService.selectByUserName(mobile); if(user != null){ return ResponseCode.buildCodeMap("20007", "手机号已注册", null); } user = new User(); user.setDeleteStatus(0); user.setSex(-1); // 性别 1为男、0为女、-1为保密 user.setDeleteStatus(0); user.setAddTime(new Date()); user.setMonth_income(0); user.setIntegral(0); user.setIs_agent(0); user.setLoginCount(0); user.setAvailableBalance(BigDecimal.ZERO); user.setFreezeBlance(BigDecimal.ZERO); user.setMobile(mobile); user.setUserName(mobile); user.setPassword(Md5Encrypt.md5(password).toLowerCase()); user.setYears(0); // 用户年龄 user.setIs_live(0); user.setUser_type(0); // 用户类别,默认为0个人用户,1为企业用户 user.setStore_apply_step(0); // 店铺申请进行的步骤,默认为0 user.setInvoiceType(0); // 发票类型 user.setLive_code(userService.selectMaxLiveCode() + 1); user.setWhether_attention(1); //是否允许关注 0为不允许,1为允许 userService.saveEntity(user); userService.saveDisUser(user, "-1"); // 修改登录信息 user.setLoginCount(user.getLoginCount()+1); user.setLastLoginDate(new Date()); user.setLastLoginIp(CommUtil.getIpAddr(request)); // 生成token,格式:用户id;时间戳 String token = JWT.sign(user.getId() + ";" + System.currentTimeMillis()+";"+"app", 0); // 将token存到redis中,有效期24小时 redisUtil.set(Globals.ANDROID_LOGIN_MARK + user.getId(), token, Globals.USER_INFO_EXPIRE_TIME); // 返回结果集 Map<String, Object> resultMap = new HashMap<String, Object>(); resultMap.put("token", token); // 置空用户敏感字段 user.setPassword(""); user.setPay_password(""); resultMap.put("user", user); // 置空系统配置敏感字段 SysConfigDto sysConfig = sysConfigFeignClient.getSysConfig(); sysConfig.setWeixin_appId(""); sysConfig.setWeixin_appSecret(""); sysConfig.setUploadFilePath(""); sysConfig.setUser_level(""); resultMap.put("sysConfig", sysConfig); return ResponseCode.buildSuccessMap(resultMap); } /** * 手机号登录 * @param json * @param request * @return */ @RequestMapping(value = "/login_mobile", method = RequestMethod.POST) public Map<String,Object> login_mobile(@RequestBody JSONObject json, HttpServletRequest request){ String sms_type = json.optString("sms_type"); if(StringUtils.isEmpty(sms_type)){ return ResponseCode.buildCodeMap("20001", "服务类型不能为空", null); } if(!StringUtils.equals("login_mobile", sms_type)){ return ResponseCode.buildCodeMap("20002", "服务类型错误", null); } String mobile = json.optString("mobile"); if(StringUtils.isEmpty(mobile)){ return ResponseCode.buildCodeMap("20003", "手机号码不能为空", null); } String code = json.optString("code"); if(StringUtils.isEmpty(code)){ return ResponseCode.buildCodeMap("20004", "验证码不能为空", null); } // 查询短信配置 SmsConfig smsConfig = smsConfigService.findSmsConfig(); Integer use_minute = 5; if(smsConfig != null && smsConfig.getUse_minute() != null){ use_minute = smsConfig.getUse_minute(); } // 查询手机号有效期内的验证码 SmsCode smsCode = smsCodeService.findByCode(mobile, sms_type, use_minute); if(smsCode == null){ return ResponseCode.buildCodeMap("20005", "验证码已过期,请重新获取!", null); } if(!StringUtils.equals(code, smsCode.getCode())){ return ResponseCode.buildCodeMap("20006", "验证码错误", null); } // 查询手机号码是否注册 User user = userService.selectByUserName(mobile); if(user == null){ return ResponseCode.buildCodeMap("20007", "该用户不存在", null); } if(user.getSecurity() == 1){ return ResponseCode.buildCodeMap("20008", "账户存在安全隐患禁止登录!", null); } String storestatus=""; if (user.getStore_id()!=null) { StoreDto storeDto = storeFeignClient.selectByPrimaryKey(user.getStore_id()); if (storeDto!=null) { storestatus=storeDto.getStore_status()+""; } } // 修改登录信息 user.setLoginCount(user.getLoginCount()+1); user.setLastLoginDate(new Date()); user.setLastLoginIp(CommUtil.getIpAddr(request)); // 生成token,格式:用户id;时间戳 String token = JWT.sign(user.getId() + ";" + System.currentTimeMillis()+";"+"app", 0); // 将token存到redis中,有效期24小时 redisUtil.set(Globals.ANDROID_LOGIN_MARK + user.getId(), token, Globals.USER_INFO_EXPIRE_TIME); // 返回结果集 Map<String, Object> resultMap = new HashMap<String, Object>(); resultMap.put("token", token); // 置空用户敏感字段 user.setPassword(""); user.setPay_password(""); if (user.getPhoto_id()!=null) { AccessoryDto accessoryDto = accessoryFeignClient.selectByPrimaryKey(user.getPhoto_id()); if (accessoryDto!=null) user.setPhoto(accessoryDto); } resultMap.put("user", user); /*// 置空系统配置敏感字段 SysConfigDto sysConfig = sysConfigFeignClient.getSysConfig(); sysConfig.setWeixin_appId(""); sysConfig.setWeixin_appSecret(""); sysConfig.setUploadFilePath(""); sysConfig.setUser_level(""); resultMap.put("sysConfig", sysConfig);*/ resultMap.put("storestatus", storestatus); return ResponseCode.buildSuccessMap(resultMap); } /** * 手机号绑定 * @param json * @param request * @return */ @RequestMapping(value = "/login_bind", method = RequestMethod.POST) public Map<String,Object> login_bind(@RequestBody JSONObject json, HttpServletRequest request){ String sms_type = json.optString("sms_type"); if(StringUtils.isEmpty(sms_type)){ return ResponseCode.buildCodeMap("20001", "服务类型不能为空", null); } if(!StringUtils.equals("bind_mobile", sms_type)){ return ResponseCode.buildCodeMap("20002", "服务类型错误", null); } String mobile = json.optString("mobile"); if(StringUtils.isEmpty(mobile)){ return ResponseCode.buildCodeMap("20003", "手机号码不能为空", null); } String code = json.optString("code"); if(StringUtils.isEmpty(code)){ return ResponseCode.buildCodeMap("20004", "验证码不能为空", null); } String id = json.optString("id"); if(StringUtils.isEmpty(id)){ return ResponseCode.buildCodeMap("20008", "id不能为空", null); } // 查询短信配置 SmsConfig smsConfig = smsConfigService.findSmsConfig(); Integer use_minute = 5; if(smsConfig != null && smsConfig.getUse_minute() != null){ use_minute = smsConfig.getUse_minute(); } // 查询手机号有效期内的验证码 SmsCode smsCode = smsCodeService.findByCode(mobile, sms_type, use_minute); if(smsCode == null){ return ResponseCode.buildCodeMap("20005", "验证码已过期,请重新获取!", null); } if(!StringUtils.equals(code, smsCode.getCode())){ return ResponseCode.buildCodeMap("20006", "验证码错误", null); } // 返回结果集 Map<String, Object> resultMap = new HashMap<String, Object>(); // 查询手机号码是否注册 User UserName = userService.selectByUserName(mobile); //原用户 User user = userService.selectByPrimaryKey(CommUtil.null2Long(id)); //刚注册的用户 // 原手机号存在用户, 并且登录用户有微信union ,需要合并用户 , 手机号存在, 并且 unionid 为空 if (UserName!=null&&StringUtils.isEmpty(UserName.getWeixin_unionID())&&user.getWeixin_unionID()!=null) { UserName.setWeixin_unionID(user.getWeixin_unionID()); //将新unionid 存入旧数据中 if (UserName.getLive_code()==null) { UserName.setLive_code(userService.selectMaxLiveCode() + 1); } if (StringUtils.isEmpty(UserName.getNickName())) { UserName.setNickName(user.getNickName()); } if (user.getPhoto_id()!=null) { UserName.setPhoto_id(user.getPhoto_id()); } if (user.getOpenId()!=null) { UserName.setOpenId(user.getOpenId()); } userService.updateById(UserName); user.setDeleteStatus(1); user.setMobile("del"+CommUtil.null2String(mobile)); user.setUserName("del"+CommUtil.null2String(mobile)); user.setWeixin_unionID("del"+UserName.getId()+""); userService.updateById(user); disUserFeignClient.deleteByUserId(user.getId()); //删除新的 分销关系表 //redisUtil.remove(Globals.ANDROID_LOGIN_MARK + user.getId()); //redisUtil.remove(Globals.WECHAT_LOGIN_MARK + user.getId()); //换用户登录 // 生成token,格式:用户id;时间戳 // String token = JWT.sign(UserName.getId() + ";" + System.currentTimeMillis()+";"+"app", 0); String tokenStr = request.getHeader("token"); // 将token存到redis中,有效期24小时 redisUtil.set(Globals.ANDROID_LOGIN_MARK + UserName.getId(), tokenStr, Globals.USER_INFO_EXPIRE_TIME); resultMap.put("token", tokenStr); // 覆盖redis用户信息 UserDto userDto = new UserDto(); BeanUtils.copyProperties(UserName, userDto); redisUtil.set(Globals.USER_INFO_MARK + UserName.getId(), userDto, Globals.USER_INFO_EXPIRE_TIME); resultMap.put("user", UserName); return ResponseCode.buildSuccessMap(resultMap); }else if(UserName!=null){ return ResponseCode.buildCodeMap("20007", "手机号已存在", null); }else{ if (user!=null) { user.setMobile(mobile); user.setUserName(mobile); } userService.update(user); } // 修改登录信息 /*user.setLoginCount(user.getLoginCount()+1); user.setLastLoginDate(new Date()); user.setLastLoginIp(CommUtil.getIpAddr(request)); // 生成token,格式:用户id;时间戳 String token = JWT.sign(user.getId() + ";" + System.currentTimeMillis(), 0); // 将token存到redis中,有效期24小时 redisUtil.set(Globals.WECHAT_LOGIN_MARK + user.getId(), token, Globals.USER_INFO_EXPIRE_TIME);*/ // resultMap.put("token", token); // 置空用户敏感字段 /*user.setPassword(""); user.setPay_password("");*/ resultMap.put("user", user); // 置空系统配置敏感字段 /*SysConfigDto sysConfig = sysConfigFeignClient.getSysConfig(); sysConfig.setWeixin_appId(""); sysConfig.setWeixin_appSecret(""); sysConfig.setUploadFilePath(""); sysConfig.setUser_level(""); resultMap.put("sysConfig", sysConfig);*/ return ResponseCode.buildSuccessMap(resultMap); } /** * 用户名密码登录 * @param json * @param request * @return */ @RequestMapping(value = "/login_user", method = RequestMethod.POST) public Map<String,Object> login_user(@RequestBody JSONObject json, HttpServletRequest request){ String username = json.optString("username"); if(StringUtils.isEmpty(username)){ return ResponseCode.buildCodeMap("20001", "用户不能为空", null); } String password = json.optString("password"); if(StringUtils.isEmpty(password)){ return ResponseCode.buildCodeMap("20002", "验证码不能为空", null); } User user = userService.selectByUserName(username); if(user == null){ return ResponseCode.buildCodeMap("20003", "用户不存在", null); } if(!StringUtils.equals(user.getPassword(), Md5Encrypt.md5(password).toLowerCase())){ return ResponseCode.buildCodeMap("20006", "密码错误", null); } if(user.getSecurity() == 1){ return ResponseCode.buildCodeMap("20008", "账户存在安全隐患禁止登录!", null); } String storestatus=""; if (user.getStore_id()!=null) { StoreDto storeDto = storeFeignClient.selectByPrimaryKey(user.getStore_id()); if (storeDto!=null) { storestatus=storeDto.getStore_status()+""; } } // 修改登录信息 user.setLoginCount(user.getLoginCount()+1); user.setLastLoginDate(new Date()); user.setLastLoginIp(CommUtil.getIpAddr(request)); // 生成token,格式:用户id;时间戳 String token = JWT.sign(user.getId() + ";" + System.currentTimeMillis()+";"+"app", 0); // 将token存到redis中,有效期24小时 redisUtil.set(Globals.ANDROID_LOGIN_MARK + user.getId(), token, Globals.USER_INFO_EXPIRE_TIME); // 返回结果集 Map<String, Object> resultMap = new HashMap<String, Object>(); resultMap.put("token", token); // 置空用户敏感字段 user.setPassword(""); user.setPay_password(""); resultMap.put("user", user); // 置空系统配置敏感字段 SysConfigDto sysConfig = sysConfigFeignClient.getSysConfig(); sysConfig.setWeixin_appId(""); sysConfig.setWeixin_appSecret(""); sysConfig.setUploadFilePath(""); sysConfig.setUser_level(""); resultMap.put("sysConfig", sysConfig); resultMap.put("storestatus", storestatus); return ResponseCode.buildSuccessMap(resultMap); } /** * 忘记密码保存 * @param json * @param request * @return */ @RequestMapping(value = "/forget_password_save", method = RequestMethod.POST) public Map<String,Object> forget_password_save(@RequestBody JSONObject json, HttpServletRequest request){ String sms_type = json.optString("sms_type"); if(StringUtils.isEmpty(sms_type)){ return ResponseCode.buildCodeMap("20001", "服务类型不能为空", null); } if(!StringUtils.equals("forget_password", sms_type)){ return ResponseCode.buildCodeMap("20002", "服务类型错误", null); } String mobile = json.optString("mobile"); if(StringUtils.isEmpty(mobile)){ return ResponseCode.buildCodeMap("20003", "手机号码不能为空", null); } String code = json.optString("code"); if(StringUtils.isEmpty(code)){ return ResponseCode.buildCodeMap("20004", "验证码不能为空", null); } String password = json.optString("password"); if(StringUtils.isEmpty(password)){ return ResponseCode.buildCodeMap("20005", "密码不能为空", null); } // 查询短信配置 SmsConfig smsConfig = smsConfigService.findSmsConfig(); Integer use_minute = 5; if(smsConfig != null && smsConfig.getUse_minute() != null){ use_minute = smsConfig.getUse_minute(); } // 查询手机号有效期内的验证码 SmsCode smsCode = smsCodeService.findByCode(mobile, sms_type, use_minute); if(smsCode == null){ return ResponseCode.buildCodeMap("20006", "验证码已过期,请重新获取!", null); } if(!StringUtils.equals(code, smsCode.getCode())){ return ResponseCode.buildCodeMap("20007", "验证码错误", null); } // 查询手机号码是否注册 User user = userService.selectByUserName(mobile); if(user == null){ return ResponseCode.buildCodeMap("20008", "用户不存在", null); } user.setPassword(Md5Encrypt.md5(password).toLowerCase()); userService.updateById(user); return ResponseCode.buildSuccessMap(null); } //TODO 鱼易注册 /** * 手机号注册(登录) * @param json * @param request * @return */ @RequestMapping(value = "/register_mobile_new", method = RequestMethod.POST) public Map<String,Object> register_mobile_new(@RequestBody JSONObject json, HttpServletRequest request){ String sms_type = json.optString("sms_type"); String true_name = json.optString("true_name");//真实姓名 if(StringUtils.isEmpty(true_name)){ return ResponseCode.buildCodeMap("20007", "真实姓名不能为空", null); } if(StringUtils.isEmpty(sms_type)){ return ResponseCode.buildCodeMap("20001", "服务类型不能为空", null); } if(!StringUtils.equals("register_mobile", sms_type)){ return ResponseCode.buildCodeMap("20002", "服务类型错误", null); } String mobile = json.optString("mobile"); if(StringUtils.isEmpty(mobile)){ return ResponseCode.buildCodeMap("20003", "手机号码不能为空", null); } String code = json.optString("code"); if(StringUtils.isEmpty(code)){ return ResponseCode.buildCodeMap("20004", "验证码不能为空", null); } String password = json.optString("password"); if(StringUtils.isEmpty(password)){ return ResponseCode.buildCodeMap("20004", "密码不能为空", null); } // 查询短信配置 SmsConfig smsConfig = smsConfigService.findSmsConfig(); Integer use_minute = 5; if(smsConfig != null && smsConfig.getUse_minute() != null){ use_minute = smsConfig.getUse_minute(); } // 查询手机号有效期内的验证码 SmsCode smsCode = smsCodeService.findByCode(mobile, sms_type, use_minute); if(smsCode == null){ return ResponseCode.buildCodeMap("20005", "验证码已过期,请重新获取!", null); } if(!StringUtils.equals(code, smsCode.getCode())){ return ResponseCode.buildCodeMap("20006", "验证码错误", null); } // 查询手机号码是否注册 User user = userService.selectByUserName(mobile); if(user != null){ return ResponseCode.buildCodeMap("20007", "手机号已注册", null); } user = new User(); user.setDeleteStatus(0); user.setSex(-1); // 性别 1为男、0为女、-1为保密 user.setDeleteStatus(0); user.setAddTime(new Date()); user.setMonth_income(0); user.setIntegral(0); user.setIs_agent(0); user.setTrueName(true_name); user.setLoginCount(0); user.setAvailableBalance(BigDecimal.ZERO); user.setFreezeBlance(BigDecimal.ZERO); user.setMobile(mobile); user.setUserName(mobile); user.setPassword(Md5Encrypt.md5(password).toLowerCase()); user.setYears(0); // 用户年龄 user.setIs_live(0); user.setUser_type(0); // 用户类别,默认为0个人用户,1为企业用户 user.setStore_apply_step(0); // 店铺申请进行的步骤,默认为0 user.setInvoiceType(0); // 发票类型 user.setLive_code(userService.selectMaxLiveCode() + 1); user.setWhether_attention(1); //是否允许关注 0为不允许,1为允许 userService.saveEntity(user); userService.saveDisUser(user, "-1"); // 修改登录信息 user.setLoginCount(user.getLoginCount()+1); user.setLastLoginDate(new Date()); user.setLastLoginIp(CommUtil.getIpAddr(request)); // 生成token,格式:用户id;时间戳 String token = JWT.sign(user.getId() + ";" + System.currentTimeMillis()+";"+"app", 0); // 将token存到redis中,有效期24小时 redisUtil.set(Globals.ANDROID_LOGIN_MARK + user.getId(), token, Globals.USER_INFO_EXPIRE_TIME); //传同步给鱼易 真实姓名, 手机号 , 密码, //userService.yuyiSaveUser(true_name,mobile,password); // 返回结果集 Map<String, Object> resultMap = new HashMap<String, Object>(); resultMap.put("token", token); // 置空用户敏感字段 user.setPassword(""); user.setPay_password(""); resultMap.put("user", user); // 置空系统配置敏感字段 SysConfigDto sysConfig = sysConfigFeignClient.getSysConfig(); sysConfig.setWeixin_appId(""); sysConfig.setWeixin_appSecret(""); sysConfig.setUploadFilePath(""); sysConfig.setUser_level(""); resultMap.put("sysConfig", sysConfig); return ResponseCode.buildSuccessMap(resultMap); } }
@源码地址来源: https://minglisoft.cn/honghu2/business.html