提交 8848d185 作者: zhenjie

单位管理、认证、加盟修改

上级 a6fc0d0d
...@@ -18,6 +18,7 @@ public enum ResultEnum implements BaseErrorInfoInterface { ...@@ -18,6 +18,7 @@ public enum ResultEnum implements BaseErrorInfoInterface {
THE_BRAND_LOGO_CANNOT_BE_EMPTY("1004", "logo图标不能为空"), THE_BRAND_LOGO_CANNOT_BE_EMPTY("1004", "logo图标不能为空"),
TAG_ALREADY_EXIST_ERROR("2001", "您已拥有该身份,不需要重复提交"), TAG_ALREADY_EXIST_ERROR("2001", "您已拥有该身份,不需要重复提交"),
TAG_APPLY_ALREADY_EXIST_ERROR("2002", "已存在申请记录,不可重复申请"),
LOGIN_ACCOUNT_NOT_EXIT_ERROR("5005", "账号不存在"), LOGIN_ACCOUNT_NOT_EXIT_ERROR("5005", "账号不存在"),
LOGIN_PASSWORD_ERROR("5006", "密码错误"), LOGIN_PASSWORD_ERROR("5006", "密码错误"),
...@@ -29,6 +30,7 @@ public enum ResultEnum implements BaseErrorInfoInterface { ...@@ -29,6 +30,7 @@ public enum ResultEnum implements BaseErrorInfoInterface {
REMOVE_COMPANY_BINDING_APP_ERROR("5013", "删除失败,该单位有绑定小程序账号!"), REMOVE_COMPANY_BINDING_APP_ERROR("5013", "删除失败,该单位有绑定小程序账号!"),
UNBIND_COMPANY_MEMBER_ERROR("5014", "不能解绑管理员"), UNBIND_COMPANY_MEMBER_ERROR("5014", "不能解绑管理员"),
TRANFER_COMPANY_MEMBER_LEADER_ERROR("5015", "转交人不是管理员!"), TRANFER_COMPANY_MEMBER_LEADER_ERROR("5015", "转交人不是管理员!"),
COMPANY_EXIST_ERROR("5015", "该企业已认证!"),
//微信相关 //微信相关
PASSWORD_INCONSISTENT("5026", "新密码与确认密码不一致,请确认一致"), PASSWORD_INCONSISTENT("5026", "新密码与确认密码不一致,请确认一致"),
......
...@@ -79,6 +79,12 @@ ...@@ -79,6 +79,12 @@
<!-- <version>4.0.0</version>--> <!-- <version>4.0.0</version>-->
<!-- </dependency>--> <!-- </dependency>-->
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>dysmsapi20170525</artifactId>
<version>2.0.5</version>
</dependency>
</dependencies> </dependencies>
<build> <build>
......
...@@ -71,7 +71,7 @@ public class CompanyController extends BaseController { ...@@ -71,7 +71,7 @@ public class CompanyController extends BaseController {
return companyService.listCompanyPageBack(companyInfoQO); return companyService.listCompanyPageBack(companyInfoQO);
} }
@ApiOperation(value = "绑定小程序用户") @ApiOperation(value = "成员-绑定")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("bindingCompanyMember") @GetMapping("bindingCompanyMember")
public ResultBody bindingCompanyMember(HttpServletRequest request, public ResultBody bindingCompanyMember(HttpServletRequest request,
...@@ -80,7 +80,7 @@ public class CompanyController extends BaseController { ...@@ -80,7 +80,7 @@ public class CompanyController extends BaseController {
return companyService.bindingCompanyMember(this.getUserLoginInfoFromRedis(request), userAccountId, companyInfoId); return companyService.bindingCompanyMember(this.getUserLoginInfoFromRedis(request), userAccountId, companyInfoId);
} }
@ApiOperation(value = "解绑小程序用户") @ApiOperation(value = "成员-解绑")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("unbindCompanyMember") @GetMapping("unbindCompanyMember")
public ResultBody unbindCompanyMember(HttpServletRequest request, public ResultBody unbindCompanyMember(HttpServletRequest request,
...@@ -89,7 +89,7 @@ public class CompanyController extends BaseController { ...@@ -89,7 +89,7 @@ public class CompanyController extends BaseController {
return companyService.unbindCompanyMember(this.getUserLoginInfoFromRedis(request), userAccountId, companyInfoId); return companyService.unbindCompanyMember(this.getUserLoginInfoFromRedis(request), userAccountId, companyInfoId);
} }
@ApiOperation(value = "转让管理员") @ApiOperation(value = "成员-转让管理员")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("transferLeader") @GetMapping("transferLeader")
public ResultBody transferLeader(HttpServletRequest request, public ResultBody transferLeader(HttpServletRequest request,
...@@ -99,7 +99,7 @@ public class CompanyController extends BaseController { ...@@ -99,7 +99,7 @@ public class CompanyController extends BaseController {
return companyService.transferLeader(this.getUserLoginInfoFromRedis(request), fromUserAccountId, toUserAccountId, companyInfoId); return companyService.transferLeader(this.getUserLoginInfoFromRedis(request), fromUserAccountId, toUserAccountId, companyInfoId);
} }
@ApiOperation(value = "单位成员列表") @ApiOperation(value = "成员-列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("listCompanyMembers") @GetMapping("listCompanyMembers")
public ResultBody listCompanyMembers(HttpServletRequest request, public ResultBody listCompanyMembers(HttpServletRequest request,
......
...@@ -133,4 +133,6 @@ public interface CooperationDao { ...@@ -133,4 +133,6 @@ public interface CooperationDao {
void updateCompanyInfo(UserApplyTagDO userApplyTagDO); void updateCompanyInfo(UserApplyTagDO userApplyTagDO);
List<CompanyInfoDO> appBrandList(); List<CompanyInfoDO> appBrandList();
int countUserApplyTagByUid(Integer userAccountId);
} }
...@@ -203,16 +203,17 @@ public class AuthServiceImpl implements AuthService { ...@@ -203,16 +203,17 @@ public class AuthServiceImpl implements AuthService {
LoginSuccessDTO backLoginSuccessDTO = LoginSuccessDTO.builder().token(token).userAccountId(backUserAccountVO.getId()) LoginSuccessDTO backLoginSuccessDTO = LoginSuccessDTO.builder().token(token).userAccountId(backUserAccountVO.getId())
.accountNo(backUserAccountVO.getAccountNo()).uid(backUserAccountVO.getId() + "").userName(backUserAccountVO.getUserName()) .accountNo(backUserAccountVO.getAccountNo()).uid(backUserAccountVO.getId() + "").userName(backUserAccountVO.getUserName())
.nickName(backUserAccountVO.getUserName()).phoneNum(backUserAccountVO.getPhoneNum()).portType(0).companyInfoVO(companyInfoVO == null ? null : companyInfoVO) .nickName(backUserAccountVO.getUserName()).phoneNum(backUserAccountVO.getPhoneNum()).portType(0).companyInfoVO(companyInfoVO == null ? null : companyInfoVO)
.roleInfo(roleInfoDO.buildRoleInfoDTO()).appUserAccountId(loginSuccessDTO.getAppUserAccountId()).token(token).build(); .roleInfo(roleInfoDO.buildRoleInfoDTO()).appUserAccountId(loginSuccessDTO.getUserAccountId()).token(token).build();
// 设置后台账号token,key为randomLoginCode // 设置后台账号token,key为randomLoginCode
stringRedisTemplate.opsForValue().set( stringRedisTemplate.opsForValue().set(
randomLoginCode, JSONObject.toJSONString(backLoginSuccessDTO), randomLoginCode, JSONObject.toJSONString(backLoginSuccessDTO),
JwtConstant.EXPIRATION, TimeUnit.MILLISECONDS); JwtConstant.EXPIRATION, TimeUnit.MILLISECONDS);
loginSuccessDTO.setToken(token); loginSuccessDTO.setToken(token);
} else {
stringRedisTemplate.opsForValue().set(
randomLoginCode, JSONObject.toJSONString(loginSuccessDTO),
JwtConstant.TEMP_EXPIRATION, TimeUnit.MILLISECONDS);
} }
stringRedisTemplate.opsForValue().set(
randomLoginCode, JSONObject.toJSONString(loginSuccessDTO),
JwtConstant.TEMP_EXPIRATION, TimeUnit.MILLISECONDS);
return ResultBody.success(); return ResultBody.success();
} }
......
...@@ -43,6 +43,7 @@ public class BackUserAccountServiceImpl implements BackUserAccountService { ...@@ -43,6 +43,7 @@ public class BackUserAccountServiceImpl implements BackUserAccountService {
@Autowired @Autowired
private RoleDao roleDao; private RoleDao roleDao;
@Transactional
@Override @Override
public ResultBody insertBAccount(BUserAccountVO bUserAccountVO) { public ResultBody insertBAccount(BUserAccountVO bUserAccountVO) {
if (!bUserAccountVO.getPassWord().equals(bUserAccountVO.getAlertPwd())) { if (!bUserAccountVO.getPassWord().equals(bUserAccountVO.getAlertPwd())) {
......
...@@ -44,7 +44,7 @@ public class CompanyAuthServiceImpl implements CompanyAuthService { ...@@ -44,7 +44,7 @@ public class CompanyAuthServiceImpl implements CompanyAuthService {
if (companyInfoDO != null) { if (companyInfoDO != null) {
List<CompanyMemberDO> companyMemberDOS = companyDao.listCompanyMembers(companyInfoDO.getId()); List<CompanyMemberDO> companyMemberDOS = companyDao.listCompanyMembers(companyInfoDO.getId());
if (!CollectionUtils.isEmpty(companyMemberDOS)) { if (!CollectionUtils.isEmpty(companyMemberDOS)) {
return ResultBody.error("该企业已认证"); return ResultBody.error(ResultEnum.APPLET_LOGIN_ERROR);
} }
} else { } else {
companyInfoDO = new CompanyInfoDO(); companyInfoDO = new CompanyInfoDO();
......
...@@ -17,13 +17,16 @@ import com.mmc.iuav.user.model.vo.*; ...@@ -17,13 +17,16 @@ import com.mmc.iuav.user.model.vo.*;
import com.mmc.iuav.user.service.BackUserAccountService; import com.mmc.iuav.user.service.BackUserAccountService;
import com.mmc.iuav.user.service.CooperationService; import com.mmc.iuav.user.service.CooperationService;
import com.mmc.iuav.user.service.UserAccountService; import com.mmc.iuav.user.service.UserAccountService;
import com.mmc.iuav.user.util.SmsUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.RandomStringUtils; import org.apache.commons.lang3.RandomStringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
...@@ -57,6 +60,10 @@ public class CooperationServiceImpl implements CooperationService { ...@@ -57,6 +60,10 @@ public class CooperationServiceImpl implements CooperationService {
@Override @Override
public ResultBody apply(UserApplyTagVO userApplyTagVO) { public ResultBody apply(UserApplyTagVO userApplyTagVO) {
int applyCount = cooperationDao.countUserApplyTagByUid(userApplyTagVO.getUserAccountId());
if (applyCount > 0) {
return ResultBody.error(ResultEnum.TAG_APPLY_ALREADY_EXIST_ERROR);
}
int count = cooperationDao.userTagInfo(userApplyTagVO.getCooperationTagId(), userApplyTagVO.getUserAccountId()); int count = cooperationDao.userTagInfo(userApplyTagVO.getCooperationTagId(), userApplyTagVO.getUserAccountId());
if (count > 0) { if (count > 0) {
return ResultBody.error(ResultEnum.TAG_ALREADY_EXIST_ERROR); return ResultBody.error(ResultEnum.TAG_ALREADY_EXIST_ERROR);
...@@ -164,6 +171,7 @@ public class CooperationServiceImpl implements CooperationService { ...@@ -164,6 +171,7 @@ public class CooperationServiceImpl implements CooperationService {
int count = int count =
cooperationDao.userTagInfo( cooperationDao.userTagInfo(
userApplyTag.getCooperationTagId(), userApplyTag.getUserAccountId()); userApplyTag.getCooperationTagId(), userApplyTag.getUserAccountId());
UserAccountVO account = userAccountService.getUserAccountById(userApplyTag.getUserAccountId());
if (status) { if (status) {
cooperationDao.updateApplyTagStatus(id, 1); cooperationDao.updateApplyTagStatus(id, 1);
if (count == 0) { if (count == 0) {
...@@ -177,12 +185,23 @@ public class CooperationServiceImpl implements CooperationService { ...@@ -177,12 +185,23 @@ public class CooperationServiceImpl implements CooperationService {
BUserAccountVO bUserAccountVO = this.generateBackUserAccountVO(userApplyTag); BUserAccountVO bUserAccountVO = this.generateBackUserAccountVO(userApplyTag);
ResultBody resultBody = backUserAccountService.insertBAccount(bUserAccountVO); ResultBody resultBody = backUserAccountService.insertBAccount(bUserAccountVO);
if (!resultBody.getCode().equals(ResultEnum.SUCCESS.getResultCode())) { if (!resultBody.getCode().equals(ResultEnum.SUCCESS.getResultCode())) {
// 生成账号失败处理
if (resultBody.getCode().equals(ResultEnum.ADD_USER_ACCOUNT_NAME_EXISTS.getResultCode())) {
bUserAccountVO.setAccountNo(bUserAccountVO.getPhoneNum() + "X");
ResultBody retryResultBody = backUserAccountService.insertBAccount(bUserAccountVO);
if (retryResultBody.getCode().equals(ResultEnum.SUCCESS.getResultCode())) {
throw new BizException("审核失败,请联系管理人员!");
}
}
throw new BizException("审核失败,请联系管理人员!"); throw new BizException("审核失败,请联系管理人员!");
} }
// TODO 发送短信通知 log.info("apply cooperation tag, bUserAccountVO:{}", JSONObject.toJSONString(bUserAccountVO));
log.info("bUserAccountVO:{}", JSONObject.toJSONString(bUserAccountVO)); Map<String, String> param = new HashMap<String, String>();
param.put("accountNo", bUserAccountVO.getAccountNo());
param.put("password", bUserAccountVO.getPassWord());
SmsUtil.send("SMS_461986130", JSONObject.toJSONString(param), bUserAccountVO.getPhoneNum());
} else { } else {
// TODO 发送短信通知 SmsUtil.send("SMS_462095054", null, account.getPhoneNum());
cooperationDao.updateApplyTagStatus(id, 2); cooperationDao.updateApplyTagStatus(id, 2);
} }
return ResultBody.success(); return ResultBody.success();
......
package com.mmc.iuav.user.util;
import com.aliyun.dysmsapi20170525.models.SendSmsRequest;
import com.aliyun.dysmsapi20170525.models.SendSmsResponse;
import com.aliyun.teaopenapi.models.Config;
import com.google.gson.Gson;
/**
* @author: zj
* @Date: 2023/7/25 17:00
*/
public class SmsUtil {
public static String ALIYUN_OSS_ACCESS_KEY_ID = "LTAI4FzCpyrA33PegnxWS6XV";
public static String ALIYUN_OSS_ACCESS_KEY_SECRET = "ILuNh3zJfRjg3iARSipMWBKCjglz3u";
public static String CLOUD_JOIN_WEBSITE = "云享飞";
private static String ENDPOINT = "dysmsapi.aliyuncs.com";
public static String send(String TemplateCode, String param, String phone) {
return send(CLOUD_JOIN_WEBSITE, TemplateCode, param, phone);
}
public static String send(String signName, String TemplateCode, String param, String phone) {
Config config = new Config().setAccessKeyId(ALIYUN_OSS_ACCESS_KEY_ID).setAccessKeySecret(ALIYUN_OSS_ACCESS_KEY_SECRET);
config.endpoint = ENDPOINT;
com.aliyun.dysmsapi20170525.Client client = null;
SendSmsRequest request = new SendSmsRequest();
request.setPhoneNumbers(phone);
request.setSignName(signName);
request.setTemplateCode(TemplateCode);
if (param != null) {
request.setTemplateParam(param);
}
SendSmsResponse response = null;
try {
client = new com.aliyun.dysmsapi20170525.Client(config);
response = client.sendSms(request);
} catch (Exception e) {
return e.getMessage();
}
return new Gson().toJson(response.body);
}
}
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
</update> </update>
<delete id="unbindCompanyMember"> <delete id="unbindCompanyMember">
delete from company_member where user_account_id = #{fromUserAccountId} and company_info_id = #{companyInfoId} delete from company_member where user_account_id = #{userAccountId} and company_info_id = #{companyInfoId}
</delete> </delete>
<select id="getCompanyInfoById" resultType="com.mmc.iuav.user.entity.CompanyInfoDO"> <select id="getCompanyInfoById" resultType="com.mmc.iuav.user.entity.CompanyInfoDO">
...@@ -188,7 +188,8 @@ ...@@ -188,7 +188,8 @@
ua.id, ua.id,
ua.user_name, ua.user_name,
ua.nick_name, ua.nick_name,
ua.phone_num ua.phone_num,
ua.user_img
FROM FROM
company_member cm company_member cm
INNER JOIN company_info ci ON cm.company_info_id = ci.id INNER JOIN company_info ci ON cm.company_info_id = ci.id
......
...@@ -367,4 +367,8 @@ ...@@ -367,4 +367,8 @@
FROM company_member cm FROM company_member cm
LEFT JOIN company_info ci ON cm.company_info_id = ci.id LEFT JOIN company_info ci ON cm.company_info_id = ci.id
</select> </select>
<select id="countUserApplyTagByUid" resultType="java.lang.Integer">
select count(*) from user_apply_tag where user_account_id = #{userAccountId}
</select>
</mapper> </mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论