package com.persagy.adm.diagram.client;

import com.fasterxml.jackson.databind.node.ObjectNode;
import com.persagy.dmp.basic.config.DigitalFeignConfig;
import com.persagy.dmp.basic.model.QueryCriteria;
import com.persagy.dmp.common.model.response.CommonResult;
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;

import java.util.List;

@FeignClient(name = "dmp-dic", configuration = DigitalFeignConfig.class,
		url = "${persagy.bdtp.dic.service:}")
public interface DicClient {

	/**
	 * 查询类型定义
	 * @param groupCode 集团编码
	 * @param projectId 项目ID
	 * @param appId 应用ID
	 * @param userId 用户ID
	 * @param criteria 查询条件
	 * @return 类型定义
	 */
	@PostMapping("/dic/dt/data/query")
	CommonResult<List<ObjectNode>> dataQuery(
			@RequestParam("groupCode") String groupCode,
			@RequestParam("projectId") String projectId,
			@RequestParam("appId") String appId,
			@RequestParam("userId") String userId,
			@RequestBody QueryCriteria criteria);

}
