using DefaultNamespace;
using MotionFramework;
using System.Collections.Generic;
using UnityEngine;
namespace Zion.ERP.Inventory
{
///
/// API接口配置类
/// 支持配置化管理和动态参数替换
///
public static class ApiUrls
{
///
/// 获取API接口URL(使用配置系统)
///
/// 接口名称
/// 动态参数
/// 完整的URL
public static string GetApiUrl(string endpointName, Dictionary dynamicParams = null)
{
var configManager = MotionEngine.GetModule();
if (configManager != null && configManager.IsInitialized)
{
return configManager.GetApiUrl(endpointName, dynamicParams);
}
// else
// {
// Debug.LogWarning("API配置管理器未初始化,使用备用方案");
// return GetLegacyApiUrl(endpointName);
// }
return "";
}
///
/// 获取API接口配置
///
/// 接口名称
/// API接口配置
public static ApiEndpoint GetEndpoint(string endpointName)
{
try
{
var configManager = MotionEngine.GetModule();
return configManager?.GetEndpoint(endpointName);
}
catch (System.Exception ex)
{
Debug.LogError($"获取API配置失败:{ex.Message}");
return null;
}
}
// ///
// /// 备用方案:使用原有的硬编码方式获取URL
// ///
// /// 接口名称
// /// URL
// private static string GetLegacyApiUrl(string endpointName)
// {
// // 从 GlobalDataStorage 中获取 IP 地址和端口
// string ipAddress = MotionEngine.GetModule()?.ExamInfo?.IpAddress ?? "172.16.1.127:8080";
// string paperId = MotionEngine.GetModule()?.ExamInfo?.PaperId ?? "";
// string baseUrl = $"http://{ipAddress}";
//
// switch (endpointName)
// {
// case "GetProSimulationExaminationQueryById":
// return $"{baseUrl}/member/proSimulationExamination/queryById?id={paperId}";
// case "AddSubmitDetail":
// return $"{baseUrl}/member/pro/simulationStepRecord/addSubmitDetail";
// case "UploadFileAndParam":
// return $"{baseUrl}/member/pro/upload/uploadFileAndParam";
// case "Get3DCourse":
// return $"{baseUrl}/member/proSimulationCourse/queryByOutId?id={paperId}";
// case "GetErrorFeedbackContractExecutionData":
// return "http://172.16.1.127:9000/file/biaodan/合同执行情况数据反馈_1行.xlsx";
// case "GetOKFeedbackContractExecutionData":
// return "http://172.16.1.127:9000/file/biaodan/合同执行情况数据反馈_8行.xlsx";
// case "GetWarehouseRegMasterOpsDataCard":
// return "http://172.16.1.127:9000/file/biaodan/新注册仓库的主数据运维流程答题卡.xlsx";
// default:
// Debug.LogError($"未找到API接口:{endpointName}");
// return "";
// }
// }
///
/// 中转库存相关API接口
/// 保持向后兼容性
///
public static class TransitInventory
{
///
/// 异常合同执行情况数据反馈_1行
///
public static string GetErrorFeedbackContractExecutionData => GetApiUrl("GetErrorFeedbackContractExecutionData");
///
/// 正确合同执行情况数据反馈_8行
///
public static string GetOKFeedbackContractExecutionData => GetApiUrl("GetOKFeedbackContractExecutionData");
///
/// 新注册仓库的主数据运维流程答题卡
///
public static string GetWarehouseRegMasterOpsDataCard => GetApiUrl("GetWarehouseRegMasterOpsDataCard");
///
/// 获取任务书和流程
///
public static string GetProSimulationExaminationQueryById => GetApiUrl("GetProSimulationExaminationQueryById");
///
/// 上传考试信息
///
public static string AddSubmitDetail => GetApiUrl("AddSubmitDetail");
///
/// 上传文件
///
public static string UploadFileAndParam => GetApiUrl("UploadFileAndParam");
///
/// 获取学习试题
///
public static string GetLearningTest => GetApiUrl("GetLearningTest");
///
/// 获取学习试题
///
public static string GetLearningTestIsView => GetApiUrl("GetLearningTestIsView");
///
/// 获取三维课程
///
public static string Get3DCourse => GetApiUrl("Get3DCourse");
}
}
}