using Admin.NET.Plugin.AiDOP.Entity.S8; using Admin.NET.Plugin.AiDOP.Service.S8; namespace Admin.NET.Plugin.AiDOP.Controllers.S8; [ApiController] [Route("api/aidop/s8/config/data-sources")] [NonUnify] public class AdoS8ConfigDataSourcesController : ControllerBase { private readonly S8DataSourceService _svc; public AdoS8ConfigDataSourcesController(S8DataSourceService svc) => _svc = svc; [HttpGet] public async Task ListAsync([FromQuery] long tenantId = 1, [FromQuery] long factoryId = 1) => Ok(await _svc.ListAsync(tenantId, factoryId)); [HttpPost] public async Task CreateAsync([FromBody] AdoS8DataSource body) { try { return Ok(await _svc.CreateAsync(body)); } catch (S8BizException ex) { return BadRequest(new { message = ex.Message }); } } [HttpPut("{id:long}")] public async Task UpdateAsync(long id, [FromBody] AdoS8DataSource body) { try { return Ok(await _svc.UpdateAsync(id, body)); } catch (S8BizException ex) { return BadRequest(new { message = ex.Message }); } } [HttpDelete("{id:long}")] public async Task DeleteAsync(long id) { await _svc.DeleteAsync(id); return Ok(); } [HttpPost("{id:long}/test")] public async Task TestAsync(long id) { try { return Ok(await _svc.TestAsync(id)); } catch (S8BizException ex) { return BadRequest(new { message = ex.Message }); } } }