日照智慧社区接口服务
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

649 lines
22 KiB

package com.epmet.feign;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.*;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.feign.fallback.EpmetUserOpenFeignClientFallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* 本服务对外开放的API,其他服务通过引用此client调用该服务
*
* @author yinzuomei@elink-cn.com
* @date 2020/6/4 13:09
*/
//@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallbackFactory = EpmetUserOpenFeignClientFallbackFactory.class, url = "localhost:8087")
@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallbackFactory = EpmetUserOpenFeignClientFallbackFactory.class)
public interface EpmetUserOpenFeignClient {
/**
* 从缓存中查询已登录用户的基本信息以及角色等相关信息
*
* @return
*/
@PostMapping(value = "/epmetuser/user/loginuserdetails", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
Result<LoginUserDetailsResultDTO> getLoginUserDetails(@RequestBody LoginUserDetailsFormDTO dto);
/**
* @param formDTO
* @return
* @Author sun
* @Description 根据客户Id和staffId查询一个员工在指定客户下的角色列表
**/
@PostMapping(value = "/epmetuser/staffrole/getcustomerstaffrolelist", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
Result<List<CustomerStaffRoleListResultDTO>> getCustomerStaffRoleList(@RequestBody CustomerStaffRoleListFormDTO formDTO);
/**
* 根据staffId查询人员拥有的所有角色信息
*
* @param staffId
* @return com.epmet.commons.tools.utils.Result<java.util.List < com.epmet.dto.result.CustomerStaffRoleResultDTO>>
* @author zhaoqifeng
* @date 2020/6/2 16:11
*/
@PostMapping("/epmetuser/staffrole/staffroles/{staffId}")
Result<List<CustomerStaffRoleResultDTO>> getStaffRoles(@PathVariable("staffId") String staffId);
/**
* @param staffId
* @return
* @Author sun
* @Description 根据staffId查询工作人员基本信息
**/
@PostMapping("/epmetuser/customerstaff/getcustomerstaff/{staffId}")
Result<CustomerStaffDTO> getCustomerStaff(@PathVariable("staffId") String staffId);
/**
* @param formDTO
* @Description 根据userId获取customerId
* @author zxc
*/
@PostMapping(value = "/epmetuser/user/getcustomeridbyuserid", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
Result<TagCustomerResultDTO> getCustomerIdByUserId(@RequestBody TagCustomerFormDTO formDTO);
/**
* 根据角色id列表批量查询角色信息
* @param form
* @return
*/
@PostMapping(value = "/epmetuser/govstaffrole/getbyids", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
Result<List<GovStaffRoleResultDTO>> getByIds(@RequestBody GovStaffRoleFormDTO form);
/**
* @return com.epmet.commons.tools.utils.Result
* @param staffResetPwFormDTO
* @author yinzuomei
* @description 工作端,修改工作人员密码
* @Date 2020/7/1 10:37
**/
@PostMapping(value = "/epmetuser/customerstaff/resetstaffpassword", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
Result resetStaffPassword(@RequestBody StaffResetPwFormDTO staffResetPwFormDTO);
/**
* 根据客户ID和角色key查询角色信息
* @param form
* @return
*/
@PostMapping("/epmetuser/staffrole/roleofcustomer")
Result<GovStaffRoleDTO> getRoleOfCustomer(@RequestBody CustomerRoleFormDTO form);
/**
* 小程序登陆新增或更新微信用户信息
* @author sun
*/
@PostMapping(value = "epmetuser/user/savewxuser")
Result<UserDTO> saveWxUser(@RequestBody WxUserFormDTO wxUserFormDTO);
/**
* @param openId
* @return com.epmet.commons.tools.utils.Result<com.epmet.dto.result.LatestStaffWechatLoginDTO>
* @Author sun
* @Description 获取当前微信上次登录的账号信息
**/
@GetMapping(value = "epmetuser/staffagencyvisited/getlatest/{openId}")
Result<StaffLatestAgencyResultDTO> getLatestStaffWechatLoginRecord(@PathVariable("openId") String openId);
/**
* @param staffWechatFormDTO
* @return com.epmet.commons.tools.utils.Result
* @Author sun
* @Description 手机验证码登录时记录微信openId与当前用户的关系
**/
@PostMapping(value = "epmetuser/staffwechat/savestaffwechat", consumes = MediaType.APPLICATION_JSON_VALUE)
Result saveStaffWechat(@RequestBody StaffWechatFormDTO staffWechatFormDTO);
/**
* @param staffLoginHistoryFormDTO
* @return com.epmet.commons.tools.utils.Result
* @Author sun
* @Description 保存登录日志
**/
@PostMapping(value = "epmetuser/staffagencyvisited/saveStaffLoginRecord", consumes = MediaType.APPLICATION_JSON_VALUE)
Result saveStaffLoginRecord(StaffLoginAgencyRecordFormDTO staffLoginHistoryFormDTO);
/**
* @Author sun
* @Description 保存登录日志
*/
@PostMapping("/epmetuser/staffrole/staffroles")
Result<List<GovStaffRoleDTO>> getRolesOfStaff(StaffRoleFormDTO staffRoleFormDTO);
/**
* @param customerStaffFormDTO
* @return
* @Author sun
* @Description 根据手机号+客户id获取工作人员基本信息
**/
@PostMapping(value = "epmetuser/customerstaff/getcustomerstaffinfo", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<CustomerStaffDTO> getCustomerStaffInfo(@RequestBody CustomerStaffFormDTO customerStaffFormDTO);
/**
* @param userIdList
* @return com.epmet.commons.tools.utils.Result<java.util.List < com.epmet.dto.result.UserBaseInfoResultDTO>>
* @author yinzuomei
* @description 传入用户id集合,返回用户的基本信息(包含微信基本信息)
* @Date 2020/7/22 9:30
**/
@PostMapping("/epmetuser/userbaseinfo/queryuserbaseinfo")
Result<List<UserBaseInfoResultDTO>> queryUserBaseInfo(@RequestBody List<String> userIdList);
/**
* 根据用户ID,查询用户所属角色: 多种身份
*
* @param userId
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.dto.result.UserRoleResultDTO>>
* @Author zhangyong
* @Date 14:13 2020-07-23
**/
@GetMapping(value = "epmetuser/userrole/getuserroleinfobyuserid/{userId}")
Result<List<UserRoleResultDTO>> getUserRoleInfoByUserId(@PathVariable("userId") String userId);
/**
* 同步-居民基础信息、用户微信信息
*
* @param formDTO
* @return com.epmet.commons.tools.utils.Result
* @Author zhangyong
* @Date 14:37 2020-07-23
**/
@PostMapping("epmetuser/user/updateUserBaseAndWxUserInfo")
Result updateUserBaseAndWxUserInfo(@RequestBody WxUserInfoFormDTO formDTO);
/**
* @Description 新增或保存用户基本信息
* @param baseInfo
* @return
* @author wangc
* @date 2020.07.23 13:31
**/
@PostMapping("/epmetuser/userbaseinfo/saveuserbaseinfo")
Result saveUserBaseInfo(@RequestBody UserBaseInfoDTO baseInfo);
/**
* @Description 查询客户下所有用户包括陌生人
* @param param
* @return
* @author wangc
* @date 2020.07.25 16:15
**/
@PostMapping("/epmetuser/gridlatest/customeruserlist")
Result<List<CustomerUser4PointResultDTO>> customerUserList(@RequestBody CustomerUserFormDTO param);
/**
* @Description 查询用户详情信息
* @param param
* @return
* @author wangc
* @date 2020.07.27 01:34
**/
@PostMapping("/epmetuser/userbaseinfo/customeruserdetail")
Result<CustomerUserDetailResultDTO> customerUserDetail(@RequestBody IssueInitiatorFormDTO param);
/**
* @Description 得到工组人员的头像、名称、所属机关名称
* @param userId
* @return
* @author wangc
* @date 2020.07.27 14:45
**/
@PostMapping("/epmetuser/customerstaff/staffmsg")
Result<StaffEtAgencyResultDTO> staffMsg(@RequestBody IssueInitiatorFormDTO userId);
/**
* @param formDTO
* @return
* @Author sun
* @Description 根据客户ID、手机号查询政府端工作人员基本信息,校验用户是否存在
**/
@GetMapping(value = "epmetuser/customerstaff/getCustsomerStaffByIdAndPhone")
Result<List<CustomerStaffDTO>> getCustsomerStaffByIdAndPhone(@RequestBody ThirdCustomerStaffFormDTO formDTO);
/**
* 获取用户基础信息
*
* @param tokenDTO
* @return com.epmet.commons.tools.utils.Result<com.epmet.dto.result.ResiUserBaseInfoResultDTO>
* @Author zhangyong 直接取的 user_base_info
* @Date 14:10 2020-07-30
**/
@PostMapping("/epmetuser/userbaseinfo/selectuserbaseinfo")
Result<ResiUserBaseInfoResultDTO> selectUserBaseInfo(@RequestBody TokenDto tokenDTO);
/**
* @Description 认证志愿者时保存/修改用户基础信息
* @param param
* @return
* @author wangc
* @date 2020.07.31 09:38
**/
@PostMapping("/epmetuser/userbaseinfo/volunteerbaseinfo")
Result volunteerBaseInfo(@RequestBody ResiVolunteerAuthenticateFormDTO param);
/**
* @return
* @param formDTO
* @Author sun
* @Description 单客户-获取用户最近访问网格
* @Date 2020/8/3
**/
@PostMapping(value = "epmetuser/gridlatest/latestgridinfo")
Result<LatestGridInfoResultDTO> latestGridInfo(@RequestBody LatestGridInfoFormDTO formDTO);
/**
* @Description 查询工作人员的信息
* @param formDTO
* @author zxc
* @date 2020/8/13 1:37 下午
*/
@PostMapping("epmetuser/customerstaff/getstaffinfolist")
Result<List<StaffSinGridResultDTO>> getStaffInfoList(@RequestBody UserIdsFormDTO formDTO);
/**
* 修改根管理员信息
* @author zhaoqifeng
* @date 2020/8/19 14:31
* @param formDTO
* @return com.epmet.commons.tools.utils.Result
*/
@PostMapping("epmetuser/customerstaff/updaterootmanage")
Result updateRootManage(@RequestBody UpdateRootManageFormDTO formDTO);
/**
* @Description 查找工作人员的信息 - 对外开放接口
* @param staffParam
* @return
* @author wangc
* @date 2020.08.17 10:30
**/
@PostMapping("epmetuser/customerstaff/extstaffinfo")
Result<ExtStaffInfoResultDTO> extStaffInfo(@RequestBody CommonStaffIdFormDTO staffParam);
/**
* @Description 查询当前用户信息 - 对外接口
* @param param
* @return
* @author wangc
* @date 2020.08.21 17:16
**/
@PostMapping("/epmetuser/userbaseinfo/extuserinfo")
Result<ExtUserInfoResultDTO> extUserInfo( @RequestBody CommonUserIdFormDTO param);
/**
* 更改角色所属组织
* @author zhaoqifeng
* @date 2020/8/31 10:36
* @param formDTO
* @return com.epmet.commons.tools.utils.Result
*/
@PostMapping("epmetuser/staffrole/changeroleorg")
Result changeRoleOrg(@RequestBody StaffRoleDTO formDTO);
/**
* @Author sun
* @Description 居民端-查询用户角色key列表
**/
@PostMapping("epmetuser/role/getuserrolekeylist")
Result<List<String>> getUserRoleKeyList(@RequestBody GetRoleKeyListFormDTO dto);
/**
* @Author sun
* @Description 居民端-查询用户基础信息 返回值只有userId 、openId
**/
@PostMapping(value = "epmetuser/user/getuserbasicinfo")
Result<UserBasicInfo> getUserBasicInfo(@RequestBody UserBasicInfoFormDTO formDTO);
/**
* @Author sun
* @Description 工作端-查询用户基础信息
**/
@PostMapping(value = "epmetuser/staffagencyvisited/getstaffbasicinfo")
Result<StaffBasicInfo> getStaffBasicInfo(@RequestBody StaffBasicInfoFormDTO formDTO);
/**
* 修改个人信息
* @author zhaoqifeng
* @date 2020/11/3 10:28
* @param formDTO
* @return com.epmet.commons.tools.utils.Result
*/
@PostMapping("/epmetuser/userresiinfo/edituserinfo")
Result editUserInfo(@RequestBody EditInfoFormDTO formDTO);
/**
* 修改手机号-获取验证码
* @author zhaoqifeng
* @date 2020/11/10 10:51
* @param formDTO
* @return com.epmet.commons.tools.utils.Result
*/
@PostMapping("/epmetuser/userresiinfo/sendcode")
Result sendCode(@RequestBody SendCodeFormDTO formDTO);
/**
* 修改手机号
* @author zhaoqifeng
* @date 2020/11/11 8:59
* @param formDTO
* @return com.epmet.commons.tools.utils.Result
*/
@PostMapping("/epmetuser/userresiinfo/editmobile")
Result editMobile(@RequestBody EditMobileFormDTO formDTO);
/**
* @Description 查询已经点亮的徽章
* @Param userBadgeListFormDTO
* @author zxc
* @date 2020/11/3 1:33 下午
*/
@PostMapping("/epmetuser/more/badge/badgelist")
Result<List<UserBadgeListResultDTO>> selectBadgeList(@RequestBody UserBadgeListFormDTO userBadgeListFormDTO);
/**
* @Description 个人中心-获取徽章可操作列表(点亮,取消,认证)
* @Param operListFormDTO
* @author zxc
* @date 2020/11/3 4:28 下午
*/
@PostMapping("/epmetuser/more/badge/badgeoperlist")
Result<List<UserOperListResultDTO>> selectOperList(@RequestBody UserOperListFormDTO userOperListFormDTO);
/**
* @Description 徽章认证提交
* @Param certificationAddFormDTO
* @author zxc
* @date 2020/11/4 4:30 下午
*/
@PostMapping("/epmetuser/more/badge/authbadgerecord")
Result authBadgeRecord(@RequestBody CertificationAddFormDTO certificationAddFormDTO);
/**
* @Description 个人中心-取消/点亮徽章
* @Param openedOrClosedFormDTO
* @author zxc
* @date 2020/11/5 9:23 上午
*/
@PostMapping("/epmetuser/more/badge/openedorclosed")
Result openedOrClosed(@RequestBody OpenedOrClosedFormDTO openedOrClosedFormDTO);
/**
* 根据staffId查询用户基本信息
* @author sun
*/
@PostMapping("/epmetuser/customerstaff/getstaffbasicinfo")
Result<BasicInfoResultDTO> getStaffBasicInfo(@RequestBody StaffBasicInfoFromDTO fromDTO);
/**
* @Description 根据角色key查询具有该key的所有角色列表
* @return
* @author wxz
* @date 2020.11.17 16:20
*/
@PostMapping("/epmetuser/govstaffrole/list-roles-by-rolekey/{role-key}")
Result<List<GovStaffRoleResultDTO>> listRolesByRoleKey(@PathVariable("role-key") String roleKey);
/**
* 根据userId集合查询用户注册信息
* @author sun
*/
@PostMapping("/epmetuser/userresiinfo/getuserresiinfolist")
Result<List<UserResiInfoResultDTO>> getUserResiInfoList(@RequestBody UserResiInfoListFormDTO userResiInfoListFormDTO);
/**
* @Description 个人中心-我的建议列表
* @param dto
* @return com.epmet.commons.tools.utils.Result<com.epmet.dto.result.MyAdviceListResultDTO>
* @Author liushaowen
* @Date 2020/11/11 10:35
*/
@PostMapping("/epmetuser/useradvice/myadvicelist")
Result<List<MyAdviceListResultDTO>> myAdviceList(@RequestBody MyAdviceListFormDTO dto);
/**
* @Description 个人中心-提交建议
* @param dto
* @return com.epmet.commons.tools.utils.Result
* @Author liushaowen
* @Date 2020/11/11 10:36
*/
@PostMapping("/epmetuser/useradvice/submitadvice")
Result submitAdvice(@RequestBody SubmitAdviceFormDTO dto);
/**
* @Description 供其他服务调用 查询指定用户需要显示的徽章信息(缓存补偿)
* @param param
* @return com.epmet.commons.tools.utils.Result<java.util.Map<java.lang.String,java.util.List<com.epmet.dto.form.UserBadgeUnitFormDTO>>>
* @author wangc
* @date 2020.11.10 15:59
*/
@PostMapping("/epmetuser/badge/usershowbadge")
Result<Map<String, List<UserBadgeUnitFormDTO>>> userShowBadge(@RequestBody UserGroupFormDTO param);
/**
* @param gridIdList
* @author yinzuomei
* @description 根据网格id, 查询每个网格有多少个徽章申请
* @Date 2020/11/12 15:41
**/
@PostMapping(value = "/epmetuser/badge/querygridauditingbadgecount", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<GridAuditingBadgeCountResultDTO>> queryGridAuditingBadgeCount(@RequestBody List<String> gridIdList);
/**
* @param userId
* @author yinzuomei
* @description 党员认证成功后 添加userBadge记录到数据库
* @Date 2020/11/12 15:41
**/
@PostMapping(value = "/epmetuser/more/badge/initbadge")
Result<Boolean> initBadge(@RequestParam String userId);
@PostMapping(value = "epmetuser/staffrole/specificrolesstaffs", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<String>> specificRolesStaffs(RolesUsersListFormDTO rolesUsersListFormDTO);
/**
* 为客户初始化政府端工作人员角色
* @param customerId
* @return
*/
@PostMapping("/epmetuser/staffrole/initrolesforcustomer/{customerId}")
Result initGovStaffRolesForCustomer(@PathVariable String customerId);
/**
* @Description 新增或更新用户信息
* @Param formDTO
* @author zxc
* @date 2021/1/19 上午10:35
*/
@PostMapping(value = "/epmetuser/user/saveuserinfo")
Result<UserDTO> saveUserInfo(@RequestBody UserInfoFormDTO formDTO);
/**
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.dto.result.RoleInfoResultDTO>>
* @param customerId
* @author yinzuomei
* @description 获取当前客户下-工作端角色列表
* @Date 2021/3/29 15:35
**/
@GetMapping(value = "/epmetuser/govstaffrole/querycustomergovrolelist/{customerId}")
Result<List<RoleInfoResultDTO>> queryCustomerGovRoleList(@PathVariable("customerId")String customerId);
/**
* @return UserRoleResultDTO
* @Description 根据用户Id、来源app、客户Id查询用户角色
* @Param userRoleFormDTO
* @Author sun
**/
@PostMapping(value = "/epmetuser/userrole/getuserroleinfo")
Result<List<UserRoleResultDTO>> getUserRoleInfo(@RequestBody UserRoleFormDTO userRoleFormDTO);
/**
* @Author sun
* @Description 根据staffId集合查询工作人员基础信息
**/
@PostMapping(value = "/epmetuser/customerstaff/getcustomerstafflist")
Result<CustomerStaffListResultDTO> getCustomerStaffList(@RequestBody List<String> staffIdList);
/**
* @Description 查询此人是不是党员,true是党员,false不是党员
* @Param userId
* @author zxc
* @date 2021/4/19 下午4:34
*/
@GetMapping(value = "/epmetuser/userrole/ispartymember")
Result<Boolean> selectIsPartyMemberByUserId(@RequestParam("userId") String userId);
/**
* @Description 查询用户徽章
* @Param formDTO
* @author zxc
* @date 2021/4/22 下午4:17
*/
@PostMapping("/epmetuser/badge/userbadges")
Result<List<UserBadgesResultDTO>> userBadges(@RequestBody UserBadgesFormDTO formDTO);
/**
* 根据用户ID获取工作人员基本信息
*
* @param formDTO
* @return com.epmet.commons.tools.utils.Result<com.epmet.dto.CustomerStaffDTO>
* @author zhaoqifeng
* @date 2020/4/22 10:05
**/
@PostMapping(value = "/epmetuser/customerstaff/getstaffinfobyuserid")
Result<CustomerStaffDTO> getCustomerStaffInfoByUserId(@RequestBody CustomerStaffDTO formDTO);
/**
* @Description 通用批量查询
* @return
* @author wxz
* @date 2021.06.08 10:54
*/
@PostMapping(value = "/epmetuser/customerstaff/list")
Result<List<CustomerStaffDTO>> list(CustomerStaffFormDTO input);
/**
* @Description 查询网格员角色
* @Param forms
* @author zxc
* @date 2021/6/8 4:42 下午
*/
@PostMapping("/epmetuser/staffrole/staffgridrole")
Result<List<GridStaffResultDTO>> staffGridRole(@RequestBody List<GridStaffResultDTO> forms);
/**
* @Description 查询经纬度
* @Param userIds
* @author zxc
* @date 2021/6/9 10:40 上午
*/
@PostMapping("/epmetuser/staffpatrol/getll")
Result<UserNameAndLLResultDTO> selectll(@RequestBody List<String> userIds);
/**
* @Description 002、查看巡查记录
* @Param formDTO
* @author zxc
* @date 2021/6/7 3:25 下午
*/
@PostMapping("/epmetuser/staffpatrol/recordlist")
Result<List<RecordListResultDTO>> recordList(@RequestBody RecordListFormDTO formDTO);
/**
* @Description 003、巡查轨迹
* @Param formDTO
* @author zxc
* @date 2021/6/7 3:35 下午
*/
@PostMapping("/epmetuser/staffpatrol/patroltrack")
Result<List<PatrolTrackResultDTO>> patrolTrack(@RequestBody PatrolTrackFormDTO formDTO);
/**
* 结束巡查 定时任务
* @author zhaoqifeng
* @date 2021/7/12 17:32
* @param formDTO
* @return com.epmet.commons.tools.utils.Result
*/
@PostMapping("/epmetuser/staffpatrol/endpatrolJob")
Result endPatrolJob(@RequestBody StartPatrolFormDTO formDTO);
/**
* @Description 根据徽章查询用户列表
* @return
* @author wxz
* @date 2021.08.02 10:27
*/
@PostMapping("/epmetuser/badge/list-users-by-badge")
Result<List<ListUserByBadgeResultDTO>> listUsersByBadge(ListUserByBadgeFormDTO input);
/**
* 根据角色,查询里面的人,去重
*
* @param formDTO
* @return com.epmet.commons.tools.utils.Result<java.util.Set<java.lang.String>>
* @author yinzuomei
* @date 2021/8/19 11:09 上午
*/
@PostMapping("/epmetuser/staffrole/queryRoleStaffIds")
Result<Set<String>> queryRoleStaffIds(@RequestBody RoleStaffIdFormDTO formDTO);
/**
* @Description 查询巡查人数
* @Param formDTO
* @author zxc
* @date 2021/8/20 10:21 上午
*/
@PostMapping("/epmetuser/statsstaffpatrolrecorddaily/patrolcount")
Result<PatrolCountResultDTO> patrolCount(@RequestBody PatrolCountFormDTO formDTO);
/**
* @Description 查询巡查次数和时长
* @Param agencyId
* @author zxc
* @date 2021/8/25 3:59 下午
*/
@PostMapping("/epmetuser/statsstaffpatrolrecorddaily/patrolinfo")
Result<List<PatrolYuShanResultDTO>> patrolInfo(@RequestParam("agencyId")String agencyId);
/**
* 根据userId查询用户所属终端,是居民端的用户还是工作人员,还是运营人员
*
* @param userId
* @return
* @author yinzuomei
* @date 2021/9/10 8:56 上午
*/
@GetMapping(value = "/epmetuser/user/queryUserClient/{userId}")
Result<UserDTO> queryUserClient(@PathVariable("userId") String userId);
}