|
|
|
@ -3222,13 +3222,79 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon |
|
|
|
|
{ |
|
|
|
|
var config = await Db.Queryable<Ghrh_Config>().Where(x => x.ConfigCode == "ESS_Recruit_Year_Human_Start_Month").FirstAsync(); |
|
|
|
|
|
|
|
|
|
var StartMonth = config != null ? config.ConfigValue.ObjToInt() : 1; |
|
|
|
|
var startMonth = config != null ? config.ConfigValue.ObjToInt() : 1; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var data1 = new InsertGhrh_YearHumanApplyOrderInput() |
|
|
|
|
{ |
|
|
|
|
StartMonth = StartMonth, |
|
|
|
|
StartMonth = startMonth, |
|
|
|
|
}; |
|
|
|
|
data1.Items.Add(new InsertGhrh_YearHumanSettingsInput() { }); |
|
|
|
|
flowReturn.DT_TableDataT1 = data1; |
|
|
|
|
|
|
|
|
|
#region 处理起始月 |
|
|
|
|
var months = new List<string>(); |
|
|
|
|
List<int> numbers = new(); |
|
|
|
|
for (int i = 1; i <= 12; i++) |
|
|
|
|
{ |
|
|
|
|
if (i < 10) |
|
|
|
|
months.Add("0" + i); |
|
|
|
|
else |
|
|
|
|
months.Add(i.ObjToString()); |
|
|
|
|
numbers.Add(i); |
|
|
|
|
} |
|
|
|
|
var curentYear = DateTime.Now.Year; |
|
|
|
|
var curentMonth = DateTime.Now.Month; |
|
|
|
|
// 指定要打头的数字 |
|
|
|
|
int startNumber = startMonth; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (curentMonth < startMonth) |
|
|
|
|
curentYear = -1; |
|
|
|
|
|
|
|
|
|
data1.Year = curentYear; |
|
|
|
|
var sort = flowReturn.JM_TableColumnT1.TableColumn.Where(x => x.field == "M1").SingleOrDefault()?.rowNum ?? 5; |
|
|
|
|
// 创建一个新的列表用于存储重新排序后的结果 |
|
|
|
|
List<int> reorderedNumbers = new(); |
|
|
|
|
flowReturn.JM_TableColumnT1.TableColumn?.ForEach(x => |
|
|
|
|
{ |
|
|
|
|
if (months.Where(o => o == x.label).Any()) |
|
|
|
|
x.GroupName = "预算编制数"; |
|
|
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
// 找到指定数字的索引 |
|
|
|
|
int index1 = numbers.IndexOf(startNumber); |
|
|
|
|
if (index1 != -1) |
|
|
|
|
{ |
|
|
|
|
// 从指定数字开始,按照循环顺序添加数字 |
|
|
|
|
for (int i = 0; i < numbers.Count; i++) |
|
|
|
|
{ |
|
|
|
|
int currentIndex = (index1 + i) % numbers.Count; |
|
|
|
|
reorderedNumbers.Add(numbers[currentIndex]); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
foreach (var num in reorderedNumbers) |
|
|
|
|
{ |
|
|
|
|
flowReturn.JM_TableColumnT1.TableColumn?.ForEach(x => |
|
|
|
|
{ |
|
|
|
|
if (x.label.ObjToInt() == num) |
|
|
|
|
{ |
|
|
|
|
x.rowNum = sort; |
|
|
|
|
x.label = curentYear + "-" + x.label; |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
if (num == 12) |
|
|
|
|
curentYear++; |
|
|
|
|
sort++; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
flowReturn.JM_TableColumnT1.TableColumn = flowReturn.JM_TableColumnT1.TableColumn.OrderBy(x => x.rowNum).ToList(); |
|
|
|
|
#endregion |
|
|
|
|
data1.Items.Add(new Ghrh_YearHumanSettings() { }); |
|
|
|
|
var list = new List<InsertGhrh_YearHumanApplyOrderInput> |
|
|
|
|
{ |
|
|
|
|
data1 |
|
|
|
|
}; |
|
|
|
|
flowReturn.DT_TableDataT1 = list; |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case "F_ESS_RecruitManpowerRequestApply": |
|
|
|
@ -3435,15 +3501,28 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon |
|
|
|
|
|
|
|
|
|
#region 写入数据,并判断是否有错误 |
|
|
|
|
string json = param.jsonParam.ToString(); |
|
|
|
|
var dict = JsonHelper.JsonToObj<Ghrh_YearHumanSettings>(json); |
|
|
|
|
id = await Db.Insertable(dict).ExecuteReturnSnowflakeIdAsync(); |
|
|
|
|
var dict = JsonHelper.JsonToObj<InsertGhrh_YearHumanApplyOrderInput>(json); |
|
|
|
|
var dict1 = JsonHelper.JsonToObj<Ghrh_YearHumanApplyOrder>(json); |
|
|
|
|
dict1.ApplicantId = GetStaffId(); |
|
|
|
|
dict1.ApplicantTime = DateTime.Now; |
|
|
|
|
id = await Db.Insertable(dict1).ExecuteReturnSnowflakeIdAsync(); |
|
|
|
|
|
|
|
|
|
sql = $"SELECT ISNULL(MAX(id)+1,1) FROM Ghrh_YearHumanSettings WHERE Id !='{id}'"; |
|
|
|
|
sql = $"SELECT ISNULL(MAX(id)+1,1) FROM Ghrh_YearHumanApplyOrder WHERE Id !='{id}'"; |
|
|
|
|
var id1 = await Db.Ado.GetLongAsync(sql); |
|
|
|
|
sql = $"UPDATE Ghrh_YearHumanSettings SET Id={id1} WHERE Id ='{id}'"; |
|
|
|
|
sql = $"UPDATE Ghrh_YearHumanApplyOrder SET Id={id1} WHERE Id ='{id}'"; |
|
|
|
|
await Db.Ado.ExecuteCommandAsync(sql); |
|
|
|
|
|
|
|
|
|
id = id1; |
|
|
|
|
|
|
|
|
|
dict.Items.ForEach(x => |
|
|
|
|
{ |
|
|
|
|
x.OrderId = id; |
|
|
|
|
x.WorkState = 0; |
|
|
|
|
x.Year = dict1.Year; |
|
|
|
|
x.Id = SnowFlakeSingle.Instance.NextId(); |
|
|
|
|
}); |
|
|
|
|
await Db.Insertable(dict.Items).ExecuteCommandAsync(); |
|
|
|
|
|
|
|
|
|
#endregion |
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|