增加交易唯一码,方便在网络状态不佳的情况下重新获取操作结果

This commit is contained in:
qmj
2026-05-26 08:45:24 +08:00
parent 8208ba7488
commit 42e6579447
30 changed files with 2891 additions and 374 deletions
@@ -1,23 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Threading.Tasks;
using System.Web.Http;
using log4net;
using log4net;
using Microsoft.Extensions.Caching.Memory;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Web.Http;
using UFIDA.U8.Framework.Api.Common.Entity;
using UFIDA.U8.Framework.Api.ControlObject.Common;
using UFIDA.U8.Framework.Api.ControlObject.Entity;
using UFIDA.U8.Framework.Api.ControlObject.Json;
using UFIDA.U8.Framework.Api.ControlObject.PU;
using UFIDA.U8.Framework.Api.ControlObject.ST;
using UFIDA.U8.Framework.Api.ControlObject.U8M;
using UFIDA.U8.Framework.Api.Models;
using UFIDA.U8.Framework.Api.Unit;
using static System.Runtime.CompilerServices.RuntimeHelpers;
namespace UFIDA.U8.Framework.Api.Controllers.U8
{
@@ -25,7 +21,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
/// 采购管理
/// </summary>
public class PUController : ApiController
{
{
/// <summary>
/// 日志组件
/// </summary>
@@ -49,7 +45,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
/// <exception cref="Exception"></exception>
[HttpPost]
[Route("api/U8/PU/{cCardNum}/VoucherSave")]
public async Task<BaseResult<string>> VoucherSave(string cAccId, string cCardNum, [FromBody] Dictionary<string, object> input, bool bPositive = true, string sBillType = null, string sBusType = "", int VoucherState = 2, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null)
public async Task<BaseResult<string>> VoucherSave(string cAccId, string cCardNum, [FromBody] Dictionary<string, object> input, bool bPositive = true, string sBillType = null, string sBusType = "", int VoucherState = 2, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null, string tradeid = null)
{
try
{
@@ -57,6 +53,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},数据:{input.ToJson()}");
//LoginParamter param;
@@ -91,7 +94,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var defs = await db.Queryable<SysU8FieldDefine>().Where(s => s.CardNumber == cCardNum && s.cPosition == "H" && s.bEnable == true).ToListAsync(); //查询表头字段配置,供后续设置字段值
var newNumber = "";
var bGetCode = false;
var codeKey = "";
@@ -149,7 +152,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var co = new clsVoucherCO_PU();
var res = await co.VoucherSave(baseLogin, input, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), bPositive, sBillType, sBusType, VoucherState, UserMode, sOverDetailsXml, bGetCode, codeKey, voucherInfo.bVerify, voucherInfo.bPrintDom,voucherInfo.iswfcontrolled,voucherInfo.cFlowFieldName);
var res = await co.VoucherSave(baseLogin, input, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), bPositive, sBillType, sBusType, VoucherState, UserMode, sOverDetailsXml, bGetCode, codeKey, voucherInfo.bVerify, voucherInfo.bPrintDom, voucherInfo.iswfcontrolled, voucherInfo.cFlowFieldName);
res.tradeid = tradeid;
await CommUnit.SaveResult(tradeid, false, res);
return res;
}
@@ -157,7 +164,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
_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;
}
}
@@ -175,7 +188,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
/// <returns></returns>
[HttpGet]
[Route("api/U8/PU/{cCardNum}/Confirm/Code")]
public async Task<BaseResult<string>> Confirm(string cAccId, string cCardNum, string cCode, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null)
public async Task<BaseResult<string>> Confirm(string cAccId, string cCardNum, string cCode, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null, string tradeid = null)
{
try
{
@@ -183,6 +196,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;
@@ -217,13 +237,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var co = new clsVoucherCO_PU();
return await co.Confirm(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), cCode, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
var res = await co.Confirm(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), cCode, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
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;
}
}
@@ -241,7 +273,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
/// <returns></returns>
[HttpGet]
[Route("api/U8/PU/{cCardNum}/Confirm/ID")]
public async Task<BaseResult<string>> Confirm(string cAccId, string cCardNum, long voucherId, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null)
public async Task<BaseResult<string>> Confirm(string cAccId, string cCardNum, long voucherId, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null, string tradeid = null)
{
try
{
@@ -249,6 +281,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}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
@@ -277,13 +316,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var co = new clsVoucherCO_PU();
return await co.Confirm(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), voucherId, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
var res = await co.Confirm(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), voucherId, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
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;
}
}
@@ -407,7 +458,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
/// <returns></returns>
[HttpGet]
[Route("api/U8/PU/{cCardNum}/CancelConfirm/Code")]
public async Task<BaseResult<string>> CancelConfirm(string cAccId, string cCardNum, string cCode, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null)
public async Task<BaseResult<string>> CancelConfirm(string cAccId, string cCardNum, string cCode, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null, string tradeid = null)
{
try
{
@@ -415,6 +466,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}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin) || baseLogin == null)
@@ -443,13 +501,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var co = new clsVoucherCO_PU();
return await co.CancelConfirm(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), cCode, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
var res = await co.CancelConfirm(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), cCode, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
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;
}
}
@@ -467,7 +537,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
/// <returns></returns>
[HttpGet]
[Route("api/U8/PU/{cCardNum}/CancelConfirm/ID")]
public async Task<BaseResult<string>> CancelConfirm(string cAccId, string cCardNum, long voucherId, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null)
public async Task<BaseResult<string>> CancelConfirm(string cAccId, string cCardNum, long voucherId, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null, string tradeid = null)
{
try
{
@@ -475,6 +545,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}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
@@ -503,13 +580,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var co = new clsVoucherCO_PU();
return await co.CancelConfirm(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), voucherId, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
var res = await co.CancelConfirm(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), voucherId, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
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;
}
}
@@ -633,7 +722,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
/// <returns></returns>
[HttpGet]
[Route("api/U8/PU/{cCardNum}/Delete/Code")]
public async Task<BaseResult<string>> Delete(string cAccId, string cCardNum, string cCode, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null)
public async Task<BaseResult<string>> Delete(string cAccId, string cCardNum, string cCode, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null, string tradeid = null)
{
try
{
@@ -641,6 +730,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}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin) || baseLogin == null)
@@ -669,13 +765,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var co = new clsVoucherCO_PU();
return await co.Delete(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), cCode, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
var res = await co.Delete(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), cCode, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
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;
}
}
@@ -693,7 +801,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
/// <returns></returns>
[HttpGet]
[Route("api/U8/PU/{cCardNum}/Delete/ID")]
public async Task<BaseResult<string>> Delete(string cAccId, string cCardNum, long voucherId, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null)
public async Task<BaseResult<string>> Delete(string cAccId, string cCardNum, long voucherId, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null, string tradeid = null)
{
try
{
@@ -701,6 +809,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}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
@@ -729,13 +844,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var co = new clsVoucherCO_PU();
return await co.Delete(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), voucherId, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
var res = await co.Delete(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), voucherId, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
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;
}
}
@@ -853,7 +980,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
/// <returns></returns>
[HttpGet]
[Route("api/U8/PU/{cCardNum}/SubmintWf/Code")]
public async Task<BaseResult<string>> SubmintWf(string cAccId, string cCardNum, string cCode, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null)
public async Task<BaseResult<string>> SubmintWf(string cAccId, string cCardNum, string cCode, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null, string tradeid = null)
{
try
{
@@ -861,6 +988,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}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin) || baseLogin == null)
@@ -889,13 +1023,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var co = new clsVoucherCO_PU();
return await co.SubmintWf(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), cCode, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
var res = await co.SubmintWf(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), cCode, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
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;
}
}
@@ -913,7 +1059,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
/// <returns></returns>
[HttpGet]
[Route("api/U8/PU/{cCardNum}/SubmintWf/ID")]
public async Task<BaseResult<string>> SubmintWf(string cAccId, string cCardNum, long voucherId, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null)
public async Task<BaseResult<string>> SubmintWf(string cAccId, string cCardNum, long voucherId, bool bPositive = true, string sBillType = null, string sBusType = null, UseMode UserMode = UseMode.CS, string sOverDetailsXml = null, string tradeid = null)
{
try
{
@@ -921,6 +1067,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}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
@@ -949,13 +1102,25 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var co = new clsVoucherCO_PU();
return await co.SubmintWf(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), voucherId, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
var res = await co.SubmintWf(baseLogin, cCardNum, (vouchertype)Convert.ToInt32(voucherInfo.VoucherType), voucherId, bPositive, sBillType, sBusType, UserMode, sOverDetailsXml);
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;
}
}
@@ -1103,7 +1268,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (vouchers == null)
{
throw new Exception("未能获取到单据配置信息");
throw new Exception("未能获取到单据配置信息");
}
var db = new SqlSugarClient(new ConnectionConfig()
@@ -1122,7 +1287,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var cBWQName = vouchers.cBWQName;
var cBTTblExtName = $"{vouchers.cBTTblName}_extradefine";
var cBWTblExtName =$"{vouchers.cBWTblName}_extradefine" ;
var cBWTblExtName = $"{vouchers.cBWTblName}_extradefine";
var voucherIdFieldName = vouchers.voucherIdFieldName;
var vouchersIdFieldName = "";
@@ -1136,14 +1301,14 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var cols = db.DbMaintenance.GetColumnInfosByTableName(cBTQName);
if(cols != null && cols.Count > 0)
if (cols != null && cols.Count > 0)
{
foreach (var col in cols.Where(col => !colList.ContainsKey(col.DbColumnName.ToLower())))
{
if (cCardPostion == "H" || cCardPostion == "L")
colList.Add(col.DbColumnName.ToLower(),$"{cBTQName}.[{col.DbColumnName}]");
colList.Add(col.DbColumnName.ToLower(), $"{cBTQName}.[{col.DbColumnName}]");
colListHead.Add(col.DbColumnName.ToLower(),$"{cBTQName}.[{col.DbColumnName}]");
colListHead.Add(col.DbColumnName.ToLower(), $"{cBTQName}.[{col.DbColumnName}]");
}
}
@@ -1192,7 +1357,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
vouchersIdFieldName = col.DbColumnName.ToLower();
}
else
else
{
if (cCardPostion == "B" || cCardPostion == "L")
colList.Add(col.DbColumnName.ToLower(), $"{cBWTblExtName}.[{col.DbColumnName}]");
@@ -1218,14 +1383,14 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
query.AddJoinInfo(cBWTblExtName, cBWTblExtName, $"{cBWQName}.[{vouchersIdFieldName}]={cBWTblExtName}.[{vouchersIdFieldName}]");
}
if (input != null)
{
var conModels = new List<IConditionalModel>();
foreach (var o in input)
{
if (o.Key == "dModifyDate")
if (o.Key == "dModifyDate" && !string.IsNullOrWhiteSpace($"{o.Value}"))
{
if (colListHead.Any(a => string.Equals(a.Key, "caudittime", StringComparison.OrdinalIgnoreCase) || string.Equals(a.Value, "caudittime", StringComparison.OrdinalIgnoreCase)))
{
@@ -1235,13 +1400,12 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
FieldName = $"{col.Value}",
ConditionalType = ConditionalType.GreaterThanOrEqual,
FieldValue = $"{o.Value}"
FieldValue = $"{o.Value}",
});
}
}
}
else if(o.Key == "dModifyDate__2")
else if (o.Key == "dModifyDate__2" && !string.IsNullOrWhiteSpace($"{o.Value}"))
{
if (colListHead.Any(a => string.Equals(a.Key, "caudittime", StringComparison.OrdinalIgnoreCase) || string.Equals(a.Value, "caudittime", StringComparison.OrdinalIgnoreCase)))
{
@@ -1281,7 +1445,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
});
}
}
else if (o.Key.EndsWith("__2"))
else if (o.Key.EndsWith("__2") && !string.IsNullOrWhiteSpace($"{o.Value}"))
{
if (colListHead.Any(a => string.Equals(a.Key, o.Key, StringComparison.OrdinalIgnoreCase) || string.Equals(a.Value, o.Key, StringComparison.OrdinalIgnoreCase)))
{
@@ -1307,7 +1471,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
});
}
}
else if (input.ContainsKey($"{o.Key}__2"))
else if (input.ContainsKey($"{o.Key}__2") && !string.IsNullOrWhiteSpace($"{o.Value}"))
{
if (colListHead.Any(a => string.Equals(a.Key, o.Key, StringComparison.OrdinalIgnoreCase) || string.Equals(a.Value, o.Key, StringComparison.OrdinalIgnoreCase)))
{
@@ -1333,7 +1497,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
});
}
}
else if (colListHead.Any(a => string.Equals(a.Key, o.Key, StringComparison.OrdinalIgnoreCase) || string.Equals(a.Value, o.Key, StringComparison.OrdinalIgnoreCase)))
else if (colListHead.Any(a => string.Equals(a.Key, o.Key, StringComparison.OrdinalIgnoreCase) || string.Equals(a.Value, o.Key, StringComparison.OrdinalIgnoreCase)) && !string.IsNullOrWhiteSpace($"{o.Value}"))
{
var col = colListHead.First(a => string.Equals(a.Key, o.Key, StringComparison.OrdinalIgnoreCase) || string.Equals(a.Value, o.Key, StringComparison.OrdinalIgnoreCase));
@@ -1343,7 +1507,8 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
ConditionalType = ConditionalType.Equal,
FieldValue = $"{o.Value}"
});
}else if (colListBody.Any(a => string.Equals(a.Key, o.Key, StringComparison.OrdinalIgnoreCase) || string.Equals(a.Value, o.Key, StringComparison.OrdinalIgnoreCase)))
}
else if (colListBody.Any(a => string.Equals(a.Key, o.Key, StringComparison.OrdinalIgnoreCase) || string.Equals(a.Value, o.Key, StringComparison.OrdinalIgnoreCase)) && !string.IsNullOrWhiteSpace($"{o.Value}"))
{
var col = colListBody.First(a => string.Equals(a.Key, o.Key, StringComparison.OrdinalIgnoreCase) || string.Equals(a.Value, o.Key, StringComparison.OrdinalIgnoreCase));
@@ -1362,12 +1527,12 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
query.Where(cDefWhere);
var selector =colList.Select(col => new SelectModel { FieldName = $"{col.Value}", AsName = col.Key }).ToList();
var selector = colList.Select(col => new SelectModel { FieldName = $"{col.Value}", AsName = col.Key }).ToList();
query.Select(selector).Distinct();
_logInfo.Debug(query.ToSqlString());
return new BaseResult<dynamic>() { bSuccess = true, message = "查询成功", result = await query.ToListAsync() };
}
catch (Exception ex)