From 41589508f78ac9688bc5dfd8a72b7cf6157efe10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=95=E7=BE=8E=E8=8D=A3?= <10755671+mei-rong-he@user.noreply.gitee.com> Date: Wed, 22 Jul 2026 18:06:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=A6=96=E9=A1=B5=E6=8A=A5?= =?UTF-8?q?=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BIStatiscialAnalysisController.cs | 439 +++++++++++++++++- 1 file changed, 436 insertions(+), 3 deletions(-) diff --git a/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIStatiscialAnalysisController.cs b/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIStatiscialAnalysisController.cs index a69b039..a3f3a06 100644 --- a/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIStatiscialAnalysisController.cs +++ b/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIStatiscialAnalysisController.cs @@ -9735,7 +9735,7 @@ namespace APT.SC.WebApi.Controllers.Api.BIController baseFilter.SelectField = new string[] { "ID", "DEPARTMENT_ID" }; //var teams = GetEntities(t => !t.IS_DELETED && departmentIds.Contains(t.DEPARTMENT_ID.Value), baseFilter); //var teamIds = teams.Select(t => t.ID); - var completions = GetEntities(t => !t.IS_DELETED, new BaseFilter(orgId)).ToList(); + var completions = GetClassCompletion(orgId);// GetEntities(t => !t.IS_DELETED, new BaseFilter(orgId)).ToList(); //var teamIds = completions.Select(t => t.TEAM_ID); if (!string.IsNullOrEmpty(filter.Parameter2)) { @@ -9850,7 +9850,7 @@ namespace APT.SC.WebApi.Controllers.Api.BIController //if (string.IsNullOrEmpty(filter.Keyword)) // return ret; //var departmentInfo = this.GetEntities(t => t.PRODUCTION_UNIT_ID == Guid.Parse(filter.Keyword.ToString()), new BaseFilter(orgId)); - var completions = GetEntities(t => !t.IS_DELETED, new BaseFilter(orgId)).ToList(); + var completions = GetClassCompletion(orgId);//GetEntities(t => !t.IS_DELETED, new BaseFilter(orgId)).ToList(); var departmentInfos = this.GetEntities(t => t.ENABLE_STATUS == 0 && t.CATEGORY == FMCATEGORY.ACTURE, new BaseFilter(orgId), "Nav_Parent"); //List listDepBM = new List(); @@ -10005,8 +10005,441 @@ namespace APT.SC.WebApi.Controllers.Api.BIController } return ret; }); + } + + /// + /// 返回所有下级部门节点 + /// + /// + /// + /// + public List GetClassCompletion(Guid orgId) + { + List completions = new List(); + BaseFilter baseFilter = new BaseFilter(orgId); + var startTime = Convert.ToDateTime(DateTime.Now.AddMonths(-5).Year + "-" + DateTime.Now.AddMonths(-5).Month + "-01 00:00:00"); + var endTime = Convert.ToDateTime(DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day + " 23:59:59"); + baseFilter.SelectField = new string[] { "ID", "NAME", "DEPARTMENT_TYPE", "Nav_Parent.NAME", "PARENT_ID" }; + var departments = GetEntities(t => !t.IS_DELETED && t.ENABLE_STATUS == 0, baseFilter); + baseFilter.SelectField = new string[] { "ID", "DEPARTMENT_ID" }; + var teams = GetEntities(t => !t.IS_DELETED && t.ENABLE_STATUS == 0, baseFilter); + baseFilter.SelectField = new string[] { "TEAM_ID", "Nav_Team.NAME", "PRE_MEETING_STATUS", "DEPARTMENT_ID", "OVERTIME", "CREATE_TIME", "Nav_User.DEPARTMENT_ID" }; //指定字段,包括导航属性 + var preShiftMeetingTemp = GetEntities(i => i.CREATE_TIME >= startTime && i.IS_DELETED == false, baseFilter).ToList(); + //baseFilter.SelectField = new string[] { "CLASS_TEAM_ID", "Nav_Team.NAME", "SHIFT_STATUS", "DEPARTMENT_ID", "OVERTIME", "CREATE_TIME", "Nav_Editor.DEPARTMENT_ID" }; //指定字段,包括导航属性 + //var currentShiftTemp = GetEntities(i => i.CREATE_TIME >= startTime && i.IS_DELETED == false, baseFilter).ToList(); + //baseFilter.SelectField = new string[] { "TEAM_ID", "Nav_Team.NAME", "SHIFT_STATUS", "DEPARTMENT_ID", "OVERTIME", "CREATE_TIME" }; //指定字段,包括导航属性 + //var changeShiftTemp = GetEntities(i => i.CREATE_TIME >= startTime && i.IS_DELETED == false, baseFilter).ToList(); + baseFilter.SelectField = new string[] { "TEAM_ID", "Nav_Taem.NAME", "TA_STATUS", "Nav_Taem.DEPARTMENT_ID", "OVERTIME", "CREATE_TIME", "Nav_MainUser.DEPARTMENT_ID" }; //指定字段,包括导航属性 + var teamActivityTemp = GetEntities(i => i.CREATE_TIME >= startTime && i.IS_DELETED == false, baseFilter).ToList(); + for (DateTime i = startTime; i <= endTime; i = i.AddMonths(i.Month - i.Month + 1).AddDays(1 - i.Day)) + { + var monthEnd = Convert.ToDateTime(i.AddMonths(i.Month - i.Month + 1).AddDays(1 - i.Day - 1).ToString().Replace("0:00:00", "23:59:59")); + var preTemp = preShiftMeetingTemp.Where(t => t.CREATE_TIME >= i && t.CREATE_TIME <= monthEnd).ToList(); + foreach (var item in preTemp) + { + if (item.TEAM_ID == null) + { + item.TEAM_ID = item.Nav_User?.DEPARTMENT_ID; + } + else + { + var deparId = teams.FirstOrDefault(t => t.ID == item.TEAM_ID)?.DEPARTMENT_ID; + item.TEAM_ID = deparId; + } + } + var preShiftMeeting = preTemp. + GroupBy(m => new { m.TEAM_ID }). + Select(group => new + { + group.Key.TEAM_ID, + totalCount = group.Count(), + finishCount = group.Where(i => i.PRE_MEETING_STATUS == FOPreMeetingStatusEnum.归档).Count(), + waitingCount = group.Where(i => i.PRE_MEETING_STATUS != FOPreMeetingStatusEnum.归档).Count(), + onTimeCount = group.Where(i => i.PRE_MEETING_STATUS == FOPreMeetingStatusEnum.归档 && i.OVERTIME == FOISOVERTIME.超时).Count(), + overTimeCount = group.Where(i => i.PRE_MEETING_STATUS == FOPreMeetingStatusEnum.归档 && i.OVERTIME == FOISOVERTIME.超时).Count() + }).ToList(); + if (preShiftMeeting.Any()) + { + foreach (var item in preShiftMeeting) + { + //var deparId = teams.FirstOrDefault(t => t.ID == item.Key.TEAM_ID)?.DEPARTMENT_ID; + var departInfo = departments.FirstOrDefault(t => t.ID == item.TEAM_ID); //GetDepartmentId((Guid)item.Key.DEPARTMENT_ID); + T_FM_DEPARTMENT_COMPLETION completion = new T_FM_DEPARTMENT_COMPLETION(); + completion.MONTH = i; + completion.MONTHStr = i.Year + "年" + i.Month + "月"; + completion.TOTAL_COUNT = item.totalCount; + completion.WAITTING_COUNT = item.waitingCount; + completion.FINISH_COUNT = item.finishCount; + completion.ONTIME_COUNT = item.onTimeCount; + completion.OVERTIME_COUNT = item.overTimeCount; + completion.FORM_NAME = "班前会议"; + completion.ORG_ID = orgId; + completion.START_TIME = i; + completion.END_TIME = monthEnd; + if (departInfo != null) + { + //if (departInfo.DEPARTMENT_TYPE == 10 || departInfo.DEPARTMENT_TYPE == 5) + //{ + // completion.DEPARTMENT_ID = item.Key.TEAM_ID; + // completion.DEPARTMENT_NAME = item.Key.TeamName; + // completion.SHOP_DEPARTMENT_ID = null; + // completion.SHOP_DEPARTMENT_NAME = null; + // completion.TEAM_ID = null; + // completion.TEAM_NAME = null; + //} + //if (departInfo.DEPARTMENT_TYPE == 15) + //{ + // completion.DEPARTMENT_ID = departInfo?.PARENT_ID; + // completion.DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME; + // completion.SHOP_DEPARTMENT_ID = item.Key.TEAM_ID; + // completion.SHOP_DEPARTMENT_NAME = item.Key.TeamName; + // completion.TEAM_ID = null; + // completion.TEAM_NAME = null; + //} + //if (departInfo.DEPARTMENT_TYPE == 20) + //{ + // completion.DEPARTMENT_ID = departInfo?.Nav_Parent?.PARENT_ID; + // completion.DEPARTMENT_NAME = departInfo?.Nav_Parent?.Nav_Parent?.NAME; + // completion.SHOP_DEPARTMENT_ID = departInfo?.PARENT_ID; + // completion.SHOP_DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME; + // completion.TEAM_ID = departInfo.ID; + // completion.TEAM_NAME = departInfo.NAME; + //} + completion.DEPARTMENT_ID = departInfo?.PARENT_ID; + completion.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == completion.DEPARTMENT_ID)?.NAME; + completion.TEAM_ID = departInfo?.ID; + completion.TEAM_NAME = departInfo?.NAME; + } + completions.Add(completion); + } + } + else + { + + T_FM_DEPARTMENT_COMPLETION completion = new T_FM_DEPARTMENT_COMPLETION(); + completion.MONTH = i; + completion.MONTHStr = i.Year + "年" + i.Month + "月"; + completion.TOTAL_COUNT = 0; + completion.WAITTING_COUNT = 0; + completion.FINISH_COUNT = 0; + completion.ONTIME_COUNT = 0; + completion.OVERTIME_COUNT = 0; + completion.FORM_NAME = "班前会议"; + completion.ORG_ID = orgId; + completion.START_TIME = i; + completion.END_TIME = monthEnd; + completions.Add(completion); + } + // var currentTemp = currentShiftTemp.Where(t => t.CREATE_TIME >= i && t.CREATE_TIME <= monthEnd).ToList(); + // foreach (var item in currentTemp) + // { + // if (item.CLASS_TEAM_ID == null) + // { + // item.CLASS_TEAM_ID = item.Nav_Editor?.DEPARTMENT_ID; + // } + // else + // { + // var deparId = teams.FirstOrDefault(t => t.ID == item.CLASS_TEAM_ID)?.DEPARTMENT_ID; + // item.CLASS_TEAM_ID = deparId; + // } + // } + // var currentShift = currentTemp. + // GroupBy(m => new { TEAM_ID = m.CLASS_TEAM_ID }). + //Select(group => new + //{ + // group.Key.TEAM_ID, + // totalCount = group.Count(), + // finishCount = group.Where(i => i.SHIFT_STATUS == (int)FOShiftStatusEnum.归档 || i.SHIFT_STATUS == (int)FOShiftStatusEnum.审批归档).Count(), + // waitingCount = group.Where(i => i.SHIFT_STATUS != (int)FOShiftStatusEnum.归档 && i.SHIFT_STATUS == (int)FOShiftStatusEnum.归档).Count(), + // onTimeCount = group.Where(i => (i.SHIFT_STATUS == (int)FOShiftStatusEnum.归档 || i.SHIFT_STATUS == (int)FOShiftStatusEnum.审批归档) && i.OVERTIME == FOISOVERTIME.未超时).Count(), + // overTimeCount = group.Where(i => (i.SHIFT_STATUS == (int)FOShiftStatusEnum.归档 || i.SHIFT_STATUS == (int)FOShiftStatusEnum.审批归档) && i.OVERTIME == FOISOVERTIME.超时).Count() + //}).ToList(); + // if (currentShift.Any()) + // { + // foreach (var item in currentShift) + // { + // //var deparId = teams.FirstOrDefault(t => t.ID == item.Key.CLASS_TEAM_ID)?.DEPARTMENT_ID; + // var departInfo = departments.FirstOrDefault(t => t.ID == item.TEAM_ID); //GetDepartmentId((Guid)item.Key.DEPARTMENT_ID); + // T_FM_DEPARTMENT_COMPLETION completion = new T_FM_DEPARTMENT_COMPLETION(); + // //completion.DEPARTMENT_ID = departInfo?.Nav_Parent?.PARENT_ID; + // //completion.DEPARTMENT_NAME = departInfo?.Nav_Parent?.Nav_Parent?.NAME; + // //completion.SHOP_DEPARTMENT_ID = departInfo?.PARENT_ID; + // //completion.SHOP_DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME; + // completion.MONTH = i; + // completion.MONTHStr = i.Year + "年" + i.Month + "月"; + // //completion.TEAM_ID = item.Key.CLASS_TEAM_ID; + // //completion.TEAM_NAME = item.Key.TeamName; + // completion.TOTAL_COUNT = item.totalCount; + // completion.WAITTING_COUNT = item.waitingCount; + // completion.FINISH_COUNT = item.finishCount; + // completion.ONTIME_COUNT = item.onTimeCount; + // completion.OVERTIME_COUNT = item.overTimeCount; + // completion.FORM_NAME = "岗位当班"; + // completion.ORG_ID = filter.GetOrgId(); + // completion.START_TIME = i; + // completion.END_TIME = monthEnd; + // if (departInfo != null) + // { + // //if (departInfo.DEPARTMENT_TYPE == 10 || departInfo.DEPARTMENT_TYPE == 5) + // //{ + // // completion.DEPARTMENT_ID = item.Key.CLASS_TEAM_ID; + // // completion.DEPARTMENT_NAME = item.Key.TeamName; + // // completion.SHOP_DEPARTMENT_ID = null; + // // completion.SHOP_DEPARTMENT_NAME = null; + // // completion.TEAM_ID = null; + // // completion.TEAM_NAME = null; + // //} + // //if (departInfo.DEPARTMENT_TYPE == 15) + // //{ + // // completion.DEPARTMENT_ID = departInfo?.PARENT_ID; + // // completion.DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME; + // // completion.SHOP_DEPARTMENT_ID = item.Key.CLASS_TEAM_ID; + // // completion.SHOP_DEPARTMENT_NAME = item.Key.TeamName; + // // completion.TEAM_ID = null; + // // completion.TEAM_NAME = null; + // //} + // //if (departInfo.DEPARTMENT_TYPE == 20) + // //{ + // // completion.DEPARTMENT_ID = departInfo?.Nav_Parent?.PARENT_ID; + // // completion.DEPARTMENT_NAME = departInfo?.Nav_Parent?.Nav_Parent?.NAME; + // // completion.SHOP_DEPARTMENT_ID = departInfo?.PARENT_ID; + // // completion.SHOP_DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME; + // // completion.TEAM_ID = departInfo.ID; + // // completion.TEAM_NAME = departInfo.NAME; + // //} + // completion.DEPARTMENT_ID = departInfo?.PARENT_ID; + // completion.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == completion.DEPARTMENT_ID)?.NAME; + // completion.TEAM_ID = departInfo?.ID; + // completion.TEAM_NAME = departInfo?.NAME; + // } + // completions.Add(completion); + // } + // } + // else + // { + + // T_FM_DEPARTMENT_COMPLETION completion = new T_FM_DEPARTMENT_COMPLETION(); + // completion.MONTH = i; + // completion.MONTHStr = i.Year + "年" + i.Month + "月"; + // completion.TOTAL_COUNT = 0; + // completion.WAITTING_COUNT = 0; + // completion.FINISH_COUNT = 0; + // completion.ONTIME_COUNT = 0; + // completion.OVERTIME_COUNT = 0; + // completion.FORM_NAME = "岗位当班"; + // completion.ORG_ID = filter.GetOrgId(); + // completion.START_TIME = i; + // completion.END_TIME = monthEnd; + // completions.Add(completion); + // } + // var changeTemp = changeShiftTemp.Where(t => t.CREATE_TIME >= i && t.CREATE_TIME <= monthEnd).ToList(); + // foreach (var item in changeTemp) + // { + // if (item.TEAM_ID == null) + // { + // item.TEAM_ID = item.DEPARTMENT_ID; + // } + // else + // { + // var deparId = teams.FirstOrDefault(t => t.ID == item.TEAM_ID)?.DEPARTMENT_ID; + // item.TEAM_ID = deparId; + // } + // } + // var changeShift = changeTemp. + // GroupBy(m => new { m.TEAM_ID }). + // Select(group => new + // { + // group.Key.TEAM_ID, + // totalCount = group.Count(), + // finishCount = group.Where(i => i.SHIFT_STATUS == (int)FOChangeShiftStatusEnum.归档).Count(), + // waitingCount = group.Where(i => i.SHIFT_STATUS != (int)FOChangeShiftStatusEnum.归档).Count(), + // onTimeCount = group.Where(i => i.SHIFT_STATUS == (int)FOChangeShiftStatusEnum.归档 && i.OVERTIME == FOISOVERTIME.未超时).Count(), + // overTimeCount = group.Where(i => i.SHIFT_STATUS == (int)FOChangeShiftStatusEnum.归档 && i.OVERTIME == FOISOVERTIME.超时).Count() + // }).ToList(); + // if (changeShift.Any()) + // { + // foreach (var item in changeShift) + // { + // var departInfo = departments.FirstOrDefault(t => t.ID == item.TEAM_ID); + // //var departInfo = departments.FirstOrDefault(t => t.ID == deparId); //GetDepartmentId((Guid)item.Key.DEPARTMENT_ID); + // T_FM_DEPARTMENT_COMPLETION completion = new T_FM_DEPARTMENT_COMPLETION(); + // //completion.DEPARTMENT_ID = departInfo?.Nav_Parent?.PARENT_ID; + // //completion.DEPARTMENT_NAME = departInfo?.Nav_Parent?.Nav_Parent?.NAME; + // //completion.SHOP_DEPARTMENT_ID = departInfo?.PARENT_ID; + // //completion.SHOP_DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME; + // completion.MONTH = i; + // completion.MONTHStr = i.Year + "年" + i.Month + "月"; + // //completion.TEAM_ID = item.Key.TEAM_ID; + // //completion.TEAM_NAME = item.Key.TeamName; + // completion.TOTAL_COUNT = item.totalCount; + // completion.WAITTING_COUNT = item.waitingCount; + // completion.FINISH_COUNT = item.finishCount; + // completion.ONTIME_COUNT = item.onTimeCount; + // completion.OVERTIME_COUNT = item.overTimeCount; + // completion.FORM_NAME = "岗位交接班"; + // completion.ORG_ID = filter.GetOrgId(); + // completion.START_TIME = i; + // completion.END_TIME = monthEnd; + // if (departInfo != null) + // { + // //if (departInfo.DEPARTMENT_TYPE == 10 || departInfo.DEPARTMENT_TYPE == 5) + // //{ + // // completion.DEPARTMENT_ID = item.Key.TEAM_ID; + // // completion.DEPARTMENT_NAME = item.Key.TeamName; + // // completion.SHOP_DEPARTMENT_ID = null; + // // completion.SHOP_DEPARTMENT_NAME = null; + // // completion.TEAM_ID = null; + // // completion.TEAM_NAME = null; + // //} + // //if (departInfo.DEPARTMENT_TYPE == 15) + // //{ + // // completion.DEPARTMENT_ID = departInfo?.PARENT_ID; + // // completion.DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME; + // // completion.SHOP_DEPARTMENT_ID = item.Key.TEAM_ID; + // // completion.SHOP_DEPARTMENT_NAME = item.Key.TeamName; + // // completion.TEAM_ID = null; + // // completion.TEAM_NAME = null; + // //} + // //if (departInfo.DEPARTMENT_TYPE == 20) + // //{ + // // completion.DEPARTMENT_ID = departInfo?.Nav_Parent?.PARENT_ID; + // // completion.DEPARTMENT_NAME = departInfo?.Nav_Parent?.Nav_Parent?.NAME; + // // completion.SHOP_DEPARTMENT_ID = departInfo?.PARENT_ID; + // // completion.SHOP_DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME; + // // completion.TEAM_ID = departInfo.ID; + // // completion.TEAM_NAME = departInfo.NAME; + // //} + // completion.DEPARTMENT_ID = departInfo?.PARENT_ID; + // completion.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == completion.DEPARTMENT_ID)?.NAME; + // completion.TEAM_ID = departInfo?.ID; + // completion.TEAM_NAME = departInfo?.NAME; + // } + // completions.Add(completion); + // } + // } + // else + // { + + // T_FM_DEPARTMENT_COMPLETION completion = new T_FM_DEPARTMENT_COMPLETION(); + // completion.MONTH = i; + // completion.MONTHStr = i.Year + "年" + i.Month + "月"; + // completion.TOTAL_COUNT = 0; + // completion.WAITTING_COUNT = 0; + // completion.FINISH_COUNT = 0; + // completion.ONTIME_COUNT = 0; + // completion.OVERTIME_COUNT = 0; + // completion.FORM_NAME = "岗位交接班"; + // completion.ORG_ID = filter.GetOrgId(); + // completion.START_TIME = i; + // completion.END_TIME = monthEnd; + // completions.Add(completion); + // } + + var teamTemp = teamActivityTemp.Where(t => t.CREATE_TIME >= i && t.CREATE_TIME <= monthEnd).ToList(); + foreach (var item in teamTemp) + { + if (item.TEAM_ID == null) + { + item.TEAM_ID = item.Nav_MainUser?.DEPARTMENT_ID; + } + else + { + var deparId = teams.FirstOrDefault(t => t.ID == item.TEAM_ID)?.DEPARTMENT_ID; + item.TEAM_ID = deparId; + } + } + var teamActivity = teamTemp. + GroupBy(m => new { m.TEAM_ID }). + Select(group => new + { + group.Key.TEAM_ID, + totalCount = group.Count(), + finishCount = group.Where(i => i.TA_STATUS == (int)FOTeamActivityState.已归档).Count(), + waitingCount = group.Where(i => i.TA_STATUS != (int)FOTeamActivityState.已归档).Count(), + onTimeCount = group.Where(i => i.TA_STATUS == (int)FOTeamActivityState.已归档 && i.OVERTIME == FOISOVERTIME.未超时).Count(), + overTimeCount = group.Where(i => i.TA_STATUS == (int)FOTeamActivityState.已归档 && i.OVERTIME == FOISOVERTIME.超时).Count() + }).ToList(); + if (teamActivity.Any()) + { + foreach (var item in teamActivity) + { + //var deparId = teams.FirstOrDefault(t => t.ID == item.Key.TEAM_ID)?.DEPARTMENT_ID; + var departInfo = departments.FirstOrDefault(t => t.ID == item.TEAM_ID); //GetDepartmentId((Guid)item.Key.DEPARTMENT_ID); + T_FM_DEPARTMENT_COMPLETION completion = new T_FM_DEPARTMENT_COMPLETION(); + //completion.DEPARTMENT_ID = departInfo?.Nav_Parent?.PARENT_ID; + //completion.DEPARTMENT_NAME = departInfo?.Nav_Parent?.Nav_Parent?.NAME; + //completion.SHOP_DEPARTMENT_ID = departInfo?.PARENT_ID; + //completion.SHOP_DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME; + completion.MONTH = i; + completion.MONTHStr = i.Year + "年" + i.Month + "月"; + //completion.TEAM_ID = item.Key.TEAM_ID; + //completion.TEAM_NAME = item.Key.TeamName; + completion.TOTAL_COUNT = item.totalCount; + completion.WAITTING_COUNT = item.waitingCount; + completion.FINISH_COUNT = item.finishCount; + completion.ONTIME_COUNT = item.onTimeCount; + completion.OVERTIME_COUNT = item.overTimeCount; + completion.FORM_NAME = "班组安全活动记录"; + completion.ORG_ID = orgId; + completion.START_TIME = i; + completion.END_TIME = monthEnd; + if (departInfo != null) + { + //if (departInfo.DEPARTMENT_TYPE == 10 || departInfo.DEPARTMENT_TYPE == 5) + //{ + // completion.DEPARTMENT_ID = item.Key.TEAM_ID; + // completion.DEPARTMENT_NAME = item.Key.TeamName; + // completion.SHOP_DEPARTMENT_ID = null; + // completion.SHOP_DEPARTMENT_NAME = null; + // completion.TEAM_ID = null; + // completion.TEAM_NAME = null; + //} + //if (departInfo.DEPARTMENT_TYPE == 15) + //{ + // completion.DEPARTMENT_ID = departInfo?.PARENT_ID; + // completion.DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME; + // completion.SHOP_DEPARTMENT_ID = item.Key.TEAM_ID; + // completion.SHOP_DEPARTMENT_NAME = item.Key.TeamName; + // completion.TEAM_ID = null; + // completion.TEAM_NAME = null; + //} + //if (departInfo.DEPARTMENT_TYPE == 20) + //{ + // completion.DEPARTMENT_ID = departInfo?.Nav_Parent?.PARENT_ID; + // completion.DEPARTMENT_NAME = departInfo?.Nav_Parent?.Nav_Parent?.NAME; + // completion.SHOP_DEPARTMENT_ID = departInfo?.PARENT_ID; + // completion.SHOP_DEPARTMENT_NAME = departInfo?.Nav_Parent?.NAME; + // completion.TEAM_ID = departInfo.ID; + // completion.TEAM_NAME = departInfo.NAME; + //} + completion.DEPARTMENT_ID = departInfo?.PARENT_ID; + completion.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == completion.DEPARTMENT_ID)?.NAME; + completion.TEAM_ID = departInfo?.ID; + completion.TEAM_NAME = departInfo?.NAME; + } + completions.Add(completion); + } + } + else + { + + T_FM_DEPARTMENT_COMPLETION completion = new T_FM_DEPARTMENT_COMPLETION(); + completion.MONTH = i; + completion.MONTHStr = i.Year + "年" + i.Month + "月"; + completion.TOTAL_COUNT = 0; + completion.WAITTING_COUNT = 0; + completion.FINISH_COUNT = 0; + completion.ONTIME_COUNT = 0; + completion.OVERTIME_COUNT = 0; + completion.FORM_NAME = "班组安全活动记录"; + completion.ORG_ID = orgId; + completion.START_TIME = i; + completion.END_TIME = monthEnd; + completions.Add(completion); + } + } + return completions; } - /// /// 首页工作票完成数前八 ///