public ActionResult Post(TourPlan tour) { try { string isSaved = new TourPlanManager().TourPlanManagement(tour); if (isSaved.Trim() == "1") { return(Ok("1")); } else { return(Ok(isSaved.Trim())); } } catch (Exception ex) { return(Ok(ex.ToString())); } }
public string TourPlanManagement(TourPlan tourPlan) { SqlTransaction transaction; string connString = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", false) .Build().GetConnectionString("DevConnection").ToString(); SqlConnection sqlConnection = new SqlConnection(connString); sqlConnection.Open(); transaction = sqlConnection.BeginTransaction(); SqlCommand cmd = new SqlCommand("API_TourPlanManagement", sqlConnection, transaction); cmd.CommandType = CommandType.StoredProcedure; try { SqlParameter TourPlanID = cmd.Parameters.Add("@TourPlanID", SqlDbType.BigInt); TourPlanID.Direction = ParameterDirection.Input; TourPlanID.Value = tourPlan.TourPlanID; SqlParameter SFID = cmd.Parameters.Add("@SFID", SqlDbType.BigInt); SFID.Direction = ParameterDirection.Input; SFID.Value = tourPlan.SFID; SqlParameter PlanDate = cmd.Parameters.Add("@PlanDate", SqlDbType.DateTime); PlanDate.Direction = ParameterDirection.Input; PlanDate.Value = (string.IsNullOrEmpty(tourPlan.TourDate) ? DateTime.Now : DateTime.ParseExact(tourPlan.TourDate, "MM/dd/yyyy", null)); SqlParameter Condition = cmd.Parameters.Add("@Condition", SqlDbType.VarChar, 10); Condition.Direction = ParameterDirection.Input; Condition.Value = tourPlan.Condition; SqlParameter Flag = cmd.Parameters.Add("@Flag", SqlDbType.VarChar, 10); Flag.Direction = ParameterDirection.Output; cmd.ExecuteNonQuery(); if (cmd.Parameters["@Flag"].Value.ToString().Trim() == "Er") { transaction.Rollback(); return("0"); } string tourPlanid = cmd.Parameters["@Flag"].Value.ToString().Trim(); foreach (var task in tourPlan.Tours) { if (!TourTaskManagement((TourTask)task, tourPlanid, sqlConnection, transaction)) { transaction.Rollback(); return("0"); } } transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); return(ex.ToString()); } finally { cmd.Dispose(); sqlConnection.Close(); sqlConnection.Dispose(); tourPlan = null; } return("1"); }
public string TourPlanManagement(TourPlan tourPlan) { return(tourPlanGateway.TourPlanManagement(tourPlan)); }