Exemplo n.º 1
0
        public async Task <long?> EnterpriseUpdate(long id, EnterpriseUpdateModel model)
        {
            try
            {
                var enterprise = new Enterprise();

                using (var ctx = new dbPumox())
                {
                    using (var scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
                    {
                        enterprise = await ctx.Enterprises.Where(x => x.Id == id).FirstOrDefaultAsync();

                        if (enterprise == null)
                        {
                            return(null);
                        }

                        enterprise.Name = model.Name;
                        enterprise.EstablishmentYear = model.EstablishmentYear;
                        CreateOrUpdateEmployee(model, enterprise);
                        await ctx.SaveChangesAsync();

                        scope.Complete();
                    }
                }

                return(enterprise.Id);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(null);
            }
        }
Exemplo n.º 2
0
        public async Task <string> UpdateEnterprise(EnterpriseUpdateModel model)
        {
            try
            {
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://localhost:8080/companies/" + model.Id);
                request.Method      = "PUT";
                request.ContentType = "application/json";

                using (StreamWriter writer = new StreamWriter(request.GetRequestStream()))
                {
                    await writer.WriteAsync(JsonConvert.SerializeObject(model));

                    writer.Close();
                }


                var response = (HttpWebResponse)request.GetResponse();


                using (var streamReader = new StreamReader(response.GetResponseStream()))
                {
                    var responseText = streamReader.ReadToEnd();
                    return(responseText);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                throw ex;
            }
        }
Exemplo n.º 3
0
        public static void PutEnterprise(EnterpriseUpdateModel model)
        {
            var enterpriseRequest = new EnterpriseRequestHandler();
            var resp = enterpriseRequest.UpdateEnterprise(model).Result;

            Console.WriteLine(resp);
        }
Exemplo n.º 4
0
        static void Main(string[] args)
        {
            try
            {
                var model = new EnterpriseCreateModel();
                model.Name = "SomeName";
                model.EstablishmentYear = 1990;
                model.Employees         = new List <EmployeeCreateModel>()
                {
                    new EmployeeCreateModel()
                    {
                        Firstname   = "Mike",
                        Lastname    = "Michaels",
                        DateOfBirth = DateTime.ParseExact("1980-11-11", "yyyy-mm-dd", CultureInfo.InvariantCulture),
                        JobTitle    = "Administrator",
                    },
                    new EmployeeCreateModel()
                    {
                        Firstname   = "Jake",
                        Lastname    = "Ramirez",
                        DateOfBirth = DateTime.ParseExact("1990-11-17", "yyyy-mm-dd", CultureInfo.InvariantCulture),
                        JobTitle    = "Administrator",
                    },
                    new EmployeeCreateModel()
                    {
                        Firstname   = "Suzy",
                        Lastname    = "Ramirez",
                        DateOfBirth = DateTime.ParseExact("1992-06-27", "yyyy-mm-dd", CultureInfo.InvariantCulture),
                        JobTitle    = "Developer",
                    },
                };

                Demo.PostEnterprise(model);
                Demo.PrintAllJsonEnterprise();

                var putModel = new EnterpriseUpdateModel();
                putModel.Id                = 19;
                putModel.Name              = "SomeNamex";
                putModel.Employees         = new List <EmployeeUpdateModel>();
                putModel.EstablishmentYear = 1999;

                Demo.PutEnterprise(putModel);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            Console.ReadKey();
        }
Exemplo n.º 5
0
 private void CreateOrUpdateEmployee(EnterpriseUpdateModel model, Enterprise enterprise)
 {
     if (model.Employees != null)
     {
         foreach (var modelItem in model.Employees)
         {
             Employee employee = null;
             if ((employee = enterprise.Employees?.FirstOrDefault(x => x.Id == modelItem.Id)) != null)
             {
                 SetEmployeeValues(employee, modelItem);
             }
             else
             {
                 employee = new Employee();
                 SetEmployeeValues(employee, modelItem);
                 enterprise.Employees.Add(employee);
             }
         }
     }
 }
Exemplo n.º 6
0
        public IHttpActionResult EnterpriseUpdate(long id, [FromBody] EnterpriseUpdateModel model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest("The model is not valid"));
                }

                var service      = new PumoxService();
                var enterpriseId = service.EnterpriseUpdate(id, model).Result;
                if (enterpriseId == null)
                {
                    return(NotFound());
                }

                return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK, enterpriseId)));
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(ex.Message);
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message)));
            }
        }