package com.ruoyi.system.api.feignClient; import com.ruoyi.common.core.constant.SecurityConstants; import com.ruoyi.common.core.constant.ServiceNameConstants; import com.ruoyi.common.core.domain.R; import com.ruoyi.system.api.domain.CustomConfig; import com.ruoyi.system.api.domain.DelayTask; import com.ruoyi.system.api.domain.SysRole; import com.ruoyi.system.api.domain.SysUser; import com.ruoyi.system.api.domain.WebsocketMessageDTO; import com.ruoyi.system.api.domain.dto.MgtAfterSaleSettingDTO; import com.ruoyi.system.api.factory.SysUserFallbackFactory; import java.util.List; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestHeader; @FeignClient(contextId = "sysUserClient", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = SysUserFallbackFactory.class) public interface SysUserClient { @PostMapping("/user/getSysUser") R getSysUser(Long userId); @PostMapping("/user/updateSysUser") R updateSysUser(@RequestBody SysUser sysUser); @PostMapping("/user/getUserList") R> getUserList(@RequestBody List userIds); @PostMapping("/user/isAdmin") R isAdmin(Long userId); @PostMapping("/user/updateUser") R updateUser(@RequestBody SysUser sysUser); /** * 通过用户id查询角色对象 * @param userId * @return */ @GetMapping("/user/queryRoleByUserId/{userId}") R queryRoleByUserId(@PathVariable("userId") Long userId); /** * 通过角色id查询角色对象 * @param roleId * @return */ @GetMapping("/user/queryRoleByRoleId/{roleId}") R queryRoleByRoleId(@PathVariable("roleId") Long roleId); /** * 通过手机号集合查询用户 * @param phoneList * @return */ @PostMapping("/user/queryUserByPhoneList") R> queryUserByPhoneList(@RequestBody List phoneList); /** * 通过手机号查询用户 * @param phone * @return */ @PostMapping("/user/queryUserByPhone") R queryUserByPhone(@RequestBody String phone); @PostMapping("/user/queryUserByPhone1") R queryUserByPhone1(@RequestBody String phone); /** * 通过账号查询用户 * @param userName * @return */ @PostMapping("/user/queryUserByUserName") R queryUserByUserName(@RequestBody String userName); /** * 延时任务控制 */ @PostMapping("/delay-task/getDelayTask") public R getDelayTask(@RequestBody String key, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @PostMapping("/delay-task/addDelayTask") public R addDelayTask(@RequestBody DelayTask delayTask, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @PostMapping("/delay-task/deleteDelayTask") public R deleteDelayTask(@RequestBody String key, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @GetMapping("/custom-config/{configId}") R getconfig(@PathVariable("configId") String configId); @PostMapping("/user/list-by-name") R> getUserListByName(@RequestBody SysUser sysUser, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @GetMapping("/custom-config/get-after-sale-setting") R getAfterSaleSetting(); @PostMapping("/websocket/push-by-client-type") R pushByClientType(@RequestBody WebsocketMessageDTO dto, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @GetMapping("/websocket/push-all/{message}") R pushAll(@PathVariable("message") String message, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); /** * 批量向指定用户推送消息 * @param dto * @return */ @PostMapping("/websocket/push-batch") R pushBatch(@RequestBody WebsocketMessageDTO dto, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); }