169 lines
9.5 KiB
C#
169 lines
9.5 KiB
C#
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/FOEnterpriseInformationRegistration")]
|
|
public partial class EnterpriseInformationRegistrationController : AuthorizeApiController<T_FO_ENTERPRISE_INFORMATION_REGISTRATION>
|
|
{
|
|
[HttpPost, Route("GetEdit")]
|
|
public JsonActionResult<T_FO_ENTERPRISE_INFORMATION_REGISTRATION> 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_ENTERPRISE_INFORMATION_REGISTRATION>(id, "Nav_ApplyUser", "Nav_ApplyDepartment", "Nav_ProUnits.Nav_ProUnit", "Nav_WorkFiles.Nav_ImgFile.Nav_File",
|
|
"Nav_AllowFiles.Nav_ImgFile.Nav_File", "Nav_SafeFiles.Nav_ImgFile.Nav_File", "Nav_Files.Nav_ImgFile.Nav_File");
|
|
return entity;
|
|
});
|
|
}
|
|
/// <summary>
|
|
/// 新增修改
|
|
/// </summary>
|
|
/// <param name="entity"></param>
|
|
/// <returns></returns>
|
|
[HttpPost, Route("FullUpdate")]
|
|
public JsonActionResult<bool> FullUpdate([FromBody] T_FO_ENTERPRISE_INFORMATION_REGISTRATION 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 proUnits = entity.Nav_ProUnits;
|
|
if (proUnits != null && proUnits.Any())
|
|
{
|
|
proUnits = proUnits.Where(t => !t.IS_DELETED).ToList();
|
|
}
|
|
entity.Nav_ProUnits = null;
|
|
var proUnitIds = this.GetEntities<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_UNIT>(t => t.ENTERPRISE_INFORMATION_REGISTRATION_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
|
var proUnitList = new List<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_UNIT>();
|
|
if (proUnits != null && proUnits.Any())
|
|
{
|
|
foreach (var unit in proUnits)
|
|
{
|
|
T_FO_ENTERPRISE_INFORMATION_REGISTRATION_UNIT item = new T_FO_ENTERPRISE_INFORMATION_REGISTRATION_UNIT();
|
|
item.ORG_ID = entity.ORG_ID;
|
|
item.ENTERPRISE_INFORMATION_REGISTRATION_ID = entity.ID;
|
|
item.PRODUCTION_UNIT_ID = unit.PRODUCTION_UNIT_ID;
|
|
proUnitList.Add(item);
|
|
}
|
|
}
|
|
var workFiles = entity.Nav_WorkFiles;
|
|
if (workFiles != null && workFiles.Any())
|
|
{
|
|
workFiles = workFiles.Where(t => !t.IS_DELETED).ToList();
|
|
}
|
|
entity.Nav_WorkFiles = null;
|
|
var workFileIds = this.GetEntities<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_WORKFILE>(t => t.ENTERPRISE_INFORMATION_REGISTRATION_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
|
var workFileList = new List<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_WORKFILE>();
|
|
if (workFiles != null && workFiles.Any())
|
|
{
|
|
foreach (var file in workFiles)
|
|
{
|
|
T_FO_ENTERPRISE_INFORMATION_REGISTRATION_WORKFILE item = new T_FO_ENTERPRISE_INFORMATION_REGISTRATION_WORKFILE();
|
|
item.ORG_ID = entity.ORG_ID;
|
|
item.ENTERPRISE_INFORMATION_REGISTRATION_ID = entity.ID;
|
|
item.IMG_FILE_ID = file.IMG_FILE_ID;
|
|
workFileList.Add(item);
|
|
}
|
|
}
|
|
var allowFiles = entity.Nav_AllowFiles;
|
|
if (allowFiles != null && allowFiles.Any())
|
|
{
|
|
allowFiles = allowFiles.Where(t => !t.IS_DELETED).ToList();
|
|
}
|
|
entity.Nav_AllowFiles = null;
|
|
var allowFileIds = this.GetEntities<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_ALLOWFILE>(t => t.ENTERPRISE_INFORMATION_REGISTRATION_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
|
var allowFileList = new List<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_ALLOWFILE>();
|
|
if (allowFiles != null && allowFiles.Any())
|
|
{
|
|
foreach (var file in allowFiles)
|
|
{
|
|
T_FO_ENTERPRISE_INFORMATION_REGISTRATION_ALLOWFILE item = new T_FO_ENTERPRISE_INFORMATION_REGISTRATION_ALLOWFILE();
|
|
item.ORG_ID = entity.ORG_ID;
|
|
item.ENTERPRISE_INFORMATION_REGISTRATION_ID = entity.ID;
|
|
item.IMG_FILE_ID = file.IMG_FILE_ID;
|
|
allowFileList.Add(item);
|
|
}
|
|
}
|
|
var safeFiles = entity.Nav_SafeFiles;
|
|
if (safeFiles != null && safeFiles.Any())
|
|
{
|
|
safeFiles = safeFiles.Where(t => !t.IS_DELETED).ToList();
|
|
}
|
|
entity.Nav_SafeFiles = null;
|
|
var safeFileIds = this.GetEntities<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_SAFEFILE>(t => t.ENTERPRISE_INFORMATION_REGISTRATION_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
|
var safeFileList = new List<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_SAFEFILE>();
|
|
if (safeFiles != null && safeFiles.Any())
|
|
{
|
|
foreach (var file in safeFiles)
|
|
{
|
|
T_FO_ENTERPRISE_INFORMATION_REGISTRATION_SAFEFILE item = new T_FO_ENTERPRISE_INFORMATION_REGISTRATION_SAFEFILE();
|
|
item.ORG_ID = entity.ORG_ID;
|
|
item.ENTERPRISE_INFORMATION_REGISTRATION_ID = entity.ID;
|
|
item.IMG_FILE_ID = file.IMG_FILE_ID;
|
|
safeFileList.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_ENTERPRISE_INFORMATION_REGISTRATION_FILE>(t => t.ENTERPRISE_INFORMATION_REGISTRATION_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
|
|
var fileList = new List<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_FILE>();
|
|
if (files != null && files.Any())
|
|
{
|
|
foreach (var file in files)
|
|
{
|
|
T_FO_ENTERPRISE_INFORMATION_REGISTRATION_FILE item = new T_FO_ENTERPRISE_INFORMATION_REGISTRATION_FILE();
|
|
item.ORG_ID = entity.ORG_ID;
|
|
item.ENTERPRISE_INFORMATION_REGISTRATION_ID = entity.ID;
|
|
item.IMG_FILE_ID = file.IMG_FILE_ID;
|
|
fileList.Add(item);
|
|
}
|
|
}
|
|
this.UnifiedCommit(() =>
|
|
{
|
|
if (proUnitIds != null && proUnitIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_UNIT>(proUnitIds);
|
|
if (workFileIds != null && workFileIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_WORKFILE>(workFileIds);
|
|
if (allowFileIds != null && allowFileIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_ALLOWFILE>(allowFileIds);
|
|
if (safeFileIds != null && safeFileIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_SAFEFILE>(safeFileIds);
|
|
if (fileIds != null && fileIds.Any())
|
|
this.BantchDeleteEntityNoCommit<T_FO_ENTERPRISE_INFORMATION_REGISTRATION_FILE>(fileIds);
|
|
if (entity != null)
|
|
UpdateEntityNoCommit(entity);
|
|
if (proUnitList != null && proUnitList.Any())
|
|
this.BantchSaveEntityNoCommit(proUnitList);
|
|
if (workFileList != null && workFileList.Any())
|
|
this.BantchSaveEntityNoCommit(workFileList);
|
|
if (allowFileList != null && allowFileList.Any())
|
|
this.BantchSaveEntityNoCommit(allowFileList);
|
|
if (safeFileList != null && safeFileList.Any())
|
|
this.BantchSaveEntityNoCommit(safeFileList);
|
|
if (fileList != null && fileList.Any())
|
|
this.BantchSaveEntityNoCommit(fileList);
|
|
});
|
|
return true;
|
|
});
|
|
}
|
|
}
|
|
}
|