public async Task <Equipment> ById(int id) { using (var conn = new SqlConnection(AppSettings.ConnectionString)) { var sql = new TaskSqls(); var result = await conn.QueryFirstOrDefaultAsync <Equipment>(_sql.ById(id)); return(result); } }
/// <summary> /// Получить все таски /// </summary> public async Task <List <TrainTask> > GetAllTrainTask() { using (var conn = new SqlConnection(AppSettings.ConnectionString)) { var sql = new TaskSqls(); var tasks = await conn.QueryAsync <TrainTask>(sql.GetAllTrainTask); return(tasks.ToList()); } }
public async Task <TrainTask> GetTrainTaskWithoutAttributes(int id) { using (var conn = new SqlConnection(AppSettings.ConnectionString)) { var sql = new TaskSqls(); var task = await conn.QueryFirstOrDefaultAsync <TrainTask>(sql.GetTaskWithoutAttributes, new { id }); return(task); } }
/// <summary> /// получить атрибуты по id задачи /// </summary> public async Task <List <TrainTaskAttribute> > GetTrainTaskAttributes(int trainTaskId) { using (var conn = new SqlConnection(AppSettings.ConnectionString)) { var sql = new TaskSqls(); var attributes = await conn.QueryAsync <TrainTaskAttribute>(sql.GetTrainTaskAttributes, new { trainTaskId }); return(attributes.ToList()); } }
public async Task <TrainTaskAttribute> GetTrainTaskAttribute(int attributeId) { using (var conn = new SqlConnection(AppSettings.ConnectionString)) { var sql = new TaskSqls(); var attribute = await conn.QueryFirstOrDefaultAsync <TrainTaskAttribute>(sql.GetTrainTaskAttributeById, new { attributeId }); return(attribute); } }
public async Task <TrainTaskAttribute> AddAttributesToTrainTask(TrainTask trainTask, TaskRepository.TrainTaskaddUi input) { using (var conn = new SqlConnection(AppSettings.ConnectionString)) { var sql = new TaskSqls(); var attributeId = await conn.QueryFirstOrDefaultAsync <int>(sql.AddAtributeToTask, new { faultId = input.FaultId, trainTaskId = trainTask.Id, userId = trainTask.UserId, taskLevel = input.TaskLevel }); var result = await GetTrainTaskAttribute(attributeId); return(result); } }
public async Task <TrainTask> AddTrainTaskWithoutAttributes(TrainTaskaddUi input, User user) { using (var conn = new SqlConnection(AppSettings.ConnectionString)) { var sql = new TaskSqls(); var taskId = await conn.QueryFirstOrDefaultAsync <int>(sql.AddTaskWithoutAttributes, new { carriageId = input.CarriageId, description = input.Text, equipmentModelId = input.EquipmentId, taskType = input.TaskType, userId = user.Id }); var result = await GetTrainTaskWithoutAttributes(taskId); return(result); } }
public async Task <TaskByIdDto> GetTaskById(int id, int permissions = -1) { using (var conn = new SqlConnection(AppSettings.ConnectionString)) { var sqlRExecutor = new ExecutorRepository(_logger); var sqlRTaskStatus = new TaskStatusRepository(_logger); var sqlRTask = new TaskSqls(); var fromSql = (await conn.QueryAsync <TaskDetailFromSql>(sqlRTask.GetTrainTaskByIdAndAttributeId(id))).ToList(); var task = fromSql.First(); var result = new TaskByIdDto { Id = task.Id, Data = task.CreateDate, InitiatorName = task.InitiatorName, TrainName = task.TrainName, EquipmentName = task.EquipmentName, CarriageSerial = task.CarriageSerial, //CreateCarriageName(task.TrainName, task.CarriageNumber), TaskType = task.TaskType }; //Текущий статус var taskStatuses = await sqlRTaskStatus.ByTaskId(id); var currentTaskStatus = taskStatuses.Last().Status; result.StatusId = (int)currentTaskStatus; //Текущий исполнитель var taskExecutors = await sqlRExecutor.GetByTaskId(id); BrigadeType currentTaskExecutor = 0; if (taskExecutors.Count > 0) { currentTaskExecutor = taskExecutors.Last().BrigadeType; result.BrigadeType = (int)currentTaskExecutor; } //Уровень задачи var taskLevel = fromSql.OrderBy(x => x.TaskLevel).Select(x => x.TaskLevel).First(); result.TaskLevel = taskLevel.HasValue ? (int)taskLevel : 0; //Доступные статусы var possibleTaskStatuses = sqlRTaskStatus.GetAvailableStatusesNewTask(currentTaskStatus, currentTaskExecutor, permissions); result.PossibleTaskStatuses = possibleTaskStatuses.Select(x => (int)x).ToList(); //Неисправности из атрибутов result.Faults = new List <FaultTaskDto>(); result.Inspections = new List <InspectionTaskDto>(); foreach (var item in fromSql) { if (item.AttributeFaultId != null) { await AddFaultData(result, item); } if (item.AttributeInspectionId != 0) { await AddInspectionData(result, item); } } //Добавить в фаулты данные по чеклистам из инпекции var withCheckListEquipmentId = fromSql.Where(x => x.AttributeCheckListEquipmentId != null) .DistinctBy(y => y.AttributeCheckListEquipmentId).ToList(); foreach (var item in withCheckListEquipmentId) { await AddFaultDataFromCheckListEquipmentId(result, item); } result.History = await AddHistoryData(id); return(result); } }