예제 #1
0
        public JsonResult Update([FromBody] SetPlan setPlan)
        {
            var context = new WorkoutTrackerContext();

            setPlan.UserId = this.UserId;
            context.Entry(context.SetPlans.Find(setPlan.Id)).CurrentValues.SetValues(setPlan);
            context.SaveChanges();
            return(Json(setPlan));
        }
예제 #2
0
        public JsonResult Create([FromBody] SetPlan setPlan)
        {
            var context = new WorkoutTrackerContext();

            setPlan.UserId = this.UserId;
            context.SetPlans.Add(setPlan);
            context.SaveChanges();
            return(Json(setPlan));
        }
예제 #3
0
        public List <SetPlan> GetSetPlansByExercisePlanId(int ExercisePlanId)
        {
            using (var connection = new SqlConnection(ConnectionString))
            {
                using (var command = new SqlCommand("GetSetPlansByExercisePlanId", connection))
                {
                    command.CommandType = CommandType.StoredProcedure;

                    List <SetPlan> setPlans = new List <SetPlan>();

                    SqlParameter parameter;
                    parameter = new SqlParameter
                    {
                        ParameterName = "@ExercisePlanId",
                        SqlDbType     = SqlDbType.Int,
                        Direction     = ParameterDirection.Input,
                        SqlValue      = ExercisePlanId
                    };
                    command.Parameters.Add(parameter);

                    command.Connection.Open();

                    using (var dataReader = command.ExecuteReader())
                    {
                        if (dataReader.HasRows)
                        {
                            while (dataReader.Read())
                            {
                                SetPlan setPlan = new SetPlan
                                {
                                    SetNumber      = dataReader.GetInt32("SetNumber"),
                                    ExercisePlanId = dataReader.GetInt32("ExercisePlanId"),
                                    Weight         = dataReader.GetDouble("Weight"),
                                    Reps           = dataReader.IsDBNull("Reps") ? null : (int?)dataReader.GetInt32("Reps"),
                                    Time           = dataReader.IsDBNull("Time") ? null : (TimeSpan?)new TimeSpan(0, 0, dataReader.GetInt32("Time")),
                                    Distance       = dataReader.IsDBNull("Distance") ? null : dataReader.GetString("Distance"),
                                    Interval       = dataReader.IsDBNull("Interval") ? null : dataReader.GetString("Interval")
                                };
                                setPlans.Add(setPlan);
                            }
                        }
                    }

                    return(setPlans);
                }
            }
        }
예제 #4
0
        public void AddExerciseSet(int WorkoutExerciseId, SetPlan SetPlan)
        {
            using (var connection = new SqlConnection(ConnectionString))
            {
                using (var command = new SqlCommand("AddExerciseSet", connection))
                {
                    command.CommandType = CommandType.StoredProcedure;

                    SqlParameter parameter;
                    parameter = new SqlParameter
                    {
                        ParameterName = "@SetNumber",
                        SqlDbType     = SqlDbType.Int,
                        Direction     = ParameterDirection.Input,
                        SqlValue      = SetPlan.SetNumber
                    };
                    command.Parameters.Add(parameter);

                    parameter = new SqlParameter
                    {
                        ParameterName = "@WorkoutExerciseId",
                        SqlDbType     = SqlDbType.Int,
                        Direction     = ParameterDirection.Input,
                        SqlValue      = WorkoutExerciseId
                    };
                    command.Parameters.Add(parameter);

                    parameter = new SqlParameter
                    {
                        ParameterName = "@Weight",
                        SqlDbType     = SqlDbType.Int,
                        Direction     = ParameterDirection.Input,
                        SqlValue      = SetPlan.Weight
                    };
                    command.Parameters.Add(parameter);

                    parameter = new SqlParameter
                    {
                        ParameterName = "@Reps",
                        SqlDbType     = SqlDbType.Int,
                        Direction     = ParameterDirection.Input,
                        SqlValue      = SetPlan.Reps
                    };
                    command.Parameters.Add(parameter);

                    if (SetPlan.Time.HasValue)
                    {
                        parameter = new SqlParameter
                        {
                            ParameterName = "@Time",
                            SqlDbType     = SqlDbType.Int,
                            Direction     = ParameterDirection.Input,
                            SqlValue      = (int)SetPlan.Time.Value.TotalSeconds
                        };
                        command.Parameters.Add(parameter);
                    }

                    parameter = new SqlParameter
                    {
                        ParameterName = "@Distance",
                        SqlDbType     = SqlDbType.VarChar,
                        Direction     = ParameterDirection.Input,
                        SqlValue      = SetPlan.Distance
                    };
                    command.Parameters.Add(parameter);

                    parameter = new SqlParameter
                    {
                        ParameterName = "@Interval",
                        SqlDbType     = SqlDbType.VarChar,
                        Direction     = ParameterDirection.Input,
                        SqlValue      = SetPlan.Interval
                    };
                    command.Parameters.Add(parameter);

                    command.Connection.Open();

                    command.ExecuteNonQuery();
                }
            }
        }