package com.hz.his.feign.service.phis;

import com.hx.resultTool.Result;
import com.hz.his.dto.PageDto;
import com.hz.his.dto.card.CardDto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 这里这个name 需要填写 请求的服务提供者的注册到nacos Server上面的服务名,path 是请求接口前缀
 */
@FeignClient(name="phis-provider",path = "/p-his-data",contextId = "card")
public interface SCardItemService {

    /**
     * 获取卡项详情
     * @param cardId 卡项标识
     * @return Result
     */
    @PostMapping(value = "/cardItem/detail")
    Result getCardItemDetail(@RequestParam("cardId") String cardId);

    /**
     * 获取卡项门店价格
     * @param cardId 卡项标识
     * @param shopId 门店id
     * @return Result
     */
    @PostMapping(value = "/cardItem/getShopPrice")
    Result getCardItemShopPrice(@RequestParam("cardId") String cardId, @RequestParam("shopId") String shopId);


    /**
     * 根据子订单号获取卡项使用详情
     * @param orderItemNo
     */
    @PostMapping(value = "/cardItem/used/orderItemNo")
    Result getCardUsed(@RequestParam("orderItemNo") String orderItemNo);

    /**
     * 获取卡项列表
     * @return Result
     */
    @PostMapping(value = "/cardItem/page/list")
    Result getCardList(@RequestBody PageDto pageDto);

    /**
     * 获取卡项更新列表
     * @return Result
     */
    @PostMapping(value = "/cardItem/update/list")
    Result getUpdateCardItem(@RequestBody CardDto cardDto);
}