|
@@ -15,6 +15,7 @@ import com.caimei365.user.model.po.CmDistribution;
|
|
|
import com.caimei365.user.model.po.CmUser;
|
|
|
import com.caimei365.user.model.vo.UserLoginVo;
|
|
|
import com.caimei365.user.service.CmDistributionService;
|
|
|
+import com.caimei365.user.service.RemoteCallService;
|
|
|
import com.caimei365.user.utils.DateUtil;
|
|
|
import com.caimei365.user.utils.JwtUtil;
|
|
|
import com.caimei365.user.utils.Md5Util;
|
|
@@ -23,6 +24,8 @@ import org.apache.commons.lang.StringUtils;
|
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
|
import org.apache.http.client.utils.DateUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.web.bind.annotation.RequestBody;
|
|
|
+import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
@@ -43,6 +46,8 @@ public class CmDistributionServiceImpl implements CmDistributionService {
|
|
|
private CmDistributionMapper cmDistributionMapper;
|
|
|
@Resource
|
|
|
private CommonService commonService;
|
|
|
+ @Resource
|
|
|
+ private RemoteCallService remoteCallService;
|
|
|
/**
|
|
|
* 通过对象查询distribution列表
|
|
|
*
|
|
@@ -66,6 +71,16 @@ public class CmDistributionServiceImpl implements CmDistributionService {
|
|
|
return cmDistributionMapper.getByCmDistribution(cmDistribution);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 通过对象查询distribution
|
|
|
+ *
|
|
|
+ * @return distribution
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public CmDistribution getCmDistributionById(String id) {
|
|
|
+ return cmDistributionMapper.getCmDistributionById(id);
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 新增distribution
|
|
@@ -86,21 +101,27 @@ public class CmDistributionServiceImpl implements CmDistributionService {
|
|
|
cmUser.setAuditStatus("1");
|
|
|
cmUser.setAuditTime(DateUtil.formatDateTime(new Date()));
|
|
|
if (StringUtils.isBlank(cmDistribution.id())) {
|
|
|
+ String password="1111aaaa";
|
|
|
cmUser.setUserOrganizeID("0");
|
|
|
cmUser.setMobile(cmDistribution.mobile());
|
|
|
cmUser.setBindMobile(cmDistribution.mobile());
|
|
|
cmUser.setUserIdentity("7");//外部协销
|
|
|
cmUser.setRegisterUserTypeID("32");//协销
|
|
|
cmUser.setRegisterTime(DateUtil.formatDateTime(new Date()));
|
|
|
- cmUser.setServiceProviderID(Integer.valueOf(cmDistribution.id()));
|
|
|
cmUser.setValidFlag("1");
|
|
|
- CmDistribution cmDistributionByParentId = cmDistributionMapper.getCmDistributionById(cmDistribution.id());
|
|
|
+ CmDistribution cmDistributionByParentId = cmDistributionMapper.getCmDistributionById(String.valueOf(cmDistribution.parentId()));
|
|
|
cmDistribution.parentIds(cmDistributionByParentId.parentIds() + "," + cmDistribution.parentId());
|
|
|
cmDistribution.corporateName(cmDistributionByParentId.corporateName());
|
|
|
- cmDistribution.password(Md5Util.md5("1111aaaa"));
|
|
|
+ cmDistribution.password(Md5Util.md5(password));
|
|
|
cmUser.setPassword(cmDistribution.password());
|
|
|
baseMapper.addUser(cmUser);
|
|
|
+// cmUser.setServiceProviderID(Integer.valueOf(cmDistribution.id()));
|
|
|
cmDistribution.userId(Integer.valueOf(cmUser.getUserID()));
|
|
|
+ cmDistribution.addTime(new Date());
|
|
|
+ String content = "【分销系统】您的分销系统登录账号 :"+cmDistribution.mobile()+",密码:"+password;
|
|
|
+ if (cmDistribution.mobile()!= null && cmDistribution.mobile() != "") {
|
|
|
+ remoteCallService.remoteSendSms(0, 1, cmDistribution.mobile(), content);
|
|
|
+ }
|
|
|
return cmDistributionMapper.addCmDistribution(cmDistribution);
|
|
|
} else {
|
|
|
cmDistributionMapper.updateCmDistribution(cmDistribution);
|
|
@@ -124,6 +145,11 @@ public class CmDistributionServiceImpl implements CmDistributionService {
|
|
|
if (StringUtils.isNotBlank(cmDistribution.password())) {
|
|
|
baseMapper.updatePasswordByUserId(cmDistribution.password(), cmDistribution.userId());
|
|
|
}
|
|
|
+ if (null!=cmDistribution.status()) {
|
|
|
+ baseMapper.updateUser(new CmUser()
|
|
|
+ .userID(String.valueOf(cmDistribution.userId()))
|
|
|
+ .validFlag(cmDistribution.status()==90?"1":"0"));
|
|
|
+ }
|
|
|
return cmDistributionMapper.updateCmDistribution(cmDistribution);
|
|
|
}
|
|
|
|
|
@@ -223,7 +249,7 @@ public class CmDistributionServiceImpl implements CmDistributionService {
|
|
|
redisService.remove("code:" + mobile);
|
|
|
// 根据手机号获取分销人员
|
|
|
UserLoginVo distribution = cmDistributionMapper.getLoginDistributionByMobile(mobile);
|
|
|
- if (distribution.getServiceStatus().equals(90)) {
|
|
|
+ if (null!=distribution&&distribution.getServiceStatus().equals(90)) {
|
|
|
// 生成token
|
|
|
String token = JwtUtil.createToken(distribution.getUserId());
|
|
|
// 为了过期续签,将token存入redis,并设置超时时间
|
|
@@ -241,7 +267,73 @@ public class CmDistributionServiceImpl implements CmDistributionService {
|
|
|
return ResponseJson.error(-1, "验证码错误, 请重新获取", null);
|
|
|
}
|
|
|
}
|
|
|
- return ResponseJson.error();
|
|
|
+ return ResponseJson.error(-1, "请获短信取验证码", null);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 分销人员登录验证码登录
|
|
|
+ *
|
|
|
+ * @param loginCodeDto
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public ResponseJson organizeClubCodeLogin(LoginCodeDto loginCodeDto ,String userId) {
|
|
|
+ String mobile = loginCodeDto.getMobile();
|
|
|
+ String code = loginCodeDto.getCode();
|
|
|
+ if (StringUtils.isBlank(mobile)) {
|
|
|
+ return ResponseJson.error("请输入手机号", null);
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(code)) {
|
|
|
+ return ResponseJson.error("请输入验证码", null);
|
|
|
+ }
|
|
|
+ // 判断redis中是否存在
|
|
|
+ boolean exists = redisService.exists("code:" + mobile);
|
|
|
+ if (exists) {
|
|
|
+ // 查看验证码是否过期
|
|
|
+ long expireTime = redisService.getExpireTime("code:" + mobile);
|
|
|
+ if (expireTime < 0) {
|
|
|
+ return ResponseJson.error(-1, "验证码已失效,请重新获取", null);
|
|
|
+ }
|
|
|
+ // 获取redis手机短信验证码
|
|
|
+ Object randomCode = redisService.get("code:" + mobile);
|
|
|
+
|
|
|
+ if (!ObjectUtils.isEmpty(randomCode)) {
|
|
|
+ if (code.equals(randomCode.toString())) {
|
|
|
+ redisService.remove("code:" + mobile);
|
|
|
+ // 根据手机号获取分销人员
|
|
|
+ CmUser user = baseMapper.getByUser(new CmUser().userIdentity("8").userID(userId).bindMobile(mobile));
|
|
|
+ if (null!=user) {
|
|
|
+ String password="1111aaaa";
|
|
|
+ baseMapper.updateUser(new CmUser()
|
|
|
+ .userID(userId)
|
|
|
+ .validFlag("1")
|
|
|
+ .clubStatus(90)
|
|
|
+ .password(Md5Util.md5(password))
|
|
|
+ );
|
|
|
+ baseMapper.updateClubStatus(Integer.valueOf(userId),90);
|
|
|
+ // 发送短信
|
|
|
+ String content = "亲爱的买家,您好,系统根据您下单时的手机号默认给您生成了登录账号与密码,账号:"+mobile+",密码:"+password+",您可通过手机号与密码或验证码登录分销系统查看您的订单状态";
|
|
|
+ boolean smsFlag = remoteCallService.remoteSendSms(0, 1, mobile, content);
|
|
|
+ if (!smsFlag) {
|
|
|
+ // 短信发送失败重试一次
|
|
|
+ remoteCallService.remoteSendSms(0, 1, mobile, content);
|
|
|
+ }
|
|
|
+ // 生成token
|
|
|
+ String token = JwtUtil.createToken(Integer.valueOf(userId));
|
|
|
+ // 为了过期续签,将token存入redis,并设置超时时间
|
|
|
+ redisService.set(token, token, JwtUtil.getExpireTime());
|
|
|
+ return ResponseJson.success(null,token);
|
|
|
+ } else {
|
|
|
+ return ResponseJson.error("该手机号暂未注册", null);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ return ResponseJson.error(-1, "验证码错误,请确认验证码输入", null);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ return ResponseJson.error(-1, "验证码错误, 请重新获取", null);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return ResponseJson.error(-1, "请获短信取验证码", null);
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -259,6 +351,10 @@ public class CmDistributionServiceImpl implements CmDistributionService {
|
|
|
if (StringUtils.isBlank(code)) {
|
|
|
return ResponseJson.error("请输入验证码", null);
|
|
|
}
|
|
|
+ UserLoginVo userBy = cmDistributionMapper.getLoginDistributionByMobile(mobile);
|
|
|
+ if (null==userBy) {
|
|
|
+ return ResponseJson.error("该手机号暂未注册", null);
|
|
|
+ }
|
|
|
// 判断redis中是否存在
|
|
|
boolean exists = redisService.exists("code:" + mobile);
|
|
|
if (exists) {
|
|
@@ -273,7 +369,6 @@ public class CmDistributionServiceImpl implements CmDistributionService {
|
|
|
if (!ObjectUtils.isEmpty(randomCode)) {
|
|
|
if (code.equals(randomCode.toString())) {
|
|
|
redisService.remove("code:" + mobile);
|
|
|
- UserLoginVo userBy = cmDistributionMapper.getLoginDistributionByMobile(mobile);
|
|
|
updateCmDistribution(new CmDistribution()
|
|
|
.userId(userBy.getUserId())
|
|
|
.password(Md5Util.md5(cmDistribution.password()))
|
|
@@ -286,7 +381,7 @@ public class CmDistributionServiceImpl implements CmDistributionService {
|
|
|
return ResponseJson.error(-1, "验证码错误, 请重新获取", null);
|
|
|
}
|
|
|
}
|
|
|
- return ResponseJson.error();
|
|
|
+ return ResponseJson.error(-1, "请获短信取验证码", null);
|
|
|
}
|
|
|
}
|
|
|
|