using APT.BaseData.Domain.Entities; using APT.BaseData.Domain.Entities.FM; using APT.BaseData.Domain.IServices.FM; using APT.Infrastructure.Core; using APT.MS.Domain.Entities.BS; using APT.MS.Domain.Enums; using APT.Utility; using APT.WebApi.Models; using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using System.Linq; namespace APT.BS.WebApi.Controllers.Api { [Route("api/BS/BSPlanSet")] public partial class BSPlanSetController : AuthorizeApiController { /// /// 排序分页查询数据 /// /// 分页过滤实体 /// [HttpPost, Route("OrderPagedDescription")] public PagedActionResult OrderPagedDescription([FromBody] KeywordPageFilter pageFilter) { //return SafeGetPagedData(() => //{ //}); pageFilter.IgnoreDataRule = true; //参考 NotificationTask var result = this.GetOrderPageEntities(null, pageFilter); if (result.TotalCount > 0) { List listCHECK_TYPE_LEVEL = result.Data.ToList(); //foreach (var item in listCHECK_TYPE_LEVEL) //{ // item.Nav_CheckTypeLevel.CheckLevelDescription = ((MS.Domain.Enums.HMLevleEnum)item.Nav_CheckTypeLevel.CheckLevel).GetDescription(); //} result.Data = listCHECK_TYPE_LEVEL; } return result; } /// /// 获得单条实体数据 /// /// 过滤实体 /// [HttpPost, Route("GetInfo")] public JsonActionResult Get([FromBody] KeywordFilter filter) { //this.ActionOrderEntities(null, filter); //this.GetEntities(null,filter); JsonActionResult result = WitEntity(null, filter); try { //result.Data.Nav_CheckTypeLevel.CheckLevelDescription = ((HMLevleEnum)(result.Data.Nav_CheckTypeLevel.CheckLevel)).GetDescription(); } catch { return result; } return result; } /// /// 更新 /// /// /// [HttpPost, Route("FullUpdate")] public JsonActionResult FullUpdate([FromBody] T_BS_PLAN_SET entity) { return SafeExecute(() => { var ListSetObject = entity.Nav_ListSetObject; entity.Nav_ListSetObject = null; var ListSetDepObject = entity.Nav_ListSetDepObject; entity.Nav_ListSetDepObject = null; int rowIndex = 1; foreach (var item in ListSetDepObject) { if (!item.DEPARTMENT_ID.HasValue) { throw new Exception("请设置部门,行:" + rowIndex + "!"); } rowIndex++; } var listDepOut = entity.Nav_ListDepOut; entity.Nav_ListDepOut = null; if (listDepOut != null && listDepOut.Any()) { foreach (var item in listDepOut) item.Nav_Department = null; } var listArea = entity.Nav_ListArea; entity.Nav_ListArea = null; if (listArea != null && listArea.Any()) { foreach (var item in listArea) item.Nav_Area = null; } if (entity.Nav_UserSend != null) entity.Nav_UserSend = null; if (entity.USER_ID_SEND.HasValue) { if (ListSetDepObject != null && ListSetDepObject.Any()) { if (ListSetDepObject.Count > 1) { throw new Exception("有设置接收人时,【部门范围】最多只能设置一条信息!"); } else { foreach (var item in ListSetDepObject) { if (!item.DEPARTMENT_ID.HasValue) { throw new Exception("有设置接收人时,【部门范围】得设置对应部门!"); } } } } } this.UnifiedCommit(() => { if (entity != null) UpdateEntityNoCommit(entity); if (ListSetObject != null && ListSetObject.Any()) BantchSaveEntityNoCommit(ListSetObject); if (ListSetDepObject != null && ListSetDepObject.Any()) BantchSaveEntityNoCommit(ListSetDepObject); if (listDepOut != null && listDepOut.Any()) BantchSaveEntityNoCommit(listDepOut); if (listArea != null && listArea.Any()) BantchSaveEntityNoCommit(listArea); }); return true; }); } } }