MemberFeignClient.java 2.4 KB
Newer Older
H
haoxr 已提交
1
package com.youlai.mall.ums.api;
H
haoxr 已提交
2

3
import com.youlai.common.result.Result;
G
Gadfly 已提交
4
import com.youlai.mall.pms.pojo.vo.ProductHistoryVO;
5
import com.youlai.mall.ums.dto.MemberAuthDTO;
6
import com.youlai.mall.ums.dto.MemberDTO;
郝先瑞 已提交
7
import com.youlai.mall.ums.dto.MemberInfoDTO;
H
haoxr 已提交
8
import org.springframework.cloud.openfeign.FeignClient;
H
haoxr 已提交
9
import org.springframework.web.bind.annotation.*;
H
haoxr 已提交
10

G
Gadfly 已提交
11
@FeignClient(name = "mall-ums", contextId = "member")
H
haoxr 已提交
12
public interface MemberFeignClient {
H
haoxr 已提交
13 14

    /**
15 16 17 18
     * 新增会员
     *
     * @param member
     * @return
H
haoxr 已提交
19
     */
20 21
    @PostMapping("/app-api/v1/members")
    Result<Long> addMember(@RequestBody MemberDTO member);
H
haoxr 已提交
22

G
Gadfly 已提交
23
    /**
24 25 26
     * 获取会员的 openid
     *
     * @return
G
Gadfly 已提交
27
     */
28 29
    @PostMapping("/app-api/v1/members/{memberId}/openid")
    Result<String> getMemberOpenId(@PathVariable Long memberId);
H
haoxr 已提交
30

huawei_code1994's avatar
huawei_code1994 已提交
31
    /**
H
haoxr 已提交
32
     * 扣减会员余额
huawei_code1994's avatar
huawei_code1994 已提交
33
     */
34
    @PutMapping("/app-api/v1/members/current/balances/_deduct")
35 36
    <T> Result<T> deductBalance(@RequestParam Long balances);

G
Gadfly 已提交
37 38 39 40 41
    /**
     * 添加浏览记录
     */
    @PostMapping("/app-api/v1/members/view/history")
    <T> Result<T> addProductViewHistory(@RequestBody ProductHistoryVO product);
42 43 44 45 46 47 48 49

    /**
     * 根据openId获取会员认证信息
     *
     * @param openid
     * @return
     */
    @GetMapping("/app-api/v1/members/openid/{openid}")
50
    Result<MemberAuthDTO> loadUserByOpenId(@PathVariable String openid);
51 52 53 54 55 56 57 58

    /**
     * 根据手机号获取会员认证信息
     *
     * @param mobile
     * @return
     */
    @GetMapping("/app-api/v1/members/mobile/{mobile}")
59
    Result<MemberAuthDTO> loadUserByMobile(@PathVariable String mobile);
60

61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
    /**
     * 「实验室」修改会员余额
     *
     * @param memberId
     * @param balance  余额(单位:分)
     * @return
     */
    @PutMapping("/api/v1/members/{memberId}/balance")
    Result updateBalance(@PathVariable Long memberId, @RequestParam Integer balance);

    /**
     * 「实验室」扣减会员余额
     *
     * @param memberId
     * @param amount   扣减金额(单位:分)
     * @return
     */
    @PutMapping("/api/v1/members/{memberId}/balance/_deduct")
郝先瑞 已提交
79
    Result deductBalance(@PathVariable Long memberId, @RequestParam Long amount);
80 81 82 83 84 85 86

    /**
     * 「实验室」获取会员信息
     *
     * @param memberId
     * @return
     */
郝先瑞 已提交
87 88
    @GetMapping("/api/v1/members/{memberId}/info")
    Result<MemberInfoDTO> getMemberInfo(@PathVariable Long memberId);
89

H
haoxr 已提交
90 91 92
}