using APT.BaseData.Domain.Entities; using APT.BaseData.Domain.Enums; using APT.BaseData.Domain.IServices; using APT.Infrastructure.Core; using APT.BaseData.Domain.Entities.FM; using APT.Utility; using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using System.Linq; using APT.Utility;namespace APT.PF.WebApiControllers.Api.PF { [Route("api/PF/Column")] [APT.Infrastructure.Api.RootOrg] public class ColumnController : AuthorizeApiController { /// /// 查询 /// /// /// [HttpPost, Route("Entities")] public JsonActionResult> Entities([FromBody]KeywordFilter filter) { return WitEntities(null, filter); } /// /// 查询 /// /// /// [HttpPost, Route("OrderEntities")] public JsonActionResult> OrderEntities([FromBody]KeywordFilter filter) { return SafeExecute>(() => { var data = this.GetOrderEntities(null, filter); ; data.Where(i => !string.IsNullOrEmpty(i.ENUM)) .ForEach(i => i.ENUM = DataHelper.EnumToString(i.ENUM)); return data; }); } /// /// 查询 /// /// /// [HttpPost, Route("Paged")] public PagedActionResult Paged([FromBody]KeywordPageFilter pageFilter) { return WitPaged(null, pageFilter); } /// /// 查询 /// /// /// [HttpPost, Route("OrderPaged")] public PagedActionResult OrderPaged([FromBody]KeywordPageFilter pageFilter) { return WitOrderPaged(null, pageFilter); } [HttpPost, Route("Update")] public JsonActionResult Update([FromBody]T_PF_COLUMN entity) { return SafeExecute(() => { this.UpdateEntity(entity); var formService = APT.Infrastructure.Api.ServiceLocator.Instance.GetService(); formService.CreateFormConfigVersion(PFFormConfigVersionEnum.Column, entity.ID.ToString()); return true; }); } /// /// 删除 /// /// /// [HttpGet, Route("Delete")] public JsonActionResult Delete(string id) { return SafeExecute(() => { var formService = APT.Infrastructure.Api.ServiceLocator.Instance.GetService(); formService.CreateFormConfigVersion(PFFormConfigVersionEnum.Column, id); List ids = new List(); ids.Add(new Guid(id)); this.DoDelete(ids); return true; }); } private void DoDelete(List ids) { this.DeleteEntity(t => ids.Contains(t.COLUMN_ID)); this.DeleteEntity(t => ids.Contains(t.COLUMN_ID)); this.DeleteEntity(t => ids.Contains(t.COLUMN_ID)); this.DeleteEntity(t => ids.Contains(t.COLUMN_ID)); this.DeleteEntity(t => ids.Contains(t.ID)); } /// /// 批量删除 /// /// /// [HttpGet, Route("BatchDelete")] public JsonActionResult BatchDelete(string ids) { return SafeExecute(() => { var formService = APT.Infrastructure.Api.ServiceLocator.Instance.GetService(); formService.CreateFormConfigVersion(PFFormConfigVersionEnum.Column, ids); var arrays = string.IsNullOrEmpty(ids) ? null : ids.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries) .Select(t => new Guid(t)).ToList(); if (arrays != null && arrays.Count > 0) this.DoDelete(arrays); return true; }); } /// /// 根据ID获得实体数据 /// /// /// [HttpPost, Route("Get")] public JsonActionResult Get([FromBody] KeywordFilter filter) { return WitEntity(null, filter); } [HttpPost, Route("ChangeNum")] public JsonActionResult ChangeNum([FromBody] KeywordFilter filter) { return SafeExecute(() => { if (string.IsNullOrEmpty(filter.Parameter1) || string.IsNullOrEmpty(filter.Parameter2)) this.ThrowError("020005"); string param1 = filter.Parameter1; string param2 = filter.Parameter2; var col1 = this.GetEntity(param1); var col2 = this.GetEntity(param2); var tmpNum = col2.NUM; col2.NUM = col1.NUM; col1.NUM = tmpNum; this.UnifiedCommit(() => { this.UpdateEntity(col1, "NUM"); this.UpdateEntity(col2, "NUM"); }); return true; }); } } }