/// <summary> /// Get Top Customers /// </summary> /// <param name="request"></param> /// <param name="responseStream"></param> /// <param name="context"></param> /// <returns></returns> /// <exception cref="ValidationException"></exception> /// <exception cref="RpcException"></exception> public override async Task GetTopCustomers(CustomerDetailRequest request, IServerStreamWriter <CustomerDetailResponse> responseStream, ServerCallContext context) { try { if (request.TopCustomers == 0) { throw new ValidationException(BusinessRuleResource.Error_InTopCount); } var customerList = _customerRuleManager.GetTopCustomers(request.TopCustomers).ToArray(); if (customerList.Any()) { foreach (var customer in customerList) { await responseStream.WriteAsync(new CustomerDetailResponse { Id = customer.Id, Street = customer.Street, Suburb = customer.Suburb, Contact = customer.Contact, Country = customer.Country, Street2 = customer.Street2, StateId = customer.StateId, FullName = customer.FullName, LastName = customer.LastName, AddressId = customer.AddressId, ContactId = customer.ContactId, FirstName = customer.FirstName, StateName = customer.StateName, CustomerCode = customer.CustomerCode, DateOfBirth = customer.DateOfBirth.ToShortDateString(), AddressTypeId = customer.AddressTypeId, ContactTypeId = customer.ContactTypeId, CustomerAddressId = customer.CustomerAddressId, CustomerContactId = customer.CustomerContactId }); } } else { await responseStream.WriteAllAsync(new CustomerDetailResponse[] { }); } } catch (Exception e) { log.Error(e.Message); throw new RpcException(new Status(StatusCode.Aborted, e.Message)); } }
public async Task <IHttpActionResult> Post([FromBody] CustomerDetailRequest data) { try { CaCustomerDetail dataCaCustomerDetail = data.GetObject(); dataCaCustomerDetail.CreatedBy = GetUserAuth().Name; CaCustomerDetail caCustomerDetail = await _caCustomerDetailRepository.Create(dataCaCustomerDetail); return(new HttpJsonApiResult <CustomerDetailModel>( new CustomerDetailModel(caCustomerDetail), Request, HttpStatusCode.Created)); } catch (Exception) { return(new HttpJsonApiResult <string>( "Internal Server Error", Request, HttpStatusCode.InternalServerError)); } }
public CustomerDetailResponse DeleteCustomerDetail(CustomerDetailRequest request) { Business.Banking.CustomerDetail customerBusiness = new Business.Banking.CustomerDetail(); Types.Banking.CustomerDetailContract customerDetail = customerBusiness.DeleteCustomerDetail(request.customerDetail); if (customerDetail != null) { return(new CustomerDetailResponse() { customerDetail = customerDetail, IsSuccess = true }); } return(new CustomerDetailResponse() { IsSuccess = false }); }
public async Task <IHttpActionResult> Update(int id, [FromBody] CustomerDetailRequest data) { try { CaCustomerDetail caCustomerDetail = await _caCustomerDetailRepository.Update(id, data.GetObject()); if (caCustomerDetail == null) { return(new HttpJsonApiResult <string>("Not Found", Request, HttpStatusCode.NotFound)); } return(new HttpJsonApiResult <CustomerDetailModel>( new CustomerDetailModel(caCustomerDetail), Request, HttpStatusCode.OK)); } catch (Exception) { return(new HttpJsonApiResult <string>( "Internal Server Error", Request, HttpStatusCode.InternalServerError)); } }
public ActionResult AddNewCustomerDetails([FromBody] CustomerDetailRequest request) { bool isSucess = false; string messageAlert = string.Empty; long customerIdResult = 0; var currentUserId = HttpContext.Session.GetString(LookupKey.SessionVariables.UserId).IsNull() ? 0 : Convert.ToInt64(HttpContext.Session.GetString(LookupKey.SessionVariables.UserId)); request.CreatedBy = currentUserId; request.CreatedTime = DateTime.Now; if (ModelState.IsValid) { customerIdResult = _customerService.SaveCustomerDetails(request); if (customerIdResult == -100) { return(Ok(new { isSucess = isSucess, messageAlert = Messages.CustomerCodeValidation })); } if (customerIdResult == 0) { return(Ok(new { isSucess = isSucess, messageAlert = Messages.ServerError })); } isSucess = true; var response = new { isSuccess = isSucess, messageAlert = messageAlert }; return(Ok(response)); } else { return(Ok(new { isSucess = isSucess, messageAlert = Messages.ErrorOccuredDuringProcessing })); } }
public JsonResult UpdateCustomerDetails(CustomerDetailRequest request) { bool isSucess = false; string messageAlert = string.Empty; bool customerIdResult = false; var currentUserId = Session[LookupKey.SessionVariables.UserId].IsNull() ? 0 : Convert.ToInt64(Session[LookupKey.SessionVariables.UserId]); var passedUserResult = _customerServices.GetAll().Where(m => m.CustomerId == request.CustomerId).FirstOrDefault(); request.CreatedTime = passedUserResult.CreatedTime; request.ModifiedBy = currentUserId; request.ModifiedTime = DateTime.Now; #region Validate same firstname and lastname var customerNameResult = _customerServices.GetAll().Where(u => u.FirstName == request.FirstName && u.CustomerStatusId == LookupKey.CustomerStatus.ActiveId && u.LastName == request.LastName && u.CustomerId != request.CustomerId).FirstOrDefault(); if (!customerNameResult.IsNull()) { return(Json(new { isSuccess = isSucess, messageAlert = Messages.CustomerNameValidation }, JsonRequestBehavior.AllowGet)); } #endregion customerIdResult = _customerServices.UpdateDetail(request); if (!customerIdResult) { return(Json(new { isSuccess = isSucess, messageAlert = Messages.ServerError }, JsonRequestBehavior.AllowGet)); } isSucess = true; var response = new { isSuccess = isSucess, messageAlert = messageAlert }; return(Json(response, JsonRequestBehavior.AllowGet)); }
public ActionResult UpdateCustomerDetails([FromBody] CustomerDetailRequest request) { bool isSucess = false; string messageAlert = string.Empty; bool customerIdResult = false; var currentUserId = HttpContext.Session.GetString(LookupKey.SessionVariables.UserId).IsNull() ? 0 : Convert.ToInt64(HttpContext.Session.GetString(LookupKey.SessionVariables.UserId)); var passedUserResult = _customerService.GetAllCustomerDetails().Where(m => m.CustomerId == request.CustomerId).FirstOrDefault(); request.CreatedTime = passedUserResult.CreatedTime; request.ModifiedBy = currentUserId; request.ModifiedTime = DateTime.Now; #region Validate same customer code var codeUserDetailResult = _customerService.GetAllCustomerDetails().Where(u => u.CustomerCode == request.CustomerCode && u.CustomerId != request.CustomerId && u.IsActive).FirstOrDefault(); if (!codeUserDetailResult.IsNull()) { return(Ok(new { isSucess = isSucess, messageAlert = Messages.CustomerCodeValidation })); } #endregion customerIdResult = _customerService.UpdateCustomerDetails(request); if (!customerIdResult) { return(Ok(new { isSucess = isSucess, messageAlert = Messages.ServerError })); } isSucess = true; var response = new { isSuccess = isSucess, messageAlert = messageAlert }; return(Ok(response)); }
public static dbentities.Customer DtoToEntity(this CustomerDetailRequest request) { dbentities.Customer entity = null; if (request != null) { entity = new dbentities.Customer { CustomerID = request.CustomerId, CustomerCode = request.CustomerCode, Name = request.Name, Address = request.Address, IsActive = request.IsActive, CreatedBy = request.CreatedBy, CreatedTime = request.CreatedTime, ModifiedBy = request.ModifiedBy, ModifiedTime = request.ModifiedTime }; } return(entity); }
public JsonResult AddNewCustomerDetails(CustomerDetailRequest request) { bool isSucess = false; string messageAlert = string.Empty; long customerIdResult = 0; var currentUserId = Session[LookupKey.SessionVariables.UserId].IsNull() ? 0 : Convert.ToInt64(Session[LookupKey.SessionVariables.UserId]); request.CreatedBy = currentUserId; request.CreatedTime = DateTime.Now; if (ModelState.IsValid) { customerIdResult = _customerServices.SaveDetail(request); if (customerIdResult == -100) { return(Json(new { isSuccess = isSucess, messageAlert = Messages.CustomerNameValidation }, JsonRequestBehavior.AllowGet)); } if (customerIdResult == 0) { return(Json(new { isSuccess = isSucess, messageAlert = Messages.ServerError }, JsonRequestBehavior.AllowGet)); } isSucess = true; var response = new { isSuccess = isSucess, messageAlert = messageAlert, CustomerId = customerIdResult }; return(Json(response, JsonRequestBehavior.AllowGet)); } else { return(Json(new { isSuccess = isSucess, messageAlert = Messages.ErrorOccuredDuringProcessing }, JsonRequestBehavior.AllowGet)); } }
public static dbentities.Customer DtoToEntity(this CustomerDetailRequest request) { dbentities.Customer entity = null; if (request != null) { entity = new dbentities.Customer { CustomerID = request.CustomerId, CustomerCode = request.CustomerCode, FirstName = request.FirstName, LastName = request.LastName, FullAddress = request.FullAddress, MobileNumber = request.MobileNumber, CustomerStatusID = request.CustomerStatusId, CreatedBy = request.CreatedBy, CreatedTime = request.CreatedTime, ModifiedBy = request.ModifiedBy, ModifiedTime = request.ModifiedTime }; } return(entity); }