143 lines
5.4 KiB
C#
143 lines
5.4 KiB
C#
using IRaCIS.Core.Application.Service.Reading.Dto;
|
|
using IRaCIS.Core.Domain.Share;
|
|
using Microsoft.AspNetCore.Http;
|
|
using MiniSoftware;
|
|
using System.Data;
|
|
|
|
namespace IRaCIS.Core.Application.Service
|
|
{
|
|
public interface IGeneralCalculateService
|
|
{
|
|
|
|
/// <summary>
|
|
/// 获取ReadingCalculateDto
|
|
/// </summary>
|
|
/// <param name="visitTaskId"></param>
|
|
/// <returns></returns>
|
|
Task<ReadingCalculateDto> GetReadingCalculateDto(Guid visitTaskId);
|
|
|
|
/// <summary>
|
|
/// 获取阅片报告任务List
|
|
/// </summary>
|
|
/// <param name="visitTaskId"></param>
|
|
/// <returns></returns>
|
|
Task<List<VisitTaskInfo>> GetReadingReportTaskList(Guid visitTaskId);
|
|
|
|
/// <summary>
|
|
/// 添加转化任务病灶信息
|
|
/// </summary>
|
|
/// <param name="visitTaskId"></param>
|
|
/// <param name="beforeConvertedTaskId"></param>
|
|
/// <returns></returns>
|
|
Task AddConvertedTaskFocus(Guid visitTaskId, Guid beforeConvertedTaskId);
|
|
|
|
/// <summary>
|
|
/// 添加计算错误日志
|
|
/// </summary>
|
|
/// <param name="inDto"></param>
|
|
/// <param name="lesionName"></param>
|
|
/// <param name="lesionType"></param>
|
|
/// <returns></returns>
|
|
Task LogRecord(ReadingCalculateDto inDto, string lesionName, LesionType lesionType);
|
|
|
|
/// <summary>
|
|
/// 从上传文件中获取Datatable
|
|
/// </summary>
|
|
/// <param name="file"></param>
|
|
/// <returns></returns>
|
|
Task<FileToDataTableDto> GetDataTableFromUpload(IFormFile file, string pathCode, Guid trialId);
|
|
|
|
/// <summary>
|
|
/// 获取图片
|
|
/// </summary>
|
|
/// <param name="url"></param>
|
|
/// <param name="savePath"></param>
|
|
/// <param name="width"></param>
|
|
/// <returns></returns>
|
|
Task<MiniWordPicture> GetWordPicture(string url, string savePath, int width);
|
|
|
|
/// <summary>
|
|
/// 获取图片
|
|
/// </summary>
|
|
/// <param name="url"></param>
|
|
/// <param name="savePath"></param>
|
|
/// <param name="width"></param>
|
|
/// <returns></returns>
|
|
Task<MiniWordPicture> GetWordPicture(string url, string savePath, int width, int height);
|
|
|
|
/// <summary>
|
|
/// 下载文件
|
|
/// </summary>
|
|
/// <param name="url"></param>
|
|
/// <param name="savePath"></param>
|
|
/// <returns></returns>
|
|
Task<string> FileDownSave(string url, string savePath);
|
|
|
|
/// <summary>
|
|
/// 获取并复制文件流
|
|
/// </summary>
|
|
/// <param name="outputFilePath"></param>
|
|
/// <returns></returns>
|
|
Stream ReadAndReturnStream(string outputFilePath);
|
|
|
|
/// <summary>
|
|
/// 最大宽高 保持比例
|
|
/// </summary>
|
|
/// <param name="url"></param>
|
|
/// <param name="savePath"></param>
|
|
/// <param name="width"></param>
|
|
/// <param name="height"></param>
|
|
/// <returns></returns>
|
|
Task<MiniWordPicture> GetWordPictureMaxWL(string url, string savePath, int width, int height);
|
|
|
|
/// <summary>
|
|
/// 空转为横线
|
|
/// </summary>
|
|
/// <param name="myDictionary"></param>
|
|
/// <returns></returns>
|
|
Dictionary<string, object> StringEmptyTurnedLine(Dictionary<string, object> myDictionary);
|
|
|
|
/// <summary>
|
|
/// 获取病灶的图片 rowinfoList要带question的信息
|
|
/// </summary>
|
|
/// <param name="rowinfoList"></param>
|
|
/// <param name="lesionType"></param>
|
|
/// <param name="downLoadGuid"></param>
|
|
/// <returns></returns>
|
|
Task<List<Dictionary<string, object>>> GetLesionPic(List<ReadingTableAnswerRowInfo> rowinfoList, LesionType lesionType, Guid downLoadGuid);
|
|
|
|
/// <summary>
|
|
/// 获取任务问题答案
|
|
/// </summary>
|
|
/// <param name="answerList">问题答案</param>
|
|
/// <param name="dictionList">字典数据</param>
|
|
/// <param name="unitDictionary">单位字典</param>
|
|
/// <param name="taskId">任务Id</param>
|
|
/// <param name="questionType">任务类型</param>
|
|
/// <returns></returns>
|
|
string GetTaskanswer(List<ReadingTaskQuestionAnswer>? answerList, List<Dictionary>? dictionList, List<Dictionary>? unitDictionary, Guid taskId, QuestionType questionType);
|
|
|
|
/// <summary>
|
|
/// 获取任务表格问题答案
|
|
/// </summary>
|
|
/// <param name="tableAnswerList">表格答案</param>
|
|
/// <param name="dictionList">字典</param>
|
|
/// <param name="unitDictionary">单位字典</param>
|
|
/// <param name="taskId">任务Id</param>
|
|
/// <param name="lesionType">病灶类型</param>
|
|
/// <param name="questionMark">问题标识</param>
|
|
/// <param name="rowIndex">索引</param>
|
|
/// <returns></returns>
|
|
string GetTaskTableAnswer(List<ReadingTableQuestionAnswer>? tableAnswerList, List<Dictionary>? dictionList, List<Dictionary>? unitDictionary, Guid taskId, LesionType lesionType, QuestionMark questionMark, decimal rowIndex, bool AutoUnit = true);
|
|
|
|
/// <summary>
|
|
/// 获取阅片报告
|
|
/// </summary>
|
|
/// <param name="visitTaskInfo"></param>
|
|
/// <returns></returns>
|
|
Task<string> GetReportExportNo(VisitTask visitTaskInfo);
|
|
|
|
void SetPropertyDynamically(object targetObj, string targetPropName, object sourceObj, string prefix);
|
|
}
|
|
}
|