public CareRequest Get(int id) { careRequest = new CareRequest(); using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["Pets"].ConnectionString)) { try { connection.Open(); using (SqlCommand command = new SqlCommand("Select * From dbo.vwCareRequest Where ID = @id", connection)) { command.Parameters.AddWithValue("id", id); using (SqlDataReader reader = command.ExecuteReader()) { if (reader.HasRows) { reader.Read(); careRequest = GetCareRequestFromReader(reader); } } } careRequest.Customer = CustomerController.FindByID((int)careRequest.Customer.ID); careRequest.Visits = CareVisitController.GetList((int)careRequest.ID); } catch (Exception ex) { throw new Exception(ex.Message); } } return(careRequest); }
private CareRequest GetCareRequestFromReader(SqlDataReader reader) { careRequest = new CareRequest(); careRequest.ID = ((int)reader["ID"]); careRequest.Customer = new Customer((int)reader["CustomerID"], (string)reader["CustomerName"]); careRequest.StartDate = (DateTime)reader["StartDate"]; careRequest.EndDate = (DateTime)reader["EndDate"]; return(careRequest); }
public CareRequest InsertCareRequest(CareRequest careRequest) { if (careRequest == null) { throw new ArgumentNullException(); } _careRequestRepository.Insert(careRequest); return(careRequest); }
public CareRequestModel PrepareCareRequestModel(CareRequest request) { var model = new CareRequestModel { Id = request.Id, CustomerId = request.CustomerId, CreatedOnUtc = request.CreatedOnUtc.ToString(Constants.DateFormat.ShortDateString), CustomerFullName = _customerService.GetCustomerById(request.CustomerId).User.GetFullName(), Reason = request.Reason, Answer = request.Answer, ReviewedOn = request.ReviewedOn.GetValueOrDefault().ToString(Constants.DateFormat.ShortDateString), StatusId = request.StatusId }; if (request.ReviewedById.HasValue) { model.ReviewedBy = _workerService.GetWorkerById(request.ReviewedById.Value).User.GetFullName(); } return(model); }
public CareRequest Post(CareRequest careRequest) { SqlTransaction transaction; using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["Pets"].ConnectionString)) { connection.Open(); transaction = connection.BeginTransaction(); try { using (SqlCommand command = new SqlCommand()) { command.Connection = connection; command.Transaction = transaction; command.Parameters.AddWithValue("CustomerID", careRequest.Customer.ID); command.Parameters.AddWithValue("StartDate", careRequest.StartDate); command.Parameters.AddWithValue("EndDate", careRequest.EndDate); if (careRequest.ID == null) { command.CommandText = "Insert Into dbo.CareRequest (CustomerID, StartDate, EndDate) OUTPUT Inserted.ID Values (@CustomerID, @StartDate, @EndDate);"; careRequest.ID = (int)command.ExecuteScalar(); } else { command.CommandText = "Update dbo.CareRequest Set CustomerID = @CustomerID, StartDate = @StartDate, EndDate = @EndDate Where ID = @ID;"; command.Parameters.AddWithValue("ID", careRequest.ID); command.ExecuteNonQuery(); } } CareVisitController.SaveList((int)careRequest.ID, careRequest.Visits, connection, transaction); transaction.Commit(); return(Get((int)careRequest.ID)); //return the newly created CareRequest so the caller has fresh IDs, etc. } catch (Exception ex) { transaction.Rollback(); throw new Exception(ex.Message); } } }
public JsonResult MakeCareRequest(int customerId, string reason) { var customer = _customerService.GetCustomerById(customerId); if (string.IsNullOrWhiteSpace(reason)) { return(Json(new { success = false, message = "Додайте необхідну інформацію" }, JsonRequestBehavior.AllowGet)); } if (!_customerService.CanCreateCareRequest(customer.Id)) { return(Json(new { success = false, message = "Такий запит уже існує в системі" }, JsonRequestBehavior.AllowGet)); } var careRequest = new CareRequest { CustomerId = customerId, Reason = reason, StatusId = (int)CareRequestStatuses.Opened }; _customerService.InsertCareRequest(careRequest); return(Json(new { success = true, message = "Ваш запит був успішно створений" }, JsonRequestBehavior.AllowGet)); }
public CareRequest UpdateCareRequest(CareRequest careRequest) { _careRequestRepository.Update(careRequest); return(careRequest); }