LFlow/LFlow.VersionManagement/Service/VersionManagementService.cs

61 lines
1.7 KiB
C#
Raw Normal View History

using LFlow.Base.Interfaces;
using LFlow.Base.Utils;
using LFlow.VersionManagement.Model;
using Mapster;
using Microsoft.AspNetCore.Mvc;
namespace LFlow.VersionManagement.Service;
/// <summary>
/// 版本管理服务
/// </summary>
public class VersionManagementService : BaseController, IVersionManagementService
{
private readonly IRepo<VersionModel, string> _repo;
public VersionManagementService(IRepo<VersionModel, string> repo)
{
_repo = repo;
}
[HttpDelete]
public int DeleteById(string id)
{
return _repo.DeleteById(id);
}
[HttpGet]
public PagedApiResult<List<VersionDto>> GetAll(int pageIndex, int pageSize)
{
var total = 0;
var result = _repo.GetAll(pageIndex, pageSize, ref total);
return new PagedApiResult<List<VersionDto>>
{
Data = Mapper.Map<List<VersionDto>>(result),
PageIndex = pageIndex,
PageSize = pageSize,
Message = "获取成功",
Success = true,
TotalCount = total
};
}
[HttpGet]
public VersionDto GetById(string id)
{
return _repo.Get(id).Adapt<VersionDto>();
}
[HttpPost]
public VersionDto Save(VersionDto entity, bool isUpdate)
{
return _repo.SaveOrUpdate(entity.Adapt<VersionModel>(), isUpdate).Adapt<VersionDto>();
}
[HttpPost]
public List<VersionDto> Search(VersionDto whereObj)
{
return _repo.Search(whereObj.Adapt<VersionModel>()).Adapt<List<VersionDto>>();
}
[HttpPost]
public List<string> SearchAllId(VersionDto whereObj)
{
return _repo.WhereSearchId(whereObj.Adapt<VersionModel>());
}
}