Beispiel #1
0
        public IHttpActionResult CompanyCreate([FromBody] EnterpriseCreateModel model)
        {
            long?id = 0;

            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest("The model is not valid"));
                }

                var service = new PumoxService();
                id = service.CompanyCreate(model).Result;
                if (id == null)
                {
                    return(InternalServerError());
                }

                return(Json(id));
            }
            catch (HttpException ex)
            {
                System.Diagnostics.Debug.WriteLine(ex.Message);
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message)));
            }
        }
Beispiel #2
0
        public async Task <long> CreateCompany(EnterpriseCreateModel model)
        {
            try
            {
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://localhost:8080/company/create");
                request.Method      = "POST";
                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(JsonConvert.DeserializeObject <long>(responseText));
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                throw ex;
            }
        }
Beispiel #3
0
        public static void PostEnterprise(EnterpriseCreateModel model)
        {
            var request    = new EnterpriseRequestHandler();
            var enterprise = new EnterpriseCreateModel();

            enterprise.Name = model.Name;
            enterprise.EstablishmentYear = model.EstablishmentYear;
            enterprise.Employees         = new List <EmployeeCreateModel>();
            if (model.Employees != null)
            {
                var list = model.Employees.ToList();
                for (int i = 0; i < model.Employees.Count; ++i)
                {
                    var employee = new EmployeeCreateModel();
                    employee.Firstname   = list[i].Firstname;
                    employee.Lastname    = list[i].Lastname;
                    employee.DateOfBirth = list[i].DateOfBirth;
                    employee.JobTitle    = list[i].JobTitle;
                    enterprise.Employees.Add(employee);
                }
            }
            var res = request.CreateCompany(enterprise).Result;

            Console.WriteLine(res);
        }
Beispiel #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();
        }
Beispiel #5
0
        public async Task <long?> CompanyCreate(EnterpriseCreateModel model)
        {
            long id = 0;

            try
            {
                using (var ctx = new dbPumox())
                {
                    using (var scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
                    {
                        Enterprise enterprise = new Enterprise()
                        {
                            Name = model.Name,
                            EstablishmentYear = model.EstablishmentYear,
                            Employees         = new List <Employee>()
                        };

                        if (model.Employees != null)
                        {
                            foreach (var employee in model.Employees)
                            {
                                enterprise.Employees.Add(new Employee
                                {
                                    FirstName   = employee.Firstname,
                                    LastName    = employee.Lastname,
                                    DateOfBirth = employee.DateOfBirth,
                                    JobTitle    = employee.JobTitle,
                                });
                            }
                        }

                        ctx.Enterprises.Add(enterprise);
                        await ctx.SaveChangesAsync();

                        scope.Complete();
                        id = enterprise.Id;
                    }
                }
                return(id);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(null);
            }
        }