package com.xinquan.user.api.feign;
|
|
import com.xinquan.common.core.constant.SecurityConstants;
|
import com.xinquan.common.core.constant.ServiceNameConstants;
|
import com.xinquan.common.core.domain.R;
|
import com.xinquan.common.core.utils.page.PageDTO;
|
import com.xinquan.system.api.domain.AppUserCourse;
|
import com.xinquan.system.api.domain.vo.AppUserVO;
|
import com.xinquan.system.api.model.AppCaptchaBody;
|
import com.xinquan.system.api.model.AppLoginUser;
|
import com.xinquan.system.api.model.AppVerifyCellPhoneBody;
|
import com.xinquan.system.api.model.AppWXLoginBody;
|
import com.xinquan.system.api.domain.AppUser;
|
import com.xinquan.system.api.domain.AppUserViewingHistory;
|
import com.xinquan.user.api.domain.dto.AppUserDTO;
|
import com.xinquan.user.api.factory.RemoteAppUserFallbackFactory;
|
import java.util.Collection;
|
import java.util.List;
|
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.cloud.openfeign.FeignClient;
|
import org.springframework.web.bind.annotation.*;
|
|
/**
|
* @author mitao
|
* @date 2024/8/21
|
*/
|
@FeignClient(contextId = "remoteAppUserService", value = ServiceNameConstants.APP_USER_SERVICE, fallbackFactory = RemoteAppUserFallbackFactory.class)
|
public interface RemoteAppUserService {
|
|
@PostMapping("/client/app-user/getCurrentUser")
|
public R<AppUserVO> getCurrentUser();
|
@GetMapping("/client/app-user-course/getPayCourse/{pageCurr}/{pageSize}")
|
R<PageDTO<AppUserCourse>> getPayCourse(@PathVariable("pageCurr")Integer pageCurr, @PathVariable("pageSize")Integer pageSize);
|
@PostMapping("/user/app-user-viewing-history/getCourseStudyHistory")
|
R<AppUserViewingHistory> getCourseStudyHistory(@RequestParam("chapterId") Long chapterId);
|
|
@GetMapping("/client/app-user-course/getUserByCourseId/{courseId}")
|
R<List<AppUser>> getUserByCourseId(@PathVariable("courseId") Long courseId);
|
|
/**
|
* 获取未注销的用户信息
|
*
|
* @param dto
|
* @param source
|
* @return
|
*/
|
@PostMapping("/inner/app-user/getUserByCondition")
|
R<AppUser> getUserByCondition(@RequestBody AppUserDTO dto,
|
@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
|
/**
|
* APP用户注册
|
*
|
* @param appUserDTO
|
* @param source
|
* @return
|
*/
|
@PostMapping("/inner/app-user/registerAppUser")
|
R<AppUser> registerAppUser(@RequestBody AppUserDTO appUserDTO,
|
@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
|
/**
|
* APP微信登录
|
*
|
* @param body
|
* @param source
|
* @return
|
*/
|
@PostMapping("/inner/app-user/wxLogin")
|
R<AppLoginUser> wxLogin(@RequestBody AppWXLoginBody body,
|
@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
|
/**
|
* APP苹果登录
|
*
|
* @param appleId
|
* @param source
|
* @return
|
*/
|
@PostMapping("/inner/app-user/appleLogin")
|
R<AppLoginUser> appleLogin(@RequestParam("appleId") String appleId,
|
@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
|
/**
|
* 验证码登录
|
*
|
* @param body
|
* @param source
|
* @return
|
*/
|
@PostMapping("/inner/app-user/captchaLogin")
|
R<AppLoginUser> appCaptchaLogin(@RequestBody AppCaptchaBody body,
|
@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
|
/**
|
* 微信苹果登录验证手机号码操作
|
*
|
* @param body
|
* @param source
|
* @return
|
*/
|
@PostMapping("/inner/app-user/verifyCellPhone")
|
R<AppLoginUser> verifyCellPhone(@RequestBody AppVerifyCellPhoneBody body,
|
@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
|
/**
|
* 更新用户信息
|
*
|
* @param dto
|
* @param source
|
* @return
|
*/
|
@PostMapping("/inner/app-user/updateAppUser")
|
R<?> updateAppUser(@RequestBody AppUserDTO dto,
|
@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
|
/**
|
* 获取用户列表
|
*
|
* @param appUserIdSet 用户id列表
|
* @param source 请求来源
|
* @return
|
*/
|
@PostMapping("/inner/app-user/getAppUserList")
|
R<List<AppUser>> getAppUserList(@RequestBody Collection<Long> appUserIdSet,
|
@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
|
}
|