using Furion.RemoteRequest;
|
using HStation.Dto.Assets;
|
|
namespace HStation.Application
|
{
|
/// <summary>
|
/// AssetsPumpMain
|
/// </summary>
|
[Route("Assets/AssetsPumpMain")]
|
[ApiDescriptionSettings("Assets", Name = "AssetsPumpMain", Order = 700000)]
|
public class AssetsPumpMain_Controller : IDynamicApiController
|
{
|
private readonly HStation.Service.AssetsPumpMain _service = new();
|
|
#region Query
|
|
/// <summary>
|
/// 获取所有
|
/// </summary>
|
[Route("GetAll@V1.0")]
|
[HttpGet]
|
public List<AssetsPumpMainDto> GetAll()
|
{
|
var list = _service.GetAll();
|
var vm_list = list?.Select(x => new AssetsPumpMainDto(x)).ToList();
|
return vm_list;
|
}
|
|
/// <summary>
|
/// 通过 ID 获取
|
/// </summary>
|
[Route("GetByID@V1.0")]
|
[HttpGet]
|
public AssetsPumpMainDto GetByID([FromQuery][Required] IDInput input)
|
{
|
var model = _service.GetByID(input.ID);
|
return model == null ? null : new AssetsPumpMainDto(model);
|
}
|
|
/// <summary>
|
/// 通过 Ids 获取
|
/// </summary>
|
[Route("GetByIds@V1.0")]
|
[HttpGet]
|
public List<AssetsPumpMainDto> GetByIds([FromQuery][Required] IdsInput input)
|
{
|
var ids = LongListHelper.ToList(input.Ids);
|
var list = _service.GetByIds(ids);
|
var vm_list = list?.Select(x => new AssetsPumpMainDto(x)).ToList();
|
return vm_list;
|
}
|
|
/// <summary>
|
/// 通过 系列ID 获取
|
/// </summary>
|
[Route("GetByPumpSeriesID@V1.0")]
|
[HttpGet]
|
public List<AssetsPumpMainDto> GetByPumpSeriesID(long ID)
|
{
|
var list = _service.GetByPumpSeriesID(ID);
|
var vm_list = list?.Select(x => new AssetsPumpMainDto(x)).ToList();
|
return vm_list;
|
}
|
|
#endregion Query
|
|
#region Insert
|
|
/// <summary>
|
/// 插入一条
|
/// </summary>
|
[Route("Insert@V1.0")]
|
[HttpPost]
|
public long Insert(AddAssetsPumpMainInput input)
|
{
|
var model = input.Adapt<AddAssetsPumpMainInput, Model.AssetsPumpMain>();
|
model.SortCode = _service.GetMaxSortCode() + 1;
|
var id = _service.Insert(model);
|
return id;
|
}
|
|
/// <summary>
|
/// 插入拓展(插入型号和映射表)
|
/// </summary>
|
[Route("InsertEx@V1.0")]
|
[HttpPost]
|
public long InsertEx(AddAssetsPumpMainInput input, AddAssetsPumpGroupAndMainMapInput mainmap)
|
{
|
var mainmodel = input.Adapt<AddAssetsPumpMainInput, Model.AssetsPumpMain>();
|
var mainmapmodel = mainmap.Adapt<AddAssetsPumpGroupAndMainMapInput, Model.AssetsPumpGroupAndMainMapping>();
|
mainmodel.SortCode = _service.GetMaxSortCode() + 1;
|
var id = _service.InsertEx(mainmodel, mainmapmodel);
|
return id;
|
}
|
|
/// <summary>
|
/// 批量插入
|
/// </summary>
|
[Route("Inserts@V1.0")]
|
[HttpPost]
|
public bool Inserts(List<AddAssetsPumpMainInput> inputList)
|
{
|
var list = inputList.Select(x => x.Adapt<AddAssetsPumpMainInput, Model.AssetsPumpMain>()).ToList();
|
list.ForEach(x =>
|
{
|
x.SortCode = _service.GetMaxSortCode() + 1 + list.IndexOf(x);
|
});
|
var bol = _service.Inserts(list);
|
return bol;
|
}
|
|
#endregion Insert
|
|
#region Update
|
|
/// <summary>
|
/// 更新一条
|
/// </summary>
|
[Route("Update@V1.0")]
|
[HttpPut]
|
public async Task<bool> Update([Required] UpdateAssetsPumpMainInput input)
|
{
|
return await Task.Factory.StartNew(() =>
|
{
|
var model = _service.GetByID(input.ID);
|
if (model == null)
|
{
|
throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.D001, $"ID:{input.ID} 数据不存在");
|
}
|
|
var rhs = new Model.AssetsPumpMain(model);
|
input.Adapt(rhs);
|
var bol = _service.Update(rhs);
|
return bol;
|
});
|
}
|
|
/// <summary>
|
/// 批量更新
|
/// </summary>
|
[Route("Updates@V1.0")]
|
[HttpPut]
|
public bool Updates([Required] List<UpdateAssetsPumpMainInput> inputList)
|
{
|
if (inputList == null || inputList.Count < 1)
|
{
|
return false;
|
}
|
var list = inputList.Select(x => x.Adapt<UpdateAssetsPumpMainInput, Model.AssetsPumpMain>()).ToList();
|
var bol = _service.Updates(list);
|
return bol;
|
}
|
|
/// <summary>
|
/// 更新排序码
|
/// </summary>
|
[Route("UpdateSortCode@V1.0")]
|
[HttpPut]
|
public bool UpdateSortCode([Required] UpdateSortCodeInput input)
|
{
|
var bol = _service.UpdateSortCode(input.ID, input.SortCode);
|
return bol;
|
}
|
|
/// <summary>
|
/// 更新排序
|
/// </summary>
|
[Route("UpdateSorter@V1.0")]
|
[HttpPut]
|
public bool UpdateSorter([Required] List<UpdateSortCodeInput> inputList)
|
{
|
if (inputList == null || inputList.Count < 1)
|
{
|
return false;
|
}
|
var list = inputList.Select(x => x.Adapt<Yw.Model.Sorter>()).ToList();
|
var bol = _service.UpdateSorter(list);
|
return bol;
|
}
|
|
/// <summary>
|
/// 更新 Paras
|
/// </summary>
|
[Route("UpdateParas@V1.0")]
|
[HttpPut]
|
public bool UpdateParas([Required] UpdateParasInput input)
|
{
|
var bol = _service.UpdateParas(input.ID, input.Paras);
|
return bol;
|
}
|
|
/// <summary>
|
/// 更新 Flags
|
/// </summary>
|
[Route("UpdateFlags@V1.0")]
|
[HttpPut]
|
public bool UpdateFlags([Required] UpdateFlagsInput input)
|
{
|
var bol = _service.UpdateFlags(input.ID, input.Flags);
|
return bol;
|
}
|
|
/// <summary>
|
/// 更新TagName
|
/// </summary>
|
[Route("UpdateTagName@V1.0")]
|
[HttpPut]
|
public bool UpdateTagName([Required] UpdateTagNameInput input)
|
{
|
if (!string.IsNullOrEmpty(input.TagName))
|
{
|
if (_service.IsExistTagNameExceptID(input.TagName, input.ID))
|
{
|
throw Oops.Oh(InternalErrorCodes.V001, $"TagName:{input.TagName}", "标记名称已存在");
|
}
|
}
|
var bol = _service.UpdateTagName(input.ID, input.TagName);
|
return bol;
|
}
|
|
#endregion Update
|
|
#region Delete
|
|
/// <summary>
|
/// 通过 ID 删除
|
/// </summary>
|
[Route("DeleteByID@V1.0")]
|
[HttpDelete]
|
public bool DeleteByID([FromQuery][Required] IDInput input)
|
{
|
var bol = _service.DeleteByID(input.ID, out string msg);
|
if (!bol)
|
{
|
throw YOops.Oh(eResultCode.Alert, InternalErrorCodes.D999, msg);
|
}
|
return true;
|
}
|
|
/// <summary>
|
/// 通过系列 ID 删除 自身及map映射表中ID
|
/// </summary>
|
[Route("DeleteMapByMainID@V1.0")]
|
[HttpDelete]
|
public bool DeleteMapByMainID(long ID)
|
{
|
var bol = _service.DeleteByMainIDEx(ID);
|
if (!bol)
|
{
|
return false;
|
}
|
return true;
|
}
|
|
#endregion Delete
|
}
|
}
|