Commit 1906be4a by jianshuqin

优化:组件功能

parent c39909d2
......@@ -8,11 +8,11 @@
/// <summary>
/// 字段名称
/// </summary>
public object Value { get; set; }
public object value { get; set; }
/// <summary>
/// 操作
/// </summary>
public string Display { get; set; }
public string display { get; set; }
}
}
\ No newline at end of file
......@@ -56,12 +56,19 @@ namespace Bailun.DC.Services.Component
var paramIndex = entity.value.IndexOf("@");
if (paramIndex >= 0)
{
foreach (Match item in Regex.Matches(entity.value.Substring(paramIndex), @"^@\w+[^\w]*"))
foreach (Match item in Regex.Matches(entity.value.Substring(paramIndex), @"@\w+[^\w]*"))
{
string paramName = item.Value.Substring(1, Regex.Match(item.Value.Substring(1), @"[^\w]*$").Index);
if (!sqlparam.ParameterNames.Contains(paramName))
{
sqlparam.Add(paramName, null);
if (entity.value.Substring(0, paramIndex + item.Index).TrimEnd().EndsWith("in", StringComparison.OrdinalIgnoreCase))
{
sqlparam.Add(paramName, new string[] { "" });
}
else
{
sqlparam.Add(paramName, null);
}
}
}
}
......
......@@ -684,23 +684,17 @@ namespace Bailun.DC.Services.Component
sqlparam.Add($"@{fieldFilter.Field}", fieldFilter.Value);
}
//其他操作符
else if (!fieldFilter.Operator.ToUpper().Equals("IN"))
{
sql.Append($"{sp}@{fieldFilter.Field}{sp2} ");
sqlparam.Add($"@{fieldFilter.Field}", fieldFilter.Value);
}
//IN
else
{
sql.Append("( ");
string[] fieldValues = fieldFilter.Value.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);
for (int i = 0; i < fieldValues.Length; i++)
sql.Append($"{sp}@{fieldFilter.Field}{sp2} ");
if (!fieldFilter.Operator.ToUpper().Equals("IN"))
{
sqlparam.Add($"@{fieldFilter.Field}", fieldFilter.Value);
}
else
{
sql.Append($"{sp}@{fieldFilter.Field + i.ToString()}{sp2}, ");
sqlparam.Add($"@{fieldFilter.Field}{i}", fieldValues[i]);
sqlparam.Add($"@{fieldFilter.Field}", fieldFilter.Value.Split(",", StringSplitOptions.RemoveEmptyEntries));
}
sql.Length -= 2;
sql.Append(" ) ");
}
}
}
......@@ -809,12 +803,19 @@ namespace Bailun.DC.Services.Component
var paramIndex = entity.DataValue.IndexOf("@");
if (paramIndex >= 0)
{
foreach (Match item in Regex.Matches(entity.DataValue.Substring(paramIndex), @"^@\w+[^\w]*"))
foreach (Match item in Regex.Matches(entity.DataValue.Substring(paramIndex), @"@\w+[^\w]*"))
{
string paramName = item.Value.Substring(1, Regex.Match(item.Value.Substring(1), @"[^\w]*$").Index);
if (!sqlparam.ParameterNames.Contains(paramName))
{
setSql += $"SET @{paramName} = null;";
if (entity.DataValue.Substring(0, paramIndex + item.Index).TrimEnd().EndsWith("in", StringComparison.OrdinalIgnoreCase))
{
sqlparam.Add(paramName, new string[] { "" });
}
else
{
sqlparam.Add(paramName, null);
}
}
}
}
......
......@@ -103,7 +103,7 @@
if (parentItem && parentItem.value) {
params[item.parentProp] = parentItem.value;
} else {
params[item.parentProp] = null;
delete params[item.parentProp];
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment