namespace Yw.Application
|
{
|
/// <summary>
|
/// HealthDeterioration
|
/// </summary>
|
[Route("Health/Deterioration")]
|
[ApiDescriptionSettings("Health", Name = "劣化程度", Order = 9700)]
|
public class HealthDeterioration_Controller : IDynamicApiController
|
{
|
private readonly Service.HealthDeterioration _service = new();
|
|
#region Query
|
|
/// <summary>
|
/// 获取所有
|
/// </summary>
|
[Route("GetAll@V1.0")]
|
[HttpGet]
|
public List<HealthDeteriorationDto> GetAll()
|
{
|
var list = _service.GetAll();
|
var vm_list = list?.Select(x => new HealthDeteriorationDto(x)).ToList();
|
return vm_list;
|
}
|
|
/// <summary>
|
/// 通过 ID 获取
|
/// </summary>
|
[Route("GetByID@V1.0")]
|
[HttpGet]
|
public HealthDeteriorationDto GetByID([FromQuery][Required] IDInput input)
|
{
|
var model = _service.GetByID(input.ID);
|
return model == null ? null : new HealthDeteriorationDto(model);
|
}
|
|
/// <summary>
|
/// 通过 Ids 获取
|
/// </summary>
|
[Route("GetByIds@V1.0")]
|
[HttpGet]
|
public List<HealthDeteriorationDto> GetByIds([FromQuery][Required] IdsInput input)
|
{
|
var ids = LongListHelper.ToList(input.Ids);
|
var list = _service.GetByIds(ids);
|
var vm_list = list?.Select(x => new HealthDeteriorationDto(x)).ToList();
|
return vm_list;
|
}
|
|
|
#endregion
|
|
|
#region Update
|
|
/// <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> input)
|
{
|
var list = input.Select(x => x.Adapt<UpdateSortCodeInput, Model.Sorter>()).ToList();
|
var bol = _service.UpdateSorter(list);
|
return bol;
|
}
|
|
|
#endregion
|
|
|
#region Set
|
|
/// <summary>
|
/// 设置 ★
|
/// </summary>
|
[Route("Set@V1.0")]
|
[HttpPost]
|
public bool Set([Required] List<SetHealthDeteriorationInput> input)
|
{
|
var DeductionList = input.Select(x => x.Deduction).Distinct().ToList();
|
if (DeductionList.Count != input.Count)
|
{
|
throw Oops.Oh(ErrorCodes.V001, "Deduction", "扣分重复");
|
}
|
var list = input.Select(x =>
|
{
|
var model = x.Adapt<SetHealthDeteriorationInput, Model.HealthDeterioration>();
|
model.SortCode = input.IndexOf(x) + 1;
|
return model;
|
}).ToList();
|
var bol = _service.Set(list);
|
return bol;
|
}
|
|
#endregion
|
|
}
|
}
|