using Microsoft.AspNetCore.Mvc; using Serilog; using WorkFlowCheck.BL.Services; using WorkFlowCheck.BL.Services.Interfaces; using WorkFlowCheck.Common.DTO; namespace WorkFlowCheck.API.Controllers { [Route("api/[controller]")] [ApiController] public class SyncController : ControllerBase { private ISyncService _syncService; public SyncController(ISyncService syncService) { _syncService = syncService; } [HttpGet("GetCheckPoint/{id}")] public async Task> GetCheckpointAsync(int id) { var retVal = new ApiResponseDTO() { IsSuccess = true, }; var checkPointListDTO = await _syncService.GetCheckPointAsync(id); if (checkPointListDTO != null) { retVal.IsSuccess = true; retVal.Data = checkPointListDTO; } else { retVal.IsSuccess = false; retVal.Errors.Add("No data!"); } return retVal; } [HttpGet("GetAllCheckPoints")] public async Task>> GetAllCheckpointsAsync() { var retVal = new ApiResponseDTO>() { IsSuccess = true, }; var checkPointListDTO = await _syncService.GetAllCheckPointAsync(); if (checkPointListDTO != null) { retVal.IsSuccess = true; retVal.Data = checkPointListDTO; } else { retVal.IsSuccess = false; retVal.Errors.Add("No data!"); } return retVal; } [HttpPost("UpdateCheckPoint")] public async Task> UpdateCheckPoint([FromBody] CheckPointDTO checkPointDTO) { var retVal = new ApiResponseDTO() { IsSuccess = true }; try { var result = await _syncService.UpdateCheckPointAsync(checkPointDTO); retVal.Data = result; } catch (Exception ex) { retVal.IsSuccess = false; Log.Error(ex.Message); } return retVal; } [HttpGet("GetEquipment/{id}")] public async Task> GetEquipmentAsync(int id) { var retVal = new ApiResponseDTO() { IsSuccess = true, }; var equipmentDTO = await _syncService.GetEquipmentAsync(id); if (equipmentDTO != null) { retVal.IsSuccess = true; retVal.Data = equipmentDTO; } else { retVal.IsSuccess = false; retVal.Errors.Add("No data!"); } return retVal; } [HttpGet("GetAllEquipments")] public async Task>> GetAllEquipmentsAsync() { var retVal = new ApiResponseDTO>() { IsSuccess = true, }; var equipmentListDTO = await _syncService.GetAllEquipmentAsync(); if (equipmentListDTO != null) { retVal.IsSuccess = true; retVal.Data = equipmentListDTO; } else { retVal.IsSuccess = false; retVal.Errors.Add("No data!"); } return retVal; } [HttpPost("UpdateEquipment")] public async Task> UpdateEquipment([FromBody] EquipmentDTO EquipmentDTO) { var retVal = new ApiResponseDTO() { IsSuccess = true }; try { var result = await _syncService.UpdateEquipmentAsync(EquipmentDTO); retVal.Data = result; } catch (Exception ex) { retVal.IsSuccess = false; Log.Error(ex.Message); } return retVal; } [HttpGet("GetLocation/{id}")] public async Task> GetLocationAsync(int id) { var retVal = new ApiResponseDTO() { IsSuccess = true, }; var locationDTO = await _syncService.GetLocationAsync(id); if (locationDTO != null) { retVal.IsSuccess = true; retVal.Data = locationDTO; } else { retVal.IsSuccess = false; retVal.Errors.Add("No data!"); } return retVal; } [HttpGet("GetAllLocations")] public async Task>> GetAllLocationsAsync() { var retVal = new ApiResponseDTO>() { IsSuccess = true, }; var locationListDTO = await _syncService.GetAllLocationAsync(); if (locationListDTO != null) { retVal.IsSuccess = true; retVal.Data = locationListDTO; } else { retVal.IsSuccess = false; retVal.Errors.Add("No data!"); } return retVal; } [HttpPost("UpdateLocation")] public async Task> UpdateLocation([FromBody] LocationDTO LocationDTO) { var retVal = new ApiResponseDTO() { IsSuccess = true }; try { var result = await _syncService.UpdateLocationAsync(LocationDTO); retVal.Data = result; } catch (Exception ex) { retVal.IsSuccess = false; Log.Error(ex.Message); } return retVal; } [HttpGet("GetAllCheckListTemplateHeader")] public async Task>> GetAllCheckListTemplateHeaderAsync() { var retVal = new ApiResponseDTO>() { IsSuccess = true, }; var response = await _syncService.GetAllCheckListTemplateAsync(); if (response != null) { retVal.IsSuccess = true; retVal.Data = response; } else { retVal.IsSuccess = false; retVal.Errors.Add("No data!"); } return retVal; } } }