Example #1
0
            /// <summary>
            /// Static constructor.
            ///
            /// Loads laminations from an optimizer database.
            /// As of 03/15/2019 it only loads from a particular database.
            /// </summary>
            static StandardLaminations()
            {
                __laminations = new List <Lamination>();

                using (SQLiteConnection sqlCon = new SQLiteConnection(@DATABASE_CONNECTION_STRING, true))
                {
                    sqlCon.Open();
                    SQLiteCommand    sqlCom = new SQLiteCommand("SELECT [name], [tongue], [phase], [width], [height], [base_price], [weight], [shape], [thickness], [grade], [scrap_factor] FROM Std_Lams", sqlCon);
                    SQLiteDataReader reader = sqlCom.ExecuteReader();
                    if (reader.HasRows)
                    {
                        while (reader.Read())
                        {
                            try
                            {
                                Lamination lamination = new Lamination(true, reader["name"].ToString(), GetCoreShape(reader["shape"].ToString()), GetPhase(reader["phase"].ToString()), GetGrade(reader["grade"].ToString()),
                                                                       double.Parse(reader["thickness"].ToString()), double.Parse(reader["tongue"].ToString()), DetermineYoke(GetCoreShape(reader["shape"].ToString()), GetPhase(reader["phase"].ToString()), double.Parse(reader["tongue"].ToString())),
                                                                       double.Parse(reader["width"].ToString()), double.Parse(reader["height"].ToString()), double.Parse(reader["scrap_factor"].ToString()),
                                                                       GetDestructionFactor(GetGrade(reader["grade"].ToString())), GetExcitationFactor(GetGrade(reader["grade"].ToString())),
                                                                       double.Parse(reader["base_price"].ToString()), double.Parse(reader["weight"].ToString()));
                                __laminations.Add(lamination);
                            }
                            catch (Exception) { }
                        }
                    }
                }
            }
 public IActionResult Save(Lamination entity)
 {
     try
     {
         ClaimsPrincipal currentUser = this.User;
         var             id          = currentUser.Claims.FirstOrDefault(z => z.Type.Contains("primarysid")).Value;
         if (id == null)
         {
             return(BadRequest("Identificação do usuário não encontrada."));
         }
         if (entity.Id > decimal.Zero)
         {
             var entityBase = genericRepository.Get(entity.Id);
             entityBase.Name    = entity.Name;
             entityBase.Details = entity.Details;
             entityBase.UpdateApplicationUserId = id;
             entityBase.UpdateDate = DateTime.Now;
             genericRepository.Update(entityBase);
         }
         else
         {
             entity.ApplicationUserId = id;
             entity.CreateDate        = DateTime.Now;
             genericRepository.Insert(entity);
         }
         return(new JsonResult(entity));
     }
     catch (Exception ex)
     {
         return(new JsonResult(ex));
     }
 }