/** * BladeX Commercial License Agreement * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. *

* Use of this software is governed by the Commercial License Agreement * obtained after purchasing a license from BladeX. *

* 1. This software is for development use only under a valid license * from BladeX. *

* 2. Redistribution of this software's source code to any third party * without a commercial license is strictly prohibited. *

* 3. Licensees may copyright their own code but cannot use segments * from this software for such purposes. Copyright of this software * remains with BladeX. *

* Using this software signifies agreement to this License, and the software * must not be used for illegal purposes. *

* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is * not liable for any claims arising from secondary or illegal development. *

* Author: Chill Zhuang (bladejava@qq.com) */ package org.springblade.system.feign; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.AllArgsConstructor; import org.springblade.core.tenant.annotation.NonDS; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.system.pojo.entity.User; import org.springblade.system.pojo.entity.UserInfo; import org.springblade.system.pojo.entity.UserOauth; import org.springblade.system.pojo.enums.UserType; import org.springblade.system.service.IUserService; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import io.swagger.v3.oas.annotations.Hidden; /** * 用户服务Feign实现类 * * @author Chill */ @NonDS @Hidden @RestController @AllArgsConstructor public class UserClient implements IUserClient { private final IUserService service; @Override @GetMapping(USER_BY_ID) public R userInfoById(Long userId) { return R.data(service.getById(userId)); } @Override @GetMapping(USER_BY_ACCOUNT) public R userByAccount(String tenantId, String account) { return R.data(service.userByAccount(tenantId, account)); } @Override @GetMapping(USER_INFO_BY_ID) public R userInfo(Long userId) { return R.data(service.userInfo(userId)); } @Override @GetMapping(USER_INFO_BY_ID_TYPE) public R userInfo(Long userId, String userType) { return R.data(service.userInfo(userId, UserType.of(userType))); } @Override @GetMapping(USER_INFO_BY_TENANT_ID_ACCOUNT) public R userInfo(String tenantId, String account) { return R.data(service.userInfo(tenantId, account)); } @Override @GetMapping(USER_INFO_BY_TENANT_ID_ACCOUNT_TYPE) public R userInfo(String tenantId, String account, String userType) { return R.data(service.userInfo(tenantId, account, UserType.of(userType))); } @Override @GetMapping(USER_INFO_BY_TENANT_ID_PHONE_TYPE) public R userInfoByPhone(String tenantId, String phone, String userType) { return R.data(service.userInfoByPhone(tenantId, phone, UserType.of(userType))); } @Override @PostMapping(USER_AUTH_INFO) public R userAuthInfo(@RequestBody UserOauth userOauth) { return R.data(service.userInfo(userOauth)); } @Override @PostMapping(SAVE_USER) public R saveUser(@RequestBody User user) { return R.data(service.submit(user)); } @Override @PostMapping(REGISTER_USER) public R registerUser(User user) { boolean temp = service.registerUser(user); return temp ? R.data(String.valueOf(user.getId())) : R.fail("注册失败"); } @Override @PostMapping(REMOVE_USER) public R removeUser(String tenantIds) { return R.data(service.remove(Wrappers.query().lambda().in(User::getTenantId, Func.toStrList(tenantIds)))); } }