forked from ddrilling/AsbCloudServer
138 lines
5.9 KiB
C#
138 lines
5.9 KiB
C#
using System.Collections.Generic;
|
|
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using AsbCloudApp.Data;
|
|
using AsbCloudApp.Services;
|
|
|
|
namespace AsbCloudWebApi.Controllers
|
|
{
|
|
/// <summary>
|
|
/// Контроллер для режимов бурения
|
|
/// </summary>
|
|
[Route("/drillParams")]
|
|
[ApiController]
|
|
public class DrillParamsController : ControllerBase
|
|
{
|
|
private readonly IDrillParamsService drillParamsService;
|
|
|
|
public DrillParamsController(IDrillParamsService drillParamsService)
|
|
{
|
|
this.drillParamsService = drillParamsService;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Возвращает автоматически расчитанные значения для режимов бурения
|
|
/// </summary>
|
|
/// <param name="idWell"> id скважины </param>
|
|
/// <param name="startDepth"> Стартовая глубина </param>
|
|
/// <param name="endDepth"> Конечная глубина </param>
|
|
/// <param name="token"> Токен отмены задачи </param>
|
|
/// <returns> Значения по умолчанию для режимов бурения </returns>
|
|
[HttpGet("idWell/autoParams")]
|
|
[ProducesResponseType(typeof(DrillParamsDto), (int) System.Net.HttpStatusCode.OK)]
|
|
public async Task<IActionResult> GetDefaultDrillParamsAsync(int idWell, double startDepth,
|
|
double endDepth, CancellationToken token = default)
|
|
{
|
|
var idCompany = User.GetCompanyId();
|
|
|
|
if (idCompany is null)
|
|
return Forbid();
|
|
|
|
var dto = await drillParamsService.GetDefaultDrillParamsAsync(idWell, startDepth, endDepth, token);
|
|
|
|
return Ok(dto);
|
|
}
|
|
|
|
// /// <summary>
|
|
// /// Возвращает значения для режимов бурения gj ctrwbzv yf crdf;byt
|
|
// /// </summary>
|
|
// /// <param name="idWell"> id скважины </param>
|
|
// /// <param name="token"> Токен отмены задачи </param>
|
|
// /// <returns> Список параметров для режимов бурения на скважине </returns>
|
|
// [HttpGet("idWell")]
|
|
// [ProducesResponseType(typeof(IEnumerable<DrillParamsDto>), (int) System.Net.HttpStatusCode.OK)]
|
|
// public async Task<IActionResult> GetDrillParamsAsync(int idWell,
|
|
// CancellationToken token = default)
|
|
// {
|
|
// var idCompany = User.GetCompanyId();
|
|
//
|
|
// if (idCompany is null)
|
|
// return Forbid();
|
|
//
|
|
// var dto = await drillParamsService.GetDrillParamsAsync(idWell, token);
|
|
//
|
|
// return Ok(dto);
|
|
// }
|
|
|
|
/// <summary>
|
|
/// Сохраняет значения для режимов бурения
|
|
/// </summary>
|
|
/// <param name="idWell"> id скважины </param>
|
|
/// <param name="drillParamsDto"> Параметры режимов бурений для секции</param>
|
|
/// <param name="token"> Токен отмены задачи </param>
|
|
/// <returns></returns>
|
|
[HttpPost("idWell")]
|
|
[ProducesResponseType(typeof(int), (int) System.Net.HttpStatusCode.OK)]
|
|
public async Task<IActionResult> SaveDrillParamsAsync(int idWell,
|
|
DrillParamsDto drillParamsDto, CancellationToken token = default)
|
|
{
|
|
var idCompany = User.GetCompanyId();
|
|
|
|
if (idCompany is null)
|
|
return Forbid();
|
|
|
|
var result = await drillParamsService.SaveDrillParamsAsync(idWell,
|
|
drillParamsDto, token);
|
|
|
|
return Ok(result);
|
|
}
|
|
|
|
// /// <summary>
|
|
// /// Изменяет значения для режимов бурения
|
|
// /// </summary>
|
|
// /// <param name="idWell"> id скважины </param>
|
|
// /// <param name="drillParamsDto"> Параметры режимов бурений для секции</param>
|
|
// /// <param name="token"> Токен отмены задачи </param>
|
|
// /// <returns></returns>
|
|
// [HttpPut("idWell")]
|
|
// [ProducesResponseType(typeof(int), (int) System.Net.HttpStatusCode.OK)]
|
|
// public async Task<IActionResult> EditDrillParamsAsync(int idWell,
|
|
// DrillParamsDto drillParamsDto, CancellationToken token = default)
|
|
// {
|
|
// var idCompany = User.GetCompanyId();
|
|
//
|
|
// if (idCompany is null)
|
|
// return Forbid();
|
|
//
|
|
// var result = await drillParamsService.EditDrillParamsAsync(idWell,
|
|
// drillParamsDto, token);
|
|
//
|
|
// return Ok(result);
|
|
// }
|
|
|
|
// /// <summary>
|
|
// /// Удаляет значения для режимов бурения
|
|
// /// </summary>
|
|
// /// <param name="idWell"> id скважины </param>
|
|
// /// <param name="drillParamsDto"> Параметры режимов бурений для секции</param>
|
|
// /// <param name="token"> Токен отмены задачи </param>
|
|
// /// <returns></returns>
|
|
// [HttpDelete("idWell")]
|
|
// [ProducesResponseType(typeof(int), (int) System.Net.HttpStatusCode.OK)]
|
|
// public async Task<IActionResult> DeleteDrillParamsAsync(int idWell,
|
|
// DrillParamsDto drillParamsDto, CancellationToken token = default)
|
|
// {
|
|
// var idCompany = User.GetCompanyId();
|
|
//
|
|
// if (idCompany is null)
|
|
// return Forbid();
|
|
//
|
|
// var result = await drillParamsService.DeleteDrillParamsAsync(idWell,
|
|
// drillParamsDto, token);
|
|
//
|
|
// return Ok(result);
|
|
// }
|
|
}
|
|
}
|