using APT.BaseData.Domain.Entities; using APT.BaseData.Domain.Entities.FM; using APT.BaseData.Domain.Enums.PF; using APT.BaseData.Domain.IServices; using APT.BaseData.Domain.IServices.FM; using APT.Infrastructure.Core; using APT.MS.Domain.Entities.TL; using APT.MS.Domain.Enums; using APT.Utility; using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using System.Linq; namespace APT.SC.WebApi.Controllers.Api.SC { [Route("api/TL/TLTailing")] public class TLTailingController : AuthorizeApiController { /// /// 附件上传 /// 设计文件专家评审意见 /// /// /// [HttpPost, Route("FullUpdate")] public JsonActionResult FullUpdate([FromBody] T_TL_TAILING entity) { return SafeExecute(() => { var tailing = GetEntity(entity.ID); if (tailing == null || entity.NAME == tailing.NAME) { return UpdateEntity(entity); } else { #region 获取和修改冗余字段 var listBack = GetEntities(e => e.TAILING_ID.HasValue && e.TAILING_ID.Value == entity.ID, null, null); var listSum = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listSet = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listMPoint = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listPercent = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listMove = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listPoint = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listLDetail = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listL = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listDDetail = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listD = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listCheck = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listBRecord = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listCaculate = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listHCheck = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listOut = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listFinish = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listHight = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listIntroduce = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listRecord = GetEntities(e => e.TAILING_ID == entity.ID, null, null); var listBank = GetEntities(e => e.TAILING_ID == entity.ID, null, null); foreach (var item in listBack) { item.TAILING_NAME = entity.NAME; } foreach (var item in listSum) { item.TAILING_NAME = entity.NAME; } foreach (var item in listSet) { item.TAILING_NAME = entity.NAME; } foreach (var item in listMPoint) { item.TAILING_NAME = entity.NAME; } foreach (var item in listPercent) { item.TAILING_NAME = entity.NAME; } foreach (var item in listMove) { item.TAILING_NAME = entity.NAME; } foreach (var item in listPoint) { item.TAILING_NAME = entity.NAME; } foreach (var item in listLDetail) { item.TAILING_NAME = entity.NAME; } foreach (var item in listL) { item.TAILING_NAME = entity.NAME; } foreach (var item in listDDetail) { item.TAILING_NAME = entity.NAME; } foreach (var item in listD) { item.TAILING_NAME = entity.NAME; } foreach (var item in listCheck) { item.TAILING_NAME = entity.NAME; } foreach (var item in listBRecord) { item.TAILING_NAME = entity.NAME; } foreach (var item in listCaculate) { item.TAILING_NAME = entity.NAME; } foreach (var item in listHCheck) { item.TAILING_NAME = entity.NAME; } foreach (var item in listOut) { item.TAILING_NAME = entity.NAME; } foreach (var item in listFinish) { item.TAILING_NAME = entity.NAME; } foreach (var item in listHight) { item.TAILING_NAME = entity.NAME; } foreach (var item in listIntroduce) { item.TAILING_NAME = entity.NAME; } foreach (var item in listRecord) { item.TAILING_NAME = entity.NAME; } foreach (var item in listBank) { item.TAILING_NAME = entity.NAME; } #endregion this.UnifiedCommit(() => { if (entity != null) UpdateEntityNoCommit(entity); if (listBack != null && listBack.Any()) BantchUpdateEntityNoCommit(listBack); if (listSum != null && listSum.Any()) BantchUpdateEntityNoCommit(listSum); if (listSet != null && listSet.Any()) BantchUpdateEntityNoCommit(listSet); if (listMPoint != null && listMPoint.Any()) BantchUpdateEntityNoCommit(listMPoint); if (listPercent != null && listPercent.Any()) BantchUpdateEntityNoCommit(listPercent); if (listMove != null && listMove.Any()) BantchUpdateEntityNoCommit(listMove); if (listPoint != null && listPoint.Any()) BantchUpdateEntityNoCommit(listPoint); if (listLDetail != null && listLDetail.Any()) BantchUpdateEntityNoCommit(listLDetail); if (listL != null && listL.Any()) BantchUpdateEntityNoCommit(listL); if (listDDetail != null && listDDetail.Any()) BantchUpdateEntityNoCommit(listDDetail); if (listD != null && listD.Any()) BantchUpdateEntityNoCommit(listD); if (listCheck != null && listCheck.Any()) BantchUpdateEntityNoCommit(listCheck); if (listBRecord != null && listBRecord.Any()) BantchUpdateEntityNoCommit(listBRecord); if (listCaculate != null && listCaculate.Any()) BantchUpdateEntityNoCommit(listCaculate); if (listHCheck != null && listHCheck.Any()) BantchUpdateEntityNoCommit(listHCheck); if (listOut != null && listOut.Any()) BantchUpdateEntityNoCommit(listOut); if (listFinish != null && listFinish.Any()) BantchUpdateEntityNoCommit(listFinish); if (listHight != null && listHight.Any()) BantchUpdateEntityNoCommit(listHight); if (listIntroduce != null && listIntroduce.Any()) BantchUpdateEntityNoCommit(listIntroduce); if (listBank != null && listBank.Any()) BantchUpdateEntityNoCommit(listBank); if (listRecord != null && listRecord.Any()) BantchUpdateEntityNoCommit(listRecord); }); } return true; }); } } }