@源码地址来源: https://minglisoft.cn/honghu2/business.html

手机端源码:

/*** Copyright &copy; 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 {@Autowiredprivate ISmsConfigService smsConfigService;@Autowiredprivate ISmsTemplateService smsTemplateService;@Autowiredprivate ISmsCodeService smsCodeService;@Autowiredprivate SysConfigFeignClient sysConfigFeignClient;@Autowiredprivate IUserService userService;@Autowiredprivate RedisUtil redisUtil;@Autowiredprivate StoreFeignClient storeFeignClient;@Autowiredprivate DistributionUserFeignClient disUserFeignClient;@Autowiredprivate 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); // 店铺申请进行的步骤,默认为0user.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); // 店铺申请进行的步骤,默认为0user.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

java版Spring Cloud+VR全景+直播短视频带货+三级分销+b2b2c多商家入驻前后端分离商城源码相关推荐

  1. java版聚合支付源码Spring Cloud+Spring Boot+mybatis+security+uniapp+Redis+MQ+VR全景+b2b2c多商家入驻前后端分离商城源码

    @源码地址来源: https://minglisoft.cn/honghu/business.html 电商微信支付.支付宝支付.余额支付代码 package com.honghu.cloud.con ...

  2. java版微信小程序登录商城源码Spring Cloud+Redis+MQ+VR全景+b2b2c多商家入驻前后端分离商城源码

    @源码地址来源: https://minglisoft.cn/honghu2/business.html 微信小程序登录代码: /*** Copyright © 2012-2017 <a hre ...

  3. java版微信小程序登录商城源码Spring Cloud+Spring Boot+mybatis+security+uniapp+Redis+MQ+VR全景+b2b2c多商家入驻前后端分离商城源码

    @源码地址来源: https://minglisoft.cn/honghu2/business.html 微信小程序登录代码: /*** Copyright © 2012-2017 <a hre ...

  4. java版商城源码之商家中心Spring Cloud+Spring Boot+mybatis+security+uniapp+Redis+MQ+VR全景+b2b2c多商家入驻前后端分离商城源码

    @源码地址来源: https://minglisoft.cn/honghu/business.html /*** Copyright © 2012-2017 <a href="http ...

  5. Java版商城源码+VR全景+b2b2c多商家入驻前后端分离商城源码

    1. 涉及平台 平台管理.商家端(PC端.手机端).买家平台(H5/公众号.小程序.APP端(IOS/Android).微服务平台(业务服务.系统服务.中间件服务) 2. 核心架构 Spring Cl ...

  6. java版微信小程序登录商城源码MQ+VR全景+b2b2c多商家入驻前后端分离商城源码

    @源码地址来源: https://minglisoft.cn/honghu2/business.html 微信小程序登录代码: /*** Copyright © 2012-2017 <a hre ...

  7. java版微信小程序多商家入驻前后端分离商城源码 Spring Cloud+Spring Boot+mybatis+security+uniapp+Redis+MQ+VR全景+b2b2c

    @源码地址来源: https://minglisoft.cn/honghu2/business.html 微信小程序登录代码: /*** Copyright © 2012-2017 <a hre ...

  8. java版微信小程序之多商家入驻前后端分离商城源码 Spring Cloud+Spring Boot+mybatis+security+uniapp+Redis+MQ+VR全景+b2b2c

    @源码地址来源: https://minglisoft.cn/honghu2/business.html 微信小程序登录代码: /*** Copyright © 2012-2017 <a hre ...

  9. java版b2b2c多商家入驻微信小程序商城源码Spring Cloud+Spring Boot+mybatis+security+uniapp+直播带货+VR全景+前后端分离微服务商城源码

    1. 涉及平台 平台管理.商家端(PC端.手机端).买家平台(H5/公众号.小程序.APP端(IOS/Android).微服务平台(业务服务.系统服务.中间件服务) 2. 核心架构 Spring Cl ...

  10. java版商城源码之聚合支付Spring Cloud+Spring Boot+mybatis+security+uniapp+Redis+MQ+VR全景+b2b2c多商家入驻前后端分离

    @源码地址来源: https://minglisoft.cn/honghu/business.html package com.honghu.cloud.controller;import java. ...

最新文章

  1. MSRA的Transformer跨界超越CNN,还解决了计算复杂度难题
  2. [吴恩达机器学习笔记]12支持向量机3SVM大间距分类的数学解释
  3. Android如何使用so文件和Android studio中导入so
  4. ascii码值为负数_作为2020年的程序员,你还在为编码问题困惑?
  5. Freemarker 页面静态化技术使用入门案例
  6. RabbitMQ六种工作模式:simple work publish routing topic rpc
  7. POJ 3258 River Hopscotch
  8. mysql数据库名长可为64字符,MySQL数据库设计规范
  9. AI如何提升10倍筛药效率?6月18日华为云携手中科院上海药物所揭开谜底
  10. 【blog】用emoji-java解决Emoji存储MySQL乱码问题
  11. win10需要开启系统打印机服务器,Win10系统开启和关闭打印机服务技巧
  12. Python在数学建模中的简单运用
  13. Houdini VEX 制作楼梯
  14. 为什么手机里的小爱音响app里搜不到家里的小爱音箱_小爱触屏音箱体验:小爱同学有了屏幕增加功能,是不是你的菜?...
  15. php 755,chmod 命令——chmod 755与 chmod 4755区别_PHP教程
  16. 微信小程序之转发功能,自定义转发标题文字和图片
  17. 关于:使用 OCT 自定义部署 Office 2007-2016
  18. 《Visual Basic.Net 循序渐进》阅读器说明
  19. vcs import src < ros2.repos 或 vcs import --input ros2.repos src 下载失败或速度慢
  20. 不藏了,我的一千行 MySQL 学习笔记(2万字长文)

热门文章

  1. fortran和python的效率_Fortran数值计算真的比C快吗,经测试是一样快的,是不是很多人都在以讹传讹?...
  2. 基于SpringBoot的图书管理系统
  3. 一些简单好玩的C语言程序
  4. AAC音频的解码算法
  5. via浏览器原始css,简约却不简单—via浏览器
  6. 项目管理工具project软件学习(四) - 日历保存为模板、日历重命名、删除
  7. Java核心技术卷1—— 目录
  8. java jbpm工作流_JBPM工作流
  9. Access数据库学习
  10. 【Android】科大讯飞——语音识别