增加交易唯一码,方便在网络状态不佳的情况下重新获取操作结果
This commit is contained in:
@@ -12,7 +12,6 @@ using UFIDA.U8.Framework.Api.ControlObject.Entity;
|
||||
using UFIDA.U8.Framework.Api.ControlObject.Json;
|
||||
using UFIDA.U8.Framework.Api.ControlObject.ST;
|
||||
using UFIDA.U8.Framework.Api.ControlObject.U8M;
|
||||
using UFIDA.U8.Framework.Api.Entity;
|
||||
using UFIDA.U8.Framework.Api.Models;
|
||||
using UFIDA.U8.Framework.Api.Unit;
|
||||
// ReSharper disable StringLiteralTypo
|
||||
@@ -45,22 +44,31 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
/// <param name="sAddedState">传空字符串</param>
|
||||
/// <param name="bReMote">是否远程</param>
|
||||
/// <param name="bVerify">是否生成时审核</param>
|
||||
/// <param name="bVerify2"></param>
|
||||
/// <param name="tradeid">请求ID</param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
[Route("api/U8/ST/{cCardNum}/Insert")]
|
||||
public async Task<BaseResult<string>> Insert(string cAccId, string cCardNum, [FromBody] Dictionary<string, object> input, bool bCheck = true, bool bBeforCheckStock = true, bool bIsRedVouch = false, string sAddedState = "", bool bReMote = false, bool? bVerify = null, bool? bVerify2 = null)
|
||||
public async Task<BaseResult<string>> Insert(string cAccId, string cCardNum, [FromBody] Dictionary<string, object> input, bool bCheck = true, bool bBeforCheckStock = true, bool bIsRedVouch = false, string sAddedState = "", bool bReMote = false, bool? bVerify = null, bool? bVerify2 = null, string tradeid = null)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (Request.Headers.TryGetValues("userToken", out var values))
|
||||
{
|
||||
return await InsertToken(cCardNum, input, bCheck, bBeforCheckStock, bIsRedVouch, sAddedState, bReMote, bVerify);
|
||||
return await InsertToken(cCardNum, input, bCheck, bBeforCheckStock, bIsRedVouch, sAddedState, bReMote, bVerify, bVerify2);
|
||||
}
|
||||
|
||||
var db = CommUnit.GetDbClient();
|
||||
|
||||
var workId = SnowFlakeSingle.Instance.NextId();
|
||||
|
||||
if (string.IsNullOrWhiteSpace(tradeid))
|
||||
{
|
||||
tradeid = $"{workId}";
|
||||
}
|
||||
|
||||
await CommUnit.SaveResult(tradeid, true);
|
||||
|
||||
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:新增,对接账套:{cAccId},数据:{input.ToJson()}");
|
||||
|
||||
//LoginParamter param;
|
||||
@@ -250,13 +258,23 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var res = await co.Insert(baseLogin, input, cCardNum, voucherInfo.VoucherType, bGetCode, codeKey, bCheck, bBeforCheckStock, bIsRedVouch, sAddedState, bReMote, bVerify ?? voucherInfo.bVerify, voucherInfo.bPrintDom, bVerify2 ?? false);
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logInfo.Error(ex.Message, ex);
|
||||
|
||||
return new BaseResult<string> { bSuccess = false, message = ex.Message, result = ex.StackTrace };
|
||||
var res = new BaseResult<string> { bSuccess = false, message = ex.Message, result = ex.StackTrace };
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -272,10 +290,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
/// <param name="sAddedState">传空字符串</param>
|
||||
/// <param name="bReMote">是否远程</param>
|
||||
/// <param name="bVerify">是否生成时审核</param>
|
||||
/// <param name="bVerify2"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
[Route("api/U8/ST/{cCardNum}/Insert/Token")]
|
||||
public async Task<BaseResult<string>> InsertToken(string cCardNum, [FromBody] Dictionary<string, object> input, bool bCheck = true, bool bBeforCheckStock = true, bool bIsRedVouch = false, string sAddedState = "", bool bReMote = false, bool? bVerify = null, bool? bVerify2 = null)
|
||||
public async Task<BaseResult<string>> InsertToken(string cCardNum, [FromBody] Dictionary<string, object> input, bool bCheck = true, bool bBeforCheckStock = true, bool bIsRedVouch = false, string sAddedState = "", bool bReMote = false, bool? bVerify = null, bool? bVerify2 = null, string tradeid = null)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -283,7 +302,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
_logInfo.Debug($"当前接口:api/U8/ST/{cCardNum}/Insert/{userToken},参数:{input.ToJson()}");
|
||||
|
||||
var output = CommUnit.GetDecrypt(userToken).ToObject<LoginOutput>();
|
||||
var output = CommUnit.GetDecrypt(userToken).ToObject<UserTokenInfo>();
|
||||
|
||||
var token = CommUnit.GetDecrypt(output.userToken);
|
||||
|
||||
@@ -291,28 +310,18 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var workId = SnowFlakeSingle.Instance.NextId();
|
||||
|
||||
if (string.IsNullOrWhiteSpace(tradeid))
|
||||
{
|
||||
tradeid = $"{workId}";
|
||||
}
|
||||
|
||||
await CommUnit.SaveResult(tradeid, true);
|
||||
|
||||
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:新增,对接账套:{output.cAccId},数据:{input.ToJson()}");
|
||||
|
||||
//LoginParamter param;
|
||||
var baseLogin = new BaseLogin();
|
||||
|
||||
|
||||
|
||||
if (!_cache.TryGetValue($"U8_{userToken}_{output.cAccId}", out BaseLogin baseLogin))
|
||||
{
|
||||
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
|
||||
|
||||
baseLogin = new BaseLogin();
|
||||
|
||||
baseLogin.Init(token, false, 5);
|
||||
|
||||
_cache.Clear();
|
||||
|
||||
_cache.Set($"U8_{userToken}_{output.cAccId}", baseLogin);
|
||||
}
|
||||
//else
|
||||
//{
|
||||
// param = await CommUnit.GetLoginParamter(cAccId);
|
||||
//}
|
||||
baseLogin.Init(output, false);
|
||||
|
||||
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
|
||||
|
||||
@@ -475,13 +484,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var res = await co.Insert(baseLogin, input, cCardNum, voucherInfo.VoucherType, bGetCode, codeKey, bCheck, bBeforCheckStock, bIsRedVouch, sAddedState, bReMote, bVerify ?? voucherInfo.bVerify, voucherInfo.bPrintDom, bVerify2 ?? false);
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
baseLogin.ShutDown();
|
||||
|
||||
return res;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logInfo.Error(ex.Message, ex);
|
||||
|
||||
return new BaseResult<string> { bSuccess = false, message = ex.Message, result = ex.StackTrace };
|
||||
var res = new BaseResult<string> { bSuccess = false, message = ex.Message, result = ex.StackTrace };
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -719,7 +740,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
/// <exception cref="Exception"></exception>
|
||||
[HttpGet]
|
||||
[Route("api/U8/ST/{cCardNum}/Verify/Code")]
|
||||
public async Task<BaseResult<string>> Verify(string cAccId, string cCardNum, string cCode, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false)
|
||||
public async Task<BaseResult<string>> Verify(string cAccId, string cCardNum, string cCode, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false, string tradeid = null)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -727,6 +748,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var workId = SnowFlakeSingle.Instance.NextId();
|
||||
|
||||
if (string.IsNullOrWhiteSpace(tradeid))
|
||||
{
|
||||
tradeid = $"{workId}";
|
||||
}
|
||||
|
||||
await CommUnit.SaveResult(tradeid, true);
|
||||
|
||||
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},单号:{cCode}");
|
||||
|
||||
//LoginParamter param;
|
||||
@@ -761,13 +789,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var co = new USERPCO();
|
||||
|
||||
return await co.Verify(baseLogin, cCardNum, voucherInfo.VoucherType, cCode, bCheck, bBeforCheckStock, bList);
|
||||
var res = await co.Verify(baseLogin, cCardNum, voucherInfo.VoucherType, cCode, bCheck, bBeforCheckStock, bList);
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logInfo.Error(ex.Message, ex);
|
||||
|
||||
return new BaseResult<string> { bSuccess = false, message = "审核失败", result = ex.Message };
|
||||
var res = new BaseResult<string> { bSuccess = false, message = "审核失败", result = ex.Message };
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -784,7 +824,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
/// <exception cref="Exception"></exception>
|
||||
[HttpGet]
|
||||
[Route("api/U8/ST/{cCardNum}/Verify/ID")]
|
||||
public async Task<BaseResult<string>> Verify(string cAccId, string cCardNum, long voucherId, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false)
|
||||
public async Task<BaseResult<string>> Verify(string cAccId, string cCardNum, long voucherId, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false, string tradeid = null)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -792,6 +832,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var workId = SnowFlakeSingle.Instance.NextId();
|
||||
|
||||
if (string.IsNullOrWhiteSpace(tradeid))
|
||||
{
|
||||
tradeid = $"{workId}";
|
||||
}
|
||||
|
||||
await CommUnit.SaveResult(tradeid, true);
|
||||
|
||||
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},ID:{voucherId}");
|
||||
|
||||
//LoginParamter param;
|
||||
@@ -826,13 +873,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var co = new USERPCO();
|
||||
|
||||
return await co.Verify(baseLogin, cCardNum, voucherInfo.VoucherType, voucherId, bCheck, bBeforCheckStock, bList);
|
||||
var res = await co.Verify(baseLogin, cCardNum, voucherInfo.VoucherType, voucherId, bCheck, bBeforCheckStock, bList);
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logInfo.Error(ex.Message, ex);
|
||||
|
||||
return new BaseResult<string> { bSuccess = false, message = "审核失败", result = ex.Message };
|
||||
var res = new BaseResult<string> { bSuccess = false, message = "审核失败", result = ex.Message };
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -953,7 +1012,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
/// <exception cref="Exception"></exception>
|
||||
[HttpGet]
|
||||
[Route("api/U8/ST/{cCardNum}/UnVerify/Code")]
|
||||
public async Task<BaseResult<string>> UnVerify(string cAccId, string cCardNum, string cCode, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false)
|
||||
public async Task<BaseResult<string>> UnVerify(string cAccId, string cCardNum, string cCode, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false, string tradeid = null)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -961,6 +1020,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var workId = SnowFlakeSingle.Instance.NextId();
|
||||
|
||||
if (string.IsNullOrWhiteSpace(tradeid))
|
||||
{
|
||||
tradeid = $"{workId}";
|
||||
}
|
||||
|
||||
await CommUnit.SaveResult(tradeid, true);
|
||||
|
||||
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},单号:{cCode}");
|
||||
|
||||
//LoginParamter param;
|
||||
@@ -995,13 +1061,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var co = new USERPCO();
|
||||
|
||||
return await co.UnVerify(baseLogin, cCardNum, voucherInfo.VoucherType, cCode, bCheck, bBeforCheckStock, bList);
|
||||
var res = await co.UnVerify(baseLogin, cCardNum, voucherInfo.VoucherType, cCode, bCheck, bBeforCheckStock, bList);
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logInfo.Error(ex.Message, ex);
|
||||
|
||||
return new BaseResult<string> { bSuccess = false, message = "弃审失败", result = ex.Message };
|
||||
var res = new BaseResult<string> { bSuccess = false, message = "弃审失败", result = ex.Message };
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1019,7 +1097,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
/// <exception cref="Exception"></exception>
|
||||
[HttpGet]
|
||||
[Route("api/U8/ST/{cCardNum}/UnVerify/ID")]
|
||||
public async Task<BaseResult<string>> UnVerify(string cAccId, string cCardNum, long voucherId, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false)
|
||||
public async Task<BaseResult<string>> UnVerify(string cAccId, string cCardNum, long voucherId, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false, string tradeid = null)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -1027,6 +1105,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var workId = SnowFlakeSingle.Instance.NextId();
|
||||
|
||||
if (string.IsNullOrWhiteSpace(tradeid))
|
||||
{
|
||||
tradeid = $"{workId}";
|
||||
}
|
||||
|
||||
await CommUnit.SaveResult(tradeid, true);
|
||||
|
||||
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},ID:{voucherId}");
|
||||
|
||||
//LoginParamter param;
|
||||
@@ -1061,13 +1146,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var co = new USERPCO();
|
||||
|
||||
return await co.UnVerify(baseLogin, cCardNum, voucherInfo.VoucherType, voucherId, bCheck, bBeforCheckStock, bList);
|
||||
var res = await co.UnVerify(baseLogin, cCardNum, voucherInfo.VoucherType, voucherId, bCheck, bBeforCheckStock, bList);
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logInfo.Error(ex.Message, ex);
|
||||
|
||||
return new BaseResult<string> { bSuccess = false, message = "弃审失败", result = ex.Message };
|
||||
var res = new BaseResult<string> { bSuccess = false, message = "弃审失败", result = ex.Message };
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1188,7 +1285,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
/// <exception cref="Exception"></exception>
|
||||
[HttpGet]
|
||||
[Route("api/U8/ST/{cCardNum}/Delete/Code")]
|
||||
public async Task<BaseResult<string>> Delete(string cAccId, string cCardNum, string cCode, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false)
|
||||
public async Task<BaseResult<string>> Delete(string cAccId, string cCardNum, string cCode, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false, string tradeid = null)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -1196,6 +1293,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var workId = SnowFlakeSingle.Instance.NextId();
|
||||
|
||||
if (string.IsNullOrWhiteSpace(tradeid))
|
||||
{
|
||||
tradeid = $"{workId}";
|
||||
}
|
||||
|
||||
await CommUnit.SaveResult(tradeid, true);
|
||||
|
||||
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},单号:{cCode}");
|
||||
|
||||
//LoginParamter param;
|
||||
@@ -1230,13 +1334,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var co = new USERPCO();
|
||||
|
||||
return await co.Delete(baseLogin, cCardNum, voucherInfo.VoucherType, cCode, bCheck, bBeforCheckStock, bList);
|
||||
var res = await co.Delete(baseLogin, cCardNum, voucherInfo.VoucherType, cCode, bCheck, bBeforCheckStock, bList);
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logInfo.Error(ex.Message, ex);
|
||||
|
||||
return new BaseResult<string> { bSuccess = false, message = "删除失败", result = ex.Message };
|
||||
var res = new BaseResult<string> { bSuccess = false, message = "删除失败", result = ex.Message };
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1254,7 +1370,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
/// <exception cref="Exception"></exception>
|
||||
[HttpGet]
|
||||
[Route("api/U8/ST/{cCardNum}/Delete/ID")]
|
||||
public async Task<BaseResult<string>> Delete(string cAccId, string cCardNum, long voucherId, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false)
|
||||
public async Task<BaseResult<string>> Delete(string cAccId, string cCardNum, long voucherId, bool bCheck = true, bool bBeforCheckStock = true, bool bList = false, string tradeid = null)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -1262,6 +1378,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var workId = SnowFlakeSingle.Instance.NextId();
|
||||
|
||||
if (string.IsNullOrWhiteSpace(tradeid))
|
||||
{
|
||||
tradeid = $"{workId}";
|
||||
}
|
||||
|
||||
await CommUnit.SaveResult(tradeid, true);
|
||||
|
||||
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},ID:{voucherId}");
|
||||
|
||||
//LoginParamter param;
|
||||
@@ -1296,13 +1419,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
|
||||
|
||||
var co = new USERPCO();
|
||||
|
||||
return await co.UnVerify(baseLogin, cCardNum, voucherInfo.VoucherType, voucherId, bCheck, bBeforCheckStock, bList);
|
||||
var res = await co.UnVerify(baseLogin, cCardNum, voucherInfo.VoucherType, voucherId, bCheck, bBeforCheckStock, bList);
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logInfo.Error(ex.Message, ex);
|
||||
|
||||
return new BaseResult<string> { bSuccess = false, message = "删除失败", result = ex.Message };
|
||||
var res = new BaseResult<string> { bSuccess = false, message = "删除失败", result = ex.Message };
|
||||
|
||||
res.tradeid = tradeid;
|
||||
|
||||
await CommUnit.SaveResult(tradeid, false, res);
|
||||
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user