AdoS8ConfigDataSourcesController.cs 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using Admin.NET.Plugin.AiDOP.Entity.S8;
  2. using Admin.NET.Plugin.AiDOP.Service.S8;
  3. namespace Admin.NET.Plugin.AiDOP.Controllers.S8;
  4. [ApiController]
  5. [Route("api/aidop/s8/config/data-sources")]
  6. [NonUnify]
  7. public class AdoS8ConfigDataSourcesController : ControllerBase
  8. {
  9. private readonly S8DataSourceService _svc;
  10. public AdoS8ConfigDataSourcesController(S8DataSourceService svc) => _svc = svc;
  11. [HttpGet]
  12. public async Task<IActionResult> ListAsync([FromQuery] long tenantId = 1, [FromQuery] long factoryId = 1) =>
  13. Ok(await _svc.ListAsync(tenantId, factoryId));
  14. [HttpPost]
  15. public async Task<IActionResult> CreateAsync([FromBody] AdoS8DataSource body)
  16. {
  17. try { return Ok(await _svc.CreateAsync(body)); }
  18. catch (S8BizException ex) { return BadRequest(new { message = ex.Message }); }
  19. }
  20. [HttpPut("{id:long}")]
  21. public async Task<IActionResult> UpdateAsync(long id, [FromBody] AdoS8DataSource body)
  22. {
  23. try { return Ok(await _svc.UpdateAsync(id, body)); }
  24. catch (S8BizException ex) { return BadRequest(new { message = ex.Message }); }
  25. }
  26. [HttpDelete("{id:long}")]
  27. public async Task<IActionResult> DeleteAsync(long id)
  28. {
  29. await _svc.DeleteAsync(id);
  30. return Ok();
  31. }
  32. [HttpPost("{id:long}/test")]
  33. public async Task<IActionResult> TestAsync(long id)
  34. {
  35. try { return Ok(await _svc.TestAsync(id)); }
  36. catch (S8BizException ex) { return BadRequest(new { message = ex.Message }); }
  37. }
  38. }