73 lines
2.5 KiB
Plaintext
73 lines
2.5 KiB
Plaintext
|
|
//--------------------------------------------------------------------
|
|
// 此代码由liquid模板自动生成 byzhouhang 20240909
|
|
// 生成时间 {{DateTimeNow}}
|
|
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
|
|
//--------------------------------------------------------------------
|
|
using IRaCIS.Core.Domain.Models;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using IRaCIS.Core.Application.Interfaces;
|
|
using IRaCIS.Core.Application.ViewModel;
|
|
using IRaCIS.Core.Infrastructure.Extention;
|
|
using System.Threading.Tasks;
|
|
using IRaCIS.Core.Infra.EFCore;
|
|
namespace IRaCIS.Core.Application.Service
|
|
{
|
|
|
|
[ ApiExplorerSettings(GroupName = "Test")]
|
|
public class {{TableName}}Service(IRepository<{{TableName}}> {{LowercaseRepositoryName}}): BaseService, I{{TableName}}Service
|
|
{
|
|
|
|
{% if IsPaged %}
|
|
[HttpPost]
|
|
public async Task<PageOutput<{{TableNameView}}>> Get{{TableName}}List({{TableNameQuery}} inQuery)
|
|
{
|
|
|
|
var {{LowercaseQueryableName}} ={{LowercaseRepositoryName}}
|
|
.ProjectTo<{{TableNameView}}>(_mapper.ConfigurationProvider);
|
|
|
|
var pageList= await {{LowercaseQueryableName}}.ToPagedListAsync(inQuery);
|
|
|
|
return pageList;
|
|
}
|
|
{% else %}
|
|
[HttpPost]
|
|
public async Task<List<{{TableNameView}}>> Get{{TableName}}List({{TableNameQuery}} inQuery)
|
|
{
|
|
|
|
|
|
var {{LowercaseQueryableName}} ={{LowercaseRepositoryName}}
|
|
.ProjectTo<{{TableNameView}}>(_mapper.ConfigurationProvider);
|
|
|
|
return await {{LowercaseQueryableName}}.ToListAsync();
|
|
}
|
|
{% endif %}
|
|
|
|
|
|
public async Task<IResponseOutput> AddOrUpdate{{TableName}}({{TableName}}AddOrEdit addOrEdit{{TableName}})
|
|
{
|
|
// 在此处拷贝automapper 映射
|
|
|
|
CreateMap<{{TableName}}, {{TableNameView}}>();
|
|
CreateMap<{{TableName}},{{TableNameAddOrEdit}}>().ReverseMap();
|
|
|
|
|
|
var entity = await {{LowercaseRepositoryName}}.InsertOrUpdateAsync(addOrEdit{{TableName}}, true);
|
|
|
|
return ResponseOutput.Ok(entity.Id.ToString());
|
|
|
|
}
|
|
|
|
|
|
[HttpDelete("{{ '{' }}{{LowercaseTableNameId}}:guid{{ '}' }}")]
|
|
public async Task<IResponseOutput> Delete{{TableName}}(Guid {{LowercaseTableNameId}})
|
|
{
|
|
var success = await _<#=char.ToLower(tableName[0]) + tableName.Substring(1)#>Repository.DeleteFromQueryAsync(t => t.Id == {{LowercaseTableNameId}},true);
|
|
return ResponseOutput.Ok();
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|