xin
2025-09-12 a21a8b9b733edd59dbcd3f696d2b69f10c4c3fc9
oying-system/src/main/java/com/oying/modules/rider/service/impl/RiderInfoServiceImpl.java
@@ -12,8 +12,7 @@
import com.oying.modules.rider.utils.RiderSourceHttpUtils;
import com.oying.modules.system.domain.User;
import com.oying.modules.system.service.UserService;
import com.oying.utils.FileUtil;
import com.oying.utils.SecurityUtils;
import com.oying.utils.*;
import lombok.RequiredArgsConstructor;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -22,14 +21,11 @@
import com.oying.modules.rider.mapper.RiderInfoMapper;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.oying.utils.PageUtil;
import java.math.BigDecimal;
import java.util.*;
import java.io.IOException;
import javax.servlet.http.HttpServletResponse;
import com.oying.utils.PageResult;
/**
 * @author pxb
@@ -99,7 +95,7 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void syncRiderSourceInfo(String sourcePlatform) {
    public R syncRiderSourceInfo(String sourcePlatform) {
        Long riderId = SecurityUtils.getCurrentUserId();
        // 添加请求参数
        List<String> phoneList = new ArrayList<>();
@@ -108,14 +104,14 @@
        RiderSourceInfoHttp riderSourceInfoHttp = RiderSourceHttpUtils.getRiderSourceInfoHttp(phoneList, sourcePlatform);
        // 请求成功
        if (riderSourceInfoHttp.getCode().equals(Constants.HTTP_CODE_SUCCESS)) {
            // 检查是否存在该平台的骑手信息
            QueryWrapper<RiderInfo> riderInfoQueryWrapper = new QueryWrapper<>();
            riderInfoQueryWrapper.eq(RiderInfo.COL_RIDER_ID, riderId);
            RiderInfo riderInfo = riderInfoMapper.selectOne(riderInfoQueryWrapper);
            // 获取骑手信息等于空
            if (!riderSourceInfoHttp.getData().isEmpty()) {
                // 单个骑手信息同步只取第一条数据
                RiderSourceInfo infoHttpData = riderSourceInfoHttp.getData().get(0);
                // 检查是否存在该平台的骑手信息
                QueryWrapper<RiderInfo> riderInfoQueryWrapper = new QueryWrapper<>();
                riderInfoQueryWrapper.eq(RiderInfo.COL_RIDER_ID, riderId);
                RiderInfo riderInfo = riderInfoMapper.selectOne(riderInfoQueryWrapper);
                // 如果存在该平台的骑手信息
                if (null == riderInfo) {
                    // 如果不存在,则创建新的骑手三方信息
@@ -165,9 +161,17 @@
                        // 添加变更记录...
                    }
                }
                return R.success(riderInfo, "获取骑手三方数据");
            } else {
                // 修改骑手信息为信息失效
                if(riderInfo != null) {
                    RiderInfo newRiderInfo = new RiderInfo();
                    newRiderInfo.setRiderId(riderId);
                    newRiderInfo.setEnabled(Constants.SOURCE_ENABLED_DFF);
                    updateById(newRiderInfo);
                }
                // 获取骑手三方数据为空,抛出异常
                throw new BadRequestException("获取骑手三方数据为空");
                return R.fail(null, "获取骑手三方数据为空");
            }
        } else {
            // 获取骑手三方数据失败,抛出异常