Merge pull request #541 from jforage/issue-U4-5758
Fix to issue U4-5758. Branched off from 7.2.0
This commit is contained in:
@@ -369,37 +369,53 @@ AND umbracoNode.id <> @id",
|
|||||||
}
|
}
|
||||||
|
|
||||||
var sortOrder = 1;
|
var sortOrder = 1;
|
||||||
|
var newAlias = 0;
|
||||||
|
|
||||||
foreach (var pre in values)
|
foreach (var pre in values)
|
||||||
{
|
{
|
||||||
var existing = existingByIds.FirstOrDefault(valueDto => valueDto.Id == pre.Value.Id);
|
var existing = existingByIds.FirstOrDefault(valueDto => valueDto.Id == pre.Value.Id);
|
||||||
if (existing != null)
|
if (existing != null)
|
||||||
{
|
{
|
||||||
existing.Value = pre.Value.Value;
|
existing.Value = pre.Value.Value;
|
||||||
existing.SortOrder = sortOrder;
|
existing.SortOrder = sortOrder;
|
||||||
_preValRepository.AddOrUpdate(new PreValueEntity
|
_preValRepository.AddOrUpdate(new PreValueEntity
|
||||||
{
|
{
|
||||||
//setting an id will update it
|
//setting an id will update it
|
||||||
Id = existing.Id,
|
Id = existing.Id,
|
||||||
Alias = existing.Alias,
|
Alias = existing.Alias,
|
||||||
SortOrder = existing.SortOrder,
|
SortOrder = existing.SortOrder,
|
||||||
Value = existing.Value,
|
Value = existing.Value,
|
||||||
DataType = dataType,
|
DataType = dataType,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_preValRepository.AddOrUpdate(new PreValueEntity
|
// adding new prevalue so make sure our alias is unique by adding 1 to the largest existing (or newly added already within this batch)
|
||||||
{
|
if (newAlias > 0)
|
||||||
Alias = pre.Key,
|
{
|
||||||
SortOrder = sortOrder,
|
newAlias++;
|
||||||
Value = pre.Value.Value,
|
}
|
||||||
DataType = dataType,
|
else
|
||||||
});
|
{
|
||||||
}
|
newAlias =
|
||||||
|
Database.ExecuteScalar<int>(
|
||||||
|
"SELECT (coalesce(max(alias), 0) + 1) " +
|
||||||
|
"FROM cmsDataTypePreValues " +
|
||||||
|
"WHERE datatypeNodeId = @datatypeNodeId",
|
||||||
|
new { datatypeNodeId = dataType.Id });
|
||||||
|
}
|
||||||
|
|
||||||
sortOrder++;
|
_preValRepository.AddOrUpdate(new PreValueEntity
|
||||||
}
|
{
|
||||||
|
Alias = Convert.ToString(newAlias),
|
||||||
|
SortOrder = sortOrder,
|
||||||
|
Value = pre.Value.Value,
|
||||||
|
DataType = dataType,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
sortOrder++;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user