Пример #1
0
        public IHttpActionResult PutSeason(int id, Season season)
        {
            var    list     = new List <Season>();
            var    pageName = Request.RequestUri.LocalPath.getRouteName();
            Object obj      = null;
            var    UserId   = 0;

            if (Request.Headers.Contains("Email"))
            {
                var email = ((string[])(Request.Headers.GetValues("Email")))[0].ToString();
                UserId = db.Users.Where(x => x.IsActive == true && x.Email.Contains(email)).FirstOrDefault().Id;
            }
            string logTable = "";
            var    data     = db.Seasons.Where(x => x.IsActive == true && x.Id == id).FirstOrDefault();

            data.Code        = season.Code;
            data.Description = season.Description;
            data.UpdatedOn   = System.DateTime.UtcNow;
            try
            {
                db.SaveChanges();
                list.Add(season);
                return(Ok(data));
            }
            catch (DbUpdateConcurrencyException ex)
            {
                obj = ex;
            }

            finally
            {
                if (obj == null)
                {
                    logTable = "";
                    var change = list.ToDataTables().getChangedRecords();
                    var c      = change.Count() / 2;
                    for (var i = 0; i < c; i++)
                    {
                        logTable += change[i].Fieldname + " Old Value=[" + change[i].FieldValue + "] New Value=[" + change[i + c].FieldValue + "], ";
                    }
                    //logTable = Newtonsoft.Json.JsonConvert.SerializeObject(change);
                    var flag = season.CreateLog(pageName, logTable, UserId);
                }
            }
            return(Ok(data));
        }
Пример #2
0
        public IHttpActionResult PostSeason(Season season)
        {
            var    pageName = Request.RequestUri.LocalPath.getRouteName();
            Object obj      = null;
            var    UserId   = 0;

            if (Request.Headers.Contains("Email"))
            {
                var email = ((string[])(Request.Headers.GetValues("Email")))[0].ToString();
                UserId = db.Users.Where(x => x.IsActive == true && x.Email.Contains(email)).FirstOrDefault().Id;
            }
            Season model = new Season();

            model.Code        = season.Code;
            model.Description = season.Description;
            model.IsActive    = true;
            model.CreatedOn   = System.DateTime.UtcNow;
            model.UpdatedOn   = System.DateTime.UtcNow;
            db.Seasons.Add(model);
            try
            {
                db.SaveChanges();
            }
            catch (Exception ex) { obj = ex; }
            finally
            {
                if (obj == null)
                {
                    var logTable = Newtonsoft.Json.JsonConvert.SerializeObject(season, new JsonSerializerSettings()
                    {
                        PreserveReferencesHandling = PreserveReferencesHandling.Objects,
                        Formatting = Formatting.Indented
                    });
                    var flag = season.CreateLog(pageName, logTable, UserId);
                }
            }
            return(Ok(true));
        }