修改一版
parent
ccf0df5cb5
commit
2150f1c66c
|
@ -7,49 +7,89 @@ using System;
|
||||||
using IRaCIS.Core.Domain.Share;
|
using IRaCIS.Core.Domain.Share;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
namespace IRaCIS.Core.Application.ViewModel
|
namespace IRaCIS.Core.Application.ViewModel
|
||||||
{
|
{
|
||||||
/// <summary> OrganInfoView 列表视图模型 </summary>
|
|
||||||
public class OrganInfoView
|
|
||||||
{
|
|
||||||
public Guid Id { get; set; }
|
|
||||||
public string Part { get; set; }
|
|
||||||
public string TULOC { get; set; }
|
|
||||||
public string TULAT { get; set; }
|
|
||||||
public string TypeName { get; set; }
|
|
||||||
public DateTime CreateTime { get; set; }
|
|
||||||
public Guid CreateUserId { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
///<summary>OrganInfoQuery 列表查询参数模型</summary>
|
|
||||||
public class OrganInfoQuery
|
|
||||||
{
|
|
||||||
///<summary> 部位</summary>
|
|
||||||
public string Part { get; set; }
|
|
||||||
|
|
||||||
///<summary> TULOC</summary>
|
public class BatchAddTrialOrganInDto
|
||||||
public string TULOC { get; set; }
|
{
|
||||||
|
public Guid TrialId { get; set; }
|
||||||
|
|
||||||
///<summary> 位置</summary>
|
public string TypeName { get; set; }
|
||||||
public string TULAT { get; set; }
|
|
||||||
|
|
||||||
///<summary> 类型名称</summary>
|
public List<Guid> OrganIds { get; set; }
|
||||||
public string TypeName { get; set; }
|
}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
///<summary> OrganInfoAddOrEdit 列表查询参数模型</summary>
|
/// <summary> OrganInfoView 列表视图模型 </summary>
|
||||||
public class OrganInfoAddOrEdit
|
public class OrganInfoView
|
||||||
{
|
{
|
||||||
public Guid? Id { get; set; }
|
public Guid Id { get; set; }
|
||||||
public string Part { get; set; }
|
public string Part { get; set; }
|
||||||
public string TULOC { get; set; }
|
public string TULOC { get; set; }
|
||||||
public string TULAT { get; set; }
|
public string TULAT { get; set; }
|
||||||
public string TypeName { get; set; }
|
public string TypeName { get; set; }
|
||||||
public DateTime CreateTime { get; set; }
|
public DateTime CreateTime { get; set; }
|
||||||
public Guid CreateUserId { get; set; }
|
|
||||||
}
|
/// <summary>
|
||||||
|
/// 备注
|
||||||
|
/// </summary>
|
||||||
|
public string Remark { get; set; }
|
||||||
|
public Guid CreateUserId { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public class GetTrialOrganListInDto
|
||||||
|
{
|
||||||
|
public Guid TrialId { get; set; }
|
||||||
|
public string TypeName { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class GetTrialCheckOrganList : GetTrialOrganListOutDto
|
||||||
|
{
|
||||||
|
public bool IsCheckd { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class GetTrialOrganListOutDto
|
||||||
|
{
|
||||||
|
public Guid Id { get; set; }
|
||||||
|
public string Part { get; set; }
|
||||||
|
public string TULOC { get; set; }
|
||||||
|
public string TULAT { get; set; }
|
||||||
|
public string TypeName { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 备注
|
||||||
|
/// </summary>
|
||||||
|
public string Remark { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
///<summary>OrganInfoQuery 列表查询参数模型</summary>
|
||||||
|
public class OrganInfoQuery
|
||||||
|
{
|
||||||
|
///<summary> 类型名称</summary>
|
||||||
|
public string TypeName { get; set; }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
///<summary> OrganInfoAddOrEdit 列表查询参数模型</summary>
|
||||||
|
public class OrganInfoAddOrEdit
|
||||||
|
{
|
||||||
|
public Guid? Id { get; set; }
|
||||||
|
public string Part { get; set; }
|
||||||
|
public string TULOC { get; set; }
|
||||||
|
public string TULAT { get; set; }
|
||||||
|
public string TypeName { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 备注
|
||||||
|
/// </summary>
|
||||||
|
public string Remark { get; set; }
|
||||||
|
|
||||||
|
public DateTime CreateTime { get; set; }
|
||||||
|
public Guid CreateUserId { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -9,50 +9,160 @@ using Microsoft.AspNetCore.Mvc;
|
||||||
using IRaCIS.Core.Application.Interfaces;
|
using IRaCIS.Core.Application.Interfaces;
|
||||||
using IRaCIS.Core.Application.ViewModel;
|
using IRaCIS.Core.Application.ViewModel;
|
||||||
namespace IRaCIS.Core.Application.Service
|
namespace IRaCIS.Core.Application.Service
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// OrganInfoService
|
/// 器官服务层
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[ ApiExplorerSettings(GroupName = "Test")]
|
[ApiExplorerSettings(GroupName = "Reading")]
|
||||||
public class OrganInfoService: BaseService, IOrganInfoService
|
public class OrganInfoService : BaseService, IOrganInfoService
|
||||||
{
|
{
|
||||||
|
|
||||||
private readonly IRepository<OrganInfo> _organInfoRepository;
|
private readonly IRepository<OrganInfo> _organInfoRepository;
|
||||||
|
private readonly IRepository<OrganTrialInfo> _organTrialInfoRepository;
|
||||||
|
|
||||||
public OrganInfoService(IRepository<OrganInfo> organInfoRepository)
|
public OrganInfoService(
|
||||||
{
|
IRepository<OrganInfo> organInfoRepository,
|
||||||
_organInfoRepository = organInfoRepository;
|
IRepository<OrganTrialInfo> organTrialInfoRepository
|
||||||
}
|
)
|
||||||
|
{
|
||||||
|
_organInfoRepository = organInfoRepository;
|
||||||
|
this._organTrialInfoRepository = organTrialInfoRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public async Task<List<OrganInfoView>> GetOrganInfoList(OrganInfoQuery inQuery)
|
|
||||||
{
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
var organInfoQueryable = _organInfoRepository
|
/// 获取系统器官信息
|
||||||
.ProjectTo<OrganInfoView>(_mapper.ConfigurationProvider);
|
/// </summary>
|
||||||
|
/// <param name="inQuery"></param>
|
||||||
return await organInfoQueryable.ToListAsync();
|
/// <returns></returns>
|
||||||
}
|
[HttpPost]
|
||||||
|
public async Task<List<OrganInfoView>> GetOrganInfoList(OrganInfoQuery inQuery)
|
||||||
|
{
|
||||||
|
var organInfoQueryable = _organInfoRepository
|
||||||
|
.Where(x=>x.TypeName== inQuery.TypeName)
|
||||||
|
.ProjectTo<OrganInfoView>(_mapper.ConfigurationProvider);
|
||||||
|
return await organInfoQueryable.ToListAsync();
|
||||||
|
}
|
||||||
|
|
||||||
public async Task<IResponseOutput> AddOrUpdateOrganInfo(OrganInfoAddOrEdit addOrEditOrganInfo)
|
|
||||||
{
|
|
||||||
|
|
||||||
var entity = await _organInfoRepository.InsertOrUpdateAsync(addOrEditOrganInfo, true);
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 新增或修改系统器官数据
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="addOrEditOrganInfo"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpPost]
|
||||||
|
public async Task<IResponseOutput> AddOrUpdateOrganInfo(OrganInfoAddOrEdit addOrEditOrganInfo)
|
||||||
|
{
|
||||||
|
var entity = await _organInfoRepository.InsertOrUpdateAsync(addOrEditOrganInfo, true);
|
||||||
return ResponseOutput.Ok(entity.Id.ToString());
|
return ResponseOutput.Ok(entity.Id.ToString());
|
||||||
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
[HttpDelete("{organInfoId:guid}")]
|
/// <summary>
|
||||||
public async Task<IResponseOutput> DeleteOrganInfo(Guid organInfoId)
|
/// 删除系统器官
|
||||||
{
|
/// </summary>
|
||||||
var success = await _organInfoRepository.DeleteFromQueryAsync(t => t.Id == organInfoId,true);
|
/// <param name="Id"></param>
|
||||||
return ResponseOutput.Ok();
|
/// <returns></returns>
|
||||||
}
|
[HttpDelete("{Id:guid}")]
|
||||||
|
public async Task<IResponseOutput> DeleteOrganInfo(Guid Id)
|
||||||
|
{
|
||||||
|
var success = await _organInfoRepository.DeleteFromQueryAsync(t => t.Id == Id, true);
|
||||||
|
return ResponseOutput.Ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 批量添加项目器官
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task<IResponseOutput> BatchAddTrialOrgan(BatchAddTrialOrganInDto inDto)
|
||||||
|
{
|
||||||
|
await _organTrialInfoRepository.BatchDeleteNoTrackingAsync(t => t.TrialId==inDto.TrialId&&t.TypeName==inDto.TypeName);
|
||||||
|
|
||||||
|
List<OrganTrialInfo> organTrialInfos = inDto.OrganIds.Select(x => new OrganTrialInfo()
|
||||||
|
{
|
||||||
|
OrganInfoId=x,
|
||||||
|
TrialId=inDto.TrialId,
|
||||||
|
TypeName=inDto.TypeName,
|
||||||
|
}).ToList();
|
||||||
|
|
||||||
|
|
||||||
|
await _organTrialInfoRepository.AddRangeAsync(organTrialInfos);
|
||||||
|
|
||||||
|
await _organInfoRepository.SaveChangesAsync();
|
||||||
|
|
||||||
|
return ResponseOutput.Ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 删除系统器官
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="Id"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpDelete("{Id:guid}")]
|
||||||
|
public async Task<IResponseOutput> DeleteTrialOrganInfo(Guid Id)
|
||||||
|
{
|
||||||
|
var success = await _organTrialInfoRepository.DeleteFromQueryAsync(t => t.Id == Id, true);
|
||||||
|
return ResponseOutput.Ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取项目器官信息
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpPost]
|
||||||
|
public async Task<List<GetTrialOrganListOutDto>> GetTrialOrganList(GetTrialOrganListInDto inDto)
|
||||||
|
{
|
||||||
|
var organInfoQueryable = from data in _organInfoRepository.Where(x => x.TypeName == inDto.TypeName)
|
||||||
|
join trialData in _organTrialInfoRepository.Where(x => x.TrialId == inDto.TrialId && x.TypeName == inDto.TypeName)
|
||||||
|
on data.Id equals trialData.OrganInfoId
|
||||||
|
select new GetTrialOrganListOutDto()
|
||||||
|
{
|
||||||
|
Id = trialData.Id,
|
||||||
|
Part = data.Part,
|
||||||
|
TULAT = data.TULAT,
|
||||||
|
TULOC = data.TULOC,
|
||||||
|
TypeName = data.TypeName,
|
||||||
|
Remark= data.Remark,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
return await organInfoQueryable.ToListAsync();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取项目勾选器官信息
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpPost]
|
||||||
|
public async Task<List<GetTrialCheckOrganList>> GetTrialCheckOrganList(GetTrialOrganListInDto inDto)
|
||||||
|
{
|
||||||
|
var organInfoQueryable = from data in _organInfoRepository.Where(x => x.TypeName == inDto.TypeName)
|
||||||
|
join trialData in _organTrialInfoRepository.Where(x => x.TrialId == inDto.TrialId && x.TypeName == inDto.TypeName)
|
||||||
|
on data.Id equals trialData.OrganInfoId into jtemp
|
||||||
|
from leftjoin in jtemp.DefaultIfEmpty()
|
||||||
|
select new GetTrialCheckOrganList()
|
||||||
|
{
|
||||||
|
Id = data.Id,
|
||||||
|
Part = data.Part,
|
||||||
|
TULAT = data.TULAT,
|
||||||
|
TULOC = data.TULOC,
|
||||||
|
TypeName = data.TypeName,
|
||||||
|
IsCheckd= leftjoin!=null,
|
||||||
|
Remark = data.Remark,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
return await organInfoQueryable.ToListAsync();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,10 +31,15 @@ namespace IRaCIS.Core.Domain.Models
|
||||||
/// 位置
|
/// 位置
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string TULAT { get; set; }
|
public string TULAT { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 类型名称
|
/// 备注
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
public string Remark { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 类型名称
|
||||||
|
/// </summary>
|
||||||
public string TypeName { get; set; }
|
public string TypeName { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -0,0 +1,47 @@
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------
|
||||||
|
// 此代码由T4模板自动生成 byzhouhang 20210918
|
||||||
|
// 生成时间 2022-08-12 14:29:17
|
||||||
|
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
|
||||||
|
using System;
|
||||||
|
using IRaCIS.Core.Domain.Share;
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
|
namespace IRaCIS.Core.Domain.Models
|
||||||
|
{
|
||||||
|
///<summary>
|
||||||
|
///OrganTrialInfo
|
||||||
|
///</summary>
|
||||||
|
[Table("OrganTrialInfo")]
|
||||||
|
public class OrganTrialInfo : Entity, IAuditAdd
|
||||||
|
{
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 器官Id
|
||||||
|
/// </summary>
|
||||||
|
public Guid OrganInfoId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 项目Id
|
||||||
|
/// </summary>
|
||||||
|
public Guid TrialId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 类型名称
|
||||||
|
/// </summary>
|
||||||
|
public string TypeName { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// CreateTime
|
||||||
|
/// </summary>
|
||||||
|
public DateTime CreateTime { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// CreateUserId
|
||||||
|
/// </summary>
|
||||||
|
public Guid CreateUserId { get; set; }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -203,6 +203,8 @@ namespace IRaCIS.Core.Infra.EFCore
|
||||||
|
|
||||||
#region Reading
|
#region Reading
|
||||||
public virtual DbSet<OrganInfo> OrganInfo { get; set; }
|
public virtual DbSet<OrganInfo> OrganInfo { get; set; }
|
||||||
|
|
||||||
|
public virtual DbSet<OrganTrialInfo> OrganTrialInfo { get; set; }
|
||||||
public virtual DbSet<ReadingTableQuestionSystem> ReadingTableQuestionSystem { get; set; }
|
public virtual DbSet<ReadingTableQuestionSystem> ReadingTableQuestionSystem { get; set; }
|
||||||
public virtual DbSet<ReadingPeriodSet> ReadingPeriodSet { get; set; }
|
public virtual DbSet<ReadingPeriodSet> ReadingPeriodSet { get; set; }
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
public static readonly string ConnectionString = "Server=123.56.94.154,1433\\MSSQLSERVER;Database=IRaCIS_New_Tet;User ID=sa;Password=dev123456DEV;TrustServerCertificate=true";
|
public static readonly string ConnectionString = "Server=123.56.94.154,1433\\MSSQLSERVER;Database=IRaCIS_New_Tet;User ID=sa;Password=dev123456DEV;TrustServerCertificate=true";
|
||||||
public static readonly string DbDatabase = "IRaCIS_New_Tet";
|
public static readonly string DbDatabase = "IRaCIS_New_Tet";
|
||||||
//表名称用字符串,拼接
|
//表名称用字符串,拼接
|
||||||
public static readonly string TableName = "OrganInfo";
|
public static readonly string TableName = "OrganTrialInfo";
|
||||||
//具体文件里面 例如service 可以配置是否分页
|
//具体文件里面 例如service 可以配置是否分页
|
||||||
}
|
}
|
||||||
#>
|
#>
|
||||||
|
|
Loading…
Reference in New Issue