Commit 58df56db by 钟博

Merge branch '二次分配工作量占比' into 发放表下载

parents 8d597c61 3514a30e
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text.RegularExpressions;
namespace Performance.Services namespace Performance.Services
{ {
...@@ -511,8 +512,43 @@ public void SaveSecondAllotHeadData(int secondId, string json) ...@@ -511,8 +512,43 @@ public void SaveSecondAllotHeadData(int secondId, string json)
List<ag_worktype_source> insertData = new List<ag_worktype_source>(); List<ag_worktype_source> insertData = new List<ag_worktype_source>();
var worktypeSources = agworktypesourceRepository.GetEntities(t => t.SecondId == secondId); var worktypeSources = agworktypesourceRepository.GetEntities(t => t.SecondId == secondId);
if (worktypeSources == null || !worktypeSources.Any()) if (worktypeSources == null || !worktypeSources.Any())
{
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; return;
foreach (var value in workValue)
{
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
{
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());
}
worktypeSources = agworktypesourceRepository.GetEntities(t => t.SecondId == secondId);
foreach (var key in keys) foreach (var key in keys)
{ {
var update = worktypeSources.FirstOrDefault(t => t.FieldId.EqualsIgnoreCase(key)); 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