Commit 912dbcc4 by 钟博

多工作量bug修改

parent d424bda0
......@@ -511,44 +511,50 @@ public void SaveSecondAllotHeadData(int secondId, string json)
List<ag_worktype_source> insertData = new List<ag_worktype_source>();
var worktypeSources = agworktypesourceRepository.GetEntities(t => t.SecondId == secondId);
if (worktypeSources == null || !worktypeSources.Any())
//多工作量
var workTypes = agworkloadtypeRepository.GetEntities();
var workValue = new List<int>();
foreach (var item in keys)
{
var workTypes = agworkloadtypeRepository.GetEntities();
var workValue = new List<int>();
foreach (var item in keys)
{
var value = item.Replace("workload_ratio_", "").Replace("workload_amount_", "");
if (!Regex.IsMatch(value, @"^\d")) continue;
workValue.Add(Convert.ToInt32(value));
}
if (workValue == null || !workValue.Any())
return;
var value = item.Replace("workload_ratio_", "").Replace("workload_amount_", "");
if (!Regex.IsMatch(value, @"^\d")) continue;
workValue.Add(Convert.ToInt32(value));
}
if (workValue == null || !workValue.Any())
return;
foreach (var value in workValue)
foreach (var value in workValue)
{
for (int i = 0; i < prefix.Length; i++)
{
for (int i = 0; i < prefix.Length; i++)
var fieldId = prefix[i] + $"{value}";
var typeName = workTypes?.FirstOrDefault(t => t.Id == value)?.TypeName;
var source = new ag_worktype_source
{
var fieldId = prefix[i] + $"{value}";
var typeName = workTypes?.FirstOrDefault(t => t.Id == value)?.TypeName;
var source = new ag_worktype_source
{
WorkTypeId = value,
SecondId = secondId,
FieldId = fieldId,
FieldName = i == 0 ? typeName + "占比" : typeName + "金额",
Value = prefix[i].StartsWith(prefix[0]) ? (decimal?)Convert.ToDecimal(dict[fieldId.ToLower()]) : null,
};
insertData.Add(source);
WorkTypeId = value,
SecondId = secondId,
FieldId = fieldId,
FieldName = i == 0 ? typeName + "占比" : typeName + "金额",
Value = prefix[i].StartsWith(prefix[0]) ? (decimal?)Convert.ToDecimal(dict[fieldId.ToLower()]) : null,
};
insertData.Add(source);
}
}
agworktypesourceRepository.AddRange(insertData.ToArray());
}
foreach (var k in worktypeSources.Select(t => t.FieldId))
{
var remove = insertData.FirstOrDefault(t => t.FieldId.EqualsIgnoreCase(k));
if (remove != null)
{
insertData.Remove(remove);
}
}
agworktypesourceRepository.AddRange(insertData.ToArray());
worktypeSources = agworktypesourceRepository.GetEntities(t => t.SecondId == secondId);
foreach (var key in keys)
{
var update = worktypeSources.FirstOrDefault(t => t.FieldId.EqualsIgnoreCase(key));
......
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