package com.primeton.dsp.dataservice.service;
import com.primeton.dsp.dataservice.vomodel.PubServiceVO;
import com.primeton.dsp.dataservice.vomodel.ServiceParamVO;
import feign.Headers;
import feign.Param;
import feign.RequestLine;
import java.util.Map;
/**
*
* 服务发布调用 datarelease 接口
*
*
*
*
* Created by zhaopx.
* User: zhaopx
* Date: 2020/3/30
* Time: 17:08
*
*
*
* @author zhaopx
*/
public interface IDataPublisherService {
/**
* 生成 SQL。 应包含 sid,table, conds 几个参数
*
* @return
*/
@RequestLine("POST /api/pub/saveSingleQuery")
@Headers({"Content-Type: application/json", "Accept: application/json"})
Map saveSingleQuery(Map singleQuery);
/**
* 多表发布服务生成 SQL。 应包含 sid,tables,joins, conds 几个参数
*
* @return
*/
@RequestLine("POST /api/pub/saveMutilTableQuery")
@Headers({"Content-Type: application/json", "Accept: application/json"})
Map saveMutilTableQuery(Map mutil);
/**
* 发布服务, 单表和多表
*
* @param model
* @return 返回发布结果, success 为 true 则发布成功
*/
@RequestLine("POST /api/pub/doPub")
@Headers({"Content-Type: application/json", "Accept: application/json"})
public Map doPubService(PubServiceVO model);
/**
* 删除 已经发布的服务
*
* @param id 服务 ID
* @return success 为 true 则删除服务成功
*/
@RequestLine("POST /api/pub/remove?id={id}")
Map removeDataPub(@Param("id") String id);
/**
* 修改服务参数
* @param model
* @return
*/
@RequestLine("POST /api/pub/saveServiceParams")
@Headers({"Content-Type: application/json", "Accept: application/json"})
Map saveServiceParams(ServiceParamVO model);
}