This commit is contained in:
PQZ 2025-04-10 17:01:47 +08:00
parent 5dbab3d69c
commit 4589aaa0db
8 changed files with 75 additions and 14 deletions

View File

@ -8,6 +8,7 @@ import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.member.domain.MemberApply;
import com.ruoyi.member.domain.MemberUser;
import com.ruoyi.member.service.IMemberApplyService;
import com.ruoyi.member.vo.MemberApplyVO;
import org.springframework.beans.factory.annotation.Autowired;
@ -49,21 +50,22 @@ public class MemberApplyController extends BaseController {
}
/**
* 手机端发起通告主认证申请
* 提交通告主认证
*
* @param memberApply {@link MemberApply}
* @param memberApply {@link MemberUser}
* @return com.ruoyi.common.core.domain.AjaxResult
* @author PQZ
* @date 10:29 2025/3/29
* @date 14:49 2025/4/10
**/
@Log(title = "手机端发起通告主认证申请", businessType = BusinessType.EXPORT)
@Log(title = "提交通告主认证申请", businessType = BusinessType.INSERT)
@PostMapping("/toApply")
public AjaxResult toApply(@RequestBody MemberApply memberApply) {
memberApplyService.save(memberApply);
memberApplyService.toApply(memberApply);
return success();
}
/**
* 导出通告主认证申请列表
*/

View File

@ -117,7 +117,6 @@ public class MemberUserController extends BaseController {
util.exportExcel(response, list, "会员数据");
}
/**
* 新增会员
*/

View File

@ -70,5 +70,6 @@ public class MemberApply extends DlBaseEntity
/** 审核备注 */
@Excel(name = "审核备注")
private String approvalRemark;
private String applyJson;
}

View File

@ -73,6 +73,7 @@ public class MemberUser extends DlBaseEntity
@Excel(name = "博主-剩余积分")
private Long bpoints;
public MemberUser (String userType, SysUser user,Integer addNotice){
this.userType = userType;
this.userId = user.getUserId();

View File

@ -33,4 +33,12 @@ public interface IMemberApplyService extends IService<MemberApply> {
* @date 11:50 2025/3/18
**/
void checkMemberApply(MemberApplyVO memberApply);
/**
* 通告主申请
* @author PQZ
* @date 15:25 2025/4/10
* @param memberApply TODO
**/
void toApply(MemberApply memberApply);
}

View File

@ -75,4 +75,5 @@ public interface IMemberUserService extends IService<MemberUser> {
* @param memberUser {@link MemberUserVO}
**/
void uniSaveMember(MemberUserVO memberUser);
}

View File

@ -3,15 +3,20 @@ package com.ruoyi.member.service.impl;
import java.util.Date;
import java.util.List;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.base.service.IBaseCityService;
import com.ruoyi.common.core.domain.DlBaseEntity;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.member.domain.MemberUser;
import com.ruoyi.member.service.IMemberUserService;
import com.ruoyi.member.vo.MemberApplyVO;
import lombok.SneakyThrows;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@ -24,17 +29,18 @@ import javax.annotation.Resource;
/**
* 通告主认证申请Service业务层处理
*
*
* @author pqz
* @date 2025-03-17
*/
@Service
public class MemberApplyServiceImpl extends ServiceImpl<MemberApplyMapper,MemberApply> implements IMemberApplyService
{
public class MemberApplyServiceImpl extends ServiceImpl<MemberApplyMapper, MemberApply> implements IMemberApplyService {
@Autowired
private MemberApplyMapper memberApplyMapper;
@Resource
private IMemberUserService memberUserService;
@Resource
private IBaseCityService cityService;
/**
@ -48,7 +54,7 @@ public class MemberApplyServiceImpl extends ServiceImpl<MemberApplyMapper,Member
**/
@Override
public IPage<MemberApplyVO> queryListPage(MemberApplyVO memberApply, Page<MemberApply> page) {
return memberApplyMapper.queryListPage(memberApply,page);
return memberApplyMapper.queryListPage(memberApply, page);
}
/**
@ -70,10 +76,49 @@ public class MemberApplyServiceImpl extends ServiceImpl<MemberApplyMapper,Member
updateById(memberApply);
//通过userId更新会员表身份类型
LambdaUpdateWrapper<MemberUser> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
lambdaUpdateWrapper.eq(MemberUser::getUserId,memberApply.getUserId())
.eq(DlBaseEntity::getDelFlag,0)
.eq(MemberUser::getUserType,"01")
.set(MemberUser::getIdentityType,memberApply.getIdentityType());
lambdaUpdateWrapper.eq(MemberUser::getUserId, memberApply.getUserId())
.eq(DlBaseEntity::getDelFlag, 0)
.eq(MemberUser::getUserType, "01")
.set(MemberUser::getIdentityType, memberApply.getIdentityType());
memberUserService.update(lambdaUpdateWrapper);
}
/**
* 通告主申请
*
* @param memberApply {@link MemberApply}
* @author PQZ
* @date 15:25 2025/4/10
**/
@Override
@SneakyThrows
public void toApply(MemberApply memberApply) {
LoginUser loginUser = SecurityUtils.getLoginUser();
checkApply(loginUser.getUserId());
JSONObject jsonObject = JSONObject.parseObject(memberApply.getApplyJson());
//地址名称转换
Long corpCityCode = jsonObject.getLong("corpCityCode");
//地址名称转换
Long personCityCode = jsonObject.getLong("personCityCode");
jsonObject.put("corpCityName",cityService.getCityName(corpCityCode));
jsonObject.put("personCityName",cityService.getCityName(personCityCode));
String jsonString = jsonObject.toJSONString();
memberApply.setUserId(loginUser.getUserId());
memberApply.setNickname(loginUser.getUser().getNickName());
memberApply.setApplyJson(jsonString);
save(memberApply);
}
private void checkApply(Long userId) throws Exception {
LambdaQueryWrapper<MemberApply> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(MemberApply::getUserId,userId).eq(DlBaseEntity::getDelFlag,0)
.eq(MemberApply::getApprovalStatus,'0');
List<MemberApply> list = list(lambdaQueryWrapper);
if (!list.isEmpty()) {
throw new Exception("您有未审批通过的认证单,请耐心等待");
}
}
}

View File

@ -1,17 +1,21 @@
package com.ruoyi.member.service.impl;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.base.service.IBaseCityService;
import com.ruoyi.busi.service.IBusiEvaluateService;
import com.ruoyi.busi.service.IBusiNoticeService;
import com.ruoyi.common.config.DlRightsConfig;
import com.ruoyi.common.config.WxAppConfig;
import com.ruoyi.common.core.domain.DlBaseEntity;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.constant.DictConstants;
import com.ruoyi.framework.web.service.TokenService;
import com.ruoyi.member.domain.MemberUser;