diff --git a/Api/OnlineSalesAutoCrop.CoreAPI.Models/Responses/Integrations/EmployeeIntegrationResponse.cs b/Api/OnlineSalesAutoCrop.CoreAPI.Models/Responses/Integrations/EmployeeIntegrationResponse.cs index 05258fe..2e1ce12 100644 --- a/Api/OnlineSalesAutoCrop.CoreAPI.Models/Responses/Integrations/EmployeeIntegrationResponse.cs +++ b/Api/OnlineSalesAutoCrop.CoreAPI.Models/Responses/Integrations/EmployeeIntegrationResponse.cs @@ -34,5 +34,8 @@ public class EmployeeIntegrationResponse : ResponseBase public class EmployeeIntegrationReqResponse : ResponseBase { + public string EmployeeVendorCode { get; set; } + public string SalesOrgCode { get; set; } + public bool IsUpdated { get; set; } } \ No newline at end of file diff --git a/Api/OnlineSalesAutoCrop.CoreAPI.Services/Contracts/Integrations/IIntegrationService.cs b/Api/OnlineSalesAutoCrop.CoreAPI.Services/Contracts/Integrations/IIntegrationService.cs index 4859b2e..69e6d1e 100644 --- a/Api/OnlineSalesAutoCrop.CoreAPI.Services/Contracts/Integrations/IIntegrationService.cs +++ b/Api/OnlineSalesAutoCrop.CoreAPI.Services/Contracts/Integrations/IIntegrationService.cs @@ -9,6 +9,6 @@ public interface IIntegrationService { Task UpsertCustomerAsync(CustomerIntegrationRequest request); Task GetCustomerByCompanyCodeAsync(CustomerByCompanyCodeRequest request); - Task UpsertEmployeeAsync(EmployeeIntegrationRequest request); + Task UpsertEmployeeAsync(EmployeeIntegrationRequest request); Task GetEmployeeBySalesOrgAsync(EmployeeBySalesOrgCodeRequest request); } diff --git a/Api/OnlineSalesAutoCrop.CoreAPI.Services/Services/Integrations/IntegrationService.cs b/Api/OnlineSalesAutoCrop.CoreAPI.Services/Services/Integrations/IntegrationService.cs index 411fb99..28d160b 100644 --- a/Api/OnlineSalesAutoCrop.CoreAPI.Services/Services/Integrations/IntegrationService.cs +++ b/Api/OnlineSalesAutoCrop.CoreAPI.Services/Services/Integrations/IntegrationService.cs @@ -65,22 +65,18 @@ public class IntegrationService : IIntegrationService { //Update Here UpdateCustomer(tc, customer.CustomerId, request); - response.CustomerNumber = request.CustomerNumber; - response.CompanyCode = request.CompanyCode; response.IsUpdated = true; - } else { //Insert Here - CreateCustomer(tc, request); - response.CustomerNumber = request.CustomerNumber; - response.CompanyCode = request.CompanyCode; + CreateCustomer(tc, request); response.IsUpdated = false; - } + response.CustomerNumber = request.CustomerNumber; + response.CompanyCode = request.CompanyCode; tc.End(); } catch (Exception ie) @@ -190,9 +186,9 @@ public class IntegrationService : IIntegrationService return response; } - public async Task UpsertEmployeeAsync(EmployeeIntegrationRequest request) + public async Task UpsertEmployeeAsync(EmployeeIntegrationRequest request) { - bool response = false; + EmployeeIntegrationReqResponse response = new EmployeeIntegrationReqResponse(); try { using TransactionContext tc = await TransactionContext.BeginAsync(_settings.DefaultConnection.ConnectionNode); @@ -231,13 +227,17 @@ public class IntegrationService : IIntegrationService if (employee != null && employee.EmployeeVendorId > 0) { - _= tc.ExecuteNonQuerySp("dbo.UpdateEmployee", p); + _= tc.ExecuteNonQuerySp("dbo.UpdateEmployee", p); + response.IsUpdated = true; } else { _= tc.ExecuteNonQuerySp("dbo.InsertEmployee", p); + response.IsUpdated = true; } + response.EmployeeVendorCode = request.EmployeeVendorCode; + response.SalesOrgCode = request.SalesOrgCode; tc.End(); } catch (Exception ie) @@ -263,8 +263,7 @@ public class IntegrationService : IIntegrationService SqlParameter[] p = [ SqlHelperExtension.CreateInParam(pName: "@EmployeeVendorCode", pType: SqlDbType.NVarChar,pValue: request.EmployeeVendorCode ), - SqlHelperExtension.CreateInParam(pName: "@SalesOrgCode", pType: SqlDbType.NVarChar,pValue: request.SalesOrgCode ), - + SqlHelperExtension.CreateInParam(pName: "@SalesOrgCode", pType: SqlDbType.NVarChar,pValue: request.SalesOrgCode ) ]; using (IDataReader dr = await tc.ExecuteReaderSpAsync("dbo.GetEmployeeBySalesOrgCode", parameterValues: p)) @@ -298,8 +297,7 @@ public class IntegrationService : IIntegrationService PlantCode = dr.GetString(22), PlantDescription = dr.GetString(23), Status = dr.GetString(24), - StatusDescription = dr.GetString(25) - + StatusDescription = dr.GetString(25) }; } dr.Close(); @@ -457,6 +455,4 @@ public class IntegrationService : IIntegrationService return returnValue; } - - } diff --git a/Api/OnlineSalesAutoCrop.CoreAPI/Controllers/IntegretionApi/IntegrationController.cs b/Api/OnlineSalesAutoCrop.CoreAPI/Controllers/IntegretionApi/IntegrationController.cs index 03986bb..f894d19 100644 --- a/Api/OnlineSalesAutoCrop.CoreAPI/Controllers/IntegretionApi/IntegrationController.cs +++ b/Api/OnlineSalesAutoCrop.CoreAPI/Controllers/IntegretionApi/IntegrationController.cs @@ -87,8 +87,8 @@ namespace OnlineSalesAutoCrop.CoreAPI.Controllers.IntegretionApi EmployeeIntegrationReqResponse response = new EmployeeIntegrationReqResponse(); try { - bool result = await _integrationService.UpsertEmployeeAsync(request); - if (result) + response = await _integrationService.UpsertEmployeeAsync(request); + if (!response.IsUpdated) { response.ReturnMessage.Add($"Employee Created Successfully for EmployeeVendorName :{request.EmployeeVendorName} & SalesOrgCode:{request.SalesOrgCode}"); response.ReturnStatus = StatusCodes.Status201Created; @@ -110,7 +110,5 @@ namespace OnlineSalesAutoCrop.CoreAPI.Controllers.IntegretionApi return StatusCode(StatusCodes.Status500InternalServerError, response); } } - - } } \ No newline at end of file