Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2019
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.58 KB | None | 0 0
  1. [HttpPost]
  2.         public ActionResult UpdateWorkout(string datas)
  3.         {
  4.             if(string.IsNullOrEmpty(datas) || !datas.Contains("`")  || datas.Contains("State") || !datas.Contains("undefined"))
  5.             {
  6.                 return Json(new { complete = true }, JsonRequestBehavior.AllowGet);
  7.             }
  8.  
  9.             List<string> datapoints = new List<string>();
  10.             int commacount = 0;
  11.             string s = "";
  12.             for(int i = 0; i < datas.Length; i++)
  13.             {
  14.                 if (datas[i] == '`')
  15.                     commacount++;
  16.                 if(commacount == 4)
  17.                 {
  18.                     datapoints.Add(s);
  19.                     s = "";
  20.                     commacount = 0;
  21.                 }
  22.                
  23.                    
  24.                 else
  25.                 {
  26.                     s += datas[i];
  27.                 }
  28.                
  29.             }
  30.             datapoints.Add(s);
  31.            
  32.  
  33.             List<Workout> Workouts = new List<Workout>();
  34.          
  35.             Workout workout = null;
  36.             int propertyCount = 0;
  37.             bool resetPropertyCount = false;
  38.             foreach(string datapoint in datapoints)
  39.             {
  40.  
  41.                 resetPropertyCount = false;
  42.                     string[] data = datapoint.Split('`');
  43.                     string workoutid = data[0];
  44.                     string val = data[1];
  45.                     string divName = data[2];
  46.                     string type = data[3];
  47.                 if(propertyCount == 0)
  48.                     workout = new OPPDBContext().Workouts.Where(p => p.workout_id.ToString() == workoutid).FirstOrDefault();
  49.                 switch (type)
  50.                     {
  51.                         case "sets":
  52.                             workout.set = val;
  53.                             break;
  54.                         case "reps":
  55.                             workout.reps = val;
  56.                             break;
  57.                         case "load":
  58.                             workout.percent_max = val;
  59.                             break;
  60.                         case "recoveryTime":
  61.                             workout.RecoveryTime = val;
  62.                             break;
  63.                         case "notes":
  64.                             workout.notes = val;
  65.                             break;
  66.                         case "vbtMs":
  67.                             workout.VbtMs = val;
  68.                             break;
  69.                         case "isRequired":
  70.                             workout.IsRequired = (val == "Y") ? true : false;
  71.                             break;
  72.                         case "superset":
  73.                             workout.superset = val;
  74.                             break;
  75.                     case "treeList":
  76.                         break;
  77.                     case "gridView":
  78.                         break;
  79.                     case "undefined":
  80.                         break;
  81.                     default:
  82.                         return Json(new { failure = true });
  83.  
  84.                 }
  85.                 if(propertyCount == 7)
  86.                 {
  87.                     Workouts.Add(workout);
  88.                     workout = null;
  89.                     propertyCount = 0;
  90.                     resetPropertyCount = true;
  91.                 }
  92.                 if(!resetPropertyCount)  
  93.                     propertyCount++;
  94.             }
  95.  
  96.             foreach(Workout wo in Workouts)
  97.             {
  98.                
  99.                 AddOrUpdateWorkout(wo);
  100.             }
  101.  
  102.             return Json(new { success = true });
  103.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement