1
This commit is contained in:
parent
abcb8383db
commit
d8909ed78a
224
APT.MicroApi/APT.FO.WebApi/Controllers/FireJobController.cs
Normal file
224
APT.MicroApi/APT.FO.WebApi/Controllers/FireJobController.cs
Normal file
@ -0,0 +1,224 @@
|
||||
using APT.Infrastructure.Core;
|
||||
using APT.MS.Domain.Entities.FO;
|
||||
using APT.Utility;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace APT.FO.WebApi.Controllers
|
||||
{
|
||||
/// <summary>
|
||||
/// 动火作业
|
||||
/// </summary>
|
||||
[Route("api/FO/FOFireJob")]
|
||||
public partial class FireJobController : AuthorizeApiController<T_FO_FIRE_JOB>
|
||||
{
|
||||
[HttpPost, Route("GetEdit")]
|
||||
public JsonActionResult<T_FO_FIRE_JOB> GetEdit([FromBody] KeywordFilter filter)
|
||||
{
|
||||
return SafeExecute(() =>
|
||||
{
|
||||
var id = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "ID").Value.ToString();
|
||||
if (string.IsNullOrEmpty(id))
|
||||
this.ThrowError("060010");
|
||||
var entity = this.GetEntity<T_FO_FIRE_JOB>(id, "Nav_ApplyUser", "Nav_Company", "Nav_ApplyDepartment", "Nav_OperationStep", "Nav_ProductionUnit", "Nav_FireUser.Nav_ImgFile.Nav_File", "Nav_FireDepartment",
|
||||
"Nav_SafeUser.Nav_ImgFile.Nav_File", "Nav_Area", "Nav_Type", "Nav_MonitorUser", "Nav_Risks", "Nav_Files.Nav_ImgFile.Nav_File", "Nav_Users.Nav_UserType", "Nav_Users.Nav_UserType", "Nav_Users.Nav_UserFiles.Nav_ImgFile.Nav_File",
|
||||
"Nav_FireFiles.Nav_ImgFile.Nav_File", "Nav_MonitorFiles.Nav_ImgFile.Nav_File", "Nav_DispatchUser");
|
||||
if (entity != null)
|
||||
{
|
||||
var details = this.GetEntities<T_FO_FIRE_JOB_DETAIL>(t => t.FIRE_JOB_ID == entity.ID, new BaseFilter(entity.ORG_ID), "Nav_DetailFiles.Nav_ImgFile.Nav_File").ToList();
|
||||
entity.Nav_Details = details.OrderBy(t => t.JOB_STEP).ToList();
|
||||
}
|
||||
return entity;
|
||||
});
|
||||
}
|
||||
/// <summary>
|
||||
/// 新增修改
|
||||
/// </summary>
|
||||
/// <param name="entity"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost, Route("FullUpdate")]
|
||||
public JsonActionResult<bool> FullUpdate([FromBody] T_FO_FIRE_JOB entity)
|
||||
{
|
||||
return SafeExecute<bool>(() =>
|
||||
{
|
||||
var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
||||
var departmentId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
|
||||
entity.APPLY_USER_ID = loginUserId;
|
||||
entity.APPLY_DEPARTMENT_ID = departmentId;
|
||||
var details = entity.Nav_Details;
|
||||
if (details != null && details.Any())
|
||||
{
|
||||
details = details.Where(t => !t.IS_DELETED).ToList();
|
||||
}
|
||||
entity.Nav_Details = null;
|
||||
var detailIds = this.GetEntities<T_FO_FIRE_JOB_DETAIL>(t => t.FIRE_JOB_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var detailFileIds = this.GetEntities<T_FO_FIRE_JOB_DETAIL_FILE>(t => detailIds.Contains(t.FIRE_JOB_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var detailList = new List<T_FO_FIRE_JOB_DETAIL>();
|
||||
var detailFileList = new List<T_FO_FIRE_JOB_DETAIL_FILE>();
|
||||
if (details != null && details.Any())
|
||||
{
|
||||
foreach (var item in details)
|
||||
{
|
||||
if (item.Nav_DetailFiles != null && item.Nav_DetailFiles.Any())
|
||||
{
|
||||
foreach (var item2 in item.Nav_DetailFiles)
|
||||
{
|
||||
item2.ORG_ID = entity.ORG_ID;
|
||||
item2.FIRE_JOB_DETAIL_ID = item.ID;
|
||||
item2.Nav_ImgFile = null;
|
||||
detailFileList.Add(item2);
|
||||
}
|
||||
}
|
||||
item.ORG_ID = entity.ORG_ID;
|
||||
item.FIRE_JOB_ID = entity.ID;
|
||||
item.Nav_DetailFiles = null;
|
||||
detailList.Add(item);
|
||||
}
|
||||
}
|
||||
var files = entity.Nav_Files;
|
||||
if (files != null && files.Any())
|
||||
{
|
||||
files = files.Where(t => !t.IS_DELETED).ToList();
|
||||
}
|
||||
entity.Nav_Files = null;
|
||||
var fileIds = this.GetEntities<T_FO_FIRE_JOB_FILE>(t => t.FIRE_JOB_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var fileList = new List<T_FO_FIRE_JOB_FILE>();
|
||||
if (files != null && files.Any())
|
||||
{
|
||||
foreach (var item in files)
|
||||
{
|
||||
item.ORG_ID = entity.ORG_ID;
|
||||
item.FIRE_JOB_ID = entity.ID;
|
||||
item.Nav_ImgFile = null;
|
||||
fileList.Add(item);
|
||||
}
|
||||
}
|
||||
var risks = entity.Nav_Risks;
|
||||
if (risks != null && risks.Any())
|
||||
{
|
||||
risks = risks.Where(t => !t.IS_DELETED).ToList();
|
||||
}
|
||||
entity.Nav_Risks = null;
|
||||
var riskIds = this.GetEntities<T_FO_FIRE_JOB_RISK>(t => t.FIRE_JOB_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var riskList = new List<T_FO_FIRE_JOB_RISK>();
|
||||
if (risks != null && risks.Any())
|
||||
{
|
||||
foreach (var item in risks)
|
||||
{
|
||||
item.ORG_ID = entity.ORG_ID;
|
||||
item.FIRE_JOB_ID = entity.ID;
|
||||
riskList.Add(item);
|
||||
}
|
||||
}
|
||||
var users = entity.Nav_Users;
|
||||
if (users != null && users.Any())
|
||||
{
|
||||
users = users.Where(t => !t.IS_DELETED).ToList();
|
||||
}
|
||||
entity.Nav_Users = null;
|
||||
var userIds = this.GetEntities<T_FO_FIRE_JOB_USER>(t => t.FIRE_JOB_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var userFileIds = this.GetEntities<T_FO_FIRE_JOB_USER_FILE>(t => userIds.Contains(t.FIRE_JOB_USER_ID), new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var userFileList = new List<T_FO_FIRE_JOB_USER_FILE>();
|
||||
var userList = new List<T_FO_FIRE_JOB_USER>();
|
||||
if (users != null && users.Any())
|
||||
{
|
||||
foreach (var item in users)
|
||||
{
|
||||
item.ORG_ID = entity.ORG_ID;
|
||||
item.FIRE_JOB_ID = entity.ID;
|
||||
item.Nav_User = null;
|
||||
item.Nav_UserType = null;
|
||||
if (item.Nav_UserFiles != null && item.Nav_UserFiles.Any())
|
||||
{
|
||||
foreach (var item2 in item.Nav_UserFiles)
|
||||
{
|
||||
item2.ORG_ID = entity.ORG_ID;
|
||||
item2.FIRE_JOB_USER_ID = item.ID;
|
||||
item2.Nav_ImgFile = null;
|
||||
userFileList.Add(item2);
|
||||
}
|
||||
}
|
||||
item.Nav_UserFiles = null;
|
||||
userList.Add(item);
|
||||
}
|
||||
}
|
||||
var fireFiles = entity.Nav_FireFiles;
|
||||
if (fireFiles != null && fireFiles.Any())
|
||||
{
|
||||
fireFiles = fireFiles.Where(t => !t.IS_DELETED).ToList();
|
||||
}
|
||||
entity.Nav_FireFiles = null;
|
||||
var fireFileIds = this.GetEntities<T_FO_FIRE_JOB_FIRE_FILE>(t => t.FIRE_JOB_JOB_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var fireFileList = new List<T_FO_FIRE_JOB_FIRE_FILE>();
|
||||
if (fireFiles != null && fireFiles.Any())
|
||||
{
|
||||
foreach (var item in fireFiles)
|
||||
{
|
||||
item.ORG_ID = entity.ORG_ID;
|
||||
item.FIRE_JOB_JOB_ID = entity.ID;
|
||||
item.Nav_ImgFile = null;
|
||||
fireFileList.Add(item);
|
||||
}
|
||||
}
|
||||
var monitorFiles = entity.Nav_MonitorFiles;
|
||||
if (monitorFiles != null && monitorFiles.Any())
|
||||
{
|
||||
monitorFiles = monitorFiles.Where(t => !t.IS_DELETED).ToList();
|
||||
}
|
||||
entity.Nav_MonitorFiles = null;
|
||||
var monitorFileIds = this.GetEntities<T_FO_FIRE_JOB_MONITOR_FILE>(t => t.FIRE_JOB_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var monitorFileList = new List<T_FO_FIRE_JOB_MONITOR_FILE>();
|
||||
if (monitorFiles != null && monitorFiles.Any())
|
||||
{
|
||||
foreach (var item in monitorFiles)
|
||||
{
|
||||
item.ORG_ID = entity.ORG_ID;
|
||||
item.FIRE_JOB_ID = entity.ID;
|
||||
item.Nav_ImgFile = null;
|
||||
monitorFileList.Add(item);
|
||||
}
|
||||
}
|
||||
this.UnifiedCommit(() =>
|
||||
{
|
||||
if (detailFileIds != null && detailFileIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_FIRE_JOB_DETAIL_FILE>(detailFileIds);
|
||||
if (detailIds != null && detailIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_FIRE_JOB_DETAIL>(detailIds);
|
||||
if (userFileIds != null && userFileIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_FIRE_JOB_USER_FILE>(userFileIds);
|
||||
if (userIds != null && userIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_FIRE_JOB_USER>(userIds);
|
||||
if (fileIds != null && fileIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_FIRE_JOB_FILE>(fileIds);
|
||||
if (fireFileIds != null && fireFileIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_FIRE_JOB_FIRE_FILE>(fireFileIds);
|
||||
if (monitorFileIds != null && monitorFileIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_FIRE_JOB_MONITOR_FILE>(monitorFileIds);
|
||||
if (riskIds != null && riskIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_FIRE_JOB_RISK>(riskIds);
|
||||
if (entity != null)
|
||||
UpdateEntityNoCommit(entity);
|
||||
if (detailList != null && detailList.Any())
|
||||
this.BantchSaveEntityNoCommit(detailList);
|
||||
if (detailFileList != null && detailFileList.Any())
|
||||
this.BantchSaveEntityNoCommit(detailFileList);
|
||||
if (userList != null && userList.Any())
|
||||
this.BantchSaveEntityNoCommit(userList);
|
||||
if (userFileList != null && userFileList.Any())
|
||||
this.BantchSaveEntityNoCommit(userFileList);
|
||||
if (riskList != null && riskList.Any())
|
||||
this.BantchSaveEntityNoCommit(riskList);
|
||||
if (monitorFileList != null && monitorFileList.Any())
|
||||
this.BantchSaveEntityNoCommit(monitorFileList);
|
||||
if (fireFileList != null && fireFileList.Any())
|
||||
this.BantchSaveEntityNoCommit(fireFileList);
|
||||
if (fileList != null && fileList.Any())
|
||||
this.BantchSaveEntityNoCommit(fileList);
|
||||
});
|
||||
return true;
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,173 @@
|
||||
using APT.Infrastructure.Core;
|
||||
using APT.MS.Domain.Entities.FO;
|
||||
using APT.Utility;
|
||||
using Google.Protobuf.Collections;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace APT.FO.WebApi.Controllers
|
||||
{
|
||||
/// <summary>
|
||||
/// 领导带班下井记录
|
||||
/// </summary>
|
||||
[Route("api/FO/FOLeaderWellRecord")]
|
||||
public partial class LeaderWellRecordController : AuthorizeApiController<T_FO_LEADER_WELL_RECORD>
|
||||
{
|
||||
|
||||
[HttpPost, Route("GetEdit")]
|
||||
public JsonActionResult<T_FO_LEADER_WELL_RECORD> GetEdit([FromBody] KeywordFilter filter)
|
||||
{
|
||||
return SafeExecute(() =>
|
||||
{
|
||||
var id = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "ID").Value.ToString();
|
||||
if (string.IsNullOrEmpty(id))
|
||||
this.ThrowError("060010");
|
||||
var entity = this.GetEntity<T_FO_LEADER_WELL_RECORD>(id, "Nav_ApplyUser", "Nav_Company", "Nav_ApplyDepartment", "Nav_ProductionUnit", "Nav_Class", "Nav_Users.Nav_User",
|
||||
"Nav_Files.Nav_ImgFile.Nav_File");
|
||||
if (entity != null)
|
||||
{
|
||||
var details = this.GetEntities<T_FO_LEADER_WELL_RECORD_DETAIL>(t => t.LEADER_WELL_RECORD_ID == entity.ID, new BaseFilter(entity.ORG_ID), "Nav_DetailFiles.Nav_ImgFile.Nav_File", "Nav_User", "Nav_PreUser", "Nav_AfterUser", "Nav_DetailAreas.Nav_Area").ToList();
|
||||
entity.Nav_Details = details.OrderByDescending(t => t.START_DATE).ToList();
|
||||
}
|
||||
return entity;
|
||||
});
|
||||
}
|
||||
/// <summary>
|
||||
/// 新增修改
|
||||
/// </summary>
|
||||
/// <param name="entity"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost, Route("FullUpdate")]
|
||||
public JsonActionResult<bool> FullUpdate([FromBody] T_FO_LEADER_WELL_RECORD entity)
|
||||
{
|
||||
return SafeExecute<bool>(() =>
|
||||
{
|
||||
var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
|
||||
var departmentId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
|
||||
entity.APPLY_USER_ID = loginUserId;
|
||||
entity.APPLY_DEPARTMENT_ID = departmentId;
|
||||
var details = entity.Nav_Details;
|
||||
if (details != null && details.Any())
|
||||
{
|
||||
details = details.Where(t => !t.IS_DELETED).ToList();
|
||||
}
|
||||
entity.Nav_Details = null;
|
||||
var userIds = this.GetEntities<T_FO_LEADER_WELL_RECORD_USER>(t => t.LEADER_WELL_RECORD_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var fileIds = this.GetEntities<T_FO_LEADER_WELL_RECORD_FILE>(t => t.LEADER_WELL_RECORD_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var detailIds = this.GetEntities<T_FO_LEADER_WELL_RECORD_DETAIL>(t => t.LEADER_WELL_RECORD_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var detailFileIds = this.GetEntities<T_FO_LEADER_WELL_RECORD_DETAIL_FILE>(t => detailIds.Contains(t.LEADER_WELL_RECORD_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var detailAreaIds = this.GetEntities<T_FO_LEADER_WELL_RECORD_DETAIL_AREA>(t => detailIds.Contains(t.LEADER_WELL_RECORD_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
||||
var userList = new List<T_FO_LEADER_WELL_RECORD_USER>();
|
||||
var fileList = new List<T_FO_LEADER_WELL_RECORD_FILE>();
|
||||
var detailList = new List<T_FO_LEADER_WELL_RECORD_DETAIL>();
|
||||
var detailFileList = new List<T_FO_LEADER_WELL_RECORD_DETAIL_FILE>();
|
||||
var detailAreaList = new List<T_FO_LEADER_WELL_RECORD_DETAIL_AREA>();
|
||||
if (details != null && details.Any())
|
||||
{
|
||||
foreach (var item in details)
|
||||
{
|
||||
if (item.Nav_DetailFiles != null && item.Nav_DetailFiles.Any())
|
||||
{
|
||||
foreach (var item2 in item.Nav_DetailFiles)
|
||||
{
|
||||
item2.ORG_ID = entity.ORG_ID;
|
||||
item2.LEADER_WELL_RECORD_DETAIL_ID = item.ID;
|
||||
item2.Nav_ImgFile = null;
|
||||
detailFileList.Add(item2);
|
||||
}
|
||||
}
|
||||
if (item.Nav_DetailAreas != null && item.Nav_DetailAreas.Any())
|
||||
{
|
||||
foreach (var item2 in item.Nav_DetailAreas)
|
||||
{
|
||||
item2.ORG_ID = entity.ORG_ID;
|
||||
item2.LEADER_WELL_RECORD_DETAIL_ID = item.ID;
|
||||
item2.Nav_Area = null;
|
||||
detailAreaList.Add(item2);
|
||||
}
|
||||
}
|
||||
item.ORG_ID = entity.ORG_ID;
|
||||
item.LEADER_WELL_RECORD_ID = entity.ID;
|
||||
item.Nav_DetailFiles = null;
|
||||
detailList.Add(item);
|
||||
}
|
||||
}
|
||||
var files = entity.Nav_Files;
|
||||
if (files != null && files.Any())
|
||||
{
|
||||
files = files.Where(t => !t.IS_DELETED).ToList();
|
||||
}
|
||||
entity.Nav_Files = null;
|
||||
if (files != null && files.Any())
|
||||
{
|
||||
foreach (var item in files)
|
||||
{
|
||||
item.ORG_ID = entity.ORG_ID;
|
||||
item.LEADER_WELL_RECORD_ID = entity.ID;
|
||||
item.Nav_ImgFile = null;
|
||||
fileList.Add(item);
|
||||
}
|
||||
}
|
||||
var users = entity.Nav_Users;
|
||||
if (users != null && users.Any())
|
||||
{
|
||||
users = users.Where(t => !t.IS_DELETED).ToList();
|
||||
}
|
||||
entity.Nav_Users = null;
|
||||
if (users != null && users.Any())
|
||||
{
|
||||
foreach (var item in users)
|
||||
{
|
||||
item.ORG_ID = entity.ORG_ID;
|
||||
item.LEADER_WELL_RECORD_ID = entity.ID;
|
||||
item.Nav_User = null;
|
||||
userList.Add(item);
|
||||
}
|
||||
}
|
||||
if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify"))
|
||||
{
|
||||
if (entity.STATUS == MS.Domain.Enums.FOStatusEnum.Draft)
|
||||
{
|
||||
foreach (var user in users)
|
||||
{
|
||||
if (user.USER_ID == loginUserId)
|
||||
{
|
||||
user.DEAL_STATUS = MS.Domain.Enums.FOUserShiftStatusEnum.已处理;
|
||||
}
|
||||
}
|
||||
var sendUserIds= users.Where(t=>t.USER_ID != loginUserId && t.USER_ID!=null).Select(m=>m.USER_ID).Distinct().ToList();
|
||||
|
||||
}
|
||||
}
|
||||
this.UnifiedCommit(() =>
|
||||
{
|
||||
if (detailFileIds != null && detailFileIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_LEADER_WELL_RECORD_DETAIL_FILE>(detailFileIds);
|
||||
if (detailAreaIds != null && detailAreaIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_LEADER_WELL_RECORD_DETAIL_AREA>(detailAreaIds);
|
||||
if (detailIds != null && detailIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_LEADER_WELL_RECORD_DETAIL>(detailIds);
|
||||
if (fileIds != null && fileIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_LEADER_WELL_RECORD_FILE>(fileIds);
|
||||
if (userIds != null && userIds.Any())
|
||||
this.BantchDeleteEntityNoCommit<T_FO_LEADER_WELL_RECORD_USER>(userIds);
|
||||
if (entity != null)
|
||||
UpdateEntityNoCommit(entity);
|
||||
if (detailList != null && detailList.Any())
|
||||
this.BantchSaveEntityNoCommit(detailList);
|
||||
if (detailFileList != null && detailFileList.Any())
|
||||
this.BantchSaveEntityNoCommit(detailFileList);
|
||||
if (detailAreaList != null && detailAreaList.Any())
|
||||
this.BantchSaveEntityNoCommit(detailAreaList);
|
||||
if (userList != null && userList.Any())
|
||||
this.BantchSaveEntityNoCommit(userList);
|
||||
if (fileList != null && fileList.Any())
|
||||
this.BantchSaveEntityNoCommit(fileList);
|
||||
});
|
||||
return true;
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user