1.隐藏所有基础接口

2.完善工作流接口-提交审批流
This commit is contained in:
qmj
2025-07-23 21:57:18 +08:00
parent b8a9595cc1
commit 55740e4bcf
4 changed files with 82 additions and 11 deletions
@@ -26,7 +26,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
/// <summary>
/// 日志组件
/// </summary>
protected readonly ILog _logInfo = LogManager.GetLogger("logInfo");
private readonly ILog _logInfo = LogManager.GetLogger("logInfo");
private static readonly MemoryCache _cache = new MemoryCache(new MemoryCacheOptions { ExpirationScanFrequency = TimeSpan.FromMinutes(10) });
@@ -109,7 +109,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
var userToken = Request.Headers.GetValues("userToken").First();
_logInfo.Debug($"当前接口:api/U8/Workflow/SubmitApplicationMessage/Code,userToken:{userToken},单据:{cCardNum},事件:{eventId},单据编号:{cCode}");
_logInfo.Debug($"当前接口:api/U8/Workflow/SubmitApplicationMessage/Code/{userToken},单据:{cCardNum},事件:{eventId},单据编号:{cCode}");
var output = CommUnit.GetDecrypt(userToken).ToObject<LoginOutput>();
@@ -146,7 +146,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
}
/// <summary>
/// 提交审批流(单号)
/// 提交审批流(ID)
/// </summary>
/// <param name="cCardNum">单据类型编码</param>
/// <param name="voucherId">单据ID</param>
@@ -160,6 +160,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
try
{
if (Request.Headers.TryGetValues("userToken", out var userToken))
{
return await SubmitApplicationMessageToken(cCardNum, voucherId, eventId, bUap);
}
var db = CommUnit.GetDbClient();
var workId = SnowFlakeSingle.Instance.NextId();
@@ -198,5 +203,64 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
}
}
/// <summary>
/// 提交审批流(ID)
/// </summary>
/// <param name="cCardNum">单据类型编码</param>
/// <param name="voucherId">单据ID</param>
/// <param name="cAccId">系统注册号</param>
/// <param name="eventId">审批事件</param>
/// <param name="bUap">是否UAP单据</param>
/// <returns></returns>
[HttpGet]
[Route("api/U8/Workflow/SubmitApplicationMessage/ID/Token")]
public async Task<BaseResult<string>> SubmitApplicationMessageToken(string cCardNum, long voucherId, string eventId, bool bUap = false)
{
try
{
var userToken = Request.Headers.GetValues("userToken").First();
if (string.IsNullOrWhiteSpace(userToken))
{
throw new Exception($"userToken获取失败");
}
_logInfo.Debug($"当前接口:api/U8/Workflow/SubmitApplicationMessage/ID/{userToken},单据:{cCardNum},事件:{eventId},单据ID:{voucherId}");
var output = CommUnit.GetDecrypt(userToken).ToObject<LoginOutput>();
var token = CommUnit.GetDecrypt(output.userToken);
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:新增,对接账套:{output.cAccId},单据ID:{voucherId}");
if (!_cache.TryGetValue($"U8_{userToken}_{output.cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
baseLogin.Init(token, true, 5);
_cache.Clear();
_cache.Set($"U8_{userToken}_{output.cAccId}", baseLogin);
}
var services = new ServiceProxy();
return await services.SubmitApplicationMessage(baseLogin, cCardNum, eventId, voucherId, bUap);
}
catch (Exception ex)
{
_logInfo.Error(ex.Message, ex);
return new BaseResult<string> { bSuccess = false, message = ex.Message, result = ex.StackTrace };
}
}
}
}