using Vo;
using Microsoft.AspNetCore.Mvc;
using Model;
using Services;
using Model.Base;
using Vo.Admin;
using Dto.Admin;
using Mapster;
using Infrastructure;
using Util.Logic;
using Common;
namespace Controllers.Admin
{
///
/// TestProject)Controller
///
// [Route("${Router}$")]
// [ApiExplorerSettings(GroupName = "TestProject")]
public class TestProjectController : BaseController
{
///
/// api分组接口
///
private readonly ITestProjectService _TestProjectService;
public TestProjectController(ITestProjectService TestProjectService)
{
_TestProjectService = TestProjectService;
}
/// 分页参数
///
/// 列表
///
/// 分页对象
/// 参数请求体
/// 列表
[HttpGet]
[Route("/v1/omega_logic/TestProject/getTestProjectList")]
public IActionResult getTestProjectList([FromQuery] PagerInfo page, [FromQuery] TestProject param)
{
var response = _TestProjectService.getTestProjectList(page, param);
return SUCCESS(response);
}
///
/// 详情
///
/// 参数请求体
/// 详情
[HttpGet]
[Route("/v1/omega_logic/TestProject/getTestProjectQuery")]
public IActionResult getTestProjectQuery([FromQuery] TestProject param)
{
var response = _TestProjectService.GetFirst(m => m.id == param.id).Adapt();
return SUCCESS(response);
}
///
/// 添加
///
/// 参数请求体
/// 添加
[HttpPost]
[Route("/v1/omega_logic/TestProject/addTestProject")]
public IActionResult addTestProject([FromBody] AddTestProjectDto param)
{
var modal = param.Adapt().ToCreate(HttpContext);
var response = _TestProjectService.InsertReturnIdentity(modal);
return SUCCESS(response);
}
///
/// 修改
///
/// 参数请求体
/// 修改
[HttpPut]
[Route("/v1/omega_logic/TestProject/updateTestProject")]
public IActionResult updateTestProject([FromBody] UpdateTestProjectDto param)
{
var modal = param.Adapt().ToCreate(HttpContext);
var response = _TestProjectService.Update(modal, true);
return SUCCESS(response);
}
///
/// 删除
///
/// ID
/// 删除
[HttpDelete]
[Route("/v1/omega_logic/TestProject/deleteTestProject/{id}")]
public IActionResult deleteTestProject(int id)
{
var response = _TestProjectService.Delete(id);
return SUCCESS(response);
}
///
/// 复制逻辑项
///
/// 参数请求体
/// 复制逻辑项
[HttpPost]
[Route("/v1/omega_logic/TestProject/copyTestProject")]
public IActionResult copyTestProject([FromBody] CopyTestProjectDto param)
{
_TestProjectService.copyTestProject(param);
return SUCCESS("ok");
}
///
/// 启动
///
/// 参数请求体
/// 启动
[HttpPost]
[Route("/v1/omega_logic/TestProject/runTestProject")]
public IActionResult runTestProject([FromBody] RunTestProjectDto param)
{
Dictionary result = LogicHelper.DoLogic(param.id, "run" + DateTime.Now.ToString("yyyyMMddHHmmssfff") + Function.get_Random(8), "development", param.requestData);
// if(result.Count == 0)
// {
// return ToResponse(ResultCode.FAIL, "启动逻辑项目失败");
// }
return SUCCESS(result);
}
}
}