This commit is contained in:
he
2023-06-01 14:56:02 +08:00
12 changed files with 236 additions and 7 deletions
@@ -0,0 +1,55 @@
//--------------------------------------------------------------------
// 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2023-06-01 13:38:20
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//--------------------------------------------------------------------
using System;
using IRaCIS.Core.Domain.Share;
using System.Collections.Generic;
namespace IRaCIS.Core.Application.ViewModel
{
/// <summary> InternationalizationView 列表视图模型 </summary>
public class InternationalizationView
{
public Guid Id { get; set; }
public int ShowOrder { get; set; }
public Guid CreateUserId { get; set; }
public DateTime CreateTime { get; set; }
public DateTime UpdateTime { get; set; }
public Guid UpdateUserId { get; set; }
public int State { get; set; }
public string FolderPath { get; set; }
public string Code { get; set; }
public string Value { get; set; }
public string ValueCN { get; set; }
}
///<summary>InternationalizationQuery 列表查询参数模型</summary>
public class InternationalizationQuery:PageInput
{
public string? FolderPath { get; set; }
public string? Code { get; set; }
public string? Value { get; set; }
public string? ValueCN { get; set; }
}
///<summary> InternationalizationAddOrEdit 列表查询参数模型</summary>
public class InternationalizationAddOrEdit
{
public Guid? Id { get; set; }
public int State { get; set; }
public string FolderPath { get; set; }
public string Code { get; set; }
public string Value { get; set; }
public string ValueCN { get; set; }
public int InternationalizationType { get; set; }
}
}
@@ -0,0 +1,24 @@
//--------------------------------------------------------------------
// 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2023-06-01 13:38:06
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//--------------------------------------------------------------------
using IRaCIS.Core.Application.ViewModel;
namespace IRaCIS.Core.Application.Interfaces
{
/// <summary>
/// IInternationalizationService
/// </summary>
public interface IInternationalizationService
{
Task<PageOutput<InternationalizationView>> GetInternationalizationList(InternationalizationQuery inQuery);
Task<IResponseOutput> AddOrUpdateInternationalization(InternationalizationAddOrEdit addOrEditInternationalization);
Task<IResponseOutput> DeleteInternationalization(Guid internationalizationId);
}
}
@@ -0,0 +1,71 @@
//--------------------------------------------------------------------
// 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2023-06-01 13:42:25
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//--------------------------------------------------------------------
using IRaCIS.Core.Domain.Models;
using Microsoft.AspNetCore.Mvc;
using IRaCIS.Core.Application.Interfaces;
using IRaCIS.Core.Application.ViewModel;
namespace IRaCIS.Core.Application.Service
{
/// <summary>
/// InternationalizationService
/// </summary>
[ApiExplorerSettings(GroupName = "Common")]
public class InternationalizationService : BaseService, IInternationalizationService
{
private readonly IRepository<Internationalization> _internationalizationRepository;
public InternationalizationService(IRepository<Internationalization> internationalizationRepository)
{
_internationalizationRepository = internationalizationRepository;
}
public async Task<PageOutput<InternationalizationView>> GetInternationalizationList(InternationalizationQuery inQuery)
{
var internationalizationQueryable =_internationalizationRepository
.WhereIf(inQuery.FolderPath!=null,t=>t.FolderPath.Contains(inQuery.FolderPath))
.WhereIf(inQuery.Code != null, t => t.FolderPath.Contains(inQuery.Code))
.WhereIf(inQuery.Value != null, t => t.FolderPath.Contains(inQuery.Value))
.WhereIf(inQuery.ValueCN != null, t => t.FolderPath.Contains(inQuery.ValueCN))
.ProjectTo<InternationalizationView>(_mapper.ConfigurationProvider);
var pageList = await internationalizationQueryable
.ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, string.IsNullOrWhiteSpace(inQuery.SortField) ? "Id" : inQuery.SortField,
inQuery.Asc);
return pageList;
}
public async Task<IResponseOutput> AddOrUpdateInternationalization(InternationalizationAddOrEdit addOrEditInternationalization)
{
var verifyExp1 = new EntityVerifyExp<Internationalization>()
{
VerifyExp = t => t.Code == addOrEditInternationalization.Code && t.InternationalizationType == addOrEditInternationalization.InternationalizationType,
VerifyMsg = $"该类型已有{addOrEditInternationalization.Code}名称的国际化标识",
IsVerify = true
};
var entity = await _internationalizationRepository.InsertOrUpdateAsync(addOrEditInternationalization, true,verifyExp1);
return ResponseOutput.Ok(entity.Id.ToString());
}
[HttpDelete("{internationalizationId:guid}")]
public async Task<IResponseOutput> DeleteInternationalization(Guid internationalizationId)
{
var success = await _internationalizationRepository.DeleteFromQueryAsync(t => t.Id == internationalizationId, true);
return ResponseOutput.Ok();
}
}
}
@@ -54,7 +54,10 @@ namespace IRaCIS.Core.Application.Service
CreateMap<CommonDocument, CommonDocumentAddOrEdit>().ReverseMap();
CreateMap<Internationalization, InternationalizationView>();
CreateMap<Internationalization, InternationalizationAddOrEdit>().ReverseMap();
}
}
@@ -161,6 +161,10 @@ namespace IRaCIS.Application.Services
u.OptTime = opt.OptTime;
u.OptUserName = opt.OptUserName;
}
else
{
u.DoctorTrialState = param.IntoGroupSearchState == 1 ? (int)EnrollStatus.HasDownloadResume : (int)EnrollStatus.HasCommittedToCRO;
}
});
if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.SPM)