2486 lines
138 KiB
C#
2486 lines
138 KiB
C#
using APT.BaseData.Domain.ApiModel;
|
|
using APT.BaseData.Domain.Entities.FM;
|
|
using APT.BaseData.Domain.Enums;
|
|
using APT.Infrastructure.Core;
|
|
using APT.MS.Domain.Entities.SC.SC;
|
|
using APT.MS.Domain.Entities.SC;
|
|
using APT.MS.Domain.Entities.SK;
|
|
using APT.MS.Domain.Enums;
|
|
using APT.Utility;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using System.Data;
|
|
using APT.MS.Domain.Entities.HM;
|
|
using System.Linq.Expressions;
|
|
using APT.MS.Domain.Enums.SK;
|
|
using APT.BaseData.Services.Services.FM;
|
|
using InfluxData.Net.InfluxDb.Models.Responses;
|
|
using APT.BaseData.Domain.IServices.FM;
|
|
using APT.BaseData.Domain.IServices.BS;
|
|
using APT.BaseData.Domain.IServices;
|
|
using APT.BaseData.Services.DomainServices;
|
|
using APT.BaseData.Services.Sys;
|
|
using NPOI.SS.Formula.Functions;
|
|
using APT.MS.Domain.Entities.FO;
|
|
using System.Linq;
|
|
using Castle.Core.Internal;
|
|
using System.Collections.Generic;
|
|
using System;
|
|
using System.IO;
|
|
using Org.BouncyCastle.Utilities;
|
|
using Microsoft.Extensions.Logging;
|
|
using APT.BaseData.Domain.Enums.PF;
|
|
using APT.MS.Data.Mapping;
|
|
using Microsoft.CodeAnalysis.CSharp.Syntax;
|
|
using log4net.Core;
|
|
using System.Reflection.Metadata;
|
|
using APT.MS.Domain.Entities.PF;
|
|
using Google.Protobuf.Collections;
|
|
using Microsoft.Extensions.Hosting;
|
|
|
|
namespace APT.SK.WebApi.Controllers.Api
|
|
{
|
|
/// <summary>
|
|
/// 检查清单
|
|
/// </summary>
|
|
public class CheckListDto
|
|
{
|
|
public string MineType { get; set; }
|
|
|
|
public string CheckType { get; set; }
|
|
public string CheckCycle { get; set; }
|
|
public string CheckLevel { get; set; }
|
|
|
|
public List<CheckListPost> posts { get; set; }
|
|
|
|
public List<CheckListDetail> details { get; set; }
|
|
}
|
|
public class CheckListPost
|
|
{
|
|
public string CheckDepart { get; set; }
|
|
public string CheckPost { get; set; }
|
|
}
|
|
public class CheckListDetail
|
|
{
|
|
public string RISK_NAME { get; set; }
|
|
public Guid? RISK_AREA_ID { get; set; }
|
|
|
|
public string RISK_AREA_NAME { get; set; }
|
|
public Guid? CHECK_CONTENTS_ID { get; set; }
|
|
|
|
public string CHECK_CONTENTS_NAME { get; set; }
|
|
|
|
public string CHECKPROOF { get; set; }
|
|
|
|
public string CHECKSTANDARD { get; set; }
|
|
}
|
|
|
|
public class CheckListNew
|
|
{
|
|
public string MineType { get; set; }
|
|
public Guid? PRODUCTION_UNIT_ID { get; set; }
|
|
|
|
public string CheckType { get; set; }
|
|
public string CheckCycle { get; set; }
|
|
public string CheckLevel { get; set; }
|
|
public int Num { get; set; }
|
|
public string CheckDepart { get; set; }
|
|
public string CheckPost { get; set; }
|
|
public List<CheckListDetail> details { get; set; }
|
|
}
|
|
/// <summary>
|
|
/// 企业库
|
|
/// </summary>
|
|
[Route("api/SK/SKEnterpriseLibrary")]
|
|
public partial class EnterpriseLibraryController : AuthorizeApiController<T_SK_ENTERPRISE_LIBRARY>
|
|
{
|
|
IFMDepartmentService DepartmentService { get; set; }
|
|
public EnterpriseLibraryController(IFMDepartmentService departmentService)
|
|
{
|
|
DepartmentService = departmentService;
|
|
}
|
|
/// <summary>
|
|
/// 保存
|
|
/// </summary>
|
|
/// <param name="entity"></param>
|
|
/// <returns></returns>
|
|
[HttpPost, Route("FullUpdate")]
|
|
public JsonActionResult<bool> FullUpdate([FromBody] T_SK_ENTERPRISE_LIBRARY entity)
|
|
{
|
|
return SafeExecute<bool>(() =>
|
|
{
|
|
var details = entity.Nav_Details;
|
|
entity.Nav_Details = null;
|
|
var departs = entity.Nav_Departs;
|
|
entity.Nav_Departs = null;
|
|
var posts = entity.Nav_Posts;
|
|
entity.Nav_Posts = null;
|
|
List<Guid> libraryDepartIds = new List<Guid>();
|
|
List<Guid> libraryPostIds = new List<Guid>();
|
|
List<Guid> libraryPostDetailIds = new List<Guid>();
|
|
List<Guid> detailIds = new List<Guid>();
|
|
List<Guid> contentIds = new List<Guid>();
|
|
List<Guid> departIds = new List<Guid>();
|
|
List<Guid> postIds = new List<Guid>();
|
|
List<Guid> hiddenIds = new List<Guid>();
|
|
List<Guid> basicIds = new List<Guid>();
|
|
List<T_SK_ENTERPRISE_LIBRARY_DEPART> libraryDepart = new List<T_SK_ENTERPRISE_LIBRARY_DEPART>();
|
|
List<T_SK_ENTERPRISE_LIBRARY_POST> libraryPost = new List<T_SK_ENTERPRISE_LIBRARY_POST>();
|
|
List<T_SK_ENTERPRISE_LIBRARY_POST_DETAIL> libraryPostList = new List<T_SK_ENTERPRISE_LIBRARY_POST_DETAIL>();
|
|
List<T_SK_ENTERPRISE_LIBRARY_DETAIL> libraryDetail = new List<T_SK_ENTERPRISE_LIBRARY_DETAIL>();
|
|
List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT> contentList = new List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>();
|
|
List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART> departList = new List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>();
|
|
List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_POST> postList = new List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_POST>();
|
|
List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_HIDDEN> hiddenList = new List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_HIDDEN>();
|
|
List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_BASIC> basicList = new List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_BASIC>();
|
|
var departments = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(entity.ORG_ID), "Nav_User").ToList();
|
|
if (departs != null && departs.Any())
|
|
{
|
|
libraryDepartIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DEPART>(t => t.ENTERPRISE_LIBRARY_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
foreach (var item in departs.Where(t => !t.IS_DELETED).ToList())
|
|
{
|
|
var approve = departments.FirstOrDefault(t => t.ID == item.DEPARTMENT_ID);
|
|
T_SK_ENTERPRISE_LIBRARY_DEPART de = new T_SK_ENTERPRISE_LIBRARY_DEPART();
|
|
de.ID = Guid.NewGuid();
|
|
de.ORG_ID = entity.ORG_ID;
|
|
de.ENTERPRISE_LIBRARY_ID = entity.ID;
|
|
de.DEPARTMENT_TYPE = item.DEPARTMENT_TYPE;
|
|
de.USER_ID = item.USER_ID;
|
|
de.DEPARTMENT_ID = item.DEPARTMENT_ID;
|
|
de.USER_ID = approve?.Nav_User?.ID;
|
|
de.APPROVE_ROLE_ID = approve?.Nav_User?.APPROVE_ROLE_ID;
|
|
libraryDepart.Add(de);
|
|
}
|
|
//var departTemp= departs.Where(t=>!t.IS_DELETED).Select(t=>t.DEPARTMENT_TYPE).Distinct().ToList();
|
|
//if (departTemp.Any())
|
|
//{
|
|
// var departType = string.Join("_", departTemp);
|
|
// entity.DEPARTMENT_TYPE = "_" + departType + "_";
|
|
//}
|
|
}
|
|
if (posts != null && posts.Any())
|
|
{
|
|
libraryPostIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_POST>(t => t.ENTERPRISE_LIBRARY_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
libraryPostDetailIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_POST_DETAIL>(t => libraryPostIds.Contains(t.ENTERPRISE_LIBRARY_POST_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
foreach (var item in posts.Where(t => !t.IS_DELETED).ToList())
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_POST po = new T_SK_ENTERPRISE_LIBRARY_POST();
|
|
po.ID = Guid.NewGuid();
|
|
po.ORG_ID = entity.ORG_ID;
|
|
po.ENTERPRISE_LIBRARY_ID = entity.ID;
|
|
po.DEPARTMENT_ID = item.DEPARTMENT_ID;
|
|
libraryPost.Add(po);
|
|
if (item.Nav_PostDetails != null && item.Nav_PostDetails.Any())
|
|
{
|
|
foreach (var item2 in item.Nav_PostDetails.Where(t => !t.IS_DELETED).ToList())
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_POST_DETAIL detai = new T_SK_ENTERPRISE_LIBRARY_POST_DETAIL();
|
|
detai.ID = Guid.NewGuid();
|
|
detai.ORG_ID = entity.ORG_ID;
|
|
detai.ENTERPRISE_LIBRARY_POST_ID = po.ID;
|
|
detai.POST_ID = item2.POST_ID;
|
|
libraryPostList.Add(detai);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (details != null && details.Any())
|
|
{
|
|
detailIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL>(t => t.ENTERPRISE_LIBRARY_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
contentIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>(t => detailIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
basicIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_BASIC>(t => contentIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
hiddenIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_HIDDEN>(t => contentIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
departIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>(t => contentIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
postIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_POST>(t => departIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
foreach (var item in details.Where(t => !t.IS_DELETED).ToList())
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_DETAIL de = new T_SK_ENTERPRISE_LIBRARY_DETAIL();
|
|
de.ID = Guid.NewGuid();
|
|
de.ORG_ID = entity.ORG_ID;
|
|
de.ENTERPRISE_LIBRARY_ID = entity.ID;
|
|
de.MEASURES_NAME = item.MEASURES_NAME;
|
|
de.EMERGENCY = item.EMERGENCY;
|
|
de.NUM = (item.NUM == 0 || item.NUM == null) ? item.ROW_NO : item.NUM;
|
|
libraryDetail.Add(de);
|
|
if (item.Nav_DetailContents != null && item.Nav_DetailContents.Any())
|
|
{
|
|
foreach (var item2 in item.Nav_DetailContents.Where(t => !t.IS_DELETED).ToList())
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT con = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT();
|
|
con.ID = Guid.NewGuid();
|
|
con.ORG_ID = entity.ORG_ID;
|
|
con.ENTERPRISE_LIBRARY_DETAIL_ID = de.ID;
|
|
con.CHECK_CONTENTS_ID = item2.CHECK_CONTENTS_ID;
|
|
con.CHECK_CONTENT = item2.CHECK_CONTENT;
|
|
con.CHECK_BASIC = item2.CHECK_BASIC;
|
|
con.CHECK_STANDARD = item2.CHECK_STANDARD;
|
|
con.NUM = (item2.NUM == 0 || item2.NUM == null) ? item2.ROW_NO : item2.NUM;
|
|
contentList.Add(con);
|
|
if (item2.Nav_DetailHiddens != null && item2.Nav_DetailHiddens.Any())
|
|
{
|
|
foreach (var item3 in item2.Nav_DetailHiddens.Where(t => !t.IS_DELETED).ToList())
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_HIDDEN hi = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_HIDDEN();
|
|
hi.ID = Guid.NewGuid();
|
|
hi.ORG_ID = entity.ORG_ID;
|
|
hi.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID = con.ID;
|
|
hi.CHECK_QUESTION_ID = item3.CHECK_QUESTION_ID;
|
|
hi.HIDDEN_DESCRIPTION = item3.HIDDEN_DESCRIPTION;
|
|
hi.HIDDEN_LEVEL = item3.HIDDEN_LEVEL;
|
|
hi.RECTIFICATION_MEASURES = item3.RECTIFICATION_MEASURES;
|
|
hi.NUM =(item3.NUM ==0 || item3.NUM == null)?item3.ROW_NO:item3.NUM;
|
|
hiddenList.Add(hi);
|
|
}
|
|
}
|
|
if (item2.Nav_DetailBasics != null && item2.Nav_DetailBasics.Any())
|
|
{
|
|
foreach (var item3 in item2.Nav_DetailBasics.Where(t => !t.IS_DELETED).ToList())
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_BASIC ba = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_BASIC();
|
|
ba.ID = Guid.NewGuid();
|
|
ba.ORG_ID = entity.ORG_ID;
|
|
ba.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID = con.ID;
|
|
ba.LAW_ID = item3.LAW_ID;
|
|
basicList.Add(ba);
|
|
}
|
|
}
|
|
|
|
if (item2.Nav_DetailDeparts != null && item2.Nav_DetailDeparts.Any())
|
|
{
|
|
foreach (var item4 in item2.Nav_DetailDeparts.Where(t => !t.IS_DELETED).ToList())
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART pt = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART();
|
|
pt.ID = Guid.NewGuid();
|
|
pt.ORG_ID = entity.ORG_ID;
|
|
pt.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID = con.ID;
|
|
pt.CHECK_TYPE = item4.CHECK_TYPE;
|
|
pt.DEPARTMENT_ID = item4.DEPARTMENT_ID;
|
|
pt.CHECK_TYPE_ID = item4.CHECK_TYPE_ID;
|
|
pt.CHECK_CYCLE = item4.CHECK_CYCLE;
|
|
pt.NUM = item4.NUM;
|
|
departList.Add(pt);
|
|
if (item4.Nav_DetailPosts != null && item4.Nav_DetailPosts.Any())
|
|
{
|
|
foreach (var item5 in item4.Nav_DetailPosts.Where(t => !t.IS_DELETED).ToList())
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_POST po = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_POST();
|
|
po.ID = Guid.NewGuid();
|
|
po.ORG_ID = entity.ORG_ID;
|
|
po.ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART_ID = pt.ID;
|
|
po.POST_ID = item5.POST_ID;
|
|
postList.Add(po);
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
//辨识层级
|
|
var postdepartIds = libraryPost.Select(t => t.DEPARTMENT_ID).Distinct().ToList();
|
|
var identitylLevel = departments.Where(m => postdepartIds.Contains(m.ID)).Select(t => t.DEPARTMENT_TYPE).Distinct().ToList();
|
|
if (identitylLevel != null && identitylLevel.Any())
|
|
{
|
|
|
|
}
|
|
else
|
|
{
|
|
throw new Exception("辨识岗位不能为空");
|
|
}
|
|
//管控层级
|
|
var controlLevel = libraryDepart.Select(t => t.DEPARTMENT_TYPE).Distinct().ToList();
|
|
var count = controlLevel.Count();
|
|
//检查层级
|
|
var checkLevel = departList.Select(t => t.CHECK_TYPE).Distinct().ToList();
|
|
if (entity.EVALUATE_LEVEL == SKEvaluateLevelEnum.重大风险)
|
|
{
|
|
if (count >= 4 && controlLevel.Contains(SKDepartmentTypeEnum.公司级))
|
|
{
|
|
//重大风险管控层级必须有四个层级,并且要有公司级
|
|
}
|
|
else
|
|
{
|
|
foreach (var level in identitylLevel)
|
|
{
|
|
if (!controlLevel.Contains((SKDepartmentTypeEnum)level))
|
|
{
|
|
throw new Exception("缺少管控层级,请添加管控层级:" + ((SKDepartmentTypeEnum)level).GetDescription());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (entity.EVALUATE_LEVEL == SKEvaluateLevelEnum.较大风险)
|
|
{
|
|
|
|
if (count >= 3 && controlLevel.Contains(SKDepartmentTypeEnum.部门级))
|
|
{
|
|
//较大风险管控层级必须有三个层级,并且要有部门级
|
|
}
|
|
else
|
|
{
|
|
foreach (var level in identitylLevel)
|
|
{
|
|
if (!controlLevel.Contains((SKDepartmentTypeEnum)level))
|
|
{
|
|
throw new Exception("缺少管控层级,请添加管控层级:" + ((SKDepartmentTypeEnum)level).GetDescription());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (entity.EVALUATE_LEVEL == SKEvaluateLevelEnum.一般风险)
|
|
{
|
|
if (count >= 2 && controlLevel.Contains(SKDepartmentTypeEnum.车间级))
|
|
{
|
|
//一般风险管控层级必须有两个层级,并且要有车间级
|
|
}
|
|
else
|
|
{
|
|
foreach (var level in identitylLevel)
|
|
{
|
|
if (!controlLevel.Contains((SKDepartmentTypeEnum)level))
|
|
{
|
|
throw new Exception("缺少管控层级,请添加管控层级:" + ((SKDepartmentTypeEnum)level).GetDescription());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (entity.EVALUATE_LEVEL == SKEvaluateLevelEnum.低风险)
|
|
{
|
|
if (count >= 1 && controlLevel.Contains(SKDepartmentTypeEnum.班组级))
|
|
{
|
|
//低风险管控层级必须有一个层级,并且要有班组级
|
|
}
|
|
else
|
|
{
|
|
foreach (var level in identitylLevel)
|
|
{
|
|
if (!controlLevel.Contains((SKDepartmentTypeEnum)level))
|
|
{
|
|
throw new Exception("缺少管控层级,请添加管控层级:" + ((SKDepartmentTypeEnum)level).GetDescription());
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
if (controlLevel != null && controlLevel.Any())
|
|
{
|
|
foreach (var level in controlLevel)
|
|
{
|
|
if (!checkLevel.Contains(level))
|
|
{
|
|
throw new Exception("管控层级与检查层级不一致,请添加检查层级:" + level.GetDescription());
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
throw new Exception("管控层级不能为空");
|
|
}
|
|
if (checkLevel != null && checkLevel.Any())
|
|
{
|
|
foreach (var level in checkLevel)
|
|
{
|
|
if (!controlLevel.Contains(level))
|
|
{
|
|
throw new Exception("检查层级与管控层级不一致,请添加管控层级:" + level.GetDescription());
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
throw new Exception("检查部门不能为空");
|
|
}
|
|
//更新岗位清单表的检查内容
|
|
//List<T_SK_CHECK_SET_CONTENTS> setContentList = new List<T_SK_CHECK_SET_CONTENTS>();
|
|
//List<T_SK_CHECK_SET_CONTENTS_HIDDEN> setContentHiddenList = new List<T_SK_CHECK_SET_CONTENTS_HIDDEN>();
|
|
//var checkType = this.GetEntity<T_SK_CHECK_TYPE>(t => t.NAME == "岗位排查");
|
|
//if (checkType == null)
|
|
//{
|
|
// throw new Exception("请到系统管理维护检查类型:岗位排查!");
|
|
//}
|
|
//var sets = this.GetEntities<T_SK_CHECK_SET>(t =>t.CHECK_TYPE_ID == checkType.ID, new BaseFilter(entity.ORG_ID)).ToList();
|
|
//var setIds = sets.Select(t=>t.ID).ToList();
|
|
//var setContents = this.GetEntities<T_SK_CHECK_SET_CONTENTS>(t => setIds.Contains(t.CHECK_SET_ID), new BaseFilter(entity.ORG_ID)).ToList();
|
|
//if (postList.Any())
|
|
//{
|
|
// foreach (var item in postList)
|
|
// {
|
|
// var setFirst = sets.FirstOrDefault(t => t.POST_ID == item.POST_ID && t.CHECK_TYPE_ID == item.Nav_DetailDepart?.CHECK_TYPE_ID);
|
|
// if (setFirst != null)
|
|
// {
|
|
// var contentFirst = setContents.FirstOrDefault(t => t.CHECK_SET_ID == setFirst.ID && t.CHECK_CONTENTS_ID == item.Nav_DetailDepart?.Nav_DetailContent?.CHECK_CONTENTS_ID);
|
|
// if (contentFirst == null)
|
|
// {
|
|
// //添加检查内容
|
|
// T_SK_CHECK_SET_CONTENTS con = new T_SK_CHECK_SET_CONTENTS();
|
|
// con.ORG_ID = setFirst.ORG_ID;
|
|
// con.CHECK_CONTENTS_ID = item.Nav_DetailDepart?.Nav_DetailContent?.CHECK_CONTENTS_ID;
|
|
// con.CHECK_CONTENT = item.Nav_DetailDepart?.Nav_DetailContent?.CHECK_CONTENT;
|
|
// con.CHECK_SET_ID = setFirst.ID;
|
|
// setContentList.Add(con);
|
|
// if (item.Nav_DetailDepart!=null && item.Nav_DetailDepart.Nav_DetailContent != null && item.Nav_DetailDepart.Nav_DetailContent.Nav_DetailHiddens!=null &&item.Nav_DetailDepart.Nav_DetailContent.Nav_DetailHiddens.Any())
|
|
// {
|
|
// foreach (var item2 in item.Nav_DetailDepart.Nav_DetailContent.Nav_DetailHiddens)
|
|
// {
|
|
// T_SK_CHECK_SET_CONTENTS_HIDDEN hid = new T_SK_CHECK_SET_CONTENTS_HIDDEN();
|
|
// hid.ORG_ID = entity.ORG_ID;
|
|
// hid.CHECK_CONTENTS_SET_ID = con.ID;
|
|
// hid.CHECK_QUESTION_ID = item2.CHECK_QUESTION_ID;
|
|
// hid.RECTIFICATION_MEASURES = item2.RECTIFICATION_MEASURES;
|
|
// hid.HIDDEN_DESCRIPTION = item2.HIDDEN_DESCRIPTION;
|
|
// hid.HIDDEN_LEVEL = (SKHiddenLevel)item2.HIDDEN_LEVEL;
|
|
// setContentHiddenList.Add(hid);
|
|
// }
|
|
// }
|
|
// }
|
|
// }
|
|
// }
|
|
//}
|
|
//postList.ForEach(t => t.Nav_DetailDepart = null);
|
|
List<Guid> libraryIds = new List<Guid>();
|
|
List<Guid> basicDetailIds = new List<Guid>();
|
|
List<Guid> basicContentIds = new List<Guid>();
|
|
List<Guid> basicHiddenIds = new List<Guid>();
|
|
List<Guid> basicBasicIds = new List<Guid>();
|
|
T_SK_BASIC_LIBRARY enterpriseLib = null;
|
|
List<T_SK_BASIC_LIBRARY_DETAIL> libraryDetailList = new List<T_SK_BASIC_LIBRARY_DETAIL>();
|
|
List<T_SK_BASIC_LIBRARY_DETAIL_CONTENT> libraryContentList = new List<T_SK_BASIC_LIBRARY_DETAIL_CONTENT>();
|
|
List<T_SK_BASIC_LIBRARY_DETAIL_CONTENT_HIDDEN> libraryHiddenList = new List<T_SK_BASIC_LIBRARY_DETAIL_CONTENT_HIDDEN>();
|
|
List<T_SK_BASIC_LIBRARY_DETAIL_CONTENT_BASIC> libraryBasicList = new List<T_SK_BASIC_LIBRARY_DETAIL_CONTENT_BASIC>();
|
|
//同步基础库
|
|
if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify"))
|
|
{
|
|
var library = this.GetEntity<T_SK_BASIC_LIBRARY>(t => t.MineType == entity.MineType && t.AREA_ID == entity.AREA_ID && t.TYPE_ID == entity.TYPE_ID && t.RISK_NAME == entity.RISK_NAME && t.RISK_DESCRIPTION == entity.RISK_DESCRIPTION);
|
|
if (library != null)
|
|
{
|
|
libraryIds.Add(library.ID);
|
|
basicDetailIds = this.GetEntities<T_SK_BASIC_LIBRARY_DETAIL>(t => t.BASIC_LIBRARY_ID == library.ID, new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
basicContentIds = this.GetEntities<T_SK_BASIC_LIBRARY_DETAIL_CONTENT>(t => detailIds.Contains(t.BASIC_LIBRARY_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
basicHiddenIds = this.GetEntities<T_SK_BASIC_LIBRARY_DETAIL_CONTENT_HIDDEN>(t => contentIds.Contains(t.BASIC_LIBRARY_DETAIL_CONTENT_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
basicBasicIds = this.GetEntities<T_SK_BASIC_LIBRARY_DETAIL_CONTENT_BASIC>(t => contentIds.Contains(t.BASIC_LIBRARY_DETAIL_CONTENT_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
|
|
}
|
|
enterpriseLib = new T_SK_BASIC_LIBRARY();
|
|
enterpriseLib.ID = entity.ID;
|
|
enterpriseLib.ORG_ID = entity.ORG_ID;
|
|
enterpriseLib.ENABLE_STATUS = entity.ENABLE_STATUS;
|
|
enterpriseLib.MineType = entity.MineType;
|
|
enterpriseLib.MINE_NAME = entity.MINE_NAME;
|
|
enterpriseLib.AREA_ID = entity.AREA_ID;
|
|
enterpriseLib.AREA_NAME = entity.AREA_NAME;
|
|
enterpriseLib.RISK_NAME = entity.RISK_NAME;
|
|
enterpriseLib.RISK_DESCRIPTION = entity.RISK_DESCRIPTION;
|
|
enterpriseLib.TYPE_ID = entity.TYPE_ID;
|
|
enterpriseLib.TYPE_NAME = entity.TYPE_NAME;
|
|
enterpriseLib.EVALUATE_L = entity.EVALUATE_L;
|
|
enterpriseLib.EVALUATE_E = entity.EVALUATE_E;
|
|
enterpriseLib.EVALUATE_C = entity.EVALUATE_C;
|
|
enterpriseLib.EVALUATE_SCORE = entity.EVALUATE_SCORE;
|
|
enterpriseLib.EVALUATE_LEVEL = entity.EVALUATE_LEVEL;
|
|
enterpriseLib.DEPARTMENT_TYPE = entity.DEPARTMENT_TYPE;
|
|
enterpriseLib.NUM = entity.NUM;
|
|
if (details != null && details.Any())
|
|
{
|
|
foreach (var item in details)
|
|
{
|
|
T_SK_BASIC_LIBRARY_DETAIL enterDetail = new T_SK_BASIC_LIBRARY_DETAIL();
|
|
enterDetail.ORG_ID = item.ORG_ID;
|
|
enterDetail.ID = item.ID;
|
|
enterDetail.BASIC_LIBRARY_ID = item.ENTERPRISE_LIBRARY_ID;
|
|
enterDetail.MEASURES_NAME = item.MEASURES_NAME;
|
|
enterDetail.NUM = item.NUM;
|
|
enterDetail.EMERGENCY = item.EMERGENCY;
|
|
libraryDetailList.Add(enterDetail);
|
|
}
|
|
}
|
|
if (contentList != null && contentList.Any())
|
|
{
|
|
foreach (var item in contentList)
|
|
{
|
|
T_SK_BASIC_LIBRARY_DETAIL_CONTENT enterDetail = new T_SK_BASIC_LIBRARY_DETAIL_CONTENT();
|
|
enterDetail.ORG_ID = item.ORG_ID;
|
|
enterDetail.ID = item.ID;
|
|
enterDetail.BASIC_LIBRARY_DETAIL_ID = item.ENTERPRISE_LIBRARY_DETAIL_ID;
|
|
enterDetail.CHECK_CONTENT = item.CHECK_CONTENT;
|
|
enterDetail.NUM = item.NUM;
|
|
enterDetail.CHECK_CONTENTS_ID = item.CHECK_CONTENTS_ID;
|
|
enterDetail.CHECK_BASIC = item.CHECK_BASIC;
|
|
enterDetail.CHECK_STANDARD = item.CHECK_STANDARD;
|
|
enterDetail.CHECK_CONTENTS_ID = item.CHECK_CONTENTS_ID;
|
|
enterDetail.CHECK_BASIC = item.CHECK_BASIC;
|
|
libraryContentList.Add(enterDetail);
|
|
}
|
|
}
|
|
if (basicList != null && basicList.Any())
|
|
{
|
|
foreach (var item in basicList)
|
|
{
|
|
T_SK_BASIC_LIBRARY_DETAIL_CONTENT_BASIC enterDetail = new T_SK_BASIC_LIBRARY_DETAIL_CONTENT_BASIC();
|
|
enterDetail.ORG_ID = item.ORG_ID;
|
|
enterDetail.ID = item.ID;
|
|
enterDetail.BASIC_LIBRARY_DETAIL_CONTENT_ID = item.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID;
|
|
enterDetail.LAW_ID = item.LAW_ID;
|
|
libraryBasicList.Add(enterDetail);
|
|
}
|
|
}
|
|
if (hiddenList != null && hiddenList.Any())
|
|
{
|
|
foreach (var item in hiddenList)
|
|
{
|
|
T_SK_BASIC_LIBRARY_DETAIL_CONTENT_HIDDEN enterDetail = new T_SK_BASIC_LIBRARY_DETAIL_CONTENT_HIDDEN();
|
|
enterDetail.ORG_ID = item.ORG_ID;
|
|
enterDetail.ID = item.ID;
|
|
enterDetail.BASIC_LIBRARY_DETAIL_CONTENT_ID = item.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID;
|
|
enterDetail.RECTIFICATION_MEASURES = item.RECTIFICATION_MEASURES;
|
|
enterDetail.NUM = item.NUM;
|
|
enterDetail.CHECK_QUESTION_ID = item.CHECK_QUESTION_ID;
|
|
enterDetail.HIDDEN_DESCRIPTION = item.HIDDEN_DESCRIPTION;
|
|
enterDetail.HIDDEN_LEVEL = item.HIDDEN_LEVEL;
|
|
libraryHiddenList.Add(enterDetail);
|
|
}
|
|
}
|
|
}
|
|
this.UnifiedCommit(() =>
|
|
{
|
|
if (hiddenIds != null && hiddenIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_HIDDEN>(hiddenIds);
|
|
if (postIds != null && postIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_POST>(postIds);
|
|
if (departIds != null && departIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>(departIds);
|
|
if (basicIds != null && basicIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_BASIC>(basicIds);
|
|
if (contentIds != null && contentIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>(contentIds);
|
|
if (detailIds != null && detailIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_ENTERPRISE_LIBRARY_DETAIL>(detailIds);
|
|
if (libraryPostDetailIds != null && libraryPostDetailIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_ENTERPRISE_LIBRARY_POST_DETAIL>(libraryPostDetailIds);
|
|
if (libraryPostIds != null && libraryPostIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_ENTERPRISE_LIBRARY_POST>(libraryPostIds);
|
|
if (libraryDepartIds != null && libraryDepartIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_ENTERPRISE_LIBRARY_DEPART>(libraryDepartIds);
|
|
if (entity != null)
|
|
UpdateEntityNoCommit(entity);
|
|
if (libraryDetail != null && libraryDetail.Any())
|
|
BantchSaveEntityNoCommit(libraryDetail);
|
|
if (libraryDepart != null && libraryDepart.Any())
|
|
BantchSaveEntityNoCommit(libraryDepart);
|
|
if (libraryPost != null && libraryPost.Any())
|
|
BantchSaveEntityNoCommit(libraryPost);
|
|
if (libraryPostList != null && libraryPostList.Any())
|
|
BantchSaveEntityNoCommit(libraryPostList);
|
|
if (contentList != null && contentList.Any())
|
|
BantchSaveEntityNoCommit(contentList);
|
|
if (basicList != null && basicList.Any())
|
|
BantchSaveEntityNoCommit(basicList);
|
|
if (hiddenList != null && hiddenList.Any())
|
|
BantchSaveEntityNoCommit(hiddenList);
|
|
if (departList != null && departList.Any())
|
|
BantchSaveEntityNoCommit(departList);
|
|
if (postList != null && postList.Any())
|
|
BantchSaveEntityNoCommit(postList);
|
|
if (basicHiddenIds != null && basicHiddenIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_BASIC_LIBRARY_DETAIL_CONTENT_HIDDEN>(basicHiddenIds);
|
|
if (basicBasicIds != null && basicBasicIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_BASIC_LIBRARY_DETAIL_CONTENT_BASIC>(basicBasicIds);
|
|
if (basicContentIds != null && basicContentIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_BASIC_LIBRARY_DETAIL_CONTENT>(basicContentIds);
|
|
if (basicDetailIds != null && basicDetailIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_BASIC_LIBRARY_DETAIL>(basicDetailIds);
|
|
if (libraryIds != null && libraryIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_SK_BASIC_LIBRARY>(libraryIds);
|
|
if (enterpriseLib != null)
|
|
UpdateEntityNoCommit(enterpriseLib);
|
|
if (libraryDetailList != null && libraryDetailList.Any())
|
|
BantchSaveEntityNoCommit(libraryDetailList);
|
|
if (libraryContentList != null && libraryContentList.Any())
|
|
BantchSaveEntityNoCommit(libraryContentList);
|
|
if (libraryHiddenList != null && libraryHiddenList.Any())
|
|
BantchSaveEntityNoCommit(libraryHiddenList);
|
|
if (libraryBasicList != null && libraryBasicList.Any())
|
|
BantchSaveEntityNoCommit(libraryBasicList);
|
|
//if (setContentList != null && setContentList.Any())
|
|
// BantchSaveEntityNoCommit(setContentList);
|
|
//if (setContentHiddenList != null && setContentHiddenList.Any())
|
|
// BantchSaveEntityNoCommit(setContentHiddenList);
|
|
});
|
|
return true;
|
|
});
|
|
}
|
|
/// <summary>
|
|
/// 排序分页查询数据
|
|
/// </summary>
|
|
/// <param name="pageFilter">分页过滤实体</param>
|
|
/// <returns></returns>
|
|
[HttpPost, Route("SKOrderPaged")]
|
|
public PagedActionResult<T_SK_ENTERPRISE_LIBRARY> SKOrderPaged([FromBody] KeywordPageFilter pageFilter)
|
|
{
|
|
var mintype = pageFilter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "MineType");
|
|
if (mintype != null && mintype.Value.ToString() == "0")
|
|
pageFilter.FilterGroup.Rules.Remove(mintype);
|
|
var nullRules = pageFilter.FilterGroup.Rules.Where(t => t.Value == null).ToList();
|
|
if (nullRules.Any())
|
|
{
|
|
nullRules.ForEach(t => pageFilter.FilterGroup.Rules.Remove(t));
|
|
}
|
|
pageFilter.Include.Add("Nav_RiskName");
|
|
pageFilter.Include.Add("Nav_Details");
|
|
pageFilter.Include.Add("Nav_ProductionUnit");
|
|
pageFilter.SelectField.Add("Nav_Details.NUM");
|
|
pageFilter.SelectField.Add("Nav_Details.MEASURES_NAME");
|
|
var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0, new BaseFilter(pageFilter.OrgId), "Nav_Person");
|
|
var userPosts = this.GetEntities<T_FM_USER_POST>(t => !t.IS_DELETED, new BaseFilter(pageFilter.OrgId));
|
|
var departs = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(pageFilter.OrgId));
|
|
var result = WitOrderPaged(null, pageFilter);
|
|
if (result != null && result.Data != null)
|
|
{
|
|
if (result.Data != null && result.Data.Any())
|
|
{
|
|
foreach (var item in result.Data)
|
|
{
|
|
//管控措施
|
|
var detailStr = new List<string>(); var detailNum = new List<int?>();
|
|
if (item.Nav_Details != null && item.Nav_Details.Any())
|
|
{
|
|
var i = 1;
|
|
foreach (var item2 in item.Nav_Details.OrderBy(t => t.NUM))
|
|
{
|
|
if (item2 != null && !string.IsNullOrEmpty(item2.MEASURES_NAME))
|
|
{
|
|
detailStr.Add(item2.MEASURES_NAME);
|
|
detailNum.Add(item2.NUM);
|
|
var temp = item2.NUM + "、" + item2.MEASURES_NAME + Environment.NewLine;
|
|
item.MINE_NAME = item.MINE_NAME + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
//if (detailStr.Any())
|
|
//{
|
|
// detailStr = detailStr.Distinct().ToList();
|
|
// var i = 1;
|
|
// foreach (var item2 in detailStr)
|
|
// {
|
|
// if (!string.IsNullOrEmpty(item2))
|
|
// {
|
|
// var temp = i + "、" + item2 + "\r\n";
|
|
// item.MEASURE = item.MEASURE + temp;
|
|
// i++;
|
|
// }
|
|
// }
|
|
//}
|
|
//辨识层级、部门、岗位
|
|
var levelStr = new List<string>();
|
|
var departIds = new List<Guid>();
|
|
var postIds = new List<Guid?>();
|
|
if (item.Nav_Posts != null && item.Nav_Posts.Any())
|
|
{
|
|
foreach (var item2 in item.Nav_Posts.OrderBy(t => t.DEPARTMENT_ID))
|
|
{
|
|
if (item2 != null && item2.DEPARTMENT_ID != null)
|
|
{
|
|
var first = departs.FirstOrDefault(t => t.ID == item2.DEPARTMENT_ID);
|
|
var level = Enum.GetName(typeof(FMDepartmentType), first.DEPARTMENT_TYPE);
|
|
levelStr.Add(level);
|
|
departIds.Add(first.ID);
|
|
}
|
|
}
|
|
}
|
|
if (levelStr.Any())
|
|
{
|
|
levelStr = levelStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in levelStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var type = 20;
|
|
switch (item2)
|
|
{
|
|
case "部门":
|
|
type = 10;
|
|
break;
|
|
case "车间":
|
|
type = 15;
|
|
break;
|
|
case "班组":
|
|
type = 20;
|
|
break;
|
|
case "公司":
|
|
type = 5;
|
|
break;
|
|
default:
|
|
type = 20;
|
|
break;
|
|
}
|
|
var temp = i + "、" + item2 + Environment.NewLine;
|
|
item.CHECKLEVEL = item.CHECKLEVEL + temp;
|
|
var departTemps = departs.Where(t => departIds.Contains(t.ID) && t.DEPARTMENT_TYPE == type).ToList();
|
|
var departTempNames = departTemps.Select(m => m.NAME).Distinct().ToList();
|
|
var temp2 = i + "、" + string.Join(",", departTempNames) + Environment.NewLine;
|
|
item.CHECKDEPT = item.CHECKDEPT + temp2;
|
|
var departTempIds = departTemps.Select(t => t.ID).ToList();
|
|
var postTempIds = users.Where(t => departTempIds.Contains((Guid)t.DEPARTMENT_ID) && t.Nav_Person != null).Select(m => m.Nav_Person.POST_ID).Distinct().ToList();
|
|
var postTemps = userPosts.Where(t => postTempIds.Contains(t.ID)).Select(m => m.NAME).Distinct().ToList();
|
|
var temp3 = i + "、" + string.Join(",", postTemps) + Environment.NewLine;
|
|
item.CHECKPOST = item.CHECKPOST + temp3;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
result.Data.OrderBy(t => t.EVALUATE_LEVEL);
|
|
}
|
|
result.Data.OrderBy(t => t.PRODUCTION_UNIT_ID).ThenBy(m => m.EVALUATE_LEVEL);
|
|
}
|
|
return result;
|
|
}
|
|
/// <summary>
|
|
/// 排序查询所有数据
|
|
/// </summary>
|
|
/// <param name="filter">过滤实体</param>
|
|
/// <returns></returns>
|
|
|
|
[HttpPost, Route("SKOrderEntities")]
|
|
public JsonActionResult<IEnumerable<T_SK_ENTERPRISE_LIBRARY>> SKOrderEntities([FromBody] KeywordFilter filter)
|
|
{
|
|
var result = WitOrderEntities(null, filter);
|
|
if (result != null && result.Data != null)
|
|
{
|
|
if (result.Data != null && result.Data.Any())
|
|
{
|
|
foreach (var item in result.Data)
|
|
{
|
|
var detailStr = new List<string>();
|
|
var contentStr = new List<string>();
|
|
var basicStr = new List<string>();
|
|
var standardStr = new List<string>();
|
|
var scripStr = new List<string>();
|
|
var levelStr = new List<string>();
|
|
var measureStr = new List<string>();
|
|
var controlLevelStr = new List<string>();
|
|
var controlDeptStr = new List<string>();
|
|
var controlUserStr = new List<string>();
|
|
var checkLevelStr = new List<string>();
|
|
var checkTypeStr = new List<string>();
|
|
var checkDeptStr = new List<string>();
|
|
var checkPostStr = new List<string>();
|
|
if (item.Nav_Departs != null && item.Nav_Departs.Any())
|
|
{
|
|
foreach (var item2 in item.Nav_Departs.OrderBy(t => t.DEPARTMENT_TYPE))
|
|
{
|
|
if (item2 != null)
|
|
{
|
|
if (item2.Nav_Department != null && !string.IsNullOrEmpty(item2.Nav_Department.NAME))
|
|
{
|
|
controlDeptStr.Add(item2.Nav_Department.NAME);
|
|
}
|
|
controlLevelStr.Add(item2.DEPARTMENT_TYPE.GetDescription());
|
|
if (item2.Nav_User != null && !string.IsNullOrEmpty(item2.Nav_User.NAME))
|
|
{
|
|
controlUserStr.Add(item2.Nav_User.NAME);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (item.Nav_Details != null && item.Nav_Details.Any())
|
|
{
|
|
foreach (var item2 in item.Nav_Details.OrderBy(t => t.NUM))
|
|
{
|
|
if (item2 != null && !string.IsNullOrEmpty(item2.MEASURES_NAME))
|
|
{
|
|
detailStr.Add(item2.MEASURES_NAME);
|
|
}
|
|
if (item2 != null && item2.Nav_DetailContents != null && item2.Nav_DetailContents.Any())
|
|
{
|
|
foreach (var item3 in item2.Nav_DetailContents.OrderBy(t => t.NUM))
|
|
{
|
|
if (item3 != null)
|
|
{
|
|
if (item3.Nav_Contents != null && !string.IsNullOrEmpty(item3.Nav_Contents.CHECKCONTENT))
|
|
{
|
|
contentStr.Add(item3.Nav_Contents.CHECKCONTENT);
|
|
}
|
|
if (!string.IsNullOrEmpty(item3.CHECK_STANDARD))
|
|
{
|
|
standardStr.Add(item3.CHECK_STANDARD);
|
|
}
|
|
if (item3.Nav_DetailBasics != null && item3.Nav_DetailBasics.Any())
|
|
{
|
|
foreach (var item4 in item3.Nav_DetailBasics)
|
|
{
|
|
if (item4 != null && item4.Nav_Law != null && !string.IsNullOrEmpty(item4.Nav_Law.NAME))
|
|
{
|
|
basicStr.Add(item4.Nav_Law.NAME);
|
|
}
|
|
}
|
|
}
|
|
if (item3.Nav_DetailHiddens != null && item3.Nav_DetailHiddens.Any())
|
|
{
|
|
foreach (var item4 in item3.Nav_DetailHiddens.OrderBy(t => t.NUM))
|
|
{
|
|
if (item4 != null)
|
|
{
|
|
if (item4.Nav_Question != null && !string.IsNullOrEmpty(item4.Nav_Question.DESCREPTION))
|
|
{
|
|
scripStr.Add(item4.Nav_Question.DESCREPTION);
|
|
}
|
|
levelStr.Add(item4.HIDDEN_LEVEL.GetDescription());
|
|
if (!string.IsNullOrEmpty(item4.RECTIFICATION_MEASURES))
|
|
{
|
|
measureStr.Add(item4.RECTIFICATION_MEASURES);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (item3.Nav_DetailDeparts != null && item3.Nav_DetailDeparts.Any())
|
|
{
|
|
foreach (var item4 in item3.Nav_DetailDeparts.OrderBy(t => t.NUM))
|
|
{
|
|
if (item4 != null)
|
|
{
|
|
if (item4.Nav_Department != null && !string.IsNullOrEmpty(item4.Nav_Department.NAME))
|
|
{
|
|
checkDeptStr.Add(item4.Nav_Department.NAME);
|
|
}
|
|
checkLevelStr.Add(item4.CHECK_TYPE.GetDescription());
|
|
checkTypeStr.Add(item4.Nav_CheckType?.NAME);
|
|
if (item4.Nav_DetailPosts != null && item4.Nav_DetailPosts.Any())
|
|
{
|
|
foreach (var item5 in item4.Nav_DetailPosts)
|
|
{
|
|
if (item5 != null && item5.Nav_Post != null && !string.IsNullOrEmpty(item5.Nav_Post.NAME))
|
|
{
|
|
checkPostStr.Add(item5.Nav_Post.NAME);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (detailStr.Any())
|
|
{
|
|
detailStr = detailStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in detailStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.MEASURE = item.MEASURE + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (contentStr.Any())
|
|
{
|
|
contentStr = contentStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in contentStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.CHECKCONTENTS = item.CHECKCONTENTS + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (basicStr.Any())
|
|
{
|
|
basicStr = basicStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in basicStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.CHECKBASICS = item.CHECKBASICS + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (standardStr.Any())
|
|
{
|
|
standardStr = standardStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in standardStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.CHECKSTANDARDS = item.CHECKSTANDARDS + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (scripStr.Any())
|
|
{
|
|
scripStr = scripStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in scripStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.HIDDENSCRIPTION = item.HIDDENSCRIPTION + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (levelStr.Any())
|
|
{
|
|
levelStr = levelStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in levelStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.HIDDENLEVEL = item.HIDDENLEVEL + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (measureStr.Any())
|
|
{
|
|
measureStr = measureStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in measureStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.RECIFYMEASURE = item.RECIFYMEASURE + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
|
|
if (controlLevelStr.Any())
|
|
{
|
|
controlLevelStr = controlLevelStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in controlLevelStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.CONTROLLEVEL = item.CONTROLLEVEL + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (controlDeptStr.Any())
|
|
{
|
|
controlDeptStr = controlDeptStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in controlDeptStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.CONTROLDEPT = item.CONTROLDEPT + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (controlUserStr.Any())
|
|
{
|
|
controlUserStr = controlUserStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in controlUserStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.CONTROLUSER = item.CONTROLUSER + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (checkLevelStr.Any())
|
|
{
|
|
checkLevelStr = checkLevelStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in checkLevelStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.CHECKLEVEL = item.CHECKLEVEL + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (checkTypeStr.Any())
|
|
{
|
|
checkTypeStr = checkTypeStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in checkTypeStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.CHECKTYPE = item.CHECKTYPE + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (checkDeptStr.Any())
|
|
{
|
|
checkDeptStr = checkDeptStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in checkDeptStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.CHECKDEPT = item.CHECKDEPT + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
if (checkPostStr.Any())
|
|
{
|
|
checkPostStr = checkPostStr.Distinct().ToList();
|
|
var i = 1;
|
|
foreach (var item2 in checkPostStr)
|
|
{
|
|
if (!string.IsNullOrEmpty(item2))
|
|
{
|
|
var temp = i + "、" + item2 + "\r\n";
|
|
item.CHECKPOST = item.CHECKPOST + temp;
|
|
i++;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
result.Data.OrderBy(t => t.AREA_ID);
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
[HttpPost, Route("GetCheckList")]
|
|
public JsonActionResult<List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>> GetCheckList([FromBody] KeywordFilter filter)
|
|
{
|
|
var loginDepart = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
|
|
var departs = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId));
|
|
var AHDepart = departs.FirstOrDefault(t => t.NAME.Contains("安全环保"));
|
|
if (AHDepart != null && loginDepart == AHDepart.ID)
|
|
{
|
|
loginDepart = departs.FirstOrDefault(t => t.PARENT_ID == null).ID;
|
|
}
|
|
List<Guid> departmentIds = new List<Guid>() { loginDepart.Value };
|
|
DepartmentService.GetDepartmentIds(filter.OrgId.Value, new List<Guid>() { loginDepart.Value }, ref departmentIds);
|
|
var checkList = new JsonActionResult<List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>>();
|
|
var detailContents = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>(t => t.DEPARTMENT_ID != null && departmentIds.Contains((Guid)t.DEPARTMENT_ID), new BaseFilter(filter.OrgId), "Nav_DetailContent.Nav_LibraryDetail.Nav_Library", "Nav_CheckType").ToList();
|
|
if (detailContents != null && detailContents.Any())
|
|
{
|
|
foreach (var item in detailContents)
|
|
{
|
|
item.MineType = item.Nav_DetailContent.Nav_LibraryDetail.Nav_Library.MineType;
|
|
}
|
|
checkList.Data = detailContents.GroupBy(t => new { t.MineType, t.CHECK_TYPE_ID, t.CHECK_CYCLE, t.CHECK_TYPE }).Select(m => m.FirstOrDefault()).OrderBy(n => n.MineType).ThenBy(x => x.CHECK_TYPE).ThenBy(y => y.CHECK_TYPE_ID).ToList();
|
|
checkList.TotalCount = checkList.Data.Count;
|
|
}
|
|
return checkList;
|
|
}
|
|
[HttpPost, Route("GetCheckDetailList")]
|
|
public JsonActionResult<List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>> GetCheckDetailList([FromBody] KeywordFilter filter)
|
|
{
|
|
//if (string.IsNullOrEmpty(filter.Keyword) || string.IsNullOrEmpty(filter.Parameter1) || string.IsNullOrEmpty(filter.Parameter2) || string.IsNullOrEmpty(filter.Parameter3))
|
|
//{
|
|
// throw new Exception("传入参数有误,请联系管理员");
|
|
//}
|
|
var loginDepart = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
|
|
var departs = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId));
|
|
var AHDepart = departs.FirstOrDefault(t => t.NAME.Contains("安全环保"));
|
|
if (AHDepart != null && loginDepart == AHDepart.ID)
|
|
{
|
|
loginDepart = departs.FirstOrDefault(t => t.PARENT_ID == null).ID;
|
|
}
|
|
List<Guid> departmentIds = new List<Guid>() { loginDepart.Value };
|
|
DepartmentService.GetDepartmentIds(filter.OrgId.Value, new List<Guid>() { loginDepart.Value }, ref departmentIds);
|
|
var checkList = new JsonActionResult<List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>>();
|
|
var checkTempList = new List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>();
|
|
var detailContents = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>(t => t.DEPARTMENT_ID != null && departmentIds.Contains((Guid)t.DEPARTMENT_ID), new BaseFilter(filter.OrgId), "Nav_DetailContent.Nav_LibraryDetail.Nav_Library", "Nav_CheckType", "Nav_Department").ToList();
|
|
if (detailContents != null && detailContents.Any())
|
|
{
|
|
foreach (var item in detailContents)
|
|
{
|
|
item.MineType = item.Nav_DetailContent.Nav_LibraryDetail.Nav_Library.MineType;
|
|
}
|
|
if (!string.IsNullOrEmpty(filter.Keyword))
|
|
{
|
|
detailContents = detailContents.Where(t => t.MineType == (SKProductionUnit)int.Parse(filter.Keyword)).ToList();
|
|
}
|
|
if (!string.IsNullOrEmpty(filter.Parameter1))
|
|
{
|
|
detailContents = detailContents.Where(t => t.CHECK_TYPE_ID == Guid.Parse(filter.Parameter1)).ToList();
|
|
}
|
|
if (!string.IsNullOrEmpty(filter.Parameter2))
|
|
{
|
|
detailContents = detailContents.Where(t => t.CHECK_CYCLE == (SKPLANCHECKFREQUENCYEnum)int.Parse(filter.Parameter2)).ToList();
|
|
}
|
|
if (!string.IsNullOrEmpty(filter.Parameter3))
|
|
{
|
|
detailContents = detailContents.Where(t => t.CHECK_TYPE == (SKDepartmentTypeEnum)int.Parse(filter.Parameter3)).ToList();
|
|
}
|
|
var contentIds = detailContents.Select(t => t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID).Distinct().ToList();
|
|
var contentList = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>(t => contentIds.Contains(t.ID), new BaseFilter(filter.OrgId), "Nav_LibraryDetail.Nav_Library.Nav_Area", "Nav_Contents", "Nav_DetailBasics.Nav_Law");
|
|
if (contentList.Any())
|
|
{
|
|
foreach (var item in contentList)
|
|
{
|
|
item.MineType = item.Nav_LibraryDetail.Nav_Library.MineType;
|
|
item.AREA_NAME = item.Nav_LibraryDetail.Nav_Library.AREA_NAME;
|
|
item.AREA_ID = item.Nav_LibraryDetail.Nav_Library.AREA_ID;
|
|
item.Nav_Contents = item.Nav_Contents;
|
|
item.Nav_Area = item.Nav_LibraryDetail.Nav_Library.Nav_Area;
|
|
item.RISK_NAME = item.Nav_LibraryDetail.Nav_Library.RISK_NAME;
|
|
}
|
|
}
|
|
var userPosts = this.GetEntities<T_FM_USER_POST>(t => t.IS_DELETED == false, new BaseFilter(filter.OrgId)).ToList();
|
|
var departIds = detailContents.Select(t => t.ID).ToList();
|
|
var posts = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_POST>(t => departIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART_ID), new BaseFilter(filter.OrgId), "Nav_DetailDepart.Nav_Department").ToList();
|
|
var tempPosts = posts.GroupBy(t => new { t.Nav_DetailDepart.DEPARTMENT_ID, t.POST_ID }).Select(m => m.FirstOrDefault()).OrderBy(n => n.Nav_DetailDepart.DEPARTMENT_ID).ToList();
|
|
foreach (var item in tempPosts)
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART item2 = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART();
|
|
item2.DEPARTMENT_ID = item.Nav_DetailDepart.DEPARTMENT_ID;
|
|
item2.Nav_Department = item.Nav_DetailDepart.Nav_Department;
|
|
item2.POST_NAME = userPosts.FirstOrDefault(t => t.ID == item.POST_ID)?.NAME;
|
|
var tempIds = detailContents.Where(t => t.DEPARTMENT_ID == item.Nav_DetailDepart.DEPARTMENT_ID).Select(m => m.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID).ToList();
|
|
var contentTemps = contentList.Where(t => tempIds.Contains(t.ID)).ToList();
|
|
item2.Nav_ContentDatas = contentTemps.GroupBy(t => new { t.MineType, t.AREA_NAME, t.Nav_Contents?.CHECKCONTENT }).Select(m => m.FirstOrDefault()).OrderBy(n => n.MineType).ThenBy(x => x.AREA_NAME).ToList();
|
|
checkTempList.Add(item2);
|
|
}
|
|
checkList.Data = checkTempList;
|
|
checkList.TotalCount = checkList.Data.Count;
|
|
}
|
|
return checkList;
|
|
}
|
|
[HttpPost, Route("GetCheckListContent")]
|
|
public JsonActionResult<List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>> GetCheckListContent([FromBody] KeywordFilter filter)
|
|
{
|
|
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
|
|
{
|
|
throw new Exception("生产单元错误");
|
|
}
|
|
var checkCycle = BSPLANCHECKFREQUENCYEnum.Date;
|
|
if (filter.Parameter2 == "0")
|
|
{
|
|
checkCycle = BSPLANCHECKFREQUENCYEnum.None;
|
|
}
|
|
else if (filter.Parameter2 == "10")
|
|
{
|
|
checkCycle = BSPLANCHECKFREQUENCYEnum.Date;
|
|
}
|
|
else if (filter.Parameter2 == "20")
|
|
{
|
|
checkCycle = BSPLANCHECKFREQUENCYEnum.Week;
|
|
}
|
|
else if (filter.Parameter2 == "30")
|
|
{
|
|
checkCycle = BSPLANCHECKFREQUENCYEnum.Month;
|
|
}
|
|
else if (filter.Parameter2 == "40")
|
|
{
|
|
checkCycle = BSPLANCHECKFREQUENCYEnum.Quarter;
|
|
}
|
|
else if (filter.Parameter2 == "50")
|
|
{
|
|
checkCycle = BSPLANCHECKFREQUENCYEnum.HalfYear;
|
|
}
|
|
else if (filter.Parameter2 == "60")
|
|
{
|
|
checkCycle = BSPLANCHECKFREQUENCYEnum.Year;
|
|
}
|
|
else
|
|
{
|
|
throw new Exception("检查周期错误");
|
|
}
|
|
var departType = FMDepartmentType.Department;
|
|
if (filter.Parameter3 == "10")
|
|
{
|
|
departType = FMDepartmentType.Department;
|
|
}
|
|
else if (filter.Parameter3 == "15")
|
|
{
|
|
departType = FMDepartmentType.Workshop;
|
|
}
|
|
else if (filter.Parameter3 == "20")
|
|
{
|
|
departType = FMDepartmentType.Class;
|
|
}
|
|
else if (filter.Parameter3 == "5")
|
|
{
|
|
departType = FMDepartmentType.Company;
|
|
}
|
|
else
|
|
{
|
|
throw new Exception("检查层级错误");
|
|
}
|
|
var checkList = new JsonActionResult<List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>>();
|
|
var checkData = new List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>();
|
|
var libraryIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY>(t => t.MineType == mineType, new BaseFilter(filter.OrgId)).Select(t => t.ID).ToList();
|
|
var detailIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL>(t => libraryIds.Contains(t.ENTERPRISE_LIBRARY_ID), new BaseFilter(filter.OrgId)).Select(t => t.ID).ToList();
|
|
//var detailId2s = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>(t => detailIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_ID) && t.CHECK_CYCLE == checkCycle && t.CHECK_TYPE == departType && t.CHECK_TYPE_ID == Guid.Parse(filter.Parameter4.ToString()), new BaseFilter(filter.OrgId)).Select(m=>m.ENTERPRISE_LIBRARY_DETAIL_ID).ToList();
|
|
//var detailId3s = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_POST>(t => detailId2s.Contains(t.ENTERPRISE_LIBRARY_DETAIL_ID) && t.DEPARTMENT_ID == Guid.Parse(filter.Parameter5) && t.POST_ID == Guid.Parse(filter.Parameter6), new BaseFilter(filter.OrgId)).Select(t => t.ENTERPRISE_LIBRARY_DETAIL_ID).ToList();
|
|
//var detailContents = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>(t => detailId3s.Contains(t.ENTERPRISE_LIBRARY_DETAIL_ID), new BaseFilter(filter.OrgId), "Nav_LibraryDetail.Nav_Library.Nav_Area", "Nav_Contents").ToList();
|
|
//if (detailContents != null && detailContents.Any())
|
|
//{
|
|
// foreach (var item in detailContents)
|
|
// {
|
|
// item.AREA_NAME = item.Nav_LibraryDetail?.Nav_Library?.Nav_Area?.NAME;
|
|
// }
|
|
// checkList.Data = detailContents.ToList();
|
|
// checkList.TotalCount = detailContents.Count;
|
|
//}
|
|
return checkList;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 排序分页查询数据
|
|
/// </summary>
|
|
/// <param name="pageFilter">分页过滤实体</param>
|
|
/// <returns></returns>
|
|
[HttpPost, Route("PostOrderPaged")]
|
|
public PagedActionResult<T_FM_USER_POST> PostOrderPaged([FromBody] KeywordPageFilter pageFilter)
|
|
{
|
|
var result = new PagedActionResult<T_FM_USER_POST>();
|
|
var filterValue = "";
|
|
if (pageFilter != null && pageFilter.FilterGroup != null && pageFilter.FilterGroup.Groups != null)
|
|
{
|
|
foreach (var item in pageFilter.FilterGroup.Groups)
|
|
{
|
|
var value = item.Rules.FirstOrDefault(t => t.Field == "DEPARTMENT_ID");
|
|
if (value != null)
|
|
{
|
|
filterValue = value.Value.ToString();
|
|
item.Rules.Remove(value);
|
|
}
|
|
}
|
|
}
|
|
if (!string.IsNullOrEmpty(filterValue))
|
|
{
|
|
var users = this.GetEntities<T_FM_USER>(t => t.DEPARTMENT_ID == Guid.Parse(filterValue) && t.ENABLE_STATUS == 0 && t.PERSON_ID != null, new BaseFilter(pageFilter.OrgId), "Nav_Person");
|
|
var postIds = users.Where(m => m.Nav_Person != null).Select(t => t.Nav_Person.POST_ID).Distinct().ToList();
|
|
if (postIds.Any())
|
|
{
|
|
result = this.GetOrderPageEntities<T_FM_USER_POST>(t => postIds.Contains(t.ID), pageFilter);
|
|
}
|
|
else
|
|
{
|
|
result = this.GetOrderPageEntities<T_FM_USER_POST>(null, pageFilter);
|
|
}
|
|
}
|
|
else if (!string.IsNullOrEmpty(pageFilter.Keyword))
|
|
{
|
|
var users = this.GetEntities<T_FM_USER>(t => t.DEPARTMENT_ID == Guid.Parse(pageFilter.Keyword) && t.ENABLE_STATUS == 0 && t.PERSON_ID != null, new BaseFilter(pageFilter.OrgId), "Nav_Person");
|
|
var postIds = users.Where(m => m.Nav_Person != null).Select(t => t.Nav_Person.POST_ID).Distinct().ToList();
|
|
if (postIds.Any())
|
|
{
|
|
result = this.GetOrderPageEntities<T_FM_USER_POST>(t => postIds.Contains(t.ID), pageFilter);
|
|
}
|
|
else
|
|
{
|
|
result = this.GetOrderPageEntities<T_FM_USER_POST>(null, pageFilter);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
result = this.GetOrderPageEntities<T_FM_USER_POST>(null, pageFilter);
|
|
}
|
|
return result;
|
|
}
|
|
/// <summary>
|
|
/// 获得单条实体数据
|
|
/// </summary>
|
|
/// <param name="filter">过滤实体</param>
|
|
/// <returns></returns>
|
|
[HttpPost, Route("PostLevel")]
|
|
public JsonActionResult<T_SK_ENTERPRISE_LIBRARY> PostLevel([FromBody] T_SK_ENTERPRISE_LIBRARY entity)
|
|
{
|
|
var result = new JsonActionResult<T_SK_ENTERPRISE_LIBRARY>();
|
|
result.Data = new T_SK_ENTERPRISE_LIBRARY();
|
|
var levels = new List<T_SK_ENTERPRISE_LIBRARY_DEPART>();
|
|
if (entity != null && entity.Nav_Posts != null)
|
|
{
|
|
var temps = new List<T_SK_ENTERPRISE_LIBRARY_DEPART>();
|
|
var departIds = entity.Nav_Posts.Select(t => t.DEPARTMENT_ID).Distinct().ToList();
|
|
if (!departIds.Any())
|
|
{
|
|
throw new Exception("请先填写辨识岗位");
|
|
}
|
|
var departs = this.GetEntities<T_FM_DEPARTMENT>(t => departIds.Contains(t.ID), new BaseFilter(entity.ORG_ID), "Nav_User");
|
|
if (departs.Any())
|
|
{
|
|
foreach (var item in departs)
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_DEPART de = new T_SK_ENTERPRISE_LIBRARY_DEPART();
|
|
de.DEPARTMENT_ID = item.ID;
|
|
de.DEPARTMENT_TYPE = item.DEPARTMENT_TYPE == 0 ? SKDepartmentTypeEnum.部门级 : item.DEPARTMENT_TYPE == 3 ? SKDepartmentTypeEnum.公司级 : item.DEPARTMENT_TYPE == 1 ? SKDepartmentTypeEnum.车间级 : SKDepartmentTypeEnum.班组级;
|
|
de.Nav_Department = item;
|
|
de.USER_ID = item.USER_ID;
|
|
de.Nav_User = item.Nav_User;
|
|
temps.Add(de);
|
|
}
|
|
}
|
|
if (temps.Any())
|
|
{
|
|
var x = temps.Where(t => t.DEPARTMENT_TYPE == SKDepartmentTypeEnum.公司级);
|
|
levels.AddRange(x);
|
|
var y = temps.Where(t => t.DEPARTMENT_TYPE != SKDepartmentTypeEnum.公司级).OrderBy(m => m.DEPARTMENT_TYPE);
|
|
levels.AddRange(y);
|
|
result.Data.Nav_Departs = levels;
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
/// <summary>
|
|
/// 获取导入数据
|
|
/// 参考 [Route("api/PF/Import")]
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpPost, Route("GetImportData")]
|
|
public JsonActionResult<ImportDataModel> GetImportData()
|
|
{
|
|
return SafeExecute<ImportDataModel>(() =>
|
|
{
|
|
var orgId = APT.Infrastructure.Api.AppContext.CurrentSession.OrgId;
|
|
var httpRequest = this.HttpContext.Request;
|
|
string orgIdStr = httpRequest.Form["OrgId"];// 获取 组织
|
|
ImportDataModel result = new ImportDataModel();
|
|
var dic = Path.Combine(System.AppContext.BaseDirectory, "tempImportFiles");
|
|
if (!Directory.Exists(dic))
|
|
Directory.CreateDirectory(dic);
|
|
foreach (var key in httpRequest.Form.Files) // 文件键
|
|
{
|
|
var postedFile = key; // 获取文件键对应的文件对象
|
|
string filePath = Path.Combine(dic, DateTime.Now.ToString("yyyy_MM_dd_hh_mm_ss") + "_" + postedFile.FileName);
|
|
Byte[] fileData = new Byte[postedFile.Length];
|
|
Stream sr = postedFile.OpenReadStream();//创建数据流对象
|
|
sr.Read(fileData, 0, (int)postedFile.Length);
|
|
using (FileStream fs = new FileStream(filePath, FileMode.CreateNew))
|
|
{
|
|
fs.Write(fileData, 0, fileData.Length);
|
|
fs.Flush();
|
|
fs.Close();
|
|
}
|
|
|
|
//获取数据
|
|
Dictionary<int, int> startRowIndexs = new Dictionary<int, int>();
|
|
startRowIndexs.Add(0, 1);//根据Excel格式数据赋值
|
|
var dataTables = FileUtils.ReadExcelByOledb(filePath, startRowIndexs);
|
|
string Msg = string.Empty;
|
|
bool isOK = InsertModel5(dataTables.Tables[0], orgId, ref Msg);
|
|
if (isOK)
|
|
{
|
|
bool isOK1 = InsertModel8(dataTables.Tables[1], orgId, ref Msg);
|
|
if (isOK1)
|
|
{
|
|
bool isOK2 = InsertModel6(dataTables.Tables[2], orgId, ref Msg);
|
|
if (isOK2)
|
|
{
|
|
bool isOK3 = InsertModel7(dataTables.Tables[3], orgId, ref Msg);
|
|
}
|
|
}
|
|
}
|
|
try
|
|
{
|
|
System.IO.File.Delete(filePath);
|
|
}
|
|
catch { }
|
|
|
|
result.Data = Msg;
|
|
result.MessageList = new List<string> { Msg };
|
|
}
|
|
|
|
return result;
|
|
});
|
|
}
|
|
/// <summary>
|
|
/// 数据插入
|
|
/// </summary>
|
|
/// <param name="dtSource"></param>
|
|
/// <param name="orgId"></param>
|
|
/// <param name="Msg"></param>
|
|
/// <param name="rowIndex"></param>
|
|
/// <returns></returns>
|
|
/// <exception cref="Exception"></exception>
|
|
public bool InsertModel(DataTable dtSource, Guid? orgId, ref string Msg, int rowIndex = 1)
|
|
{
|
|
var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
|
if (dtSource == null || dtSource.Rows.Count < rowIndex)
|
|
{
|
|
Msg = "未获取到导入数据";
|
|
throw new Exception(Msg);
|
|
}
|
|
int rowAll = dtSource.Rows.Count;
|
|
List<T_SK_ENTERPRISE_LIBRARY_TEMP> librarys = new List<T_SK_ENTERPRISE_LIBRARY_TEMP>();
|
|
if (rowAll == 1)
|
|
{
|
|
throw new Exception("导入必须两条以上,一条请直接新增");
|
|
}
|
|
var areas = this.GetEntities<T_SK_RISK_AREA>(t => t.IS_DELETED == false, new BaseFilter(orgId));
|
|
var types = this.GetEntities<T_SK_RISK_TYPE>(t => t.IS_DELETED == false, new BaseFilter(orgId));
|
|
for (int i = 0; i < rowAll; i++)
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_TEMP temp = new T_SK_ENTERPRISE_LIBRARY_TEMP();
|
|
temp.ID = Guid.NewGuid();
|
|
temp.ORG_ID = orgId;
|
|
var num = dtSource.Rows[i][0].ToString().Trim();
|
|
temp.NUM = int.Parse(num);
|
|
temp.CODE = num;
|
|
var minetype = dtSource.Rows[i][1].ToString().Trim();
|
|
if (!string.IsNullOrEmpty(minetype))
|
|
{
|
|
switch (minetype)
|
|
{
|
|
case "全公司":
|
|
temp.MineType = 0;
|
|
break;
|
|
case "露天矿":
|
|
temp.MineType = (FMProductionUnit)30;
|
|
break;
|
|
case "选矿厂":
|
|
temp.MineType = (FMProductionUnit)10;
|
|
break;
|
|
case "尾矿库":
|
|
temp.MineType = (FMProductionUnit)20;
|
|
break;
|
|
case "职能口":
|
|
temp.MineType = (FMProductionUnit)31;
|
|
break;
|
|
case "非金属":
|
|
temp.MineType = (FMProductionUnit)32;
|
|
break;
|
|
case "地下矿":
|
|
temp.MineType = (FMProductionUnit)40;
|
|
break;
|
|
default:
|
|
temp.MineType = 0;
|
|
break;
|
|
}
|
|
}
|
|
temp.MINE_NAME = minetype;
|
|
var areaName = dtSource.Rows[i][2].ToString().Trim();
|
|
if (!string.IsNullOrEmpty(areaName))
|
|
{
|
|
var area = areas.FirstOrDefault(t => t.NAME == areaName);
|
|
if (area != null)
|
|
{
|
|
temp.AREA_ID = area.ID;
|
|
}
|
|
}
|
|
temp.AREA_NAME = areaName;
|
|
temp.RISK_NAME = dtSource.Rows[i][3].ToString().Trim();
|
|
temp.RISK_DESCRIPTION = dtSource.Rows[i][4].ToString().Trim();
|
|
var typeName = dtSource.Rows[i][5].ToString().Trim();
|
|
if (!string.IsNullOrEmpty(typeName))
|
|
{
|
|
var type = types.FirstOrDefault(t => t.NAME == typeName);
|
|
if (type != null)
|
|
{
|
|
temp.TYPE_ID = type.ID;
|
|
}
|
|
}
|
|
temp.TYPE_NAME = typeName;
|
|
var scoreL = dtSource.Rows[i][6].ToString().Trim();
|
|
var scoreE = dtSource.Rows[i][7].ToString().Trim();
|
|
var scoreC = dtSource.Rows[i][8].ToString().Trim();
|
|
var scoreD = dtSource.Rows[i][9].ToString().Trim();
|
|
temp.EVALUATE_L = string.IsNullOrEmpty(scoreL) ? 0 : int.Parse(scoreL);
|
|
temp.EVALUATE_E = string.IsNullOrEmpty(scoreE) ? 0 : int.Parse(scoreE);
|
|
temp.EVALUATE_C = string.IsNullOrEmpty(scoreC) ? 0 : int.Parse(scoreC);
|
|
temp.EVALUATE_SCORE = string.IsNullOrEmpty(scoreD) ? 0 : int.Parse(scoreD);
|
|
var riskLevel = dtSource.Rows[i][10].ToString().Trim();
|
|
if (!string.IsNullOrEmpty(riskLevel))
|
|
{
|
|
switch (riskLevel)
|
|
{
|
|
case "重大风险":
|
|
temp.EVALUATE_LEVEL = (SKEvaluateLevelEnum)10;
|
|
break;
|
|
case "较大风险":
|
|
temp.EVALUATE_LEVEL = (SKEvaluateLevelEnum)20;
|
|
break;
|
|
case "一般风险":
|
|
temp.EVALUATE_LEVEL = (SKEvaluateLevelEnum)30;
|
|
break;
|
|
case "低风险":
|
|
temp.EVALUATE_LEVEL = (SKEvaluateLevelEnum)40;
|
|
break;
|
|
default:
|
|
temp.EVALUATE_LEVEL = (SKEvaluateLevelEnum)40;
|
|
break;
|
|
}
|
|
}
|
|
temp.ENABLE_STATUS = FMEnableStatusEnum.启用;
|
|
librarys.Add(temp);
|
|
}
|
|
if (!string.IsNullOrEmpty(Msg))
|
|
{
|
|
throw new Exception(Msg);
|
|
}
|
|
else
|
|
{
|
|
UnifiedCommit(() =>
|
|
{
|
|
if (librarys != null && librarys.Any())
|
|
BantchAddEntityNoCommit(librarys);
|
|
});
|
|
Msg = "导入成功!";
|
|
}
|
|
return true;
|
|
}
|
|
/// <summary>
|
|
/// 数据插入
|
|
/// </summary>
|
|
/// <param name="dtSource"></param>
|
|
/// <param name="orgId"></param>
|
|
/// <param name="Msg"></param>
|
|
/// <param name="rowIndex"></param>
|
|
/// <returns></returns>
|
|
/// <exception cref="Exception"></exception>
|
|
public bool InsertModel2(DataTable dtSource, Guid? orgId, ref string Msg, int rowIndex = 1)
|
|
{
|
|
var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
|
if (dtSource == null || dtSource.Rows.Count < rowIndex)
|
|
{
|
|
Msg = "未获取到导入数据";
|
|
throw new Exception(Msg);
|
|
}
|
|
int rowAll = dtSource.Rows.Count;
|
|
List<T_SK_LIBRARY_IMPORT_TEMP> librarys = new List<T_SK_LIBRARY_IMPORT_TEMP>();
|
|
if (rowAll == 1)
|
|
{
|
|
throw new Exception("导入必须两条以上,一条请直接新增");
|
|
}
|
|
for (int i = 0; i < rowAll; i++)
|
|
{
|
|
T_SK_LIBRARY_IMPORT_TEMP temp = new T_SK_LIBRARY_IMPORT_TEMP();
|
|
temp.ID = Guid.NewGuid();
|
|
temp.ORG_ID = orgId;
|
|
var num = dtSource.Rows[i][0].ToString().Trim();
|
|
temp.NUM = int.Parse(num);
|
|
temp.MineType = dtSource.Rows[i][1].ToString().Trim();
|
|
temp.AREA_NAME = dtSource.Rows[i][2].ToString().Trim();
|
|
temp.RISK_NAME = dtSource.Rows[i][3].ToString().Trim();
|
|
temp.RISK_DESCRIPTION = dtSource.Rows[i][4].ToString().Trim();
|
|
temp.TYPE_NAME = dtSource.Rows[i][5].ToString().Trim();
|
|
temp.MEASURES_NAME = dtSource.Rows[i][6].ToString().Trim();
|
|
temp.CHECK_CONTENT = dtSource.Rows[i][7].ToString().Trim();
|
|
temp.CHECK_BASIC = dtSource.Rows[i][8].ToString().Trim();
|
|
temp.CHECK_STANDARD = dtSource.Rows[i][9].ToString().Trim();
|
|
temp.CHECK_LEVEL = dtSource.Rows[i][10].ToString().Trim();
|
|
temp.CHECK_DEPARTMENT = dtSource.Rows[i][11].ToString().Trim();
|
|
temp.CHECK_POST = dtSource.Rows[i][12].ToString().Trim();
|
|
temp.CHECK_TYPE = dtSource.Rows[i][13].ToString().Trim();
|
|
temp.CHECK_CYCLE = dtSource.Rows[i][14].ToString().Trim();
|
|
librarys.Add(temp);
|
|
}
|
|
if (!string.IsNullOrEmpty(Msg))
|
|
{
|
|
throw new Exception(Msg);
|
|
}
|
|
else
|
|
{
|
|
UnifiedCommit(() =>
|
|
{
|
|
if (librarys != null && librarys.Any())
|
|
BantchAddEntityNoCommit(librarys);
|
|
});
|
|
Msg = "导入成功!";
|
|
}
|
|
return true;
|
|
}
|
|
|
|
public bool InsertModel3(DataTable dtSource, Guid? orgId, ref string Msg, int rowIndex = 1)
|
|
{
|
|
var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
|
if (dtSource == null || dtSource.Rows.Count < rowIndex)
|
|
{
|
|
Msg = "未获取到导入数据";
|
|
throw new Exception(Msg);
|
|
}
|
|
int rowAll = dtSource.Rows.Count;
|
|
List<T_SK_LIBRARY_IMPORT_TEMP_NEW> librarys = new List<T_SK_LIBRARY_IMPORT_TEMP_NEW>();
|
|
if (rowAll == 1)
|
|
{
|
|
throw new Exception("导入必须两条以上,一条请直接新增");
|
|
}
|
|
for (int i = 0; i < rowAll; i++)
|
|
{
|
|
T_SK_LIBRARY_IMPORT_TEMP_NEW temp = new T_SK_LIBRARY_IMPORT_TEMP_NEW();
|
|
temp.ID = Guid.NewGuid();
|
|
temp.ORG_ID = orgId;
|
|
var num = dtSource.Rows[i][0].ToString().Trim();
|
|
temp.NUM = int.Parse(num);
|
|
temp.MineType = dtSource.Rows[i][1].ToString().Trim();
|
|
temp.AREA_NAME = dtSource.Rows[i][2].ToString().Trim();
|
|
temp.RISK_NAME = dtSource.Rows[i][3].ToString().Trim();
|
|
temp.RISK_DESCRIPTION = dtSource.Rows[i][4].ToString().Trim();
|
|
temp.TYPE_NAME = dtSource.Rows[i][5].ToString().Trim();
|
|
temp.EVALUATE_L = dtSource.Rows[i][6].ToString().Trim();
|
|
temp.EVALUATE_E = dtSource.Rows[i][7].ToString().Trim();
|
|
temp.EVALUATE_C = dtSource.Rows[i][8].ToString().Trim();
|
|
temp.EVALUATE_SCORE = dtSource.Rows[i][9].ToString().Trim();
|
|
temp.EVALUATE_LEVEL = dtSource.Rows[i][10].ToString().Trim();
|
|
temp.MEASURES_NAME = dtSource.Rows[i][11].ToString().Trim();
|
|
temp.DEPARTMENT_TYPE = dtSource.Rows[i][12].ToString().Trim();
|
|
temp.DEPARTMENT_NAME = dtSource.Rows[i][13].ToString().Trim();
|
|
temp.DEPARTMENT_USER = dtSource.Rows[i][14].ToString().Trim();
|
|
temp.CHECK_CONTENT = dtSource.Rows[i][15].ToString().Trim();
|
|
temp.CHECK_BASIC = dtSource.Rows[i][16].ToString().Trim();
|
|
temp.CHECK_STANDARD = dtSource.Rows[i][17].ToString().Trim();
|
|
temp.CHECK_LEVEL = dtSource.Rows[i][18].ToString().Trim();
|
|
temp.CHECK_DEPARTMENT = dtSource.Rows[i][19].ToString().Trim();
|
|
temp.CHECK_POST = dtSource.Rows[i][20].ToString().Trim();
|
|
temp.CHECK_TYPE = dtSource.Rows[i][21].ToString().Trim();
|
|
temp.CHECK_OBJECT = dtSource.Rows[i][22].ToString().Trim();
|
|
temp.CHECK_CYCLE = dtSource.Rows[i][23].ToString().Trim();
|
|
temp.HIDDEN_DESCRIPTION = dtSource.Rows[i][24].ToString().Trim();
|
|
temp.HIDDEN_LEVEL = "一般";
|
|
temp.HIDDEN_RECITIFY = dtSource.Rows[i][26].ToString().Trim();
|
|
librarys.Add(temp);
|
|
}
|
|
if (!string.IsNullOrEmpty(Msg))
|
|
{
|
|
throw new Exception(Msg);
|
|
}
|
|
else
|
|
{
|
|
UnifiedCommit(() =>
|
|
{
|
|
if (librarys != null && librarys.Any())
|
|
BantchAddEntityNoCommit(librarys);
|
|
});
|
|
Msg = "导入成功!";
|
|
}
|
|
return true;
|
|
}
|
|
public bool InsertModel4(DataTable dtSource, Guid? orgId, ref string Msg, int rowIndex = 1)
|
|
{
|
|
var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
|
if (dtSource == null || dtSource.Rows.Count < rowIndex)
|
|
{
|
|
Msg = "未获取到导入数据";
|
|
throw new Exception(Msg);
|
|
}
|
|
int rowAll = dtSource.Rows.Count;
|
|
List<T_SK_LIBRARY_IMPORT_POST> librarys = new List<T_SK_LIBRARY_IMPORT_POST>();
|
|
if (rowAll == 1)
|
|
{
|
|
throw new Exception("导入必须两条以上,一条请直接新增");
|
|
}
|
|
for (int i = 0; i < rowAll; i++)
|
|
{
|
|
T_SK_LIBRARY_IMPORT_POST temp = new T_SK_LIBRARY_IMPORT_POST();
|
|
temp.ID = Guid.NewGuid();
|
|
temp.ORG_ID = orgId;
|
|
var num = dtSource.Rows[i][0].ToString().Trim();
|
|
temp.NUM = int.Parse(num);
|
|
temp.MineType = dtSource.Rows[i][1].ToString().Trim();
|
|
temp.DEPARTMENT_NAME = dtSource.Rows[i][2].ToString().Trim();
|
|
temp.POST_NAME = dtSource.Rows[i][3].ToString().Trim();
|
|
temp.AREA_NAME1 = dtSource.Rows[i][4].ToString().Trim();
|
|
temp.RISK_NAME1 = dtSource.Rows[i][5].ToString().Trim();
|
|
temp.AREA_NAME2 = dtSource.Rows[i][6].ToString().Trim();
|
|
temp.RISK_NAME2 = dtSource.Rows[i][7].ToString().Trim();
|
|
temp.AREA_NAME3 = dtSource.Rows[i][8].ToString().Trim();
|
|
temp.RISK_NAME3 = dtSource.Rows[i][9].ToString().Trim();
|
|
temp.AREA_NAME4 = dtSource.Rows[i][10].ToString().Trim();
|
|
temp.RISK_NAME4 = dtSource.Rows[i][11].ToString().Trim();
|
|
temp.AREA_NAME5 = dtSource.Rows[i][12].ToString().Trim();
|
|
temp.RISK_NAME5 = dtSource.Rows[i][13].ToString().Trim();
|
|
temp.AREA_NAME6 = dtSource.Rows[i][14].ToString().Trim();
|
|
temp.RISK_NAME6 = dtSource.Rows[i][15].ToString().Trim();
|
|
librarys.Add(temp);
|
|
}
|
|
if (!string.IsNullOrEmpty(Msg))
|
|
{
|
|
throw new Exception(Msg);
|
|
}
|
|
else
|
|
{
|
|
UnifiedCommit(() =>
|
|
{
|
|
if (librarys != null && librarys.Any())
|
|
BantchAddEntityNoCommit(librarys);
|
|
});
|
|
Msg = "导入成功!";
|
|
}
|
|
return true;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 辨识部门岗位,对应风险
|
|
/// </summary>
|
|
/// <param name="filter"></param>
|
|
/// <returns></returns>
|
|
[HttpPost, Route("GetPostRiskList")]
|
|
public JsonActionResult<List<T_SK_ENTERPRISE_LIBRARY_POST>> GetPostRiskList([FromBody] KeywordFilter filter)
|
|
{
|
|
var loginDepart = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
|
|
var posts = this.GetEntities<T_FM_USER_POST>(t => t.IS_DELETED == false, new BaseFilter(filter.OrgId));
|
|
var departs = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId));
|
|
var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId));
|
|
var AHDepart = departs.FirstOrDefault(t => t.NAME.Contains("安全环保"));
|
|
if (AHDepart != null && loginDepart == AHDepart.ID)
|
|
{
|
|
loginDepart = departs.FirstOrDefault(t => t.PARENT_ID == null).ID;
|
|
}
|
|
List<Guid> departmentIds = new List<Guid>() { loginDepart.Value };
|
|
DepartmentService.GetDepartmentIds(filter.OrgId.Value, new List<Guid>() { loginDepart.Value }, ref departmentIds);
|
|
var checkList = new JsonActionResult<List<T_SK_ENTERPRISE_LIBRARY_POST>>();
|
|
List<T_SK_ENTERPRISE_LIBRARY_POST> postLists = new List<T_SK_ENTERPRISE_LIBRARY_POST>();
|
|
var detailContents = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_POST>(t => t.DEPARTMENT_ID != null && departmentIds.Contains((Guid)t.DEPARTMENT_ID), new BaseFilter(filter.OrgId), "Nav_Library", "Nav_PostDetails", "Nav_Department");
|
|
if (detailContents != null && detailContents.Any())
|
|
{
|
|
foreach (var item in detailContents)
|
|
{
|
|
if (item.Nav_PostDetails != null && item.Nav_PostDetails.Any())
|
|
{
|
|
foreach (var item2 in item.Nav_PostDetails)
|
|
{
|
|
var user = users.FirstOrDefault(t => t.ID == item.Nav_Department?.USER_ID);
|
|
T_SK_ENTERPRISE_LIBRARY_POST part = new T_SK_ENTERPRISE_LIBRARY_POST();
|
|
part.DEPARTMENT_ID = item.DEPARTMENT_ID;
|
|
part.ORG_ID = item.ORG_ID;
|
|
part.ENTERPRISE_LIBRARY_ID = item.ENTERPRISE_LIBRARY_ID;
|
|
part.Nav_Department = item.Nav_Department;
|
|
part.POST_NAME = posts.FirstOrDefault(t => t.ID == item2.POST_ID)?.NAME;
|
|
part.PHONE = user?.NAME + " " + user?.PHONE;
|
|
postLists.Add(part);
|
|
}
|
|
}
|
|
}
|
|
checkList.Data = postLists.GroupBy(t => new { t.DEPARTMENT_ID, t.POST_NAME }).Select(m => m.FirstOrDefault()).OrderBy(m => m.DEPARTMENT_ID).ToList();
|
|
if (checkList.Data != null && checkList.Data.Any())
|
|
{
|
|
var libraryIds = postLists.Select(m => m.ENTERPRISE_LIBRARY_ID).Distinct().ToList();
|
|
var librarys = this.GetEntities<T_SK_ENTERPRISE_LIBRARY>(t => libraryIds.Contains(t.ID), new BaseFilter(filter.OrgId), "Nav_Area", "Nav_Type", "Nav_RiskName", "Nav_Details", "Nav_Photo.Nav_ImgFile");
|
|
foreach (var item in checkList.Data)
|
|
{
|
|
var tempIds = postLists.Where(t => t.DEPARTMENT_ID == item.DEPARTMENT_ID && t.POST_NAME == item.POST_NAME).Select(m => m.ENTERPRISE_LIBRARY_ID).Distinct().ToList();
|
|
item.Nav_Librarys = librarys.Where(t => tempIds.Contains(t.ID)).OrderBy(m => m.EVALUATE_LEVEL).ToList();
|
|
}
|
|
}
|
|
checkList.TotalCount = checkList.Data.Count;
|
|
}
|
|
return checkList;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 主表
|
|
/// </summary>
|
|
/// <param name="dtSource"></param>
|
|
/// <param name="orgId"></param>
|
|
/// <param name="Msg"></param>
|
|
/// <param name="rowIndex"></param>
|
|
/// <returns></returns>
|
|
/// <exception cref="Exception"></exception>
|
|
public bool InsertModel5(DataTable dtSource, Guid? orgId, ref string Msg, int rowIndex = 1)
|
|
{
|
|
var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
|
if (dtSource == null || dtSource.Rows.Count < rowIndex)
|
|
{
|
|
Msg = "未获取到导入数据";
|
|
throw new Exception(Msg);
|
|
}
|
|
int rowAll = dtSource.Rows.Count;
|
|
List<T_SK_LIBRARY_IMPORT_MAIN> librarys = new List<T_SK_LIBRARY_IMPORT_MAIN>();
|
|
if (rowAll == 1)
|
|
{
|
|
throw new Exception("导入必须两条以上,一条请直接新增");
|
|
}
|
|
for (int i = 0; i < rowAll; i++)
|
|
{
|
|
T_SK_LIBRARY_IMPORT_MAIN temp = new T_SK_LIBRARY_IMPORT_MAIN();
|
|
temp.ID = Guid.NewGuid();
|
|
temp.ORG_ID = orgId;
|
|
temp.NUM = i + 1;
|
|
temp.MineType = dtSource.Rows[i][0].ToString().Trim();
|
|
temp.AREA_NAME = dtSource.Rows[i][1].ToString().Trim();
|
|
temp.RISK_NAME = dtSource.Rows[i][2].ToString().Trim();
|
|
temp.RISK_DESCRIPTION = dtSource.Rows[i][3].ToString().Trim();
|
|
temp.TYPE_NAME = dtSource.Rows[i][4].ToString().Trim();
|
|
temp.EVALUATE_L = dtSource.Rows[i][5].ToString().Trim();
|
|
temp.EVALUATE_E = dtSource.Rows[i][6].ToString().Trim();
|
|
temp.EVALUATE_C = dtSource.Rows[i][7].ToString().Trim();
|
|
temp.EVALUATE_SCORE = dtSource.Rows[i][8].ToString().Trim();
|
|
temp.EVALUATE_LEVEL = dtSource.Rows[i][9].ToString().Trim();
|
|
temp.EMERGENCY = dtSource.Rows[i][10].ToString().Trim();
|
|
temp.DEPARTMENT_NAME = dtSource.Rows[i][11].ToString().Trim();
|
|
librarys.Add(temp);
|
|
}
|
|
if (!string.IsNullOrEmpty(Msg))
|
|
{
|
|
throw new Exception(Msg);
|
|
}
|
|
else
|
|
{
|
|
UnifiedCommit(() =>
|
|
{
|
|
if (librarys != null && librarys.Any())
|
|
BantchAddEntityNoCommit(librarys);
|
|
});
|
|
Msg = "导入成功!";
|
|
}
|
|
return true;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 管控措施表
|
|
/// </summary>
|
|
/// <param name="dtSource"></param>
|
|
/// <param name="orgId"></param>
|
|
/// <param name="Msg"></param>
|
|
/// <param name="rowIndex"></param>
|
|
/// <returns></returns>
|
|
/// <exception cref="Exception"></exception>
|
|
public bool InsertModel6(DataTable dtSource, Guid? orgId, ref string Msg, int rowIndex = 1)
|
|
{
|
|
var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
|
if (dtSource == null || dtSource.Rows.Count < rowIndex)
|
|
{
|
|
Msg = "未获取到导入数据";
|
|
throw new Exception(Msg);
|
|
}
|
|
int rowAll = dtSource.Rows.Count;
|
|
List<T_SK_LIBRARY_IMPORT_MAIN_MEASURES> librarys = new List<T_SK_LIBRARY_IMPORT_MAIN_MEASURES>();
|
|
if (rowAll == 1)
|
|
{
|
|
throw new Exception("导入必须两条以上,一条请直接新增");
|
|
}
|
|
for (int i = 0; i < rowAll; i++)
|
|
{
|
|
T_SK_LIBRARY_IMPORT_MAIN_MEASURES temp = new T_SK_LIBRARY_IMPORT_MAIN_MEASURES();
|
|
temp.ID = Guid.NewGuid();
|
|
temp.ORG_ID = orgId;
|
|
temp.NUM = i + 1;
|
|
temp.MineType = dtSource.Rows[i][0].ToString().Trim();
|
|
temp.AREA_NAME = dtSource.Rows[i][1].ToString().Trim();
|
|
temp.RISK_NAME = dtSource.Rows[i][2].ToString().Trim();
|
|
temp.RISK_DESCRIPTION = dtSource.Rows[i][3].ToString().Trim();
|
|
temp.TYPE_NAME = dtSource.Rows[i][4].ToString().Trim();
|
|
temp.MEASURES_NAME = dtSource.Rows[i][5].ToString().Trim();
|
|
temp.CHECK_CONTENT = dtSource.Rows[i][6].ToString().Trim();
|
|
temp.CHECK_BASIC = dtSource.Rows[i][7].ToString().Trim();
|
|
temp.CHECK_STANDARD = dtSource.Rows[i][8].ToString().Trim();
|
|
temp.CHECK_LEVEL = dtSource.Rows[i][9].ToString().Trim();
|
|
temp.CHECK_DEPARTMENT = dtSource.Rows[i][10].ToString().Trim();
|
|
temp.CHECK_POST = dtSource.Rows[i][11].ToString().Trim();
|
|
temp.CHECK_TYPE = dtSource.Rows[i][12].ToString().Trim();
|
|
temp.CHECK_OBJECT = dtSource.Rows[i][13].ToString().Trim();
|
|
temp.CHECK_CYCLE = dtSource.Rows[i][14].ToString().Trim();
|
|
librarys.Add(temp);
|
|
}
|
|
if (!string.IsNullOrEmpty(Msg))
|
|
{
|
|
throw new Exception(Msg);
|
|
}
|
|
else
|
|
{
|
|
UnifiedCommit(() =>
|
|
{
|
|
if (librarys != null && librarys.Any())
|
|
BantchAddEntityNoCommit(librarys);
|
|
});
|
|
Msg = "导入成功!";
|
|
}
|
|
return true;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 隐患描述表
|
|
/// </summary>
|
|
/// <param name="dtSource"></param>
|
|
/// <param name="orgId"></param>
|
|
/// <param name="Msg"></param>
|
|
/// <param name="rowIndex"></param>
|
|
/// <returns></returns>
|
|
/// <exception cref="Exception"></exception>
|
|
public bool InsertModel7(DataTable dtSource, Guid? orgId, ref string Msg, int rowIndex = 1)
|
|
{
|
|
var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
|
if (dtSource == null || dtSource.Rows.Count < rowIndex)
|
|
{
|
|
Msg = "未获取到导入数据";
|
|
throw new Exception(Msg);
|
|
}
|
|
int rowAll = dtSource.Rows.Count;
|
|
List<T_SK_LIBRARY_IMPORT_MAIN_HIDDEN> librarys = new List<T_SK_LIBRARY_IMPORT_MAIN_HIDDEN>();
|
|
if (rowAll == 1)
|
|
{
|
|
throw new Exception("导入必须两条以上,一条请直接新增");
|
|
}
|
|
for (int i = 0; i < rowAll; i++)
|
|
{
|
|
T_SK_LIBRARY_IMPORT_MAIN_HIDDEN temp = new T_SK_LIBRARY_IMPORT_MAIN_HIDDEN();
|
|
temp.ID = Guid.NewGuid();
|
|
temp.ORG_ID = orgId;
|
|
temp.NUM = i + 1;
|
|
temp.MineType = dtSource.Rows[i][0].ToString().Trim();
|
|
temp.AREA_NAME = dtSource.Rows[i][1].ToString().Trim();
|
|
temp.RISK_NAME = dtSource.Rows[i][2].ToString().Trim();
|
|
temp.RISK_DESCRIPTION = dtSource.Rows[i][3].ToString().Trim();
|
|
temp.TYPE_NAME = dtSource.Rows[i][4].ToString().Trim();
|
|
temp.MEASURES_NAME = dtSource.Rows[i][5].ToString().Trim();
|
|
temp.CHECK_CONTENT = dtSource.Rows[i][6].ToString().Trim();
|
|
temp.HIDDEN_DESCRIPTION = dtSource.Rows[i][7].ToString().Trim();
|
|
temp.HIDDEN_LEVEL = dtSource.Rows[i][8].ToString().Trim();
|
|
temp.HIDDEN_RECITIFY = dtSource.Rows[i][9].ToString().Trim();
|
|
librarys.Add(temp);
|
|
}
|
|
if (!string.IsNullOrEmpty(Msg))
|
|
{
|
|
throw new Exception(Msg);
|
|
}
|
|
else
|
|
{
|
|
UnifiedCommit(() =>
|
|
{
|
|
if (librarys != null && librarys.Any())
|
|
BantchAddEntityNoCommit(librarys);
|
|
});
|
|
Msg = "导入成功!";
|
|
}
|
|
return true;
|
|
}
|
|
/// <summary>
|
|
/// 隐患描述表
|
|
/// </summary>
|
|
/// <param name="dtSource"></param>
|
|
/// <param name="orgId"></param>
|
|
/// <param name="Msg"></param>
|
|
/// <param name="rowIndex"></param>
|
|
/// <returns></returns>
|
|
/// <exception cref="Exception"></exception>
|
|
public bool InsertModel8(DataTable dtSource, Guid? orgId, ref string Msg, int rowIndex = 1)
|
|
{
|
|
var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
|
if (dtSource == null || dtSource.Rows.Count < rowIndex)
|
|
{
|
|
Msg = "未获取到导入数据";
|
|
throw new Exception(Msg);
|
|
}
|
|
int rowAll = dtSource.Rows.Count;
|
|
List<T_SK_LIBRARY_IMPORT_MAIN_POST> librarys = new List<T_SK_LIBRARY_IMPORT_MAIN_POST>();
|
|
if (rowAll == 1)
|
|
{
|
|
throw new Exception("导入必须两条以上,一条请直接新增");
|
|
}
|
|
for (int i = 0; i < rowAll; i++)
|
|
{
|
|
T_SK_LIBRARY_IMPORT_MAIN_POST temp = new T_SK_LIBRARY_IMPORT_MAIN_POST();
|
|
temp.ID = Guid.NewGuid();
|
|
temp.ORG_ID = orgId;
|
|
temp.NUM = i + 1;
|
|
temp.MineType = dtSource.Rows[i][0].ToString().Trim();
|
|
temp.AREA_NAME = dtSource.Rows[i][1].ToString().Trim();
|
|
temp.RISK_NAME = dtSource.Rows[i][2].ToString().Trim();
|
|
temp.RISK_DESCRIPTION = dtSource.Rows[i][3].ToString().Trim();
|
|
temp.TYPE_NAME = dtSource.Rows[i][4].ToString().Trim();
|
|
temp.DEPARTMENT_NAME = dtSource.Rows[i][5].ToString().Trim();
|
|
temp.POST_NAME = dtSource.Rows[i][6].ToString().Trim();
|
|
librarys.Add(temp);
|
|
}
|
|
if (!string.IsNullOrEmpty(Msg))
|
|
{
|
|
throw new Exception(Msg);
|
|
}
|
|
else
|
|
{
|
|
UnifiedCommit(() =>
|
|
{
|
|
if (librarys != null && librarys.Any())
|
|
BantchAddEntityNoCommit(librarys);
|
|
});
|
|
Msg = "导入成功!";
|
|
}
|
|
return true;
|
|
}
|
|
/// <summary>
|
|
/// 获得单条实体数据
|
|
/// </summary>
|
|
/// <param name="filter">过滤实体</param>
|
|
/// <returns></returns>
|
|
[HttpPost, Route("SKGetOld")]
|
|
public JsonActionResult<T_SK_ENTERPRISE_LIBRARY> SKGetOld([FromBody] KeywordFilter filter)
|
|
{
|
|
var result = WitEntity(null, filter);
|
|
if (result != null && result.Data != null)
|
|
{
|
|
if (result.Data.Nav_Details != null && result.Data.Nav_Details.Any())
|
|
{
|
|
foreach (var item in result.Data.Nav_Details)
|
|
{
|
|
if (item.Nav_DetailContents != null && item.Nav_DetailContents.Any())
|
|
{
|
|
item.Nav_DetailContents.ForEach(t => t.Nav_DetailHiddens.OrderBy(m => m.NUM));
|
|
item.Nav_DetailContents.ForEach(t => t.Nav_DetailDeparts.OrderBy(m => m.CHECK_TYPE).ThenBy(t => t.DEPARTMENT_ID));
|
|
item.Nav_DetailContents.OrderBy(t => t.NUM);
|
|
}
|
|
}
|
|
result.Data.Nav_Details.OrderBy(t => t.NUM);
|
|
result.Data.Nav_Departs.OrderBy(t => t.DEPARTMENT_TYPE).ThenBy(m => m.DEPARTMENT_ID);
|
|
result.Data.Nav_Posts.OrderBy(t => t.DEPARTMENT_ID);
|
|
}
|
|
|
|
}
|
|
return result;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获得单条实体数据
|
|
/// </summary>
|
|
/// <param name="filter">过滤实体</param>
|
|
/// <returns></returns>
|
|
[HttpPost, Route("SKGet")]
|
|
public JsonActionResult<T_SK_ENTERPRISE_LIBRARY> SKGet([FromBody] KeywordFilter filter)
|
|
{
|
|
return SafeExecute(() =>
|
|
{
|
|
var result = new T_SK_ENTERPRISE_LIBRARY();
|
|
var id = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "ID")?.Value.ToString();
|
|
var mineType = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "PRODUCTION_UNIT_ID");
|
|
var areaId = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "AREA_ID");
|
|
//var typeId = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "TYPE_ID");
|
|
var riskName = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "RISK_NAME");
|
|
//var riskDes = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "RISK_DESCRIPTION");
|
|
filter.IgnoreDataRule = true;
|
|
if (!string.IsNullOrEmpty(id))
|
|
{
|
|
result = this.GetEntity<T_SK_ENTERPRISE_LIBRARY>(id, new string[] { "Nav_Type", "Nav_Area","Nav_RiskName",
|
|
"Nav_SCOREL","Nav_SCOREE","Nav_SCOREC","Nav_ProductionUnit"});
|
|
}
|
|
else if (mineType != null && areaId != null && riskName != null)//&& typeId != null && riskDes!=null
|
|
{
|
|
result = this.GetEntity<T_SK_ENTERPRISE_LIBRARY>(t => t.PRODUCTION_UNIT_ID == Guid.Parse(mineType.Value.ToString()) && t.AREA_ID == Guid.Parse(areaId.Value.ToString()) && t.RISK_NAME == riskName.Value.ToString(), new string[] { "Nav_Type", "Nav_Area","Nav_RiskName",
|
|
"Nav_SCOREL","Nav_SCOREE","Nav_SCOREC","Nav_ProductionUnit"});
|
|
}
|
|
if (result != null)
|
|
{
|
|
var departs = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DEPART>(t => t.ENTERPRISE_LIBRARY_ID == result.ID, new BaseFilter(filter.OrgId), "Nav_Department", "Nav_User");
|
|
result.Nav_Departs = departs.OrderBy(t => t.DEPARTMENT_TYPE).ThenBy(m => m.DEPARTMENT_ID).ToList();
|
|
var posts = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_POST>(t => t.ENTERPRISE_LIBRARY_ID == result.ID, new BaseFilter(filter.OrgId), "Nav_Department", "Nav_PostDetails.Nav_Post");
|
|
result.Nav_Posts = posts.OrderBy(t => t.DEPARTMENT_ID).ToList();
|
|
var details = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL>(t => t.ENTERPRISE_LIBRARY_ID == result.ID, new BaseFilter(filter.OrgId));
|
|
if (details.Any())
|
|
{
|
|
var detailIds = details.Select(t => t.ID).ToList();
|
|
var contents = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>(t => detailIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_ID), new BaseFilter(filter.OrgId), "Nav_Contents");
|
|
var contentIds = contents.Select(t => t.ID).ToList();
|
|
var contentdeparts = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>(t => contentIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID), new BaseFilter(filter.OrgId), "Nav_Department", "Nav_CheckType", "Nav_DetailPosts.Nav_Post");
|
|
var contenthiddens = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_HIDDEN>(t => contentIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID), new BaseFilter(filter.OrgId), "Nav_Question");
|
|
var contentbasics = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_BASIC>(t => contentIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID), new BaseFilter(filter.OrgId), "Nav_Law");
|
|
foreach (var detail in details)
|
|
{
|
|
var contentTemps = contents.Where(t => t.ENTERPRISE_LIBRARY_DETAIL_ID == detail.ID).ToList();
|
|
detail.Nav_DetailContents = contentTemps.OrderBy(t => t.NUM).ToList();
|
|
foreach (var content in detail.Nav_DetailContents)
|
|
{
|
|
var departTemps = contentdeparts.Where(t => t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID == content.ID).ToList();
|
|
content.Nav_DetailDeparts = departTemps.OrderBy(t => t.CHECK_TYPE).ThenBy(m => m.DEPARTMENT_ID).ToList();
|
|
var hiddenTemps = contenthiddens.Where(t => t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID == content.ID).ToList();
|
|
content.Nav_DetailHiddens = hiddenTemps.OrderBy(t => t.NUM).ToList();
|
|
var basicTemps = contentbasics.Where(t => t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID == content.ID).ToList();
|
|
content.Nav_DetailBasics = basicTemps.ToList();
|
|
}
|
|
}
|
|
}
|
|
result.Nav_Details = details.OrderBy(t => t.NUM).ToList();
|
|
}
|
|
return result;
|
|
});
|
|
}
|
|
|
|
/// <summary>
|
|
/// 查询
|
|
/// </summary>
|
|
/// <param name="pageFilter"></param>
|
|
/// <returns></returns>
|
|
[HttpPost, Route("DepartOrderPaged")]
|
|
public PagedActionResult<T_FM_DEPARTMENT> DepartOrderPaged([FromBody] KeywordPageFilter pageFilter)
|
|
{
|
|
var result = new PagedActionResult<T_FM_DEPARTMENT>();
|
|
if (!string.IsNullOrEmpty(pageFilter.Keyword))
|
|
{
|
|
if (pageFilter.Keyword == "31")
|
|
{
|
|
FilterRule order2 = new FilterRule();
|
|
order2.Field = "MineType";
|
|
order2.Value = 0;
|
|
pageFilter.FilterGroup.Rules.Add(order2);
|
|
}
|
|
else
|
|
{
|
|
FilterRule order2 = new FilterRule();
|
|
order2.Field = "MineType";
|
|
order2.Value = pageFilter.Keyword;
|
|
pageFilter.FilterGroup.Rules.Add(order2);
|
|
}
|
|
}
|
|
result = GetOrderPageEntities<T_FM_DEPARTMENT>(null, pageFilter);
|
|
return result;
|
|
}
|
|
[HttpPost, Route("GetCheckListOld")]
|
|
public JsonActionResult<List<CheckListNew>> GetCheckListOld([FromBody] KeywordFilter filter)
|
|
{
|
|
var loginDepart = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
|
|
var departs = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId));
|
|
List<string> selectMinetype = new List<string>();
|
|
var minetype = departs.FirstOrDefault(t => t.ID == loginDepart)?.MineType;
|
|
switch (minetype)
|
|
{
|
|
case 0:
|
|
selectMinetype.Add(SKProductionUnit.All.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.MineChoose.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.MineUnderGround.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.Minelast.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.Mine.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.Department.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.Nonmetallic.GetDescription());
|
|
break;
|
|
case 10:
|
|
selectMinetype.Add(SKProductionUnit.MineChoose.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.Minelast.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.Nonmetallic.GetDescription());
|
|
break;
|
|
case 20:
|
|
selectMinetype.Add(SKProductionUnit.Minelast.GetDescription());
|
|
break;
|
|
case 30:
|
|
selectMinetype.Add(SKProductionUnit.Mine.GetDescription());
|
|
break;
|
|
case 40:
|
|
selectMinetype.Add(SKProductionUnit.MineUnderGround.GetDescription());
|
|
break;
|
|
default:
|
|
selectMinetype.Add(SKProductionUnit.All.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.MineChoose.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.MineUnderGround.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.Minelast.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.Mine.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.Department.GetDescription());
|
|
selectMinetype.Add(SKProductionUnit.Nonmetallic.GetDescription());
|
|
break;
|
|
}
|
|
//List<Guid> departmentIds = new List<Guid>() { loginDepart.Value };
|
|
//DepartmentService.GetDepartmentIds(filter.OrgId.Value, new List<Guid>() { loginDepart.Value }, ref departmentIds);
|
|
var checkList = new JsonActionResult<List<CheckListNew>>();
|
|
List<CheckListNew> list = new List<CheckListNew>();
|
|
var checkTypeIds = this.GetEntities<T_SK_CHECK_TYPE>(t => t.NAME == "岗位排查", new BaseFilter(filter.OrgId)).Select(m => m.ID).ToList();
|
|
var detailContents = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_DetailContent.Nav_LibraryDetail.Nav_Library", "Nav_CheckType", "Nav_Department").ToList();
|
|
var contents = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_LibraryDetail.Nav_Library.Nav_Area", "Nav_Contents").ToList();
|
|
var libraryIds = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId)).Select(m => m.ENTERPRISE_LIBRARY_ID).ToList();
|
|
var posts = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_POST>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_PostDetails.Nav_Post").ToList();
|
|
if (detailContents != null && detailContents.Any())
|
|
{
|
|
detailContents.ForEach(t => t.MineType = t.Nav_DetailContent.Nav_LibraryDetail.Nav_Library.MineType);
|
|
var group = detailContents.GroupBy(t => new { t.MineType, t.CHECK_TYPE, t.CHECK_CYCLE, t.DEPARTMENT_ID, t.CHECK_TYPE_ID }).ToList();
|
|
foreach (var item in group)
|
|
{
|
|
var detail = detailContents.FirstOrDefault(t => t.MineType == item.Key.MineType && t.CHECK_CYCLE == item.Key.CHECK_CYCLE && t.CHECK_TYPE == item.Key.CHECK_TYPE && t.CHECK_TYPE_ID == item.Key.CHECK_TYPE_ID && t.DEPARTMENT_ID == item.Key.DEPARTMENT_ID);
|
|
CheckListNew listNew = new CheckListNew();
|
|
listNew.MineType = item.Key.MineType.GetDescription();
|
|
listNew.CheckType = detail?.Nav_CheckType?.NAME;
|
|
listNew.CheckCycle = item.Key.CHECK_CYCLE.GetDescription();
|
|
listNew.CheckLevel = item.Key.CHECK_TYPE.GetDescription();
|
|
listNew.Num = (int)item.Key.CHECK_TYPE;
|
|
listNew.CheckDepart = detail?.Nav_Department?.NAME;
|
|
if (checkTypeIds != null && checkTypeIds.Any() && item.Key.CHECK_TYPE_ID != null && checkTypeIds.Contains((Guid)item.Key.CHECK_TYPE_ID))
|
|
{
|
|
var itemTemp = posts.FirstOrDefault(t => t.ENTERPRISE_LIBRARY_ID == detail.Nav_DetailContent.Nav_LibraryDetail.Nav_Library.ID && t.DEPARTMENT_ID == item.Key.DEPARTMENT_ID)?.Nav_PostDetails;
|
|
if (itemTemp != null && itemTemp.Any())
|
|
{
|
|
var lists = itemTemp.Select(t => t.Nav_Post?.NAME).Distinct().ToList();
|
|
listNew.CheckPost = string.Join(",", lists);
|
|
}
|
|
else
|
|
{
|
|
listNew.CheckPost = detail?.Nav_Department?.NAME + "辨识岗位未配置";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (item.Key.CHECK_TYPE == SKDepartmentTypeEnum.班组级)
|
|
{
|
|
listNew.CheckPost = "班组负责人";
|
|
}
|
|
else if (item.Key.CHECK_TYPE == SKDepartmentTypeEnum.车间级)
|
|
{
|
|
listNew.CheckPost = "车间安全员";
|
|
}
|
|
else if (item.Key.CHECK_TYPE == SKDepartmentTypeEnum.部门级)
|
|
{
|
|
listNew.CheckPost = "部门安全员";
|
|
}
|
|
else
|
|
{
|
|
listNew.CheckPost = "安环部安全员";
|
|
}
|
|
}
|
|
|
|
var depathaveIds = detailContents.Where(t => t.DEPARTMENT_ID == item.Key.DEPARTMENT_ID && t.CHECK_TYPE_ID == item.Key.CHECK_TYPE_ID && t.CHECK_TYPE == item.Key.CHECK_TYPE && t.CHECK_CYCLE == item.Key.CHECK_CYCLE && t.MineType == item.Key.MineType).Select(m => m.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID).Distinct().ToList();
|
|
var temps = contents.Where(t => depathaveIds.Contains(t.ID)).ToList();
|
|
if (temps.Any())
|
|
{
|
|
List<CheckListDetail> listDetail = new List<CheckListDetail>();
|
|
foreach (var tem in temps)
|
|
{
|
|
CheckListDetail checkListDetail = new CheckListDetail();
|
|
checkListDetail.CHECK_CONTENTS_ID = tem.CHECK_CONTENTS_ID;
|
|
checkListDetail.CHECK_CONTENTS_NAME = tem.Nav_Contents?.CHECKCONTENT;
|
|
checkListDetail.RISK_NAME = tem.Nav_LibraryDetail?.Nav_Library?.RISK_NAME;
|
|
checkListDetail.RISK_AREA_ID = tem.Nav_LibraryDetail?.Nav_Library?.AREA_ID;
|
|
checkListDetail.RISK_AREA_NAME = tem.Nav_LibraryDetail?.Nav_Library?.Nav_Area?.NAME;
|
|
checkListDetail.CHECKPROOF = tem.CHECK_BASIC;
|
|
checkListDetail.CHECKSTANDARD = tem.CHECK_STANDARD;
|
|
listDetail.Add(checkListDetail);
|
|
}
|
|
listNew.details = listDetail.OrderBy(t => t.RISK_AREA_NAME).ThenBy(m => m.RISK_NAME).ToList();
|
|
}
|
|
list.Add(listNew);
|
|
}
|
|
checkList.Data = list.Where(t => selectMinetype.Contains(t.MineType)).GroupBy(t => new { t.MineType, t.CheckType, t.CheckCycle, t.CheckLevel, t.CheckDepart, t.CheckPost }).Select(m => m.FirstOrDefault()).OrderBy(n => n.MineType).ThenBy(x => x.Num).ThenBy(y => y.CheckType).ToList();
|
|
checkList.TotalCount = checkList.Data.Count;
|
|
}
|
|
return checkList;
|
|
}
|
|
[HttpPost, Route("GetCheckListNew")]
|
|
public JsonActionResult<List<CheckListNew>> GetCheckListNew([FromBody] KeywordFilter filter)
|
|
{
|
|
var loginDepart = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
|
|
var loginUser = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
|
var userInfo = this.GetEntity<T_FM_USER>(t => t.ID == loginUser, "Nav_ProdutionUnit");
|
|
List<Guid> selectMinetype = new List<Guid>();
|
|
if (userInfo != null && userInfo.Nav_ProdutionUnit != null && userInfo.Nav_ProdutionUnit.Any())
|
|
{
|
|
selectMinetype = userInfo.Nav_ProdutionUnit.Select(t => t.ID).Distinct().ToList();
|
|
}
|
|
//var minetype = departs.FirstOrDefault(t => t.ID == loginDepart)?.MineType;
|
|
//switch (minetype)
|
|
//{
|
|
// case 0:
|
|
// selectMinetype.Add(SKProductionUnit.All.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.MineChoose.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.MineUnderGround.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.Minelast.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.Mine.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.Department.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.Nonmetallic.GetDescription());
|
|
// break;
|
|
// case 10:
|
|
// selectMinetype.Add(SKProductionUnit.MineChoose.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.Minelast.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.Nonmetallic.GetDescription());
|
|
// break;
|
|
// case 20:
|
|
// selectMinetype.Add(SKProductionUnit.Minelast.GetDescription());
|
|
// break;
|
|
// case 30:
|
|
// selectMinetype.Add(SKProductionUnit.Mine.GetDescription());
|
|
// break;
|
|
// case 40:
|
|
// selectMinetype.Add(SKProductionUnit.MineUnderGround.GetDescription());
|
|
// break;
|
|
// default:
|
|
// selectMinetype.Add(SKProductionUnit.All.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.MineChoose.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.MineUnderGround.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.Minelast.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.Mine.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.Department.GetDescription());
|
|
// selectMinetype.Add(SKProductionUnit.Nonmetallic.GetDescription());
|
|
// break;
|
|
//}
|
|
//List<Guid> departmentIds = new List<Guid>() { loginDepart.Value };
|
|
//DepartmentService.GetDepartmentIds(filter.OrgId.Value, new List<Guid>() { loginDepart.Value }, ref departmentIds);
|
|
var checkList = new JsonActionResult<List<CheckListNew>>();
|
|
List<CheckListNew> list = new List<CheckListNew>();
|
|
List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART> detailContents = new List<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>();
|
|
var checkTypeIds = this.GetEntities<T_SK_CHECK_TYPE>(t => t.NAME == "岗位排查", new BaseFilter(filter.OrgId)).Select(m => m.ID).ToList();
|
|
var users = this.GetEntities<T_FM_USER>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_Person").ToList();
|
|
var librarys = this.GetEntities<T_SK_ENTERPRISE_LIBRARY>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_Area", "Nav_ProductionUnit").ToList();
|
|
var libraryDetails = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId)).ToList();
|
|
var contents = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_Contents").ToList();
|
|
var contentDeparts = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_CheckType", "Nav_Department").ToList();
|
|
var posts = this.GetEntities<T_SK_ENTERPRISE_LIBRARY_POST>(t => !t.IS_DELETED, new BaseFilter(filter.OrgId), "Nav_PostDetails.Nav_Post").ToList();
|
|
if (librarys != null && librarys.Any())
|
|
{
|
|
foreach (var item in librarys)
|
|
{
|
|
var libraryPost = posts.Where(t => t.ENTERPRISE_LIBRARY_ID == item.ID).ToList();
|
|
var details = libraryDetails.Where(t => t.ENTERPRISE_LIBRARY_ID == item.ID).ToList();
|
|
var detailIds = details.Select(t => t.ID).ToList();
|
|
var contentTemps = contents.Where(t => detailIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_ID)).ToList();
|
|
var contentTempIds = contentTemps.Select(t => t.ID).ToList();
|
|
var contentDepartTemps = contentDeparts.Where(t => contentTempIds.Contains(t.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID)).ToList();
|
|
if (contentDepartTemps != null && contentDepartTemps.Any())
|
|
{
|
|
foreach (var depart in contentDepartTemps)
|
|
{
|
|
var first = libraryPost.FirstOrDefault(t => t.DEPARTMENT_ID == depart.DEPARTMENT_ID)?.Nav_PostDetails?.Select(m => m.Nav_Post).OrderBy(n => n?.NAME).ToList();
|
|
var contentFirst = contentTemps.FirstOrDefault(t => t.ID == depart.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID);
|
|
if (first != null && first.Any())
|
|
{
|
|
foreach (var post in first)
|
|
{
|
|
var userRole = users.FirstOrDefault(t => t.Nav_Person != null && t.Nav_Person.POST_ID == post?.ID).APPROVE_ROLE_ID;
|
|
if (userRole == null)
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART de = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART();
|
|
de.POST_NAME = post?.NAME;
|
|
de.PRODUCTION_UNIT_ID = item.PRODUCTION_UNIT_ID;
|
|
de.MINE_NAME = item.Nav_ProductionUnit?.NAME;
|
|
de.AREA_NAME = item.Nav_Area?.NAME;
|
|
de.ENTERPRISE_LIBRARY_DETAIL_ID = contentFirst?.ENTERPRISE_LIBRARY_DETAIL_ID;
|
|
de.ENTERPRISE_LIBRARY_ID = item.ID;
|
|
de.TYPE_NAME = depart.Nav_CheckType?.NAME;
|
|
de.DEPART_NAME = depart.Nav_Department?.NAME;
|
|
de.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID = depart.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID;
|
|
de.CHECK_CYCLE = depart.CHECK_CYCLE;
|
|
de.CHECK_TYPE_ID = depart.CHECK_TYPE_ID;
|
|
de.DEPARTMENT_ID = depart.DEPARTMENT_ID;
|
|
de.CHECK_TYPE = depart.CHECK_TYPE;
|
|
detailContents.Add(de);
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART de = new T_SK_ENTERPRISE_LIBRARY_DETAIL_CONTENT_DEPART();
|
|
de.POST_NAME = "未配置辨识岗位";
|
|
de.PRODUCTION_UNIT_ID = item.PRODUCTION_UNIT_ID;
|
|
de.MINE_NAME = item.Nav_ProductionUnit?.NAME;
|
|
de.AREA_NAME = item.Nav_Area?.NAME;
|
|
de.ENTERPRISE_LIBRARY_DETAIL_ID = contentFirst?.ENTERPRISE_LIBRARY_DETAIL_ID;
|
|
de.ENTERPRISE_LIBRARY_ID = item.ID;
|
|
de.TYPE_NAME = depart.Nav_CheckType?.NAME;
|
|
de.DEPART_NAME = depart.Nav_Department?.NAME;
|
|
de.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID = depart.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID;
|
|
de.CHECK_CYCLE = depart.CHECK_CYCLE;
|
|
de.CHECK_TYPE_ID = depart.CHECK_TYPE_ID;
|
|
de.DEPARTMENT_ID = depart.DEPARTMENT_ID;
|
|
de.CHECK_TYPE = depart.CHECK_TYPE;
|
|
detailContents.Add(de);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (detailContents != null && detailContents.Any())
|
|
{
|
|
foreach (var item in contents)
|
|
{
|
|
var detailLib = libraryDetails.FirstOrDefault(t => t.ID == item.ENTERPRISE_LIBRARY_DETAIL_ID);
|
|
var lib = librarys.FirstOrDefault(t => t.ID == detailLib?.ENTERPRISE_LIBRARY_ID);
|
|
item.RISK_NAME = lib?.RISK_NAME;
|
|
item.AREA_ID = lib?.AREA_ID;
|
|
item.Nav_Area = lib?.Nav_Area;
|
|
}
|
|
foreach (var item in detailContents)
|
|
{
|
|
if (checkTypeIds != null && checkTypeIds.Any() && item.CHECK_TYPE_ID != null && checkTypeIds.Contains((Guid)item.CHECK_TYPE_ID))
|
|
{
|
|
|
|
}
|
|
else
|
|
{
|
|
if (item.CHECK_TYPE == SKDepartmentTypeEnum.班组级)
|
|
{
|
|
item.POST_NAME = "班组负责人";
|
|
}
|
|
else if (item.CHECK_TYPE == SKDepartmentTypeEnum.车间级)
|
|
{
|
|
item.POST_NAME = "车间安全员";
|
|
}
|
|
else if (item.CHECK_TYPE == SKDepartmentTypeEnum.部门级)
|
|
{
|
|
item.POST_NAME = "部门安全员";
|
|
}
|
|
else
|
|
{
|
|
item.POST_NAME = "安环部安全员";
|
|
}
|
|
}
|
|
}
|
|
var group = detailContents.GroupBy(t => new { t.PRODUCTION_UNIT_ID, t.MINE_NAME,t.CHECK_TYPE, t.CHECK_CYCLE, t.DEPART_NAME, t.DEPARTMENT_ID, t.CHECK_TYPE_ID, t.TYPE_NAME, t.POST_NAME }).ToList();
|
|
foreach (var item in group)
|
|
{
|
|
CheckListNew listNew = new CheckListNew();
|
|
listNew.PRODUCTION_UNIT_ID = item.Key.PRODUCTION_UNIT_ID;
|
|
listNew.MineType = item.Key.MINE_NAME;
|
|
listNew.CheckType = item.Key.TYPE_NAME;
|
|
listNew.CheckCycle = item.Key.CHECK_CYCLE.GetDescription();
|
|
listNew.CheckLevel = item.Key.CHECK_TYPE.GetDescription();
|
|
listNew.Num = (int)item.Key.CHECK_TYPE;
|
|
listNew.CheckDepart = item.Key.DEPART_NAME;
|
|
listNew.CheckPost = item.Key.POST_NAME;
|
|
var depathaveIds = detailContents.Where(t => t.DEPARTMENT_ID == item.Key.DEPARTMENT_ID && t.CHECK_TYPE_ID == item.Key.CHECK_TYPE_ID && t.CHECK_TYPE == item.Key.CHECK_TYPE && t.CHECK_CYCLE == item.Key.CHECK_CYCLE && t.PRODUCTION_UNIT_ID == item.Key.PRODUCTION_UNIT_ID && t.POST_NAME == item.Key.POST_NAME).Select(m => m.ENTERPRISE_LIBRARY_DETAIL_CONTENT_ID).Distinct().ToList();
|
|
var temps = contents.Where(t => depathaveIds.Contains(t.ID)).Distinct().ToList();
|
|
if (temps.Any())
|
|
{
|
|
List<CheckListDetail> listDetail = new List<CheckListDetail>();
|
|
foreach (var tem in temps)
|
|
{
|
|
CheckListDetail checkListDetail = new CheckListDetail();
|
|
checkListDetail.CHECK_CONTENTS_ID = tem.CHECK_CONTENTS_ID;
|
|
checkListDetail.CHECK_CONTENTS_NAME = tem.Nav_Contents?.CHECKCONTENT;
|
|
checkListDetail.RISK_NAME = tem.RISK_NAME;
|
|
checkListDetail.RISK_AREA_ID = tem.AREA_ID;
|
|
checkListDetail.RISK_AREA_NAME = tem.Nav_Area?.NAME;
|
|
checkListDetail.CHECKPROOF = tem.CHECK_BASIC;
|
|
checkListDetail.CHECKSTANDARD = tem.CHECK_STANDARD;
|
|
listDetail.Add(checkListDetail);
|
|
}
|
|
listNew.details = listDetail.OrderBy(t => t.RISK_AREA_NAME).ThenBy(m => m.RISK_NAME).ToList();
|
|
}
|
|
list.Add(listNew);
|
|
}
|
|
if (userInfo != null && userInfo.NAME.Contains("管理员"))
|
|
{
|
|
checkList.Data = list.OrderBy(n => n.PRODUCTION_UNIT_ID).ThenBy(x => x.Num).ThenBy(n => n.CheckDepart).ToList();
|
|
}
|
|
else
|
|
{
|
|
checkList.Data = list.Where(t => t.PRODUCTION_UNIT_ID!=null && selectMinetype.Contains((Guid)t.PRODUCTION_UNIT_ID)).OrderBy(n => n.PRODUCTION_UNIT_ID).ThenBy(x => x.Num).ThenBy(n => n.CheckDepart).ToList();
|
|
}
|
|
checkList.TotalCount = checkList.Data.Count;
|
|
}
|
|
return checkList;
|
|
}
|
|
}
|
|
}
|