diff --git a/APT.MicroApi/APT.FM.WebApi/Controllers/Api/NotificationTaskController.cs b/APT.MicroApi/APT.FM.WebApi/Controllers/Api/NotificationTaskController.cs index bea710d..2f74254 100644 --- a/APT.MicroApi/APT.FM.WebApi/Controllers/Api/NotificationTaskController.cs +++ b/APT.MicroApi/APT.FM.WebApi/Controllers/Api/NotificationTaskController.cs @@ -268,8 +268,10 @@ namespace APT.FM.WebApi.Controllers.Api { var result = new PagedActionResult(); var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID; - var admiId = this.GetEntity(t => t.CODE == "admin")?.ID; - if (loginUserId == null || loginUserId == admiId) + var loginDepartmentId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID; + var admiId = this.GetEntity(t => t.CODE == "admin")?.ID; + var depart = this.GetEntity(loginDepartmentId.ToString()); + if (loginUserId == null || loginUserId == admiId ||(depart!=null && depart.DEPARTMENT_TYPE == 5)) { DataOrder order2 = new DataOrder(); order2.Field = "TASK_STARTDT"; @@ -279,10 +281,8 @@ namespace APT.FM.WebApi.Controllers.Api } else { - var loginDepartmentId = this.GetEntity(loginUserId.ToString())?.DEPARTMENT_ID; - if (loginDepartmentId != null) + if (depart != null) { - var depart = this.GetEntity(loginDepartmentId.ToString()); if (depart.DEPARTMENT_TYPE == 20 && depart.USER_ID != loginUserId) { DataOrder order2 = new DataOrder(); diff --git a/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs b/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs index ef83d02..f963571 100644 --- a/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs +++ b/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs @@ -244,6 +244,50 @@ namespace APT.FO.WebApi.Controllers.Api.FO else { pageFilter.IgnoreDataRule = false; + } + var curUser = ""; var changeDept = ""; var changeUser = ""; + if (pageFilter != null && pageFilter.FilterGroup != null && pageFilter.FilterGroup.Groups != null) + { + foreach (var item in pageFilter.FilterGroup.Groups) + { + var curUserTemp = item.Rules.FirstOrDefault(t => t.Field == "CURRENT_USER"); + if (curUserTemp != null) + { + curUser = curUserTemp.Value.ToString(); + item.Rules.Remove(curUserTemp); + } + var changeDeptTemp = item.Rules.FirstOrDefault(t => t.Field == "CHANGE_DEPART"); + if (changeDeptTemp != null) + { + changeDept = changeDeptTemp.Value.ToString(); + item.Rules.Remove(changeDeptTemp); + } + var changeUserTemp = item.Rules.FirstOrDefault(t => t.Field == "CHANGE_USER"); + if (changeUserTemp != null) + { + changeUser = changeUserTemp.Value.ToString(); + item.Rules.Remove(changeUserTemp); + } + } + var rules = pageFilter.FilterGroup.Rules.ToList(); + foreach (var item in rules) + { + if (item.Field == "CURRENT_USER") + { + curUser = item.Value.ToString(); + pageFilter.FilterGroup.Rules.Remove(item); + } + if (item.Field == "CHANGE_DEPART") + { + changeDept = item.Value.ToString(); + pageFilter.FilterGroup.Rules.Remove(item); + } + if (item.Field == "CHANGE_USER") + { + changeUser = item.Value.ToString(); + pageFilter.FilterGroup.Rules.Remove(item); + } + } } result = this.GetOrderPageEntities(null, pageFilter); //else @@ -280,6 +324,19 @@ namespace APT.FO.WebApi.Controllers.Api.FO } } } + if (!string.IsNullOrEmpty(curUser)) + { + result.Data = result.Data.Where(t=>t.CURRENT_USER.Contains(curUser)).ToList(); + } + if (!string.IsNullOrEmpty(changeDept)) + { + result.Data = result.Data.Where(t => t.CHANGE_DEPART.Contains(changeDept)).ToList(); + } + if (!string.IsNullOrEmpty(changeUser)) + { + result.Data = result.Data.Where(t => t.CHANGE_USER.Contains(changeUser)).ToList(); + } + result.TotalCount = result.Data.Count(); } return result; } diff --git a/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobController.cs b/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobController.cs index b6fc23b..dac3f98 100644 --- a/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobController.cs +++ b/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobController.cs @@ -1427,6 +1427,26 @@ namespace APT.FO.WebApi.Controllers { var sendUserIds = new List(); //var curentApprove = appdetails.FirstOrDefault(i => i.NUM == appdetails.Min(x => x.NUM) && i.NODE_APPROVE_STATUS == (int)NodeApproveStatus.Doing); + //如果第一个批的人刚好是自己,加一条已办的审批记录 + var applyApprove = appdetails.Where(i => i.NUM == appdetails.Min(x => x.NUM) && i.APPROVE_USER_ID == applyUserId && i.NODE_APPROVE_STATUS == (int)NodeApproveStatus.Doing).ToList(); + if (applyApprove != null && applyApprove.Any()) + { + //本人默认审批,存入一条已办 + T_FM_NOTIFICATION_TASK curentTask = new T_FM_NOTIFICATION_TASK(); + curentTask.CODE = DateTime.Now.ToString("yyyyMMddHHmmss"); + curentTask.NOTICE_TITLE = approve.NAME + "-" + operationStep?.NAME + "审批"; + curentTask.SOURCE_DATA_ID = approve.ID; + curentTask.ORG_ID = approve.ORG_ID; + curentTask.ID = Guid.NewGuid(); + curentTask.TASK_STARTDT = DateTime.Now; + curentTask.TASK_ENDDT = DateTime.Now.AddHours(24); + curentTask.NOTICE_TYPE = (int)FMNoticeTypeEnum.消息; + curentTask.NOTICE_STATUS = (int)FMNoticeStatusEnum.正常已办; + curentTask.USER_ID = (Guid)applyUserId; + curentTask.USER_NAME = users.FirstOrDefault(t => t.ID == applyUserId)?.NAME; + curentTask.SOURCE_FORMCODE = approve.APPROVE_CODE; + notices.Add(curentTask); + } var detailTemps = appdetails.Where(i => i.NUM == appdetails.Min(x => x.NUM) && i.APPROVE_USER_ID != applyUserId && i.NODE_APPROVE_STATUS == (int)NodeApproveStatus.Doing).ToList(); if (detailTemps != null && detailTemps.Any()) { diff --git a/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobOutsourceController.cs b/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobOutsourceController.cs index 29fd3f9..17fced3 100644 --- a/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobOutsourceController.cs +++ b/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobOutsourceController.cs @@ -371,6 +371,26 @@ namespace APT.FO.WebApi.Controllers //所有节点均无审核人,直接归档 if (appdetails != null && appdetails.Any())//curentApprove == null { + // 如果第一个批的人刚好是自己,加一条已办的审批记录 + var applyApprove = appdetails.Where(i => i.NUM == appdetails.Min(x => x.NUM) && i.APPROVE_USER_ID == applyUserId && i.NODE_APPROVE_STATUS == (int)NodeApproveStatus.Doing).ToList(); + if (applyApprove != null && applyApprove.Any()) + { + //本人默认审批,存入一条已办 + T_FM_NOTIFICATION_TASK curentTask = new T_FM_NOTIFICATION_TASK(); + curentTask.CODE = DateTime.Now.ToString("yyyyMMddHHmmss"); + curentTask.NOTICE_TITLE = approve.NAME + "-" + operationStep?.NAME + "审批"; + curentTask.SOURCE_DATA_ID = approve.ID; + curentTask.ORG_ID = approve.ORG_ID; + curentTask.ID = Guid.NewGuid(); + curentTask.TASK_STARTDT = DateTime.Now; + curentTask.TASK_ENDDT = DateTime.Now.AddHours(24); + curentTask.NOTICE_TYPE = (int)FMNoticeTypeEnum.消息; + curentTask.NOTICE_STATUS = (int)FMNoticeStatusEnum.正常已办; + curentTask.USER_ID = (Guid)applyUserId; + curentTask.USER_NAME = users.FirstOrDefault(t => t.ID == applyUserId)?.NAME; + curentTask.SOURCE_FORMCODE = approve.APPROVE_CODE; + notices.Add(curentTask); + } var sendUserIds = new List(); var curentApprove = appdetails.FirstOrDefault(i => i.APPROVE_USER_ID == applyUserId); if (curentApprove != null) diff --git a/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIKanBanController.cs b/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIKanBanController.cs index d1ee2a6..221e9b3 100644 --- a/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIKanBanController.cs +++ b/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIKanBanController.cs @@ -25,6 +25,7 @@ using Microsoft.AspNetCore.Mvc; using Microsoft.Data.SqlClient; using MySqlX.XDevAPI.Common; using NPOI.SS.Formula.Functions; +using NPOI.Util; using System; using System.Collections.Generic; using System.Collections.ObjectModel; @@ -109,7 +110,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI public class JobTodayQty { public int qty { get; set; } - public Guid workTypeId { get; set; } + public Guid? workTypeId { get; set; } public string name { get; set; } } @@ -1019,6 +1020,11 @@ namespace APT.SC.WebApi.Controllers.Api.BI { throw new Exception("只能查询本年度数据,请修改结束时间!"); } + var company = "邦泰"; + if (!string.IsNullOrEmpty(filter.Keyword)) + { + company = filter.Keyword; + } JsonActionResult result = new JsonActionResult(); result.Data = new JobManage(); var list = new List(); @@ -1032,7 +1038,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI connection.Open(); //当日危险作业清单 - string sql = "select * from vhome_jobTodayList where create_time >='"+ startDate +"' and create_time<='" + endDate+"'"; + string sql = "select * from vhome_jobTodayList where create_time >='"+ startDate +"' and create_time<='" + endDate+"' and companyName ='" + company + "'"; SqlCommand com = new SqlCommand(sql, connection); SqlDataAdapter data = new SqlDataAdapter(com); data.Fill(tableList); @@ -1055,11 +1061,11 @@ namespace APT.SC.WebApi.Controllers.Api.BI } result.Data.jobList = list.ToList(); //当日工作票的统计数量 - string sqlJob = "select WORK_PERMIT_TYPE_ID,NAME,count(*) as QTY from vhome_jobTodayNew where create_time >='" + startDate + "' and create_time<='" + endDate + "' GROUP BY WORK_PERMIT_TYPE_ID,NAME ORDER BY QTY DESC"; - SqlCommand comJob = new SqlCommand(sqlJob, connection); - SqlDataAdapter jobData = new SqlDataAdapter(comJob); - jobData.Fill(tableJob); - result.Data.jobTodayQty = JobTodayQtyData(tableJob); + //string sqlJob = "select WORK_PERMIT_TYPE_ID,NAME,count(*) as QTY from vhome_jobTodayNew where create_time >='" + startDate + "' and create_time<='" + endDate + "' GROUP BY WORK_PERMIT_TYPE_ID,NAME ORDER BY QTY DESC"; + //SqlCommand comJob = new SqlCommand(sqlJob, connection); + //SqlDataAdapter jobData = new SqlDataAdapter(comJob); + //jobData.Fill(tableJob); + //result.Data.jobTodayQty = JobTodayQtyData(tableJob); connection.Close(); } catch (Exception ex) @@ -1069,6 +1075,24 @@ namespace APT.SC.WebApi.Controllers.Api.BI else throw new Exception("【" + HttpContext.Request.Path + "】错误日志:[Message]" + ex.Message); } + List jobTodayQtys = new List(); + if (list != null && list.Any()) + { + var groupBy = list.GroupBy(t=>t.jobName); + if (groupBy != null && groupBy.Any()) + { + foreach (var item in groupBy) + { + jobTodayQtys.Add(new JobTodayQty() + { + qty = item.Count(), + workTypeId = null, + name = item.Key.ToString(), + }); + } + } + } + result.Data.jobTodayQty = jobTodayQtys.ToList(); } return result; diff --git a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs index f96bea4..c23370b 100644 --- a/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs +++ b/APT.MicroApi/APT.SK.WebApi/Controllers/Api/HiddenDangerRectifyRecordController.cs @@ -665,6 +665,10 @@ namespace APT.SK.WebApi.Controllers this.ThrowError("030017"); pageFilter.IgnoreDataRule = true; var entity = this.GetEntity(id); + if (entity == null) + { + throw new Exception("请在弹窗页重新选择公司"); + } FilterRule ruleArea = new FilterRule(); ruleArea.Field = "RISK_AREA_ID"; ruleArea.Value = entity.RISK_AREA_ID;