1
dd
2025-10-27 11ffae1ecbe3d26863fd51262d7ffb043eb089da
ruoyi-admin/src/main/java/com/ruoyi/im/ImApiController.java
@@ -19,8 +19,10 @@
import com.ruoyi.system.domain.out.UserOut;
import com.ruoyi.system.domain.out.UserTeamAndPositionOut;
import com.ruoyi.system.domain.vo.UserAccountUpdateVo;
import com.ruoyi.system.mapper.SystemConfigurationMapper;
import com.ruoyi.system.service.GroupWelcomeConfigService;
import com.ruoyi.system.service.IpBlacklistService;
import com.ruoyi.system.service.PaymentRecordService;
import com.ruoyi.system.service.UserAccountService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -75,11 +77,12 @@
    @Autowired
    InsuranceFeatureService insuranceFeatureService;
    @Autowired
    private SystemConfigurationMapper systemConfigurationMapper;
    @Value("${file.upload-dir}")
    private String uploadDir;
    @Value("${file.upload-prefix}")
    private String prefix;
@@ -90,6 +93,9 @@
    @PostMapping("/register")
    public Result register(@Validated RegisterDto dto){
        try {
            if(StringUtils.isEmpty(dto.getNikeName())){
                return Result.error("昵称不能为空!");
            }
            // 验证手机号
            boolean isPhoneValid = ValidatorUtil.isValidPhone(dto.getAccount());
            if(!isPhoneValid){
@@ -181,6 +187,10 @@
    public Result uploadFile(@RequestParam("file") MultipartFile file,@RequestParam("accountId") String accountId) {
        try {
            SystemConfiguration systemConfiguration = systemConfigurationMapper.selectById(1);
            if(ObjectUtil.isEmpty(systemConfiguration)){
                return Result.error("文件上传失败!");
            }
            // 1. 验证文件类型
            String contentType = file.getContentType();
            if (contentType == null ||
@@ -210,7 +220,7 @@
            setPermissions(filePath.toFile(), "rw-r--r--");
            // 5. 调用网易云信API更新头像
            fileName = prefix+"/"+fileName;
            fileName = systemConfiguration.getImgUrl()+"/"+fileName;
            UpdateUserBusinessDto dto = new UpdateUserBusinessDto();
            dto.setAvatar(fileName);
            Map<String, Object> result = imApiServcie.updateUserAvatar(accountId,dto);
@@ -401,6 +411,7 @@
            long count = userPolicyService.count(new LambdaQueryWrapper<>(UserPolicy.class)
                    .eq(UserPolicy::getUserId, userAccount.getId())
                    .eq(UserPolicy::getProductId,f.getId())
                    .eq(UserPolicy::getPayStatus,2)
                    .ne(UserPolicy::getApprovalStatus,2)
            );
            if(count > 0){