using APT.BaseData.Domain.Entities;
using APT.BaseData.Domain.Entities.FM;
using APT.BaseData.Domain.Enums;
using APT.BaseData.Domain.Enums.PF;
using APT.BaseData.Domain.IServices;
using APT.BaseData.Domain.IServices.FM;
using APT.BaseData.Services.DomainServices;
using APT.BaseData.Services.Services.FM;
using APT.Infrastructure.Core;
using APT.MS.Domain.Entities.BS;
using APT.MS.Domain.Entities.FO;
using APT.MS.Domain.Entities.HM;
using APT.MS.Domain.Entities.SC.PE;
using APT.MS.Domain.Entities.SK;
using APT.MS.Domain.Enums;
using APT.MS.Domain.Enums.SK;
using APT.Utility;
using Castle.Core.Internal;
using InfluxData.Net.InfluxDb.Models.Responses;
using Microsoft.AspNetCore.Mvc;
using MySqlX.XDevAPI.Common;
using NPOI.SS.Formula.Functions;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Diagnostics;
using System.Linq;
using System.Linq.Expressions;
using System.Threading.Tasks;
namespace APT.SK.WebApi.Controllers.Api
{
public class OperateLogDto
{
///
/// 操作类型 安全检查/隐患上报(对应的 DATA_ID 不一样)
///
[Description("操作类型")]
public SKLOGTYPE_Enums LOGTYPE { get; set; }
///
/// 表单ID
///
[Description("表单ID")]
public Guid DATA_ID { get; set; }
///
/// 表单明细ID
///
[Description("表单明细ID")]
public Guid? DATA_ID_SUB { get; set; }
///
/// 操作节点
///
[Description("操作节点")]
public SKOPERATEPOINT_Enums OPERATEPOINT { get; set; }
///
/// 操作人(需要操作的人)
///
[Description("操作人")]
public Guid USER_ID { get; set; }
///
/// 操作人
///
[Description("操作人")]
public string USRTNAME { get; set; }
///
/// 排序 比如审批 可能多节点
///
[Description("排序")]
public int ORDERNO { get; set; }
///
/// 操作时间
///
[Description("操作时间")]
public DateTime? OPERTETIME { get; set; }
[Description("排序时间")]
public DateTime? ORDERTIME { get; set; }
///
/// 是否按时
///
[Description("是否按时")]
public bool? ISINTTIME { get; set; }
}
//全流程可视化(检查通知-检查记录-检查汇总-隐患上报-整改通知-整改记录)
public class OperateLog
{
[Description("表单名称")]
public string FORM_NAME { get; set; }
[Description("流程节点")]
public List logList { get; set; }
}
public class OperateLogList {
[Description("数据ID")]
public Guid? ID { get; set; }
[Description("表单编号")]
public string CODE { get; set; }
[Description("待办名称")]
public string NAME { get; set; }
[Description("待办人")]
public string USER_NAME { get; set; }
[Description("处理时间")]
public DateTime? DEAL_DATE { get; set; }
[Description("处理时间")]
public DateTime? CREATE_TIME { get; set; }
[Description("处理状态")]
public int STATUS { get; set; }
}
///
/// 安全检查通知
///
[Route("api/SK/SKSecurityInspectionNotice")]
public partial class SecurityInspectionNoticeController : AuthorizeApiController
{
IPFApproveCallBackService ApproveCallBackService { get; set; }
IFMNotificationTaskService NotificationTaskService { get; set; }
IPFCodeRuleService CodeRuleService { get; set; }
IFMFlowPermitService MFlowPermitService { get; set; }
///
/// 安全检查通知
///
///
///
///
///
public SecurityInspectionNoticeController(IFMNotificationTaskService notificationTaskService, IPFApproveCallBackService approveCallBackService, IFMFlowPermitService mFlowPermitService, IPFCodeRuleService codeRuleService)
{
NotificationTaskService = notificationTaskService;
ApproveCallBackService = approveCallBackService;
MFlowPermitService = mFlowPermitService;
CodeRuleService = codeRuleService;
}
///
/// 保存
///
///
///
[HttpPost, Route("FullUpdate")]
public JsonActionResult FullUpdate([FromBody] T_SK_SECURITY_INSPECTION_NOTICE entity)
{
return SafeExecute(() =>
{
var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
var departId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
if (entity.APPLY_USER_ID == null)
entity.APPLY_USER_ID = userId;
if (entity.APPLY_DEPARTMENT_ID == null)
entity.APPLY_DEPARTMENT_ID = departId;
if (entity.CHECK_TYPE_ID == null)
throw new Exception("检查类型不能为空");
if (entity.CHECK_TIME == null || entity.CHECK_TIME == DateTime.MinValue)
throw new Exception("检查时间必须填写");
entity.ApplyDepartmentName = this.GetEntity(t => t.ID == departId).NAME;
entity.ApplyPostName = this.GetEntity(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME;
var details = entity.Nav_CheckNoticeDetails;
entity.Nav_CheckNoticeDetails = null;
var files = entity.Nav_CheckNoticeFiles;
entity.Nav_CheckNoticeFiles = null;
List userIds = new List();
List deleteUserIds = new List();
List deleteBasicIds = new List();
List deleteDetailIds = new List();
List userList = new List();
List basicList = new List();
if (details != null && details.Any())
{
var evaluationIsExist = this.GetEntity(t => t.ID == entity.ID, new string[] { "Nav_CheckNoticeDetails", "Nav_CheckNoticeDetails.Nav_CheckNoticeDetailUsers", "Nav_CheckNoticeDetails.Nav_CheckNoticeDetailBasics" });
if (evaluationIsExist != null && evaluationIsExist.Nav_CheckNoticeDetails != null && evaluationIsExist.Nav_CheckNoticeDetails.Any())
{
evaluationIsExist.Nav_CheckNoticeDetails.ForEach(t =>
{
if (t.Nav_CheckNoticeDetailUsers != null && t.Nav_CheckNoticeDetailUsers.Any())
{
var tempIds = t.Nav_CheckNoticeDetailUsers.Select(m => m.ID).ToList();
deleteUserIds.AddRange(tempIds);
}
if (t.Nav_CheckNoticeDetailBasics != null && t.Nav_CheckNoticeDetailBasics.Any())
{
var tempIds = t.Nav_CheckNoticeDetailBasics.Select(m => m.ID).ToList();
deleteBasicIds.AddRange(tempIds);
}
deleteDetailIds.Add(t.ID);
});
}
foreach (var item in details)
{
if (item.Nav_CheckNoticeDetailUsers != null && item.Nav_CheckNoticeDetailUsers.Any())
{
item.Nav_CheckNoticeDetailUsers = item.Nav_CheckNoticeDetailUsers.OrderByDescending(t => t.Nav_User?.Nav_ApproveRole?.CODE).ToList();
var i = 1;
foreach (var item2 in item.Nav_CheckNoticeDetailUsers)
{
item2.ORG_ID = entity.ORG_ID;
item2.SECURITY_INSPECTION_NOTICE_DETAIL_ID = item.ID;
item2.Nav_User = null;
item2.ISMAINCHECK = i == 1 ? true : false;
if (item2.USER_ID != null)
{
userIds.Add((Guid)item2.USER_ID);
}
userList.Add(item2);
i++;
}
}
if (item.Nav_CheckNoticeDetailBasics != null && item.Nav_CheckNoticeDetailBasics.Any())
{
foreach (var item2 in item.Nav_CheckNoticeDetailBasics)
{
if (item2 != null)
{
item2.ORG_ID = entity.ORG_ID;
item2.SECURITY_INSPECTION_NOTICE_DETAIL_ID = item.ID;
item2.Nav_CheckNoticeDetail = null;
item2.Nav_Law = null;
basicList.Add(item2);
}
}
}
item.ORG_ID = entity.ORG_ID;
item.SECURITY_INSPECTION_NOTICE_ID = entity.ID;
item.Nav_CheckNoticeDetailUsers = null;
item.Nav_CheckNoticeDetailBasics = null;
item.Nav_Contents = null;
}
}
if (files != null && files.Any())
{
foreach (var item in files)
{
item.ORG_ID = entity.ORG_ID;
item.SECURITY_INSPECTION_NOTICE_ID = entity.ID;
item.Nav_ImgFile = null;
}
}
if (string.IsNullOrEmpty(entity.CHECK_PERSON))
{
var detailUserIds = userList.Where(m => !m.IS_DELETED).Select(t => t.USER_ID).Distinct().ToList();
var userNames = this.GetEntities(t => t.ENABLE_STATUS == 0 && detailUserIds.Contains(t.ID), new BaseFilter(entity.ORG_ID)).Select(m => m.NAME).ToList();
entity.CHECK_PERSON = string.Join(",", userNames);
}
T_FM_NOTIFICATION_TASK task = null;
List notices = new List();
if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify"))
{
var param = "公司级";
var department = this.GetEntity(t => t.ID == entity.APPLY_DEPARTMENT_ID && t.ENABLE_STATUS == 0);
if (department != null)
{
param = Enum.GetName(typeof(SKDepartmentTypeEnum), department.DEPARTMENT_TYPE);
if (department.DEPARTMENT_STATUS != 1)
{
param = "公司级";
}
}
var date = DateTime.Now.Year + DateTime.Now.Month.PadLeft(2, '0') + DateTime.Now.Day.PadLeft(2, '0');
entity.STATUS = PFStandardStatus.Approving;
//取审批流水码
var sysFilter = new SystemCodeFilter();
sysFilter.CodeType = (int)PFCodeRuleType.审批流编码;
sysFilter.Count = 1;
sysFilter.OrgId = entity.ORG_ID;
var codes = CodeRuleService.NewGenSerial(sysFilter);
var serialCode = codes.Split(new char[] { ',' });
MFlowPermitService.InsertApprove(serialCode[0], "SK006", param, entity.ID, "SK006_SHOWPRINT", entity.TaskID, true, () =>
{
if (task != null)
UpdateEntityNoCommit(task);
if (entity != null)
UpdateEntityNoCommit(entity);
if (deleteUserIds != null && deleteUserIds.Any())
this.BantchDeleteEntityNoCommit(deleteUserIds);
if (deleteBasicIds != null && deleteBasicIds.Any())
this.BantchDeleteEntityNoCommit(deleteBasicIds);
if (deleteDetailIds != null && deleteDetailIds.Any())
this.BantchDeleteEntityNoCommit(deleteDetailIds);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (userList != null && userList.Any())
BantchSaveEntityNoCommit(userList);
if (basicList != null && basicList.Any())
BantchSaveEntityNoCommit(basicList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (notices != null && notices.Any())
BantchSaveEntityNoCommit(notices);
}, null, null, null, null, null, "SK006_SHOWPRINT", null, entity.DEPARTMENT_TYPE.GetDescription() + "安全检查通知" + date + entity.Nav_CheckType?.NAME + "待审批");
return true;
}
this.UnifiedCommit(() =>
{
if (task != null)
UpdateEntityNoCommit(task);
if (entity != null)
UpdateEntityNoCommit(entity);
if (deleteUserIds != null && deleteUserIds.Any())
this.BantchDeleteEntityNoCommit(deleteUserIds);
if (deleteBasicIds != null && deleteBasicIds.Any())
this.BantchDeleteEntityNoCommit(deleteBasicIds);
if (deleteDetailIds != null && deleteDetailIds.Any())
this.BantchDeleteEntityNoCommit(deleteDetailIds);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (userList != null && userList.Any())
BantchSaveEntityNoCommit(userList);
if (basicList != null && basicList.Any())
BantchSaveEntityNoCommit(basicList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (notices != null && notices.Any())
BantchSaveEntityNoCommit(notices);
});
return true;
});
}
///
/// 签字人员获取
///
///
///
[HttpPost, Route("GetIdentityUserEdit")]
public JsonActionResult GetIdentityUserEdit([FromBody] KeywordFilter filter)
{
return SafeExecute(() => {
var id = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "ID").Value.ToString();
if (string.IsNullOrEmpty(id))
this.ThrowError("030017");
var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
filter.IgnoreDataRule = true;
var result = this.GetEntity(id, new string[] {"Nav_ApplyUser","Nav_ApplyDepartment","Nav_CheckType",
"Nav_CheckNoticeDetails","Nav_CheckNoticeDetails.Nav_RiskArea","Nav_CheckNoticeDetails.Nav_Contents","Nav_CheckNoticeDetails.Nav_CheckNoticeDetailBasics.Nav_Law",
"Nav_CheckNoticeDetails.Nav_CheckNoticeDetailUsers.Nav_User","Nav_CheckNoticeFiles","Nav_CheckNoticeFiles.Nav_ImgFile","Nav_ProductionUnit"});
//var taskId = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "TASK_ID").Value;
if (result != null && result.Nav_CheckNoticeDetails != null && result.Nav_CheckNoticeDetails.Any())// && taskId!=null
{
foreach (var detail in result.Nav_CheckNoticeDetails)
{
detail.Nav_CheckNoticeDetailUsers = detail.Nav_CheckNoticeDetailUsers.OrderByDescending(t => t.ISMAINCHECK).ToList();
}
result.Nav_CheckNoticeDetails = result.Nav_CheckNoticeDetails.OrderBy(t => t.RISK_AREA_ID).ThenBy(m => m.NUM).ToList();//.Where(c => c.Nav_CheckNoticeDetailUsers != null && c.Nav_CheckNoticeDetailUsers.FirstOrDefault(m => m.USER_ID == loginUserId)?.USER_ID == loginUserId).OrderBy(m=>m.RISK_AREA_ID).ToList();
}
return result;
});
}
///
/// 签字人员获取
///
///
///
[HttpPost, Route("GetIdentityUserEditApp")]
public JsonActionResult GetIdentityUserEditApp([FromBody] KeywordFilter filter)
{
return SafeExecute(() => {
var id = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "ID").Value.ToString();
if (string.IsNullOrEmpty(id))
this.ThrowError("030017");
var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
filter.IgnoreDataRule = true;
var result = this.GetEntity(id, new string[] {"Nav_ApplyUser","Nav_ApplyDepartment","Nav_CheckType",
"Nav_CheckNoticeDetails","Nav_CheckNoticeDetails.Nav_RiskArea","Nav_CheckNoticeDetails.Nav_Contents","Nav_CheckNoticeDetails.Nav_CheckNoticeDetailBasics.Nav_Law",
"Nav_CheckNoticeDetails.Nav_CheckNoticeDetailUsers.Nav_User","Nav_CheckNoticeFiles","Nav_CheckNoticeFiles.Nav_ImgFile"});
//var taskId = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "TASK_ID").Value;
if (result != null && result.Nav_CheckNoticeDetails != null && result.Nav_CheckNoticeDetails.Any())// && taskId != null
{
result.CHECK_PERSON = string.IsNullOrEmpty(result.CHECK_PERSON) ? "" : result.CHECK_PERSON;
var detailTemps = result.Nav_CheckNoticeDetails.ToList();//.Where(c => c.Nav_CheckNoticeDetailUsers != null && c.Nav_CheckNoticeDetailUsers.FirstOrDefault(m => m.USER_ID == loginUserId)?.USER_ID == loginUserId).ToList();
result.Nav_CheckNoticeDetails = detailTemps.GroupBy(t => t.RISK_AREA_ID).Select(g => g.First()).ToList();
if (result.Nav_CheckNoticeDetails != null && result.Nav_CheckNoticeDetails.Any())
{
foreach (var item in result.Nav_CheckNoticeDetails.OrderBy(t => t.RISK_AREA_ID).ThenBy(m => m.NUM))
{
item.Nav_DetailContents = new List();
var userTemps = new List();
var safeCheck1 = detailTemps.Where(t => t.RISK_AREA_ID == item.RISK_AREA_ID).ToList();
if (safeCheck1 != null && safeCheck1.Any())
{
safeCheck1 = safeCheck1.OrderBy(t => t.RISK_AREA_ID).ThenBy(m => m.NUM).ToList();
foreach (var item2 in safeCheck1)
{
var lawTemps = new List();
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL ddd = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL();
ddd.CHECK_CONTENTS_ID = item2.CHECK_CONTENTS_ID;
ddd.Nav_Contents = item2.Nav_Contents;
ddd.CHECKCONTENT = item2.Nav_Contents != null ? item2.Nav_Contents.CHECKCONTENT : item2.CHECKCONTENT;
ddd.CHECKPROOF = item2.CHECKPROOF;
ddd.CHECKSTANDARD = item2.CHECKSTANDARD;
if (item2.Nav_CheckNoticeDetailBasics != null && item2.Nav_CheckNoticeDetailBasics.Any())
{
foreach (var item3 in item2.Nav_CheckNoticeDetailBasics)
{
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_BASIC uuu = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_BASIC();
uuu.LAW_ID = item3.LAW_ID;
uuu.Nav_Law = item3.Nav_Law;
lawTemps.Add(uuu);
}
}
ddd.Nav_CheckNoticeDetailBasics = lawTemps;
item.Nav_DetailContents.Add(ddd);
if (item2.Nav_CheckNoticeDetailUsers != null && item2.Nav_CheckNoticeDetailUsers.Any())
{
foreach (var item3 in item2.Nav_CheckNoticeDetailUsers.OrderByDescending(m => m.ISMAINCHECK))
{
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_USER uuu = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_USER();
uuu.USER_ID = item3.USER_ID;
uuu.Nav_User = item3.Nav_User;
var isExsist = userTemps.FirstOrDefault(t => t.USER_ID == item3.USER_ID);
if (isExsist == null)
{
userTemps.Add(uuu);
}
}
}
}
}
item.Nav_CheckNoticeDetailUsers = userTemps;
}
}
}
return result;
});
}
///
/// 识别人确认
///
///
///
[HttpPost, Route("IdentityUpdate")]
public JsonActionResult IdentityUpdate([FromBody] T_SK_SECURITY_INSPECTION_NOTICE entity)
{
return SafeExecute(() =>
{
T_FM_NOTIFICATION_TASK task = null;
var record = this.GetEntity(entity.ID, "Nav_CheckNoticeDetails", "Nav_CheckNoticeDetails.Nav_CheckNoticeDetailUsers.Nav_User");
var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
if (entity.TaskID != Guid.Empty)
{
var currTask = GetEntity(t => t.ID == entity.TaskID);
if (currTask != null)
{
userId = currTask.USER_ID;
}
}
var detailIds = record.Nav_CheckNoticeDetails.Select(t => t.ID).ToList();
var users = this.GetEntities(t => detailIds.Contains(t.SECURITY_INSPECTION_NOTICE_DETAIL_ID) && t.USER_ID == userId, new BaseFilter(record.ORG_ID)).ToList();
users.ForEach(t =>
{
t.ISCHECK = true;
t.CHECKTIME = DateTime.Now;
});
var todoCount = this.GetCount(t => detailIds.Contains(t.SECURITY_INSPECTION_NOTICE_DETAIL_ID) && t.USER_ID != userId && t.ISCHECK == false, new BaseFilter(record.ORG_ID));
if (todoCount == 0)
{
record.STATUS = PFStandardStatus.Archived;
}
if (entity.TaskID != Guid.Empty)
{
task = NotificationTaskService.GetTaskFinishModel(entity.TaskID);
task.SOURCE_FORMCODE = "SK006_SHOWPRINT";
}
UnifiedCommit(() =>
{
if (record != null)
this.UpdateEntityNoCommit(record);
if (users != null && users.Any())
this.BantchSaveEntityNoCommit(users);
if (task != null)
this.UpdateEntityNoCommit(task);
});
return true;
});
}
///
/// 获得单条实体数据
///
/// 过滤实体
///
[HttpPost, Route("SKGet")]
public JsonActionResult SKGet([FromBody] KeywordFilter filter)
{
return SafeExecute(() =>
{
var id = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "ID").Value.ToString();
if (string.IsNullOrEmpty(id))
this.ThrowError("060010");
filter.IgnoreDataRule = true;
var result = this.GetEntity(id, new string[] { "Nav_ApplyUser", "Nav_ApplyDepartment","Nav_CheckType",
"Nav_CheckNoticeFiles.Nav_ImgFile","Nav_ProductionUnit"});
if (result != null)
{
var details = this.GetEntities(t => t.SECURITY_INSPECTION_NOTICE_ID == result.ID, new BaseFilter(filter.OrgId), "Nav_RiskArea", "Nav_Contents", "Nav_CheckNoticeDetailBasics.Nav_Law");
if (details.Any())
{
var detailIds = details.Select(t => t.ID).ToList();
var users = this.GetEntities(t => detailIds.Contains(t.SECURITY_INSPECTION_NOTICE_DETAIL_ID), new BaseFilter(filter.OrgId), "Nav_User");
foreach (var detail in details)
{
var userTemps = users.Where(t => t.SECURITY_INSPECTION_NOTICE_DETAIL_ID == detail.ID).ToList();
detail.Nav_CheckNoticeDetailUsers = userTemps.OrderByDescending(t => t.ISMAINCHECK).ToList();
}
}
result.Nav_CheckNoticeDetails = details.OrderBy(t => t.RISK_AREA_ID).ThenBy(m => m.NUM).ToList();
if (result.STATUS == PFStandardStatus.Rejected)
{
result.CONTEXT = ApproveCallBackService.RejectContent(result.ID);
}
}
return result;
});
}
///
/// 根据检查类型,检查层级,当前人所在生产单元及其岗位自动带出所有区域下的检查内容
///
///
///
[HttpPost, Route("GetCheckContentPCs")]
public JsonActionResult> GetCheckContentPCs([FromBody] KeywordFilter filter)
{
var result = new JsonActionResult>();
var dataList = new List();
if (!string.IsNullOrEmpty(filter.Parameter1) && !string.IsNullOrEmpty(filter.Parameter2) && !string.IsNullOrEmpty(filter.Parameter3) && !string.IsNullOrEmpty(filter.Parameter4))
{
var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
var departId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
//var personId = this.GetEntity(t => t.ID == loginUserId && t.ENABLE_STATUS == 0)?.PERSON_ID;
//if (personId == null)
// throw new Exception("用户数据异常,请联系管理员排查");
//var postId = this.GetEntity(t => t.ID == personId)?.POST_ID;
//if (postId == null)
// throw new Exception("请先维护登陆人岗位");
var departType = SKDepartmentTypeEnum.部门级;
if (filter.Parameter3 == "10")
{
departType = SKDepartmentTypeEnum.部门级;
}
else if (filter.Parameter3 == "15")
{
departType = SKDepartmentTypeEnum.车间级;
}
else if (filter.Parameter3 == "20")
{
departType = SKDepartmentTypeEnum.班组级;
}
else if (filter.Parameter3 == "5")
{
departType = SKDepartmentTypeEnum.公司级;
}
else
{
throw new Exception("检查层级错误");
}
var cycle = SKPLANCHECKFREQUENCYEnum.Date;
if (filter.Parameter4 == "20")
{
cycle = SKPLANCHECKFREQUENCYEnum.Week;
}
else if (filter.Parameter4 == "30")
{
cycle = SKPLANCHECKFREQUENCYEnum.Month;
}
else if (filter.Parameter4 == "40")
{
cycle = SKPLANCHECKFREQUENCYEnum.Quarter;
}
else if (filter.Parameter4 == "50")
{
cycle = SKPLANCHECKFREQUENCYEnum.HalfYear;
}
else if (filter.Parameter4 == "60")
{
cycle = SKPLANCHECKFREQUENCYEnum.Year;
}
else
{
throw new Exception("检查周期错误");
}
var libs = this.GetEntities(t => t.PRODUCTION_UNIT_ID == Guid.Parse(filter.Parameter1), new BaseFilter(filter.OrgId),"Nav_Area").ToList();
var libIds = libs.Select(m=>m.ID).ToList();
var details = this.GetEntities(t => libIds.Contains(t.ENTERPRISE_LIBRARY_ID), new BaseFilter(filter.OrgId)).ToList();
var detailIds = details.Select(m => m.ID).ToList();
var contents = this.GetEntities(t => detailIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_ID), new BaseFilter(filter.OrgId), "Nav_Contents").ToList();
var contentIds = contents.Select(m=>m.ID).ToList();
var departs = this.GetEntities(t => contentIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID) && t.DEPARTMENT_ID == departId && t.CHECK_TYPE_ID == Guid.Parse(filter.Parameter2) && t.CHECK_TYPE == departType && t.CHECK_CYCLE == cycle, new BaseFilter(filter.OrgId));
var contentDepIds = departs.Select(t => t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID).ToList();
var libraryContents = contents.Where(t => contentDepIds.Contains(t.ID)).ToList();
if (libraryContents != null && libraryContents.Any())
{
foreach (var item in libraryContents)
{
var detailFist = details.FirstOrDefault(t => t.ID == item.ENTERPRISE_LIBRARY_DETAIL_ID);
var libFirst= libs.FirstOrDefault(t => t.ID == detailFist?.ENTERPRISE_LIBRARY_ID);
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL detail = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL();
detail.ORG_ID = filter.OrgId;
detail.RISK_AREA_ID = libFirst?.AREA_ID;
detail.Nav_RiskArea = libFirst?.Nav_Area;
detail.CHECK_CONTENTS_ID = item.CHECK_CONTENTS_ID;
detail.Nav_Contents = item.Nav_Contents;
detail.CHECKCONTENT = item.CHECK_CONTENT;
detail.CHECKPROOF = item.CHECK_BASIC;
detail.CHECKSTANDARD = item.CHECK_STANDARD;
detail.Nav_CheckNoticeDetailUsers = null;
dataList.Add(detail);
}
if (dataList != null && dataList.Any())
{
result.Data = dataList.OrderBy(t => t.RISK_AREA_ID).ToList();
}
}
}
return result;
}
///
/// 根据检查类型,检查层级,当前人所在生产单元及其岗位自动带出所有区域下的检查内容
///
///
///
[HttpPost, Route("GetCheckContents")]
public JsonActionResult> GetCheckContents([FromBody] KeywordFilter filter)
{
var result = new JsonActionResult>();
var dataList = new List();
if (!string.IsNullOrEmpty(filter.Parameter1) && !string.IsNullOrEmpty(filter.Parameter2) && !string.IsNullOrEmpty(filter.Parameter3) && !string.IsNullOrEmpty(filter.Parameter4))
{
var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
var departId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
//var personId = this.GetEntity(t => t.ID == loginUserId && t.ENABLE_STATUS == 0)?.PERSON_ID;
//if (personId == null)
// throw new Exception("用户数据异常,请联系管理员排查");
//var postId = this.GetEntity(t => t.ID == personId)?.POST_ID;
//if (postId == null)
// throw new Exception("请先维护登陆人岗位");
//var mineType = SKProductionUnit.Mine;
//if (filter.Parameter1 == "30")
//{
// mineType = SKProductionUnit.Mine;
//}
//else if (filter.Parameter1 == "10")
//{
// mineType = SKProductionUnit.MineChoose;
//}
//else if (filter.Parameter1 == "20")
//{
// mineType = SKProductionUnit.Minelast;
//}
//else if (filter.Parameter1 == "0")
//{
// mineType = SKProductionUnit.All;
//}
//else if (filter.Parameter1 == "40")
//{
// mineType = SKProductionUnit.MineUnderGround;
//}
//else if (filter.Parameter1 == "31")
//{
// mineType = SKProductionUnit.Department;
//}
//else if (filter.Parameter1 == "32")
//{
// mineType = SKProductionUnit.Nonmetallic;
//}
//else
//{
// throw new Exception("生产单元错误");
//}
var departType = SKDepartmentTypeEnum.部门级;
if (filter.Parameter3 == "10")
{
departType = SKDepartmentTypeEnum.部门级;
}
else if (filter.Parameter3 == "15")
{
departType = SKDepartmentTypeEnum.车间级;
}
else if (filter.Parameter3 == "20")
{
departType = SKDepartmentTypeEnum.班组级;
}
else if (filter.Parameter3 == "5")
{
departType = SKDepartmentTypeEnum.公司级;
}
else
{
throw new Exception("检查层级错误");
}
var cycle = SKPLANCHECKFREQUENCYEnum.Date;
if (filter.Parameter4 == "20")
{
cycle = SKPLANCHECKFREQUENCYEnum.Week;
}
else if (filter.Parameter4 == "30")
{
cycle = SKPLANCHECKFREQUENCYEnum.Month;
}
else if (filter.Parameter4 == "40")
{
cycle = SKPLANCHECKFREQUENCYEnum.Quarter;
}
else if (filter.Parameter4 == "50")
{
cycle = SKPLANCHECKFREQUENCYEnum.HalfYear;
}
else if (filter.Parameter4 == "60")
{
cycle = SKPLANCHECKFREQUENCYEnum.Year;
}
else
{
throw new Exception("检查周期错误");
}
var libs = this.GetEntities(t => t.PRODUCTION_UNIT_ID == Guid.Parse(filter.Parameter1), new BaseFilter(filter.OrgId), "Nav_Area").ToList();
var libIds = libs.Select(m => m.ID).ToList();
var details = this.GetEntities(t => libIds.Contains(t.ENTERPRISE_LIBRARY_ID), new BaseFilter(filter.OrgId)).ToList();
var detailIds = details.Select(m => m.ID).ToList();
var libContents = this.GetEntities(t => detailIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_ID), new BaseFilter(filter.OrgId), "Nav_Contents").ToList();
var contentIds = libContents.Select(m => m.ID).ToList();
var departs = this.GetEntities(t => contentIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID) && t.DEPARTMENT_ID == departId && t.CHECK_TYPE_ID == Guid.Parse(filter.Parameter2) && t.CHECK_TYPE == departType && t.CHECK_CYCLE == cycle, new BaseFilter(filter.OrgId));
var contentDepIds = departs.Select(t => t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID).ToList();
var libraryContents = libContents.Where(t => contentDepIds.Contains(t.ID)).ToList();
if (libraryContents != null && libraryContents.Any())
{
foreach (var item in libraryContents)
{
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL detail = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL();
detail.ORG_ID = filter.OrgId;
detail.RISK_AREA_ID = item.Nav_LibraryDetail?.Nav_Library?.AREA_ID;
detail.Nav_RiskArea = item.Nav_LibraryDetail?.Nav_Library?.Nav_Area;
detail.CHECK_CONTENTS_ID = item.CHECK_CONTENTS_ID;
detail.Nav_Contents = item.Nav_Contents;
detail.CHECKCONTENT = item.CHECK_CONTENT;
detail.CHECKPROOF = item.CHECK_BASIC;
detail.CHECKSTANDARD = item.CHECK_STANDARD;
detail.Nav_CheckNoticeDetailUsers = null;
dataList.Add(detail);
}
if (dataList != null && dataList.Any())
{
var newList = new List();
var tempIds = dataList.Select(x => x.RISK_AREA_ID).Distinct().ToList();
foreach (var temp in tempIds)
{
var mmm = dataList.FirstOrDefault(t => t.RISK_AREA_ID == temp);
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL detail = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL();
detail.ORG_ID = filter.OrgId;
detail.RISK_AREA_ID = temp;
detail.Nav_RiskArea = mmm?.Nav_RiskArea;
detail.Nav_CheckNoticeDetailUsers = null;
var ttt = dataList.Where(t => t.RISK_AREA_ID == temp).ToList();
if (ttt.Any())
{
List contents = new List();
foreach (var hh in ttt)
{
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL content = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL();
content.ORG_ID = filter.OrgId;
content.CHECK_CONTENTS_ID = hh.CHECK_CONTENTS_ID;
content.CHECKCONTENT = hh.CHECKCONTENT;
content.CHECKPROOF = hh.CHECKPROOF;
content.CHECKSTANDARD = hh.CHECKSTANDARD;
contents.Add(content);
}
detail.Nav_DetailContents = contents;
}
newList.Add(detail);
}
result.Data = newList.OrderBy(t => t.RISK_AREA_ID).ToList();
}
}
}
return result;
}
///
/// 回调函数
///
///
///
[HttpPost, Route("BackUpdateNew")]
public JsonActionResult BackUpdateNew([FromBody] T_PF_APPROVE entity)
{
return SafeExecute(() =>
{
return ApproveCallBackService.CallBackNew("SK/SKSecurityInspectionNotice/BackUpdateNew", entity);
});
}
///
/// 驳回
///
///
///
[HttpPost, Route("RejectUpdate")]
public JsonActionResult RejectUpdate([FromBody] T_PF_APPROVE model)
{
return SafeExecute(() =>
{
//公共 获取审批流信息
T_PF_APPROVE modelApp = null;
List listAppDetail = null;
T_FM_NOTIFICATION_TASK taskFinish = null;
string Msg = string.Empty;
bool ResultGetInfo = ApproveCallBackService.GetApproject(model, ref modelApp, ref listAppDetail, ref taskFinish, ref Msg);
if (!ResultGetInfo)
throw new Exception("驳回失败!");
if (modelApp == null || listAppDetail == null)
throw new Exception("获取驳回信息失败!");
var entity = this.GetEntity(model.DATA_ID, new string[] { "Nav_ApplyUser" });
entity.STATUS = PFStandardStatus.Rejected;
T_FM_NOTIFICATION_TASK notice = new T_FM_NOTIFICATION_TASK();
if (entity.APPLY_USER_ID != null)
{
//发消息
notice = NotificationTaskService.InsertUserNoticeTaskModel("安全检查通知表被驳回", entity.ID, entity.ORG_ID, (Guid)entity.APPLY_USER_ID, entity.Nav_ApplyUser?.NAME, DateTime.Now,
DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum.消息, "SK006");
}
UnifiedCommit(() =>
{
if (entity != null)
this.UpdateEntityNoCommit(entity);
if (notice != null)
this.UpdateEntityNoCommit(notice);
if (modelApp != null)
UpdateEntityNoCommit(modelApp);
if (listAppDetail != null && listAppDetail.Count > 0)
BantchUpdateEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
});
return true;
//return ApproveCallBackService.CallReject("HM/HMLicenseAnalysis/RejectUpdate", id);
});
}
///
/// 排序查询所有数据
///
/// 过滤实体
///
[HttpPost, Route("SKOrderEntities")]
public JsonActionResult>> SKOrderEntities([FromBody] KeywordFilter filter)
{
return SafeExecute>>(() =>
{
if (string.IsNullOrEmpty(filter.Keyword))
{
return new List>();
}
else
{
Guid Keyword = new Guid(filter.Keyword);
Guid? NoticeID = null;
Guid? RecordID = null;
Guid? RecordSummaryID = null;
Guid? ReportID = null;
Guid? RectifyNoticeID = null;
Guid? RectifyRecordID = null;
Guid? ConfirmID = null;
List sourceIds = new List();
var check = GetEntity(Keyword);
T_SK_SECURITY_INSPECTION_RECORD record = null;
T_SK_HIDDEN_DANGER_HAND_REPORT risk = null;
if (check != null)
{
NoticeID = check.ID;
sourceIds.Add(check.ID);
var recordTemp = GetEntity(e => e.SECURITY_INSPECTION_NOTICE_ID != null && e.SECURITY_INSPECTION_NOTICE_ID == NoticeID.Value);
if (recordTemp != null)
{
RecordID = recordTemp.ID;
sourceIds.Add(recordTemp.ID);
var recordSummaryTemp = GetEntity(e => e.SECURITY_INSPECTION_RECORD_ID != null && e.SECURITY_INSPECTION_RECORD_ID == recordTemp.ID);
if (recordSummaryTemp != null)
{
RecordSummaryID = recordSummaryTemp.ID;
sourceIds.Add(recordSummaryTemp.ID);
var hiddenReport = GetEntity(e => e.SECURITY_INSPECTION_RECORD_SUMMARY_ID != null && e.SECURITY_INSPECTION_RECORD_SUMMARY_ID == recordSummaryTemp.ID);
if (hiddenReport != null)
{
ReportID = hiddenReport.ID;
sourceIds.Add(hiddenReport.ID);
var rectifyNotice = GetEntity(e => e.HIDDEN_DANGER_REPORT_ID != null && e.HIDDEN_DANGER_REPORT_ID == hiddenReport.ID);
if (rectifyNotice != null)
{
RectifyNoticeID = rectifyNotice.ID;
sourceIds.Add(rectifyNotice.ID);
var rectifyRecord = GetEntity(e => e.HIDDEN_DANGER_RECTIFY_NOTICE_ID != null && e.HIDDEN_DANGER_RECTIFY_NOTICE_ID == rectifyNotice.ID);
if (rectifyRecord != null)
{
RectifyRecordID = rectifyRecord.ID;
sourceIds.Add(rectifyRecord.ID);
}
else
{
rectifyRecord = GetEntity(e => e.HIDDEN_DANGER_REPORT_ID != null && e.HIDDEN_DANGER_REPORT_ID == hiddenReport.ID);
if (rectifyRecord != null)
{
RectifyRecordID = rectifyRecord.ID;
sourceIds.Add(rectifyRecord.ID);
}
}
}
else
{
var rectifyRecord = GetEntity(e => e.HIDDEN_DANGER_REPORT_ID != null && e.HIDDEN_DANGER_REPORT_ID == hiddenReport.ID);
if (rectifyRecord != null)
{
RectifyRecordID = rectifyRecord.ID;
sourceIds.Add(rectifyRecord.ID);
}
}
}
}
}
}
else
{
record = GetEntity(Keyword);
if (record != null)
{
RecordID = record.ID;
sourceIds.Add(record.ID);
var recordSummaryTemp = GetEntity(e => e.SECURITY_INSPECTION_RECORD_ID != null && e.SECURITY_INSPECTION_RECORD_ID == record.ID);
if (recordSummaryTemp != null)
{
RecordSummaryID = recordSummaryTemp.ID;
sourceIds.Add(recordSummaryTemp.ID);
var hiddenReport = GetEntity(e => e.SECURITY_INSPECTION_RECORD_SUMMARY_ID != null && e.SECURITY_INSPECTION_RECORD_SUMMARY_ID == recordSummaryTemp.ID);
if (hiddenReport != null)
{
ReportID = hiddenReport.ID;
sourceIds.Add(hiddenReport.ID);
var rectifyNotice = GetEntity(e => e.HIDDEN_DANGER_REPORT_ID != null && e.HIDDEN_DANGER_REPORT_ID == hiddenReport.ID);
if (rectifyNotice != null)
{
RectifyNoticeID = rectifyNotice.ID;
sourceIds.Add(rectifyNotice.ID);
var rectifyRecord = GetEntity(e => e.HIDDEN_DANGER_RECTIFY_NOTICE_ID != null && e.HIDDEN_DANGER_RECTIFY_NOTICE_ID == rectifyNotice.ID);
if (rectifyRecord != null)
{
RectifyRecordID = rectifyRecord.ID;
sourceIds.Add(rectifyRecord.ID);
}
else
{
rectifyRecord = GetEntity(e => e.HIDDEN_DANGER_REPORT_ID != null && e.HIDDEN_DANGER_REPORT_ID == hiddenReport.ID);
if (rectifyRecord != null)
{
RectifyRecordID = rectifyRecord.ID;
sourceIds.Add(rectifyRecord.ID);
}
}
}
else
{
var rectifyRecord = GetEntity(e => e.HIDDEN_DANGER_REPORT_ID != null && e.HIDDEN_DANGER_REPORT_ID == hiddenReport.ID);
if (rectifyRecord != null)
{
RectifyRecordID = rectifyRecord.ID;
sourceIds.Add(rectifyRecord.ID);
}
}
}
}
}
else
{
risk = GetEntity(Keyword);
if (risk != null)
{
ReportID = risk.ID;
sourceIds.Add(risk.ID);
var confirm = GetEntity(e => e.HIDDEN_DANGER_HAND_REPORT_ID != null && e.HIDDEN_DANGER_HAND_REPORT_ID == risk.ID);
if (confirm != null)
{
ConfirmID = confirm.ID;
sourceIds.Add(confirm.ID);
var rectifyNotice = GetEntity(e => e.HIDDEN_DANGER_CONFIRM_ID != null && e.HIDDEN_DANGER_CONFIRM_ID == confirm.ID);
if (rectifyNotice != null)
{
RectifyNoticeID = rectifyNotice.ID;
sourceIds.Add(rectifyNotice.ID);
var rectifyRecord = GetEntity(e => e.HIDDEN_DANGER_RECTIFY_NOTICE_ID != null && e.HIDDEN_DANGER_RECTIFY_NOTICE_ID == rectifyNotice.ID);
if (rectifyRecord != null)
{
RectifyRecordID = rectifyRecord.ID;
sourceIds.Add(rectifyRecord.ID);
}
}
else
{
var rectifyRecord = GetEntity(e => e.HIDDEN_DANGER_CONFIRM_ID != null && e.HIDDEN_DANGER_CONFIRM_ID == confirm.ID);
if (rectifyRecord != null)
{
RectifyRecordID = rectifyRecord.ID;
sourceIds.Add(rectifyRecord.ID);
}
}
}
}
}
}
List> result = new List>();
if (NoticeID == null && RecordID == null && ReportID == null)
{
return result;
}
var approves = new List();
var approveIds = new List();
if (sourceIds != null && sourceIds.Any())
{
approves = GetEntities(e => sourceIds.Contains(e.DATA_ID), null, null).ToList();
approveIds = approves.Select(m => m.ID).ToList();
}
var approveDetails = new List();
if (approveIds != null && approveIds.Any())
{
approveDetails = GetEntities(e => approveIds.Contains(e.APPROVE_ID), null, null).ToList();
}
var tasks = GetEntities(e => e.SOURCE_DATA_ID != null && (sourceIds.Contains(e.SOURCE_DATA_ID.Value) || approveIds.Contains(e.SOURCE_DATA_ID.Value)), null, null).OrderBy(t => t.CREATE_TIME).ThenBy(m=>m.TASK_DT).ToList();
List resultCheck1 = new List();//检查任务
List resultCheck2 = new List();//检查记录
List resultCheck3 = new List();//检查记录汇总
List resultRisk1 = new List();//隐患上报
List resultRisk2 = new List();//隐患确认单
List resultRiskDeal = new List();//隐患整改通知
List resultRiskEnd = new List();//隐患整改记录
var users = GetEntities(e => e.ENABLE_STATUS == 0, null, null);
#region 安全检查通知
if (NoticeID != null)
{
var tempIds = approves.Where(t => t.DATA_ID == NoticeID).OrderBy(m => m.CREATE_TIME).Select(x => x.ID).ToList();
var temp1 = tasks.Where(t => t.SOURCE_DATA_ID == NoticeID || tempIds.Contains(t.SOURCE_DATA_ID.Value)).OrderBy(t => t.CREATE_TIME).ToList();
if (temp1.Any())
{
foreach (var item in temp1)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.SafeCheck;
start.DATA_ID = NoticeID.Value;
if (tempIds.Contains(item.SOURCE_DATA_ID.Value))
{
if (item.NOTICE_TITLE.Contains("驳回"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.NoticeReject;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.NoticeAudit;
}
}
else
{
if (item.NOTICE_TITLE.Contains("确认"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.NoticeCheck;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.GotNotice;
}
}
if (item.NOTICE_STATUS == 4)
{ start.OPERATEPOINT = SKOPERATEPOINT_Enums.CloseNotice; }
start.USER_ID = item.USER_ID;
start.USRTNAME = item.USER_NAME;
start.OPERTETIME = item.TASK_DT;
start.ORDERTIME = item.CREATE_TIME;
start.ISINTTIME = (item.NOTICE_STATUS == 4 || item.NOTICE_STATUS == 2) ? false : item.NOTICE_STATUS == 1 ? true : DateTime.Now > item.TASK_ENDDT ? false : true;
resultCheck1.Add(start);
}
}
var taskApprove = tasks.FirstOrDefault(t => tempIds.Contains(t.SOURCE_DATA_ID.Value));
if (tempIds.Any() && taskApprove == null)
{
var approveTemp = approves.FirstOrDefault(t => t.DATA_ID == NoticeID);
if (approveTemp != null)
{
var approveDetailTemp = approveDetails.FirstOrDefault(t => t.APPROVE_ID == approveTemp.ID);
if (approveDetailTemp != null)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.SafeCheck;
start.DATA_ID = NoticeID.Value;
start.OPERATEPOINT = SKOPERATEPOINT_Enums.NoticeAudit;
start.USER_ID = approveDetailTemp.APPROVE_USER_ID.Value;
start.USRTNAME = users.FirstOrDefault(t => t.ID == approveDetailTemp.APPROVE_USER_ID)?.NAME;
start.OPERTETIME = approveDetailTemp.NODE_APPROVE_TIME;
start.ORDERTIME = approveDetailTemp.CREATE_TIME;
start.ISINTTIME = true;
resultCheck1.Add(start);
}
}
}
resultCheck1 = resultCheck1.OrderBy(e => e.ORDERTIME).ThenBy(m => m.OPERTETIME).ThenBy(n => n.OPERATEPOINT).ToList();
if (resultCheck1.Any())
{
result.Add(resultCheck1);
}
}
else
{
result.Add(resultCheck1);
}
#endregion
#region 安全检查记录
if (RecordID != null)
{
var tempIds = approves.Where(t => t.DATA_ID == RecordID).OrderBy(m => m.CREATE_TIME).Select(x => x.ID).ToList();
var temp1 = tasks.Where(t => t.SOURCE_DATA_ID == RecordID || tempIds.Contains(t.SOURCE_DATA_ID.Value)).OrderBy(t => t.CREATE_TIME).ToList();
if (temp1.Any())
{
foreach (var item in temp1)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.SafeRecord;
start.DATA_ID = RecordID.Value;
if (tempIds.Contains(item.SOURCE_DATA_ID.Value))
{
if (item.NOTICE_TITLE.Contains("驳回"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecordReject;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecordAudit;
}
}
else
{
if (item.NOTICE_TITLE.Contains("确认"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecordCheck;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.GotRecord;
}
}
if (item.NOTICE_STATUS == 4)
{ start.OPERATEPOINT = SKOPERATEPOINT_Enums.CloseNotice; }
start.USER_ID = item.USER_ID;
start.USRTNAME = item.USER_NAME;
start.OPERTETIME = item.TASK_DT;
start.ORDERTIME = item.CREATE_TIME;
start.ISINTTIME = (item.NOTICE_STATUS == 4 || item.NOTICE_STATUS == 2) ? false : item.NOTICE_STATUS == 1 ? true : DateTime.Now > item.TASK_ENDDT ? false : true;
resultCheck2.Add(start);
}
}
var taskApprove = tasks.FirstOrDefault(t => tempIds.Contains(t.SOURCE_DATA_ID.Value));
if (tempIds.Any() && taskApprove == null)
{
var approveTemp = approves.FirstOrDefault(t => t.DATA_ID == RecordID);
if (approveTemp != null)
{
var approveDetailTemp = approveDetails.FirstOrDefault(t => t.APPROVE_ID == approveTemp.ID);
if (approveDetailTemp != null)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.SafeRecord;
start.DATA_ID = RecordID.Value;
start.OPERATEPOINT = SKOPERATEPOINT_Enums.NoticeAudit;
start.USER_ID = approveDetailTemp.APPROVE_USER_ID.Value;
start.USRTNAME = users.FirstOrDefault(t => t.ID == approveDetailTemp.APPROVE_USER_ID)?.NAME;
start.OPERTETIME = approveDetailTemp.NODE_APPROVE_TIME;
start.ORDERTIME = approveDetailTemp.CREATE_TIME;
start.ISINTTIME = true;
resultCheck2.Add(start);
}
}
}
resultCheck2 = resultCheck2.OrderBy(e => e.ORDERTIME).ThenBy(m => m.OPERTETIME).ThenBy(n => n.OPERATEPOINT).ToList();
if (resultCheck2.Any())
{
result.Add(resultCheck2);
}
}
else
{
result.Add(resultCheck2);
}
#endregion
#region 安全检查记录汇总
if (RecordSummaryID != null)
{
var tempIds = approves.Where(t => t.DATA_ID == RecordSummaryID).OrderBy(m => m.CREATE_TIME).Select(x => x.ID).ToList();
var temp1 = tasks.Where(t => t.SOURCE_DATA_ID == RecordSummaryID || tempIds.Contains(t.SOURCE_DATA_ID.Value)).OrderBy(t => t.CREATE_TIME).ToList();
if (temp1.Any())
{
foreach (var item in temp1)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.SafeRecord;
start.DATA_ID = RecordSummaryID.Value;
if (tempIds.Contains(item.SOURCE_DATA_ID.Value))
{
if (item.NOTICE_TITLE.Contains("驳回"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecordSummaryReject;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecordSummaryAudit;
}
}
else
{
if (item.NOTICE_TITLE.Contains("确认"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecordSummaryCheck;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.GotRecordSummary;
}
}
start.USER_ID = item.USER_ID;
start.USRTNAME = item.USER_NAME;
start.OPERTETIME = item.TASK_DT;
start.ORDERTIME = item.CREATE_TIME;
start.ISINTTIME = (item.NOTICE_STATUS == 4 || item.NOTICE_STATUS == 2) ? false : item.NOTICE_STATUS == 1 ? true : DateTime.Now > item.TASK_ENDDT ? false : true;
resultCheck3.Add(start);
}
}
var taskApprove = tasks.FirstOrDefault(t => tempIds.Contains(t.SOURCE_DATA_ID.Value));
if (tempIds.Any() && taskApprove == null)
{
var approveTemp = approves.FirstOrDefault(t => t.DATA_ID == RecordSummaryID);
if (approveTemp != null)
{
var approveDetailTemp = approveDetails.FirstOrDefault(t => t.APPROVE_ID == approveTemp.ID);
if (approveDetailTemp != null)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.SafeRecord;
start.DATA_ID = RecordSummaryID.Value;
start.OPERATEPOINT = SKOPERATEPOINT_Enums.NoticeAudit;
start.USER_ID = approveDetailTemp.APPROVE_USER_ID.Value;
start.USRTNAME = users.FirstOrDefault(t => t.ID == approveDetailTemp.APPROVE_USER_ID)?.NAME;
start.OPERTETIME = approveDetailTemp.NODE_APPROVE_TIME;
start.ORDERTIME = approveDetailTemp.CREATE_TIME;
start.ISINTTIME = true;
resultCheck3.Add(start);
}
}
}
resultCheck3 = resultCheck3.OrderBy(e => e.ORDERTIME).ThenBy(m => m.OPERTETIME).ThenBy(n => n.OPERATEPOINT).ToList();
if (resultCheck3.Any())
{
result.Add(resultCheck3);
}
}
else
{
result.Add(resultCheck3);
}
#endregion
#region 隐患上报
if (ReportID != null)
{
var tempIds = approves.Where(t => t.DATA_ID == ReportID).OrderBy(m => m.CREATE_TIME).Select(x => x.ID).ToList();
var temp1 = tasks.Where(t => t.SOURCE_DATA_ID == ReportID || tempIds.Contains(t.SOURCE_DATA_ID.Value)).OrderBy(t => t.CREATE_TIME).ToList();
if (temp1.Any())
{
foreach (var item in temp1)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.RiskSubmit;
start.DATA_ID = ReportID.Value;
if (tempIds.Contains(item.SOURCE_DATA_ID.Value))
{
if (item.NOTICE_TITLE.Contains("驳回"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.HiddenReject;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.HiddenAudit;
}
}
else
{
if (item.NOTICE_TITLE.Contains("确认"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.HiddenCheck;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.GotHidden;
}
}
start.USER_ID = item.USER_ID;
start.USRTNAME = item.USER_NAME;
start.OPERTETIME = item.TASK_DT;
start.ORDERTIME = item.CREATE_TIME;
start.ISINTTIME = (item.NOTICE_STATUS == 4 || item.NOTICE_STATUS == 2) ? false : item.NOTICE_STATUS == 1 ? true : DateTime.Now > item.TASK_ENDDT ? false : true;
resultRisk1.Add(start);
}
}
var taskApprove = tasks.FirstOrDefault(t => tempIds.Contains(t.SOURCE_DATA_ID.Value));
if (tempIds.Any() && taskApprove == null)
{
var approveTemp = approves.FirstOrDefault(t => t.DATA_ID == ReportID);
if (approveTemp != null)
{
var approveDetailTemp = approveDetails.FirstOrDefault(t => t.APPROVE_ID == approveTemp.ID);
if (approveDetailTemp != null)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.RiskSubmit;
start.DATA_ID = ReportID.Value;
start.OPERATEPOINT = SKOPERATEPOINT_Enums.NoticeAudit;
start.USER_ID = approveDetailTemp.APPROVE_USER_ID.Value;
start.USRTNAME = users.FirstOrDefault(t => t.ID == approveDetailTemp.APPROVE_USER_ID)?.NAME;
start.OPERTETIME = approveDetailTemp.NODE_APPROVE_TIME;
start.ORDERTIME = approveDetailTemp.CREATE_TIME;
start.ISINTTIME = true;
resultRisk1.Add(start);
}
}
}
resultRisk1 = resultRisk1.OrderBy(e => e.ORDERTIME).ThenBy(m => m.OPERTETIME).ThenBy(n => n.OPERATEPOINT).ToList();
if (resultRisk1.Any())
{
result.Add(resultRisk1);
}
}
else
{
result.Add(resultRisk1);
}
#endregion
#region 隐患确认单
if (ConfirmID != null)
{
var tempIds = approves.Where(t => t.DATA_ID == ConfirmID).OrderBy(m => m.CREATE_TIME).Select(x => x.ID).ToList();
var temp1 = tasks.Where(t => t.SOURCE_DATA_ID == ConfirmID || tempIds.Contains(t.SOURCE_DATA_ID.Value)).OrderBy(t => t.CREATE_TIME).ToList();
if (temp1.Any())
{
foreach (var item in temp1)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.RiskSubmit;
start.DATA_ID = ConfirmID.Value;
if (tempIds.Contains(item.SOURCE_DATA_ID.Value))
{
if (item.NOTICE_TITLE.Contains("驳回"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.ConfirmReject;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.ConfirmAudit;
}
}
else
{
if (item.NOTICE_TITLE.Contains("确认"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.ConfirmCheck;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.GotConfirm;
}
}
start.USER_ID = item.USER_ID;
start.USRTNAME = item.USER_NAME;
start.OPERTETIME = item.TASK_DT;
start.ORDERTIME = item.CREATE_TIME;
start.ISINTTIME = (item.NOTICE_STATUS == 4 || item.NOTICE_STATUS == 2) ? false : item.NOTICE_STATUS == 1 ? true : DateTime.Now > item.TASK_ENDDT ? false : true;
resultRisk2.Add(start);
}
}
var taskApprove = tasks.FirstOrDefault(t => tempIds.Contains(t.SOURCE_DATA_ID.Value));
if (tempIds.Any() && taskApprove == null)
{
var approveTemp = approves.FirstOrDefault(t => t.DATA_ID == ConfirmID);
if (approveTemp != null)
{
var approveDetailTemp = approveDetails.FirstOrDefault(t => t.APPROVE_ID == approveTemp.ID);
if (approveDetailTemp != null)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.RiskSubmit;
start.DATA_ID = ConfirmID.Value;
start.OPERATEPOINT = SKOPERATEPOINT_Enums.NoticeAudit;
start.USER_ID = approveDetailTemp.APPROVE_USER_ID.Value;
start.USRTNAME = users.FirstOrDefault(t => t.ID == approveDetailTemp.APPROVE_USER_ID)?.NAME;
start.OPERTETIME = approveDetailTemp.NODE_APPROVE_TIME;
start.ORDERTIME = approveDetailTemp.CREATE_TIME;
start.ISINTTIME = true;
resultRisk2.Add(start);
}
}
}
resultRisk2 = resultRisk2.OrderBy(e => e.ORDERTIME).ThenBy(m => m.OPERTETIME).ThenBy(n => n.OPERATEPOINT).ToList();
if (resultRisk2.Any())
{
result.Add(resultRisk2);
}
}
else
{
result.Add(resultRisk2);
}
#endregion
#region 隐患整改通知
if (RectifyNoticeID != null)
{
var tempIds = approves.Where(t => t.DATA_ID == RectifyNoticeID).OrderBy(m => m.CREATE_TIME).Select(x => x.ID).ToList();
var temp1 = tasks.Where(t => t.SOURCE_DATA_ID == RectifyNoticeID || tempIds.Contains(t.SOURCE_DATA_ID.Value)).OrderBy(t => t.CREATE_TIME).ToList();
if (temp1.Any())
{
foreach (var item in temp1)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.RiskSubmit;
start.DATA_ID = RectifyNoticeID.Value;
if (tempIds.Contains(item.SOURCE_DATA_ID.Value))
{
if (item.NOTICE_TITLE.Contains("驳回"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecifyReject;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecifyAudit;
}
}
else
{
if (item.NOTICE_TITLE.Contains("确认"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecifyCheck;
}
else if (item.NOTICE_TITLE.Contains("驳回"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecifyRejectR;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.GotRecify;
}
}
start.USER_ID = item.USER_ID;
start.USRTNAME = item.USER_NAME;
start.OPERTETIME = item.TASK_DT;
start.ORDERTIME = item.CREATE_TIME;
start.ISINTTIME = (item.NOTICE_STATUS == 4 || item.NOTICE_STATUS == 2) ? false : item.NOTICE_STATUS == 1 ? true : DateTime.Now > item.TASK_ENDDT ? false : true;
resultRiskDeal.Add(start);
}
}
var taskApprove = tasks.FirstOrDefault(t => tempIds.Contains(t.SOURCE_DATA_ID.Value));
if (tempIds.Any() && taskApprove == null)
{
var approveTemp = approves.FirstOrDefault(t => t.DATA_ID == RectifyNoticeID);
if (approveTemp != null)
{
var approveDetailTemp = approveDetails.FirstOrDefault(t => t.APPROVE_ID == approveTemp.ID);
if (approveDetailTemp != null)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.RiskSubmit;
start.DATA_ID = RectifyNoticeID.Value;
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecifyAudit;
start.USER_ID = approveDetailTemp.APPROVE_USER_ID.Value;
start.USRTNAME = users.FirstOrDefault(t => t.ID == approveDetailTemp.APPROVE_USER_ID)?.NAME;
start.OPERTETIME = approveDetailTemp.NODE_APPROVE_TIME;
start.ORDERTIME = approveDetailTemp.CREATE_TIME;
start.ISINTTIME = true;
resultRiskDeal.Add(start);
}
}
}
resultRiskDeal = resultRiskDeal.OrderBy(e => e.ORDERTIME).ThenBy(m => m.OPERTETIME).ThenBy(n => n.OPERATEPOINT).ToList();
if (resultRiskDeal.Any())
{
result.Add(resultRiskDeal);
}
}
else
{
result.Add(resultRiskDeal);
}
#endregion
#region 隐患整改记录
if (RectifyRecordID != null)
{
var tempIds = approves.Where(t => t.DATA_ID == RectifyRecordID).OrderBy(m => m.CREATE_TIME).Select(x => x.ID).ToList();
var temp1 = tasks.Where(t => t.SOURCE_DATA_ID == RectifyRecordID || tempIds.Contains(t.SOURCE_DATA_ID.Value)).OrderBy(t => t.CREATE_TIME).ToList();
if (temp1.Any())
{
foreach (var item in temp1)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.RiskSubmit;
start.DATA_ID = RectifyRecordID.Value;
if (tempIds.Contains(item.SOURCE_DATA_ID.Value))
{
if (item.NOTICE_TITLE.Contains("驳回"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecifyRecordAuditR;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecifyRecordAudit;
}
}
else
{
if (item.NOTICE_TITLE.Contains("验收"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecifyRecordCheck;
}
else if (item.NOTICE_TITLE.Contains("驳回"))
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecifyRecordReject;
}
else
{
start.OPERATEPOINT = SKOPERATEPOINT_Enums.GotRecifyRecord;
}
}
start.USER_ID = item.USER_ID;
start.USRTNAME = item.USER_NAME;
start.OPERTETIME = item.TASK_DT;
start.ORDERTIME = item.CREATE_TIME;
start.ISINTTIME = (item.NOTICE_STATUS == 4 || item.NOTICE_STATUS == 2) ? false : item.NOTICE_STATUS == 1 ? true : DateTime.Now > item.TASK_ENDDT ? false : true;
resultRiskEnd.Add(start);
}
}
var taskApprove = tasks.FirstOrDefault(t => tempIds.Contains(t.SOURCE_DATA_ID.Value));
if (tempIds.Any() && taskApprove == null)
{
var approveTemp = approves.FirstOrDefault(t => t.DATA_ID == RectifyRecordID);
if (approveTemp != null)
{
var approveDetailTemp = approveDetails.FirstOrDefault(t => t.APPROVE_ID == approveTemp.ID);
if (approveDetailTemp != null)
{
OperateLogDto start = new OperateLogDto();
start.LOGTYPE = SKLOGTYPE_Enums.RiskSubmit;
start.DATA_ID = RectifyRecordID.Value;
start.OPERATEPOINT = SKOPERATEPOINT_Enums.RecifyRecordAudit;
start.USER_ID = approveDetailTemp.APPROVE_USER_ID.Value;
start.USRTNAME = users.FirstOrDefault(t => t.ID == approveDetailTemp.APPROVE_USER_ID)?.NAME;
start.OPERTETIME = approveDetailTemp.NODE_APPROVE_TIME;
start.ORDERTIME = approveDetailTemp.CREATE_TIME;
start.ISINTTIME = true;
resultRiskEnd.Add(start);
}
}
}
resultRiskEnd = resultRiskEnd.OrderBy(e => e.ORDERTIME).ThenBy(m => m.OPERTETIME).ThenBy(n => n.OPERATEPOINT).ToList();
if (resultRiskEnd.Any())
{
result.Add(resultRiskEnd);
}
}
else
{
result.Add(resultRiskEnd);
}
#endregion
return result;
}
});
}
///
/// 根据检查类型,检查层级,当前人所在生产单元及其岗位自动带出所有区域下的检查内容
///
///
///
[HttpPost, Route("GetCheckContentsNew")]
public JsonActionResult> GetCheckContentsNew([FromBody] T_SK_SECURITY_INSPECTION_NOTICE entity)
{
var result = new JsonActionResult>();
var dataList = new List();
if (entity.PRODUCTION_UNIT_ID == null || entity.CHECK_TYPE_ID == null || entity.DEPARTMENT_TYPE == null || entity.PLANCHECKFREQUENCY == null)
{
result.ErrorMessage = "生产单元,检查层级,检查类型,检查周期都不能为空";
return result;
//throw new Exception("生产单元,检查层级,检查类型,检查周期都不能为空");
}
var departId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
var checkSet = this.GetEntity(t => t.PRODUCTION_UNIT_ID == entity.PRODUCTION_UNIT_ID && t.CHECK_CYCLE == entity.PLANCHECKFREQUENCY && t.CHECK_TYPE == entity.DEPARTMENT_TYPE && t.DEPARTMENT_ID == Guid.Parse(departId.ToString()));
if (checkSet == null)
{
result.ErrorMessage = "未找到对应的检查清单,请手动添加检查内容";
return result;
//throw new Exception("未找到对应的检查清单,请手动添加检查内容");
}
var details = this.GetEntities(t => t.CHECK_SET_ID == checkSet.ID, new BaseFilter(entity.ORG_ID), "Nav_Area", "Nav_Contents", "Nav_ContentsBasics");
if (details != null && details.Any())
{
foreach (var item in details)
{
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL detail = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL();
detail.ORG_ID = entity.ORG_ID;
detail.RISK_AREA_ID = item.AREA_ID;
detail.Nav_RiskArea = item.Nav_Area;
detail.CHECK_CONTENTS_ID = item.CHECK_CONTENTS_ID;
detail.Nav_Contents = item.Nav_Contents;
detail.CHECKCONTENT = item.CHECK_CONTENT;
detail.CHECKSTANDARD = item.CHECK_STANDARD;
detail.Nav_CheckNoticeDetailUsers = null;
List basics = new List();
if (item.Nav_ContentsBasics != null && item.Nav_ContentsBasics.Any())
{
foreach (var item2 in item.Nav_ContentsBasics)
{
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_BASIC bas = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL_BASIC();
bas.ORG_ID = item2.ORG_ID;
bas.SECURITY_INSPECTION_NOTICE_DETAIL_ID = detail.ID;
bas.LAW_ID = item2.LAW_ID;
basics.Add(bas);
}
}
detail.Nav_CheckNoticeDetailBasics = basics;
dataList.Add(detail);
}
result.Data = dataList;
}
return result;
}
[HttpPost, Route("OperateLogView")]
public JsonActionResult> OperateLogView([FromBody] KeywordFilter filter)
{
return SafeExecute>(() =>
{
filter.IgnoreDataRule = true;
var result = new List();
if (string.IsNullOrEmpty(filter.Keyword))
{
return result;
}
else
{
Guid? safeNoticeId = null;
Guid? handId = null;
Guid? confirmId = null;
List safeRecordIds = new List();
Guid? safeRecordSumId = null;
Guid? dangerReportId = null;
List rectifyNoticeIds = new List();
List rectifyRecordIds = new List();
var sourceIds = new List();
T_SK_HIDDEN_DANGER_REPORT dangerReport = null;
T_SK_HIDDEN_DANGER_HAND_REPORT hand = null;
T_SK_HIDDEN_DANGER_CONFIRM confirm= null;
List rectifyRecords = new List();
Guid Keyword = new Guid(filter.Keyword);
//检查通知
var check = GetEntity(Keyword);
if (check == null)
{
//手动隐患上报
hand = GetEntity(Keyword);
if (hand == null)
return result;
else
{
handId = hand.ID;
sourceIds.Add(hand.ID);
confirm = GetEntity(e => e.HIDDEN_DANGER_HAND_REPORT_ID != null && e.HIDDEN_DANGER_HAND_REPORT_ID == hand.ID);
if (confirm != null)
{
confirmId = confirm.ID;
sourceIds.Add(confirm.ID);
rectifyNoticeIds = GetEntities(e => e.HIDDEN_DANGER_CONFIRM_ID != null && e.HIDDEN_DANGER_CONFIRM_ID == confirm.ID, filter).Select(t => t.ID).ToList();
if (rectifyNoticeIds != null && rectifyNoticeIds.Any())
{
sourceIds.AddRange(rectifyNoticeIds);
rectifyRecords = GetEntities(e => e.HIDDEN_DANGER_RECTIFY_NOTICE_ID != null && rectifyNoticeIds.Contains((Guid)e.HIDDEN_DANGER_RECTIFY_NOTICE_ID), filter).ToList();
rectifyRecordIds = rectifyRecords.Select(m => m.ID).ToList();
sourceIds.AddRange(rectifyRecordIds);
}
else
{
rectifyRecords = GetEntities(e => e.HIDDEN_DANGER_CONFIRM_ID != null && e.HIDDEN_DANGER_CONFIRM_ID == confirm.ID, filter).ToList();
rectifyRecordIds = rectifyRecords.Select(m => m.ID).ToList();
sourceIds.AddRange(rectifyRecordIds);
}
}
GetAutoNext(sourceIds, check, safeNoticeId, hand, handId,confirm, confirmId, safeRecordIds, safeRecordSumId, dangerReportId, dangerReport, rectifyNoticeIds, rectifyRecordIds, rectifyRecords, ref result);
}
}
else
{
safeNoticeId = check.ID;
sourceIds.Add(check.ID);
safeRecordIds = GetEntities(e => e.SECURITY_INSPECTION_NOTICE_ID != null && e.SECURITY_INSPECTION_NOTICE_ID == check.ID, filter).Select(m=>m.ID).ToList();
sourceIds.AddRange(safeRecordIds);
var recordSum= GetEntity(e => e.SECURITY_INSPECTION_NOTICE_ID != null && e.SECURITY_INSPECTION_NOTICE_ID == check.ID);
if (recordSum != null)
{
safeRecordSumId = recordSum.ID;
sourceIds.Add(recordSum.ID);
dangerReport = GetEntity(e => e.SECURITY_INSPECTION_RECORD_SUMMARY_ID != null && e.SECURITY_INSPECTION_RECORD_SUMMARY_ID == recordSum.ID);
if (dangerReport != null)
{
dangerReportId = dangerReport.ID;
sourceIds.Add(dangerReport.ID);
rectifyNoticeIds = GetEntities(e => e.HIDDEN_DANGER_REPORT_ID != null && e.HIDDEN_DANGER_REPORT_ID == dangerReport.ID,filter).Select(t=>t.ID).ToList();
if (rectifyNoticeIds != null && rectifyNoticeIds.Any())
{
sourceIds.AddRange(rectifyNoticeIds);
rectifyRecords = GetEntities(e => e.HIDDEN_DANGER_RECTIFY_NOTICE_ID != null && rectifyNoticeIds.Contains((Guid)e.HIDDEN_DANGER_RECTIFY_NOTICE_ID), filter).ToList();
rectifyRecordIds = rectifyRecords.Select(m => m.ID).ToList();
sourceIds.AddRange(rectifyRecordIds);
}
else
{
rectifyRecords = GetEntities(e => e.HIDDEN_DANGER_REPORT_ID != null && e.HIDDEN_DANGER_REPORT_ID == dangerReport.ID, filter).ToList();
rectifyRecordIds = rectifyRecords.Select(m => m.ID).ToList();
sourceIds.AddRange(rectifyRecordIds);
}
}
}
GetAutoNext(sourceIds,check, safeNoticeId,hand, handId, confirm,confirmId, safeRecordIds, safeRecordSumId, dangerReportId, dangerReport, rectifyNoticeIds, rectifyRecordIds, rectifyRecords, ref result);
}
return result;
}
});
}
private void GetAutoNext(List sourceIds, T_SK_SECURITY_INSPECTION_NOTICE check, Guid? safeNoticeId, T_SK_HIDDEN_DANGER_HAND_REPORT hand,Guid? handId, T_SK_HIDDEN_DANGER_CONFIRM confirm,Guid? confirmId, List safeRecordIds, Guid? safeRecordSumId, Guid? dangerReportId, T_SK_HIDDEN_DANGER_REPORT dangerReport, List rectifyNoticeIds, List rectifyRecordIds, List rectifyRecords, ref List result)
{
var approveIds = new List();
var approves = new List();
if (sourceIds != null && sourceIds.Any())
{
approves = GetEntities(e => sourceIds.Contains(e.DATA_ID), null, null).ToList();
approveIds = approves.Select(m => m.ID).ToList();
}
var tasks = GetEntities(e => e.SOURCE_DATA_ID != null && (sourceIds.Contains(e.SOURCE_DATA_ID.Value) || approveIds.Contains(e.SOURCE_DATA_ID.Value)), null, null).OrderBy(t => t.CREATE_TIME).ThenBy(m => m.MODIFY_TIME).ToList();
var users = GetEntities(e => e.ENABLE_STATUS == 0, new BaseFilter(check.ORG_ID), null).ToList();
var departs = GetEntities(e => e.ENABLE_STATUS == 0, new BaseFilter(check.ORG_ID), null).ToList();
List formCodes = new List { "SK006", "SK014", "SK022", "SK018" };
var approveTemps = GetEntities(e => formCodes.Contains(e.FORM_CODE), new BaseFilter(check.ORG_ID), "Nav_ApproveTempDetails.Nav_ApproveRole").ToList();
if (check != null)
{
var checkUser = users.FirstOrDefault(t => t.ID == check.APPLY_USER_ID);
#region 安全检查通知
OperateLog noticeLog = new OperateLog();
noticeLog.FORM_NAME = "安全检查通知";
noticeLog.logList = new List();
if (safeNoticeId != null)
{
//发起
var temp1 = tasks.FirstOrDefault(t => t.SOURCE_DATA_ID == safeNoticeId && !t.NOTICE_TITLE.Contains("确认"));
if (temp1 != null)
{
OperateLogList start = new OperateLogList();
start.ID = safeNoticeId;
start.CODE = "SK006_SHOWPRINT";
start.USER_NAME = temp1.USER_NAME;
start.NAME = "安全检查通知";
start.DEAL_DATE = temp1.TASK_DT;
start.CREATE_TIME = temp1.CREATE_TIME;
start.STATUS = temp1.NOTICE_STATUS == 1 ? 5 : temp1.NOTICE_STATUS == 2 ? 10 : temp1.NOTICE_STATUS == 4 ? 15 : (temp1.NOTICE_STATUS == 0 && temp1.TASK_ENDDT >= DateTime.Now) ? 16 : (temp1.TASK_ENDDT < DateTime.Now && temp1.NOTICE_STATUS == 0) ? 20 : 0;
noticeLog.logList.Add(start);
}
else
{
//手动发起的检查通知
OperateLogList start = new OperateLogList();
start.ID = check.ID;
start.CODE = "SK006_SHOWPRINT";
start.USER_NAME = checkUser.NAME;
start.NAME = "安全检查通知";
start.DEAL_DATE = check.STATUS == PFStandardStatus.Draft ? null : check.MODIFY_TIME;
start.CREATE_TIME = check.CREATE_TIME;
start.STATUS = check.STATUS == PFStandardStatus.Close ? 15 : check.STATUS == PFStandardStatus.Draft ? 0 : 5;
noticeLog.logList.Add(start);
}
//审批
var approveTemp = approves.FirstOrDefault(t => t.DATA_ID == safeNoticeId);
if (approveTemp == null)
{
//判断发起人层级,取审批模板
var departFirst = departs.FirstOrDefault(t => t.ID == check.APPLY_DEPARTMENT_ID);
var param = Enum.GetName(typeof(SKDepartmentTypeEnum), departFirst.DEPARTMENT_TYPE);
if (departFirst.DEPARTMENT_STATUS != 1)
{
param = "公司级";
}
var approveTempFirst = approveTemps.FirstOrDefault(t => t.PARAM == param && t.FORM_CODE == "SK006");
if (approveTempFirst != null && approveTempFirst.Nav_ApproveTempDetails != null && approveTempFirst.Nav_ApproveTempDetails.Any())
{
foreach (var item in approveTempFirst.Nav_ApproveTempDetails.OrderBy(t => t.NUM))
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK006_SHOWPRINT";
start1.USER_NAME = item.Nav_ApproveRole.NAME;
start1.NAME = "安全检查通知审批";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
noticeLog.logList.Add(start1);
}
}
else
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK006_SHOWPRINT";
start1.USER_NAME = "审批人";
start1.NAME = "安全检查通知审批";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
noticeLog.logList.Add(start1);
}
}
else
{
var tempApprove = tasks.Where(t => t.SOURCE_DATA_ID == approveTemp.ID).OrderBy(t => t.MODIFY_TIME).ThenBy(m => m.CREATE_TIME).ToList();
if (tempApprove != null && tempApprove.Any())
{
foreach (var item in tempApprove)
{
OperateLogList start1 = new OperateLogList();
start1.ID = approveTemp.DATA_ID;
start1.CODE = "SK006_SHOWPRINT";
start1.USER_NAME = item.USER_NAME;
start1.NAME = item.NOTICE_TITLE.Contains("驳回") ? "安全检查通知已被驳回" : "安全检查通知审批";
start1.DEAL_DATE = item.TASK_DT;
start1.CREATE_TIME = item.CREATE_TIME;
start1.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
noticeLog.logList.Add(start1);
}
}
}
var temp2 = tasks.Where(t => t.SOURCE_DATA_ID == safeNoticeId && t.NOTICE_TITLE.Contains("确认")).OrderBy(m => m.MODIFY_TIME).ThenBy(n => n.CREATE_TIME).ToList();
if (temp2 != null && temp2.Any())
{
var temp3 = temp2.Where(t => t.NOTICE_STATUS == 1).OrderBy(m => m.MODIFY_TIME).ToList();
if (temp3 != null && temp3.Any())
{
foreach (var item in temp3)
{
OperateLogList start1 = new OperateLogList();
start1.ID = safeNoticeId;
start1.CODE = "SK006_SHOWPRINT";
start1.USER_NAME = item.USER_NAME;
start1.NAME = "安全检查通知确认";
start1.DEAL_DATE = item.NOTICE_STATUS == 4 ? item.MODIFY_TIME : item.TASK_DT;
start1.CREATE_TIME = item.CREATE_TIME;
start1.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
noticeLog.logList.Add(start1);
}
}
var temp4 = temp2.Where(t => t.NOTICE_STATUS != 1).OrderByDescending(n => n.NOTICE_STATUS).ThenBy(m => m.MODIFY_TIME).ToList();
if (temp4 != null && temp4.Any())
{
foreach (var item in temp4)
{
OperateLogList start1 = new OperateLogList();
start1.ID = safeNoticeId;
start1.CODE = "SK006_SHOWPRINT";
start1.USER_NAME = item.USER_NAME;
start1.NAME = "安全检查通知确认";
start1.DEAL_DATE = item.NOTICE_STATUS == 4 ? item.MODIFY_TIME : item.TASK_DT;
start1.CREATE_TIME = item.CREATE_TIME;
start1.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
noticeLog.logList.Add(start1);
}
}
}
else
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK006_SHOWPRINT";
start1.USER_NAME = "检查人";
start1.NAME = "安全检查通知确认";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
noticeLog.logList.Add(start1);
}
}
result.Add(noticeLog);
#endregion
#region 安全检查记录
OperateLog recordLog = new OperateLog();
recordLog.FORM_NAME = "安全检查记录";
recordLog.logList = new List();
if (safeRecordIds != null && safeRecordIds.Any())
{
//发起
var itemps = tasks.Where(t => t.SOURCE_DATA_ID != null && safeRecordIds.Contains((Guid)t.SOURCE_DATA_ID)).OrderBy(m => m.MODIFY_TIME).ThenBy(n => n.CREATE_TIME).ToList();
if (itemps != null && itemps.Any())
{
var temp2 = itemps.Where(t => t.NOTICE_STATUS == 1).OrderBy(m => m.MODIFY_TIME).ToList();
if (temp2 != null && temp2.Any())
{
foreach (var temp1 in temp2)
{
OperateLogList start = new OperateLogList();
start.ID = temp1.SOURCE_DATA_ID;
start.CODE = "SK010_SHOWPRINT";
start.USER_NAME = temp1.USER_NAME;
start.NAME = "安全检查记录";
start.DEAL_DATE = temp1.NOTICE_STATUS == 4 ? temp1.MODIFY_TIME : temp1.TASK_DT; ;
start.CREATE_TIME = temp1.CREATE_TIME;
start.STATUS = temp1.NOTICE_STATUS == 1 ? 5 : temp1.NOTICE_STATUS == 2 ? 10 : temp1.NOTICE_STATUS == 4 ? 15 : (temp1.NOTICE_STATUS == 0 && temp1.TASK_ENDDT >= DateTime.Now) ? 16 : (temp1.TASK_ENDDT < DateTime.Now && temp1.NOTICE_STATUS == 0) ? 20 : 0;
recordLog.logList.Add(start);
}
}
var temp3 = itemps.Where(t => t.NOTICE_STATUS != 1).OrderByDescending(n => n.NOTICE_STATUS).ThenBy(m => m.MODIFY_TIME).ToList();
if (temp3 != null && temp3.Any())
{
foreach (var temp1 in temp3)
{
OperateLogList start = new OperateLogList();
start.ID = temp1.SOURCE_DATA_ID;
start.CODE = "SK010_SHOWPRINT";
start.USER_NAME = temp1.USER_NAME;
start.NAME = "安全检查记录";
start.DEAL_DATE = temp1.NOTICE_STATUS == 4 ? temp1.MODIFY_TIME : temp1.TASK_DT;
start.CREATE_TIME = temp1.CREATE_TIME;
start.STATUS = temp1.NOTICE_STATUS == 1 ? 5 : temp1.NOTICE_STATUS == 2 ? 10 : temp1.NOTICE_STATUS == 4 ? 15 : (temp1.NOTICE_STATUS == 0 && temp1.TASK_ENDDT >= DateTime.Now) ? 16 : (temp1.TASK_ENDDT < DateTime.Now && temp1.NOTICE_STATUS == 0) ? 20 : 0;
recordLog.logList.Add(start);
}
}
}
else
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK010_SHOWPRINT";
start1.USER_NAME = "检查人";
start1.NAME = "安全检查记录";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
recordLog.logList.Add(start1);
}
}
else
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK010_SHOWPRINT";
start1.USER_NAME = "检查人";
start1.NAME = "安全检查记录";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
recordLog.logList.Add(start1);
}
result.Add(recordLog);
#endregion
#region 安全检查记录汇总
OperateLog recordSumLog = new OperateLog();
recordSumLog.FORM_NAME = "安全检查记录汇总";
recordSumLog.logList = new List();
if (safeRecordSumId != null)
{
//发起
var temp1 = tasks.FirstOrDefault(t => t.SOURCE_DATA_ID == safeRecordSumId && !t.NOTICE_TITLE.Contains("确认"));
OperateLogList start = new OperateLogList();
start.ID = safeRecordSumId;
start.CODE = "SK012_SHOWPRINT";
start.USER_NAME = temp1.USER_NAME;
start.NAME = "安全检查记录汇总";
start.DEAL_DATE = temp1.TASK_DT;
start.CREATE_TIME = temp1.CREATE_TIME;
start.STATUS = temp1.NOTICE_STATUS == 1 ? 5 : temp1.NOTICE_STATUS == 2 ? 10 : temp1.NOTICE_STATUS == 4 ? 15 : (temp1.NOTICE_STATUS == 0 && temp1.TASK_ENDDT >= DateTime.Now) ? 16 : (temp1.TASK_ENDDT < DateTime.Now && temp1.NOTICE_STATUS == 0) ? 20 : 0;
recordSumLog.logList.Add(start);
//确认
var temp2 = tasks.Where(t => t.SOURCE_DATA_ID == safeRecordSumId && t.NOTICE_TITLE.Contains("确认")).OrderBy(m => m.MODIFY_TIME).ThenBy(n => n.CREATE_TIME).ToList();
if (temp2 != null && temp2.Any())
{
var temp3 = temp2.Where(t => t.NOTICE_STATUS == 1).OrderBy(m => m.MODIFY_TIME).ToList();
if (temp3 != null && temp3.Any())
{
foreach (var item in temp3)
{
OperateLogList start1 = new OperateLogList();
start1.ID = safeRecordSumId;
start1.CODE = "SK012_SHOWPRINT";
start1.USER_NAME = item.USER_NAME;
start1.NAME = "安全检查记录汇总确认";
start1.DEAL_DATE = item.TASK_DT;
start1.CREATE_TIME = item.CREATE_TIME;
start1.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
recordSumLog.logList.Add(start1);
}
}
var temp4 = temp2.Where(t => t.NOTICE_STATUS != 1).OrderByDescending(n => n.NOTICE_STATUS).ThenBy(m => m.MODIFY_TIME).ToList();
if (temp4 != null && temp4.Any())
{
foreach (var item in temp4)
{
OperateLogList start1 = new OperateLogList();
start1.ID = safeRecordSumId;
start1.CODE = "SK012_SHOWPRINT";
start1.USER_NAME = item.USER_NAME;
start1.NAME = "安全检查记录汇总确认";
start1.DEAL_DATE = item.TASK_DT;
start1.CREATE_TIME = item.CREATE_TIME;
start1.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
recordSumLog.logList.Add(start1);
}
}
}
else
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK012_SHOWPRINT";
start1.USER_NAME = "检查人";
start1.NAME = "安全检查记录汇总确认";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
recordSumLog.logList.Add(start1);
}
}
else
{
OperateLogList start = new OperateLogList();
start.ID = null;
start.CODE = "SK012_SHOWPRINT";
start.USER_NAME = checkUser != null ? checkUser.NAME : "班长/安全员";
start.NAME = "安全检查记录汇总";
start.DEAL_DATE = null;
start.CREATE_TIME = null;
start.STATUS = 0;
recordSumLog.logList.Add(start);
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK012_SHOWPRINT";
start1.USER_NAME = "检查人";
start1.NAME = "安全检查记录汇总确认";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
recordSumLog.logList.Add(start1);
}
result.Add(recordSumLog);
#endregion
#region 隐患上报
OperateLog hiddenReportLog = new OperateLog();
hiddenReportLog.FORM_NAME = "隐患上报";
hiddenReportLog.logList = new List();
if (dangerReportId != null)
{
//发起
var temp1 = tasks.FirstOrDefault(t => t.SOURCE_DATA_ID == dangerReportId && !t.NOTICE_TITLE.Contains("确认"));
if (temp1 != null)
{
OperateLogList start = new OperateLogList();
start.ID = dangerReportId;
start.CODE = "SK014_SHOWPRINT";
start.USER_NAME = temp1.USER_NAME;
start.NAME = "隐患上报";
start.DEAL_DATE = temp1.TASK_DT;
start.CREATE_TIME = temp1.CREATE_TIME;
start.STATUS = temp1.NOTICE_STATUS == 1 ? 5 : temp1.NOTICE_STATUS == 2 ? 10 : temp1.NOTICE_STATUS == 4 ? 15 : (temp1.NOTICE_STATUS == 0 && temp1.TASK_ENDDT >= DateTime.Now) ? 16 : (temp1.TASK_ENDDT < DateTime.Now && temp1.NOTICE_STATUS == 0) ? 20 : 0;
hiddenReportLog.logList.Add(start);
}
else
{
OperateLogList start = new OperateLogList();
start.ID = null;
start.CODE = "SK014_SHOWPRINT";
start.USER_NAME = "上报人";
start.NAME = "隐患上报";
start.DEAL_DATE = null;
start.CREATE_TIME = null;
start.STATUS = 0;
hiddenReportLog.logList.Add(start);
}
//审批
var approveTemp = approves.FirstOrDefault(t => t.DATA_ID == dangerReportId);
if (approveTemp == null)
{
//判断重大还是一般,取审批模板
var detailFirst =this.GetEntity(t=>t.HIDDEN_DANGER_REPORT_ID == dangerReportId && t.HIDDEN_LEVEL == SKHiddenLevel.Major);
var param = "一般";
if (detailFirst != null)
{
param = "重大";
}
var approveTempFirst = approveTemps.FirstOrDefault(t => t.PARAM == param && t.FORM_CODE == "SK014");
if (approveTempFirst != null && approveTempFirst.Nav_ApproveTempDetails != null && approveTempFirst.Nav_ApproveTempDetails.Any())
{
foreach (var item in approveTempFirst.Nav_ApproveTempDetails.OrderBy(t => t.NUM))
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK014_SHOWPRINT";
start1.USER_NAME = item.Nav_ApproveRole.NAME;
start1.NAME = "隐患上报审批";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
hiddenReportLog.logList.Add(start1);
}
}
else
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK014_SHOWPRINT";
start1.USER_NAME = "审批人";
start1.NAME = "隐患上报审批";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
hiddenReportLog.logList.Add(start1);
}
}
else
{
var tempApprove = tasks.Where(t => t.SOURCE_DATA_ID == approveTemp.ID).OrderBy(t => t.MODIFY_TIME).ThenBy(m => m.CREATE_TIME).ToList();
if (tempApprove != null && tempApprove.Any())
{
foreach (var item in tempApprove)
{
OperateLogList start1 = new OperateLogList();
start1.ID = approveTemp.DATA_ID;
start1.CODE = "SK014_SHOWPRINT";
start1.USER_NAME = item.USER_NAME;
start1.NAME = item.NOTICE_TITLE.Contains("驳回") ? "隐患上报已被驳回" : "隐患上报审批";
start1.DEAL_DATE = item.TASK_DT;
start1.CREATE_TIME = item.CREATE_TIME;
start1.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
hiddenReportLog.logList.Add(start1);
}
}
}
var temp2 = tasks.Where(t => t.SOURCE_DATA_ID == dangerReportId && t.NOTICE_TITLE.Contains("确认")).OrderBy(m => m.MODIFY_TIME).ThenBy(n => n.CREATE_TIME).ToList();
if (temp2 != null && temp2.Any())
{
var temp3 = temp2.Where(t => t.NOTICE_STATUS == 1).OrderBy(m => m.MODIFY_TIME).ToList();
if (temp3 != null && temp3.Any())
{
foreach (var item in temp3)
{
OperateLogList start1 = new OperateLogList();
start1.ID = dangerReportId;
start1.CODE = "SK014_SHOWPRINT";
start1.USER_NAME = item.USER_NAME;
start1.NAME = "隐患上报确认";
start1.DEAL_DATE = item.TASK_DT;
start1.CREATE_TIME = item.CREATE_TIME;
start1.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
hiddenReportLog.logList.Add(start1);
}
}
var temp4 = temp2.Where(t => t.NOTICE_STATUS != 1).OrderByDescending(n => n.NOTICE_STATUS).ThenBy(m => m.MODIFY_TIME).ToList();
if (temp3 != null && temp3.Any())
{
foreach (var item in temp4)
{
OperateLogList start1 = new OperateLogList();
start1.ID = dangerReportId;
start1.CODE = "SK014_SHOWPRINT";
start1.USER_NAME = item.USER_NAME;
start1.NAME = "隐患上报确认";
start1.DEAL_DATE = item.TASK_DT;
start1.CREATE_TIME = item.CREATE_TIME;
start1.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
hiddenReportLog.logList.Add(start1);
}
}
}
else
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK014_SHOWPRINT";
start1.USER_NAME = "整改责任人";
start1.NAME = "隐患上报确认";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
hiddenReportLog.logList.Add(start1);
}
}
else
{
OperateLogList start = new OperateLogList();
start.ID = null;
start.CODE = "SK014_SHOWPRINT";
start.USER_NAME = "上报人";
start.NAME = "隐患上报";
start.DEAL_DATE = null;
start.CREATE_TIME = null;
start.STATUS = 0;
hiddenReportLog.logList.Add(start);
OperateLogList start2 = new OperateLogList();
start2.ID = null;
start2.CODE = "SK014_SHOWPRINT";
start2.USER_NAME = "审批人";
start2.NAME = "隐患上报审批";
start2.DEAL_DATE = null;
start2.CREATE_TIME = null;
start2.STATUS = 0;
hiddenReportLog.logList.Add(start2);
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK014_SHOWPRINT";
start1.USER_NAME = "整改责任人";
start1.NAME = "隐患上报确认";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
hiddenReportLog.logList.Add(start1);
}
result.Add(hiddenReportLog);
#endregion
}
if (hand != null)
{
var handUser = users.FirstOrDefault(t => t.ID == hand.APPLY_USER_ID);
#region 手动隐患上报
OperateLog handLog = new OperateLog();
handLog.FORM_NAME = "手动隐患上报";
handLog.logList = new List();
OperateLogList start = new OperateLogList();
start.ID = handId;
start.CODE = "SK016_SHOWPRINT";
start.USER_NAME = handUser.NAME;
start.NAME = "手动隐患上报";
start.DEAL_DATE = hand.STATUS == PFStandardStatus.Draft ? null : hand.MODIFY_TIME;
start.CREATE_TIME = check.CREATE_TIME;
start.STATUS = hand.STATUS == PFStandardStatus.Draft ? 16 : 5;
handLog.logList.Add(start);
#endregion
#region 隐患确认单
OperateLog confirmLog = new OperateLog();
confirmLog.FORM_NAME = "隐患确认单";
confirmLog.logList = new List();
if (confirmId != null)
{
var temp1 = tasks.FirstOrDefault(t => t.SOURCE_DATA_ID == confirmId && !t.NOTICE_TITLE.Contains("确认"));
OperateLogList start1 = new OperateLogList();
start1.ID = confirmId;
start1.CODE = "SK018_SHOWPRINT";
start1.USER_NAME = temp1.USER_NAME;
start1.NAME = "隐患确认单";
start1.DEAL_DATE = temp1.TASK_DT;
start1.CREATE_TIME = temp1.CREATE_TIME;
start1.STATUS = temp1.NOTICE_STATUS == 1 ? 5 : temp1.NOTICE_STATUS == 2 ? 10 : temp1.NOTICE_STATUS == 4 ? 15 : (temp1.NOTICE_STATUS == 0 && temp1.TASK_ENDDT >= DateTime.Now) ? 16 : (temp1.TASK_ENDDT < DateTime.Now && temp1.NOTICE_STATUS == 0) ? 20 : 0;
confirmLog.logList.Add(start1);
//审批
var approveTemp = approves.FirstOrDefault(t => t.DATA_ID == confirmId);
if (approveTemp == null)
{
//判断发起人层级,取审批模板
var param = confirm.HIDDEN_LEVEL.GetDescription();
var approveTempFirst = approveTemps.FirstOrDefault(t => t.PARAM == param && t.FORM_CODE == "SK014");
if (approveTempFirst != null && approveTempFirst.Nav_ApproveTempDetails != null && approveTempFirst.Nav_ApproveTempDetails.Any())
{
foreach (var item in approveTempFirst.Nav_ApproveTempDetails.OrderBy(t => t.NUM))
{
OperateLogList start2 = new OperateLogList();
start2.ID = null;
start2.CODE = "SK018_SHOWPRINT";
start2.USER_NAME = item.Nav_ApproveRole.NAME;
start2.NAME = "隐患确认单审批";
start2.DEAL_DATE = null;
start2.CREATE_TIME = null;
start2.STATUS = 0;
confirmLog.logList.Add(start2);
}
}
else
{
OperateLogList start2 = new OperateLogList();
start2.ID = null;
start2.CODE = "SK018_SHOWPRINT";
start2.USER_NAME = "审批人";
start2.NAME = "隐患确认单审批";
start2.DEAL_DATE = null;
start2.CREATE_TIME = null;
start2.STATUS = 0;
confirmLog.logList.Add(start2);
}
}
else
{
var tempApprove = tasks.Where(t => t.SOURCE_DATA_ID == approveTemp.ID).OrderBy(t => t.MODIFY_TIME).ThenBy(m => m.CREATE_TIME).ToList();
if (tempApprove != null && tempApprove.Any())
{
foreach (var item in tempApprove)
{
OperateLogList start2 = new OperateLogList();
start2.ID = approveTemp.DATA_ID;
start2.CODE = "SK018_SHOWPRINT";
start2.USER_NAME = item.USER_NAME;
start2.NAME = item.NOTICE_TITLE.Contains("驳回") ? "隐患确认单已被驳回" : "隐患确认单审批";
start2.DEAL_DATE = item.TASK_DT;
start2.CREATE_TIME = item.CREATE_TIME;
start2.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
confirmLog.logList.Add(start2);
}
}
}
var temp2 = tasks.Where(t => t.SOURCE_DATA_ID == confirmId && t.NOTICE_TITLE.Contains("确认")).OrderBy(m => m.MODIFY_TIME).ThenBy(n => n.CREATE_TIME).ToList();
if (temp2 != null && temp2.Any())
{
var temp3 = temp2.Where(t => t.NOTICE_STATUS == 1).OrderBy(m => m.MODIFY_TIME).ToList();
if (temp3 != null && temp3.Any())
{
foreach (var item in temp3)
{
OperateLogList start2 = new OperateLogList();
start2.ID = confirmId;
start2.CODE = "SK018_SHOWPRINT";
start2.USER_NAME = item.USER_NAME;
start2.NAME = "隐患确认单确认";
start2.DEAL_DATE = item.TASK_DT;
start2.CREATE_TIME = item.CREATE_TIME;
start2.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
confirmLog.logList.Add(start2);
}
}
var temp4 = temp2.Where(t => t.NOTICE_STATUS != 1).OrderByDescending(n => n.NOTICE_STATUS).ThenBy(m => m.MODIFY_TIME).ToList();
if (temp3 != null && temp3.Any())
{
foreach (var item in temp4)
{
OperateLogList start2 = new OperateLogList();
start2.ID = confirmId;
start2.CODE = "SK018_SHOWPRINT";
start2.USER_NAME = item.USER_NAME;
start2.NAME = "隐患确认单确认";
start2.DEAL_DATE = item.TASK_DT;
start2.CREATE_TIME = item.CREATE_TIME;
start2.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
confirmLog.logList.Add(start2);
}
}
}
else
{
OperateLogList start2 = new OperateLogList();
start2.ID = null;
start2.CODE = "SK018_SHOWPRINT";
start2.USER_NAME = "整改责任人";
start2.NAME = "隐患确认单确认";
start2.DEAL_DATE = null;
start2.CREATE_TIME = null;
start2.STATUS = 0;
confirmLog.logList.Add(start2);
}
}
else
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK018_SHOWPRINT";
start1.USER_NAME = "班长/上报人";
start1.NAME = "隐患确认单";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
confirmLog.logList.Add(start1);
OperateLogList start2 = new OperateLogList();
start2.ID = null;
start2.CODE = "SK018_SHOWPRINT";
start2.USER_NAME = "审批人";
start2.NAME = "隐患确认单审批";
start2.DEAL_DATE = null;
start2.CREATE_TIME = null;
start2.STATUS = 0;
confirmLog.logList.Add(start2);
OperateLogList start3 = new OperateLogList();
start3.ID = null;
start3.CODE = "SK018_SHOWPRINT";
start3.USER_NAME = "整改责任人";
start3.NAME = "隐患确认单确认";
start3.DEAL_DATE = null;
start3.CREATE_TIME = null;
start3.STATUS = 0;
confirmLog.logList.Add(start3);
}
#endregion
}
#region 隐患整改通知
if (rectifyNoticeIds != null && rectifyNoticeIds.Any())
{
//发起
var items = tasks.Where(t => t.SOURCE_DATA_ID != null && rectifyNoticeIds.Contains((Guid)t.SOURCE_DATA_ID) && !t.NOTICE_TITLE.Contains("确认")).OrderByDescending(m => m.NOTICE_STATUS = 1).ThenBy(n => n.MODIFY_TIME).ToList();
if (items != null && items.Any())
{
foreach (var temp1 in items)
{
//发起
OperateLog rectifyNoticeLog = new OperateLog();
rectifyNoticeLog.FORM_NAME = "隐患整改通知";
rectifyNoticeLog.logList = new List();
OperateLogList start = new OperateLogList();
start.ID = temp1.SOURCE_DATA_ID;
start.CODE = "SK020_SHOWPRINT";
start.USER_NAME = temp1.USER_NAME;
start.NAME = "隐患整改通知";
start.DEAL_DATE = temp1.TASK_DT;
start.CREATE_TIME = temp1.CREATE_TIME;
start.STATUS = temp1.NOTICE_STATUS == 1 ? 5 : temp1.NOTICE_STATUS == 2 ? 10 : temp1.NOTICE_STATUS == 4 ? 15 : (temp1.NOTICE_STATUS == 0 && temp1.TASK_ENDDT >= DateTime.Now) ? 16 : (temp1.TASK_ENDDT < DateTime.Now && temp1.NOTICE_STATUS == 0) ? 20 : 0;
rectifyNoticeLog.logList.Add(start);
var temp2 = tasks.Where(t => t.SOURCE_DATA_ID == temp1.SOURCE_DATA_ID && t.NOTICE_TITLE.Contains("确认")).OrderBy(m => m.MODIFY_TIME).ThenBy(n => n.CREATE_TIME).ToList();
if (temp2 != null && temp2.Any())
{
var temp3 = temp2.Where(t => t.NOTICE_STATUS == 1).OrderBy(m => m.MODIFY_TIME).ToList();
if (temp3 != null && temp3.Any())
{
foreach (var item in temp3)
{
OperateLogList start1 = new OperateLogList();
start1.ID = temp1.SOURCE_DATA_ID;
start1.CODE = "SK020_SHOWPRINT";
start1.USER_NAME = item.USER_NAME;
start1.NAME = "隐患整改通知确认";
start1.DEAL_DATE = item.TASK_DT;
start1.CREATE_TIME = item.CREATE_TIME;
start1.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
rectifyNoticeLog.logList.Add(start1);
}
}
var temp4 = temp2.Where(t => t.NOTICE_STATUS != 1).OrderByDescending(m => m.NOTICE_STATUS).ThenBy(n => n.MODIFY_TIME).ToList();
if (temp4 != null && temp4.Any())
{
foreach (var item in temp4)
{
OperateLogList start1 = new OperateLogList();
start1.ID = temp1.SOURCE_DATA_ID;
start1.CODE = "SK020_SHOWPRINT";
start1.USER_NAME = item.USER_NAME;
start1.NAME = "隐患整改通知确认";
start1.DEAL_DATE = item.TASK_DT;
start1.CREATE_TIME = item.CREATE_TIME;
start1.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
rectifyNoticeLog.logList.Add(start1);
}
}
}
else
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK020_SHOWPRINT";
start1.USER_NAME = "整改责任人";
start1.NAME = "隐患整改通知确认";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
rectifyNoticeLog.logList.Add(start1);
}
result.Add(rectifyNoticeLog);
}
}
else
{
OperateLog rectifyNoticeLog = new OperateLog();
rectifyNoticeLog.FORM_NAME = "隐患整改通知";
rectifyNoticeLog.logList = new List();
OperateLogList start = new OperateLogList();
start.ID = null;
start.CODE = "SK020_SHOWPRINT";
start.USER_NAME = "安全员/上报人";
start.NAME = "隐患整改通知";
start.DEAL_DATE = null;
start.CREATE_TIME = null;
start.STATUS = 0;
rectifyNoticeLog.logList.Add(start);
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK020_SHOWPRINT";
start1.USER_NAME = "整改责任人";
start1.NAME = "隐患整改通知确认";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
rectifyNoticeLog.logList.Add(start1);
result.Add(rectifyNoticeLog);
}
}
else
{
OperateLog rectifyNoticeLog = new OperateLog();
rectifyNoticeLog.FORM_NAME = "隐患整改通知";
rectifyNoticeLog.logList = new List();
OperateLogList start = new OperateLogList();
start.ID = null;
start.CODE = "SK020_SHOWPRINT";
start.USER_NAME = "安全员/上报人";
start.NAME = "隐患整改通知";
start.DEAL_DATE = null;
start.CREATE_TIME = null;
start.STATUS = 0;
rectifyNoticeLog.logList.Add(start);
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK020_SHOWPRINT";
start1.USER_NAME = "整改责任人";
start1.NAME = "隐患整改通知确认";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
rectifyNoticeLog.logList.Add(start1);
result.Add(rectifyNoticeLog);
}
#endregion
#region 隐患整改记录
if (rectifyRecordIds != null && rectifyRecordIds.Any())
{
//发起
var items = tasks.Where(t => t.SOURCE_DATA_ID != null && rectifyRecordIds.Contains((Guid)t.SOURCE_DATA_ID) && !t.NOTICE_TITLE.Contains("确认") && !t.NOTICE_TITLE.Contains("验收")).OrderByDescending(m => m.NOTICE_STATUS = 1).ThenBy(n => n.MODIFY_TIME).ToList();
if (items != null && items.Any())
{
foreach (var temp1 in items)
{
OperateLog refRecordLog = new OperateLog();
refRecordLog.FORM_NAME = "隐患整改记录";
refRecordLog.logList = new List();
OperateLogList start = new OperateLogList();
start.ID = temp1.SOURCE_DATA_ID;
start.CODE = "SK022_SHOWPRINT";
start.USER_NAME = temp1.USER_NAME;
start.NAME = "隐患整改记录";
start.DEAL_DATE = temp1.TASK_DT;
start.CREATE_TIME = temp1.CREATE_TIME;
start.STATUS = temp1.NOTICE_STATUS == 1 ? 5 : temp1.NOTICE_STATUS == 2 ? 10 : temp1.NOTICE_STATUS == 4 ? 15 : (temp1.NOTICE_STATUS == 0 && temp1.TASK_ENDDT >= DateTime.Now) ? 16 : (temp1.TASK_ENDDT < DateTime.Now && temp1.NOTICE_STATUS == 0) ? 20 : 0;
refRecordLog.logList.Add(start);
//验收
var temp2 = tasks.FirstOrDefault(t => t.SOURCE_DATA_ID != null && t.SOURCE_DATA_ID == temp1.SOURCE_DATA_ID && t.NOTICE_TITLE.Contains("验收"));
if (temp2 != null)
{
OperateLogList start1 = new OperateLogList();
start1.ID = temp1.SOURCE_DATA_ID;
start1.CODE = "SK022_SHOWPRINT";
start1.USER_NAME = temp2.USER_NAME;
start1.NAME = "隐患整改记录验收";
start1.DEAL_DATE = temp2.TASK_DT;
start1.CREATE_TIME = temp2.CREATE_TIME;
start1.STATUS = temp2.NOTICE_STATUS == 1 ? 5 : temp2.NOTICE_STATUS == 2 ? 10 : temp2.NOTICE_STATUS == 4 ? 15 : (temp2.NOTICE_STATUS == 0 && temp2.TASK_ENDDT >= DateTime.Now) ? 16 : (temp2.TASK_ENDDT < DateTime.Now && temp2.NOTICE_STATUS == 0) ? 20 : 0;
refRecordLog.logList.Add(start1);
}
else
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK022_SHOWPRINT";
start1.USER_NAME = "验收人";
start1.NAME = "隐患整改记录验收";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
refRecordLog.logList.Add(start1);
}
//审批
var approveTemp = approves.FirstOrDefault(t => t.DATA_ID == temp1.SOURCE_DATA_ID);
if (approveTemp == null)
{
//判断重大还是一般,取审批模板
var recordFirst = rectifyRecords.FirstOrDefault(t => t.ID == temp1.SOURCE_DATA_ID);
var param = recordFirst.HIDDEN_LEVEL.GetDescription();
var approveTempFirst = approveTemps.FirstOrDefault(t => t.PARAM == param && t.FORM_CODE == "SK022");
if (approveTempFirst != null && approveTempFirst.Nav_ApproveTempDetails != null && approveTempFirst.Nav_ApproveTempDetails.Any())
{
foreach (var item in approveTempFirst.Nav_ApproveTempDetails.OrderBy(t => t.NUM))
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK022_SHOWPRINT";
start1.USER_NAME = item.Nav_ApproveRole.NAME;
start1.NAME = "隐患整改记录审批";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
refRecordLog.logList.Add(start1);
}
}
else
{
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK022_SHOWPRINT";
start1.USER_NAME = "审批人";
start1.NAME = "隐患整改记录审批";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
refRecordLog.logList.Add(start1);
}
}
else
{
var tempApprove = tasks.Where(t => t.SOURCE_DATA_ID == approveTemp.ID).OrderBy(t => t.MODIFY_TIME).ThenBy(m => m.CREATE_TIME).ToList();
if (tempApprove != null && tempApprove.Any())
{
foreach (var item in tempApprove)
{
OperateLogList start1 = new OperateLogList();
start1.ID = approveTemp.DATA_ID;
start1.CODE = "SK022_SHOWPRINT";
start1.USER_NAME = item.USER_NAME;
start1.NAME = item.NOTICE_TITLE.Contains("驳回") ? "隐患整改记录已被驳回" : "隐患整改记录审批";
start1.DEAL_DATE = item.TASK_DT;
start1.CREATE_TIME = item.CREATE_TIME;
start1.STATUS = item.NOTICE_STATUS == 1 ? 5 : item.NOTICE_STATUS == 2 ? 10 : item.NOTICE_STATUS == 4 ? 15 : (item.NOTICE_STATUS == 0 && item.TASK_ENDDT >= DateTime.Now) ? 16 : (item.TASK_ENDDT < DateTime.Now && item.NOTICE_STATUS == 0) ? 20 : 0;
refRecordLog.logList.Add(start1);
}
}
}
result.Add(refRecordLog);
}
}
else
{
OperateLog refRecordLog = new OperateLog();
refRecordLog.FORM_NAME = "隐患整改通知";
refRecordLog.logList = new List();
OperateLogList start = new OperateLogList();
start.ID = null;
start.CODE = "SK022_SHOWPRINT";
start.USER_NAME = "整改落实人";
start.NAME = "隐患整改记录";
start.DEAL_DATE = null;
start.CREATE_TIME = null;
start.STATUS = 0;
refRecordLog.logList.Add(start);
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK022_SHOWPRINT";
start1.USER_NAME = "验收人";
start1.NAME = "隐患整改记录验收";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
refRecordLog.logList.Add(start1);
OperateLogList start2 = new OperateLogList();
start2.ID = null;
start2.CODE = "SK022_SHOWPRINT";
start2.USER_NAME = "审批人";
start2.NAME = "隐患整改记录审批";
start2.DEAL_DATE = null;
start2.CREATE_TIME = null;
start2.STATUS = 0;
refRecordLog.logList.Add(start2);
result.Add(refRecordLog);
}
}
else
{
OperateLog refRecordLog = new OperateLog();
refRecordLog.FORM_NAME = "隐患整改记录";
refRecordLog.logList = new List();
OperateLogList start = new OperateLogList();
start.ID = null;
start.CODE = "SK022_SHOWPRINT";
start.USER_NAME = "整改落实人";
start.NAME = "隐患整改记录";
start.DEAL_DATE = null;
start.CREATE_TIME = null;
start.STATUS = 0;
refRecordLog.logList.Add(start);
OperateLogList start1 = new OperateLogList();
start1.ID = null;
start1.CODE = "SK022_SHOWPRINT";
start1.USER_NAME = "验收人";
start1.NAME = "隐患整改记录验收";
start1.DEAL_DATE = null;
start1.CREATE_TIME = null;
start1.STATUS = 0;
refRecordLog.logList.Add(start1);
OperateLogList start2 = new OperateLogList();
start2.ID = null;
start2.CODE = "SK022_SHOWPRINT";
start2.USER_NAME = "审批人";
start2.NAME = "隐患整改记录审批";
start2.DEAL_DATE = null;
start2.CREATE_TIME = null;
start2.STATUS = 0;
refRecordLog.logList.Add(start2);
result.Add(refRecordLog);
}
#endregion
}
}
}