Ejemplo n.º 1
0
        public IActionResult CreateEvent(CreateActivity activity)
        {
            int UserId = LoggedIn.GetUserID(HttpContext);

            if (UserId == 0)
            {
                return(RedirectToAction("Index", "Login"));
            }

            if (ModelState.IsValid)
            {
                User  user     = GetCurrentUser(UserId);
                Event NewEvent = new Event(activity);
                NewEvent.CreatorId        = UserId;
                NewEvent.CreatorFirstName = user.FirstName;
                NewEvent.CreatorLastName  = user.LastName;
                dbContext.Events.Add(NewEvent);
                dbContext.SaveChanges();


                ViewEvent ToReturn = new ViewEvent(user, NewEvent);

                return(View("ViewActivity", ToReturn));
            }
            else
            {
                return(View("ActivityForm"));
            }
        }
Ejemplo n.º 2
0
        public void AddActivity_ThorwException_Return0()
        {
            #region 配置  Substitute
            _agentRepository.When(x => x.GetAgent(Arg.Any <int>())).Do(info =>
            {
                throw new Exception();
            });

            CreateActivity createActivity = new CreateActivity(_agentRepository, _preferentialActivityRepository);
            #endregion

            #region 操作 Arg

            CreateOrUpdateBjdInfoRequest createOrUpdate = new CreateOrUpdateBjdInfoRequest();
            createOrUpdate.ActivityContent = "123";
            var result = createActivity.AddActivity(createOrUpdate, Arg.Any <int>());

            #endregion

            #region 断言

            Assert.AreEqual(0, result.id);

            #endregion
        }
        public void AddActivity_SelectRowNull_Return0()
        {
            #region 配置  Substitute
            IPreferentialActivityRepository _preferentialActivityRepository = Substitute.For <IPreferentialActivityRepository>();
            IAgentRepository _agentRepository = Substitute.For <IAgentRepository>();

            _preferentialActivityRepository.GetListByType(Arg.Any <int>(), Arg.Any <string>()).Returns(x => null);

            CreateActivity createActivity = new CreateActivity(_agentRepository, _preferentialActivityRepository);

            #endregion

            #region 操作  Arg

            CreateOrUpdateBjdInfoRequest createOrUpdate = new CreateOrUpdateBjdInfoRequest();
            createOrUpdate.ActivityContent = "123";
            var result = createActivity.AddActivity(createOrUpdate, Arg.Any <int>());

            #endregion

            #region 断言

            Assert.AreNotEqual(0, result.activity_status);

            #endregion
        }
Ejemplo n.º 4
0
        public ActionResult Create([Bind(Include = "Id,TypeOfActivity,Name,Description,Submission,ActivityStart,ActivityEnd,ModulId,ModulStart,ModulEnd")] CreateActivity createActivity)
        {
            if (ModelState.IsValid)
            {
                {
                    if (createActivity.ActivityStart > createActivity.ModulStart && createActivity.ActivityEnd < createActivity.ModulEnd)
                    {
                        ActivityModel model = new ActivityModel
                        {
                            Name           = createActivity.Name,
                            Description    = createActivity.Description,
                            StartDate      = createActivity.ActivityStart,
                            EndDate        = createActivity.ActivityEnd,
                            ModulId        = createActivity.ModulId,
                            TypeOfActivity = createActivity.TypeOfActivity,
                            Submission     = createActivity.Submission,
                        };

                        db.Activities.Add(model);
                        db.SaveChanges();
                        return(model.Submission ? RedirectToAction("CreateAssignment", new { id = model.Id }) : RedirectToAction("Index", "Home"));
                    }
                }
            }
            ViewBag.dateFailure = "Gick inte att skapa en aktvitet";

            return(View(createActivity));


            //ViewBag.ModulId = new SelectList(db.Models, "Id", "Name", activityModel.ModulId);
        }
Ejemplo n.º 5
0
        // GET: Activity/Create
        public ActionResult Create(int id)
        {
            var query = db.Moduls.Find(id);

            //Todo:1 Partial


            //if (query.Activities.Any())
            //{
            //    var activityStart = query.Activities.OrderBy(a => a.EndDate).Last().EndDate;

            //    CreateActivity model = new CreateActivity{DisplayModulStart = activityStart.ToShortDateString(), ModulId = id, ActivityStart = activityStart, ActivityEnd = activityStart.AddDays(1)};


            //}


            //ViewBag.ModulId = new SelectList(db.Models, "Id", "Name");
            //ActivityModel model = new ActivityModel{ ModulId = id };
            CreateActivity model = new CreateActivity
            {
                ModulId           = id,
                DisplayModulStart = query.StartDate.ToShortDateString(),
                DisplayModulEnd   = query.EndDate.ToShortDateString(),
                ModulName         = query.Name,
                ModulStart        = query.StartDate,
                ModulEnd          = query.EndDate
            };

            return(PartialView(model));
        }
Ejemplo n.º 6
0
        public void CreateActivityRun()
        {
            var personType = CodeNameResolver.GetTypeByName("AA_Person").As <EntityType>();

            const string createdRecordArgKey = "Record";

            var createActivity = new CreateActivity();

            createActivity.Save();
            ToDelete.Add(createActivity.Id);

            var nextActivity = (CreateImplementation)createActivity.As <WfActivity>().CreateWindowsActivity();

            var inputs = new Dictionary <string, object>
            {
                {
                    "Object", personType
                }
            };

            IDictionary <string, object> result = RunActivity(nextActivity, inputs);

            Assert.AreEqual(2, result.Count, "There are two results, and exit point + a value");

            Assert.IsTrue(result.ContainsKey(createdRecordArgKey));

            var resourceId = (IEntity)result[createdRecordArgKey];

            ToDelete.Add(resourceId.Id);

            var person = Entity.Get(resourceId.Id);

            Assert.IsNotNull(person, "We have a person");
        }
Ejemplo n.º 7
0
        public async Task Activity_Controller_Post_Should_Return_Accepted()
        {
            var busClientMock = new Mock <IBusClient>();

            var controller = new ActivityController(busClientMock.Object);

            var userId = Guid.NewGuid();

            controller.ControllerContext = new ControllerContext
            {
                HttpContext = new DefaultHttpContext
                {
                    User = new ClaimsPrincipal(new ClaimsIdentity(new[]
                    {
                        new Claim(ClaimTypes.Name, userId.ToString()),
                    }, "test"))
                }
            };

            var command = new CreateActivity
            {
                Id     = Guid.NewGuid(),
                UserId = userId
            };

            var result = await controller.Post(command);

            var contentResult = result.AsOrDefault <AcceptedResult>();

            contentResult.Should().NotBeNull();
            contentResult.Location.Should().IsSameOrEqualTo($"activity/{command.Id}");
        }
        public async Task Activities_controller_post_should_return_accepted()
        {
            var busClientMock          = new Mock <IBusClient>();
            var activityRepositoryMock = new Mock <IActivityRepository>();
            var controller             = new ActivitiesController(busClientMock.Object,
                                                                  activityRepositoryMock.Object);
            Guid userId = Guid.NewGuid();

            controller.ControllerContext = new ControllerContext
            {
                HttpContext = new DefaultHttpContext
                {
                    User = new ClaimsPrincipal(new ClaimsIdentity(
                                                   new Claim[] { new Claim(ClaimTypes.Name, userId.ToString()) }
                                                   , "test"))
                }
            };

            var command = new CreateActivity {
                Id     = Guid.NewGuid(),
                UserId = userId
            };

            var result = await controller.Post(command);

            var contentResult = result as AcceptedResult;

            contentResult.Should().NotBeNull();
            contentResult.Location.Should().BeEquivalentTo($"Activities/{command.Id}");
        }
Ejemplo n.º 9
0
        //[Ignore("This test is the same as the failing intg workflow tests '610' and '620' due to the enforcement of cardinality. The problem is that the assignment of a relationship is not clearing the old relationship if  the cardinality does not permit it.")]
        public void ReassignReportDuringManagerCreate()
        {
            var aaManager = CodeNameResolver.GetTypeByName("AA_Manager").As <EntityType>();
            var reportsTo = Entity.Get <Relationship>(new EntityRef("test:reportsTo"));

            var oldMgr = new Entity(aaManager);

            oldMgr.Save();
            ToDelete.Add(oldMgr.Id);

            var employee1 = CreateEmployee(oldMgr, reportsTo);
            var employee2 = CreateEmployee(oldMgr, reportsTo);

            var createActivity = new CreateActivity();

            createActivity.InputArguments.Add(new ResourceArgument {
                Name = "1"
            }.Cast <ActivityArgument>());
            createActivity.InputArguments.Add(new ResourceArgument {
                Name = "1_value_"
            }.Cast <ActivityArgument>());
            createActivity.InputArguments.Add(new BoolArgument {
                Name = "1_reverse"
            }.Cast <ActivityArgument>());
            createActivity.InputArguments.Add(new BoolArgument {
                Name = "1_replace"
            }.Cast <ActivityArgument>());

            createActivity.Save();
            ToDelete.Add(createActivity.Id);

            var nextActivity = (CreateImplementation)createActivity.As <WfActivity>().CreateWindowsActivity();


            var inputs = new Dictionary <string, object>
            {
                {
                    "Object", aaManager
                },
                {
                    "1_value_", new List <Entity>()
                    {
                        employee1, employee2
                    }
                },
                {
                    "1", reportsTo
                },
                {
                    "1_reverse", true
                },
                {
                    "1_replace", true
                }
            };


            RunActivity(nextActivity, inputs);
        }
        public async Task <IActionResult> Post([FromBody] CreateActivity command)
        {
            command.Id     = Guid.NewGuid();
            command.UserId = Guid.Parse(User.Identity.Name);
            await _busClient.PublishAsync(command);

            return(Accepted($"activities/{command.Id}"));
        }
Ejemplo n.º 11
0
        public async Task <IActionResult> Post([FromBody] CreateActivity command)
        {
            command.Id        = Guid.NewGuid();
            command.CreatedAt = DateTime.UtcNow;
            await _busClient.PublishAsync(command);

            return(Accepted($"activities/{command.Id}"));
        }
Ejemplo n.º 12
0
        public async Task <IActionResult> Post([FromBody] CreateActivity command)
        {
            command.UserId   = Guid.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier));
            command.Id       = Guid.NewGuid();
            command.CreateAt = DateTime.Now;
            await _busclient.PublishAsync(command);

            return(Accepted($"activities/{command.Id}"));
        }
        // Method for what happens when the store_btn_Click is clicked
        private void store_btn_Click(object sender, EventArgs e)
        {
            // Tries to create a connection to the database and otherwise catches the error and tells the user what the error is
            try
            {
                // Declaring the connection
                using (SqlConnection connection = new SqlConnection())
                {
                    // This allows us to connect to SQL Server
                    connection.ConnectionString = Program.connectionString;

                    // Opens the connection to the database
                    connection.Open();



                    // Makes sure the user doesn't leave the question and answer text boxes blank
                    if (question_textBox.Text != "" && answer_textBox.Text != "" && wAnswer1_textBox.Text != "" && wAnswer2_textBox.Text != "" && wAnswer3_textBox.Text != "")
                    {
                        if (getIsAns(answer_textBox.Text, wAnswer1_textBox.Text, wAnswer2_textBox.Text, wAnswer3_textBox.Text))
                        {
                            // Instantiates a new object called createActivity
                            CreateActivity createActivity = new CreateActivity();

                            // Calls a method of createActivity to try add the question to the database
                            if (createActivity.createTimedMC(connection, question_textBox.Text, answer_textBox.Text, wAnswer1_textBox.Text, wAnswer2_textBox.Text, wAnswer3_textBox.Text))
                            {
                                // Tells the user their question has been successfully added to the database
                                MessageBox.Show("Question successfully added to the database");

                                // Closes this form, redirecting the user back to the notes form
                                this.Close();
                            }
                        }
                        else
                        {
                            // Tells the user to make sure there isn't more than one of the same answer
                            MessageBox.Show("Please make sure there isn't more than one of the same answer");
                        }
                    }
                    else
                    {
                        // Tells the user to fill in all areas
                        MessageBox.Show("Please fill in all areas");
                    }



                    // Closes the connection to the database
                    connection.Close();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error:\n\n" + ex);
            }
        }
Ejemplo n.º 14
0
 public ActionResult Create(Activity activity, int groupId)
 {
     if (ModelState.IsValid)
     {
         CreateActivity action = new CreateActivity(_db, groupId, Requester(), activity);
         action.Execute();
         return(RedirectToAction("Calendar", "Group", new { id = groupId }));
     }
     return(View(activity));
 }
Ejemplo n.º 15
0
        public async Task <IActionResult> Post([FromBody] CreateActivity command)
        {
            Console.WriteLine("Post");
            command.Id        = Guid.NewGuid();
            command.CreatedAt = DateTime.UtcNow;
            command.UserId    = Guid.Parse(User.Identity.Name);
            await _busClient.PublishAsync(command);

            return(Accepted($"actio/{command.Id}"));
        }
Ejemplo n.º 16
0
        public async System.Threading.Tasks.Task <IActionResult> GetAAsync()
        {
            var command = new CreateActivity();

            command.Id        = Guid.NewGuid();
            command.CreatedAt = DateTime.UtcNow;
            await _busClient.PublishAsync(command);

            return(Accepted($"activities/{command.Id}"));
        }
        public async Task <IActionResult> Post([FromBody] CreateActivity command)
        {
            command.Id        = Guid.NewGuid();
            command.CreatedAt = DateTime.UtcNow;
            //Recognizing the user (read from the token)
            command.UserId = Guid.Parse(User.Identity.Name);
            await _busClient.PublishAsync(command);

            return(Accepted($"activities/{command.Id}"));
        }
Ejemplo n.º 18
0
        public async Task <IActionResult> Post(CreateActivity command)
        {
            command.Id        = Guid.NewGuid();
            command.CreatedAt = DateTime.UtcNow;
            command.UserId    = (Guid)User?.Identity?.Name !.ToGuid();

            await _bus.PublishAsync(command);

            return(Accepted($"  {command.Id}"));
        }
Ejemplo n.º 19
0
        private Activity MapCreateViewToActivity(CreateActivity activity)
        {
            var res = new Activity();

            res.Title         = activity.Title;
            res.ScheduledDate = DateTime.Parse(activity.ScheduledDate);
            res.Description   = activity.Description;
            res.Code          = activity.Code;

            return(res);
        }
Ejemplo n.º 20
0
        public void Bug_25770_AssigningWithNull()
        {
            var aaManager = CodeNameResolver.GetTypeByName("AA_Manager").As <EntityType>();
            var reportsTo = Entity.Get <Relationship>(new EntityRef("test:reportsTo"));


            var createActivity = new CreateActivity();

            createActivity.InputArguments.Add(new ResourceArgument {
                Name = "1"
            }.Cast <ActivityArgument>());
            createActivity.InputArguments.Add(new ResourceArgument {
                Name = "1_value_"
            }.Cast <ActivityArgument>());
            createActivity.InputArguments.Add(new BoolArgument {
                Name = "1_reverse"
            }.Cast <ActivityArgument>());
            createActivity.InputArguments.Add(new BoolArgument {
                Name = "1_replace"
            }.Cast <ActivityArgument>());

            createActivity.Save();
            ToDelete.Add(createActivity.Id);

            var nextActivity = (CreateImplementation)createActivity.As <WfActivity>().CreateWindowsActivity();


            var inputs = new Dictionary <string, object>
            {
                {
                    "Object", aaManager
                },
                {
                    "1_value_", new List <Entity>()
                    {
                        null
                    }                                                   // NULL (This was a side effect of a problem in the expression engine)
                },
                {
                    "1", reportsTo
                },
                {
                    "1_reverse", true
                },
                {
                    "1_replace", true
                }
            };


            RunActivity(nextActivity, inputs);
        }
        public async Task <IActionResult> Post([FromBody] CreateActivity command)
        {
            if (command == null)
            {
                throw new System.ArgumentNullException(nameof(command));
            }

            command.Id       = Guid.NewGuid();
            command.CreateAt = DateTime.UtcNow;

            await _busClient.PublishAsync(command);

            return(Accepted($"activities/{command.Id}"));
        }
        public async Task <IActionResult> Post([FromBody] CreateActivity command)
        {
            if (string.IsNullOrEmpty(User.Identity.Name))
            {
                return(Unauthorized());
            }

            command.Id        = Guid.NewGuid();
            command.CreatedAt = DateTime.UtcNow;
            command.UserId    = Guid.Parse(User.Identity.Name);
            await _busClient.PublishAsync <CreateActivity>(command);

            return(Accepted($"Activities/{command.Id}"));
        }
Ejemplo n.º 23
0
        public async Task <IActionResult> Post([FromBody] CreateActivity command)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            _logger.LogInformation($"Activity Controller Post Method Started and command Email is {command.Name} and Category Catefory {command.Category} and Description is {command.Description}");
            command.Id        = Guid.NewGuid();
            command.UserId    = Guid.Parse(User.Identity.Name);
            command.CreatedAt = DateTime.UtcNow;
            await _busClient.PublishAsync(command);

            return(Accepted($"activities/{command.Id}"));
        }
Ejemplo n.º 24
0
        public async Task <IActionResult> Post([FromBody] CreateActivity command)
        {
            if (command == null)
            {
                return(BadRequest());
            }

            command.Id        = Guid.NewGuid();
            command.CreatedAt = DateTime.UtcNow;
            command.UserId    = CurrentUserId();

            await _busClient.PublishAsync(command);

            return(Accepted($"activities/{command.Id}"));
        }
        public async Task <IActionResult> Post([FromBody] CreateActivity command)
        {
            // working now
            try
            {
                command.Id        = Guid.NewGuid();
                command.CreatedAt = DateTime.UtcNow;
                await _busClient.PublishAsync(command);

                return(Accepted($"activites/{command.Id}"));
            }
            catch (Exception e)
            {
                return(BadRequest(e));
            }
        }
        public async Task <IActionResult> Post([FromBody] CreateActivity command)
        {
            try
            {
                command.Id        = Guid.NewGuid();
                command.CreatedAt = DateTime.UtcNow;
                command.UserId    = Guid.Parse(User.Identity.Name);
                await _busClient.PublishAsync(command);

                return(Accepted($"Activities/{command.Id}"));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 27
0
        /// <summary>
        /// Add Create activity
        /// </summary>
        public static Workflow AddCreate(this Workflow wf, string name, string resourceTypeExpression = null, string fromNamed = null, string fromExit = null)
        {
            var ca = new CreateActivity {
                Name = name
            };
            var caAs = ca.As <WfActivity>();

            if (resourceTypeExpression != null)
            {
                AddExpressionToActivityArgument(wf, caAs, "Object", resourceTypeExpression);
            }

            wf.AddActivity(caAs, fromNamed, fromExit);
            AddMissingExpressionParametersToWorkflow(wf);

            return(wf);
        }
Ejemplo n.º 28
0
        public ActionResult Create([Bind(Include = "Id,TypeOfActivity,Name,Description,ActivityStart,ActivityEnd,ModulId,ModulStart,ModulEnd,file")] CreateActivity createActivity, HttpPostedFileBase file)
        {
            if (ModelState.IsValid)
            {
                {
                    if (createActivity.ActivityStart >= createActivity.ModulStart)
                    {
                        var startDate = createActivity.ActivityStart.Date;
                        var endDate   = createActivity.ActivityStart.Date;
                        if (file != null && file.ContentLength > 0)
                        {
                            string path = Path.Combine(Server.MapPath("~/Documents"), Path.GetFileName(file.FileName));
                            file.SaveAs(path);
                        }

                        ActivityModel model = new ActivityModel
                        {
                            Name           = createActivity.Name,
                            Description    = createActivity.Description,
                            StartDate      = startDate.AddHours(8),
                            EndDate        = endDate.AddHours(17),
                            ModulId        = createActivity.ModulId,
                            TypeOfActivity = createActivity.TypeOfActivity,
                            Submission     = createActivity.Submission,
                            Document       = file?.FileName
                        };

                        db.Activities.Add(model);
                        db.SaveChanges();
                        return(model.Submission ? RedirectToAction("CreateAssignment", new { id = model.Id }) : RedirectToAction("Index", "Activity", new { id = createActivity.ModulId }));
                    }
                }
            }
            ViewBag.dateFailure = "Gick inte att skapa en aktvitet";

            return(View(createActivity));


            //ViewBag.ModulId = new SelectList(db.Models, "Id", "Name", activityModel.ModulId);
        }
Ejemplo n.º 29
0
        public override void Seed()
        {
            /* ----- USF People Activities ----- */

            {   // Douglas Corarito
                var person = _entities.Get<Person>().Single(x => x.FirstName == "Douglas" && x.LastName == "Corarito");
                var user = person.User;

                var identity = new GenericIdentity(user.Name);
                var principal = new GenericPrincipal(identity, null);

                var employeeModuleSettings = _queryProcessor.Execute(new EmployeeModuleSettingsByPersonId(person.RevisionId));
                if (employeeModuleSettings == null) throw new Exception("No EmployeeModuleSettings for USF.");

                CreateActivity createActivity;

                #region Activity 1

                var createActivityValuesCommand = new CreateActivityValues(principal)
                {
                    Title =
                        "Understanding Causation of the Permian/Triassic Boundary, Largest Mass Extinction in Earth History",
                    Content =
                        "Permian/Triassic (P/Tr) Boundary Global Events—The P/Tr boundary represents the largest mass extinction in Earth history, yet its causes remain uncertain. I am investigating critical questions related to the extent and intensity of Permo-Triassic deep-ocean anoxia, patterns of upwelling of toxic sulfidic waters onto shallow-marine shelves and platforms, and the relationship of such events to global C-isotopic excursions and the delayed recovery of marine biotas during the Early Triassic. I am working on the P/Tr boundary globally.",
                    StartsOn = new DateTime(2003, 3, 1),
                };

                var activityExists = _entities.Get<Activity>().Any(x => x.PersonId == person.RevisionId && x.Values.Any(y =>
                    createActivityValuesCommand.Title.Equals(y.Title)));
                if (!activityExists)
                {
                    createActivity = new CreateActivity(principal)
                    {
                        Mode = ActivityMode.Draft,
                    };

                    _createActivity.Handle(createActivity);
                    _unitOfWork.SaveChanges();

                    Activity activity = createActivity.CreatedActivity;

                    createActivityValuesCommand = new CreateActivityValues(principal)
                    {
                        ActivityId = activity.RevisionId,
                        Mode = activity.Mode,
                        Title = createActivityValuesCommand.Title,
                        Content = createActivityValuesCommand.Content,
                        StartsOn = createActivityValuesCommand.StartsOn,
                    };

                    _createActivityValues.Handle(createActivityValuesCommand);

                    _createActivityType.Handle(new CreateActivityType(principal, activity.RevisionId)
                    {
                        ActivityTypeId = employeeModuleSettings.ActivityTypes.Single(x => x.Type.Contains("Research")).Id,
                    });

                    _createActivityType.Handle(new CreateActivityType(principal, activity.RevisionId)
                    {
                        ActivityTypeId = employeeModuleSettings.ActivityTypes.Single(x => x.Type.Contains("Teaching")).Id,
                    });

                    _createActivityPlace.Handle(new CreateActivityPlace(principal, activity.RevisionId)
                    {
                        PlaceId = _entities.Get<Place>().Single(x => x.OfficialName == "China").RevisionId,
                    });

                    _createActivityPlace.Handle(new CreateActivityPlace(principal, activity.RevisionId)
                    {
                        PlaceId = _entities.Get<Place>().Single(x => x.OfficialName == "Canada").RevisionId,
                    });

                    /* ----- Add Tags ----- */

                    _createActivityTag.Handle(new CreateActivityTag(principal, activity.RevisionId)
                    {
                        Text = "Vietnam",
                    });

                    _createActivityTag.Handle(new CreateActivityTag(principal, activity.RevisionId)
                    {
                        Text = "India",
                    });

                    _createActivityTag.Handle(new CreateActivityTag(principal, activity.RevisionId)
                    {
                        Text = "Japan",
                    });

                    /* ----- Add Documents ----- */

                    Seed(new CreateActivityDocument(principal, activity.RevisionId)
                    {
                        FileName = "02E6D488-B3FA-4D79-848F-303779A53ABE.docx",
                        MimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
                        Title = "Dissertation Excerpt",
                    });

                    Seed(new CreateActivityDocument(principal, activity.RevisionId)
                    {
                        FileName = "10EC87BD-3A95-439D-807A-0F57C3F89C8A.xls",
                        MimeType = "application/vnd.ms-excel",
                        Title = "Research Funding Breakdown"
                    });

                    Seed(new CreateActivityDocument(principal, activity.RevisionId)
                    {
                        FileName = "1322FF22-E863-435E-929E-765EB95FB460.ppt",
                        MimeType = "application/vnd.ms-powerpoint",
                        Title = "Conference Presentation"
                    });

                    _unitOfWork.SaveChanges();
                }

                #endregion
                #region Activity 2

                createActivityValuesCommand = new CreateActivityValues(principal)
                {
                    Title = "Professional Development Program for Teachers of English at Shandong University",
                    Content = "In Summer 2008, the Teaching English as a Second Language (TESL) Program delivered a professional development program for teachers of English at Shandong University in Jinan, China. Program instructors included two TESL doctoral students and one colleague living in the Czech Republic. Three courses were offered: Theory to Practice; Research in Second Language Acquisition; and Instructional Technology in English Language Teaching. 48 Chinese teachers completed the program. ",
                    StartsOn = new DateTime(2003, 6, 1)
                };

                activityExists = _entities.Get<Activity>().Any(x => x.PersonId == person.RevisionId && x.Values.Any(y =>
                    createActivityValuesCommand.Title.Equals(y.Title)));
                if (!activityExists)
                {
                    createActivity = new CreateActivity(principal)
                    {
                        Mode = ActivityMode.Draft,
                    };

                    _createActivity.Handle(createActivity);
                    _unitOfWork.SaveChanges();

                    Activity activity = createActivity.CreatedActivity;

                    createActivityValuesCommand = new CreateActivityValues(principal)
                    {
                        ActivityId = activity.RevisionId,
                        Mode = activity.Mode,
                        Title = createActivityValuesCommand.Title,
                        Content = createActivityValuesCommand.Content,
                        StartsOn = createActivityValuesCommand.StartsOn,
                    };

                    _createActivityValues.Handle(createActivityValuesCommand);
                    _unitOfWork.SaveChanges();

                    _createActivityType.Handle(new CreateActivityType(principal, activity.RevisionId)
                    {
                        ActivityTypeId = employeeModuleSettings.ActivityTypes.Single(x => x.Type.Contains("Service")).Id,
                    });

                    _createActivityPlace.Handle(new CreateActivityPlace(principal, activity.RevisionId)
                    {
                        PlaceId = _entities.Get<Place>().Single(x => x.OfficialName == "China").RevisionId,
                    });

                    _unitOfWork.SaveChanges();
                }

                #endregion
                #region Activity 3

                createActivityValuesCommand = new CreateActivityValues(principal)
                {
                    Title = "Workshop Preparation: Air pollution and Chinese Historic Site",
                    Content = "Drs. Tim Keener and Mingming Lu went to China in Oct. of 2006 to plan for an air quality workshop on the impact of air pollution and the Chinese historic sites, to be held in Xi’an, China in the fall of 2008. They have visited Tsinghua Univ., the XISU and discussed the details of the workshop plan with Prof. Wu, Associate Dean in the School of Tourism. they have visted Shanxi Archeology Research Institute, and Chinese Acedemy of Science in Xian, to meet potentail workshop participants. Drs. Lu and Keener is developing a proposal to NSF for the workshop.",
                    StartsOn = new DateTime(2006, 10, 9),
                    EndsOn = new DateTime(2006, 10, 10)
                };

                activityExists = _entities.Get<Activity>().Any(x => x.PersonId == person.RevisionId && x.Values.Any(y =>
                    createActivityValuesCommand.Title.Equals(y.Title)));
                if (!activityExists)
                {
                    createActivity = new CreateActivity(principal)
                    {
                        Mode = ActivityMode.Draft,
                    };

                    _createActivity.Handle(createActivity);
                    _unitOfWork.SaveChanges();

                    Activity activity = createActivity.CreatedActivity;

                    createActivityValuesCommand = new CreateActivityValues(principal)
                    {
                        ActivityId = activity.RevisionId,
                        Mode = activity.Mode,
                        Title = createActivityValuesCommand.Title,
                        Content = createActivityValuesCommand.Content,
                        StartsOn = createActivityValuesCommand.StartsOn,
                        EndsOn = createActivityValuesCommand.EndsOn,
                    };

                    _createActivityValues.Handle(createActivityValuesCommand);
                    _unitOfWork.SaveChanges();

                    _createActivityType.Handle(new CreateActivityType(principal, activity.RevisionId)
                    {
                        ActivityTypeId = employeeModuleSettings.ActivityTypes.Single(x => x.Type.Contains("Conference")).Id,
                    });

                    _createActivityType.Handle(new CreateActivityType(principal, activity.RevisionId)
                    {
                        ActivityTypeId = employeeModuleSettings.ActivityTypes.Single(x => x.Type.Contains("Teaching")).Id,
                    });

                    _createActivityType.Handle(new CreateActivityType(principal, activity.RevisionId)
                    {
                        ActivityTypeId = employeeModuleSettings.ActivityTypes.Single(x => x.Type.Contains("Honor")).Id,
                    });

                    _createActivityPlace.Handle(new CreateActivityPlace(principal, activity.RevisionId)
                    {
                        PlaceId = _entities.Get<Place>().Single(x => x.OfficialName == "China").RevisionId,
                    });

                    Seed(new CreateActivityDocument(principal, activity.RevisionId)
                    {
                        FileName = "817DB81E-53FC-47E1-A1DE-B8C108C7ACD6.pdf",
                        MimeType = "application/pdf",
                        Title = "Make a contribution form"
                    });

                    _unitOfWork.SaveChanges();
                }

                #endregion
                #region Activity 4

                createActivityValuesCommand = new CreateActivityValues(principal)
                {
                    Title = "Guest performer and teacher, China Saxophone Festival, Dalian, China",
                    Content = "Adj Professor, Professor EmeritusJazz Studies, Saxophone Studies, Ensembles & Conducting College Conservatory of Music"
                };

                activityExists = _entities.Get<Activity>().Any(x => x.PersonId == person.RevisionId && x.Values.Any(y =>
                    createActivityValuesCommand.Title.Equals(y.Title)));
                if (!activityExists)
                {
                    createActivity = new CreateActivity(principal)
                    {
                        Mode = ActivityMode.Draft,
                    };

                    _createActivity.Handle(createActivity);
                    _unitOfWork.SaveChanges();

                    Activity activity = createActivity.CreatedActivity;

                    createActivityValuesCommand = new CreateActivityValues(principal)
                    {
                        ActivityId = activity.RevisionId,
                        Mode = activity.Mode,
                        Title = createActivityValuesCommand.Title,
                        Content = createActivityValuesCommand.Content,
                    };

                    _createActivityValues.Handle(createActivityValuesCommand);
                    _unitOfWork.SaveChanges();

                    _createActivityType.Handle(new CreateActivityType(principal, activity.RevisionId)
                    {
                        ActivityTypeId = employeeModuleSettings.ActivityTypes.Single(x => x.Type.Contains("Creative")).Id,
                    });

                    _createActivityPlace.Handle(new CreateActivityPlace(principal, activity.RevisionId)
                    {
                        PlaceId = _entities.Get<Place>().Single(x => x.OfficialName == "China").RevisionId,
                    });

                    Seed(new CreateActivityDocument(principal, activity.RevisionId)
                    {
                        FileName = "5C62D74E-E8EE-4B9A-95F3-B2ABB1F6F912.gif",
                        MimeType = "image/gif",
                        Title = "Photo of the site"
                    });

                    Seed(new CreateActivityDocument(principal, activity.RevisionId)
                    {
                        FileName = "A44FAB3B-DEBA-4F14-8965-E379569066A9.png",
                        MimeType = "image/png",
                        Title = "Grads working hard"
                    });

                    Seed(new CreateActivityDocument(principal, activity.RevisionId)
                    {
                        FileName = "C0DA4900-762B-4B26-AE03-843CBB7C0E7B.bmp",
                        MimeType = "image/bmp",
                        Title = "Map of the incident"
                    });

                    Seed(new CreateActivityDocument(principal, activity.RevisionId)
                    {
                        FileName = "E4E53300-08D3-47C0-954C-BF15EF54F0A3.tif",
                        MimeType = "image/tiff",
                        Title = "Sunrise over the delta"
                    });

                    Seed(new CreateActivityDocument(principal, activity.RevisionId)
                    {
                        FileName = "EE23D741-C50D-40D5-8214-C18DF68CC6D3.jpg",
                        MimeType = "image/jpg",
                        Title = "Me"
                    });

                    _unitOfWork.SaveChanges();
                }

                #endregion
                #region Activity 5

                createActivityValuesCommand = new CreateActivityValues(principal)
                {
                    Title = "Fulbright Scholar Award to Research and Teach at Zhejiang University",
                    Content = "I will be conducting research and teaching two courses to medical and public health students at Zhejiang University in Hangzhou China. I will also be working closely with Dr. Tingzhong Yang who directs an institute that studies tobacco related problems in China. Further I wish to explore differences in health knowledge, attitudes and behaviors between Chinese and US college students."
                };

                activityExists = _entities.Get<Activity>().Any(x => x.PersonId == person.RevisionId && x.Values.Any(y =>
                    createActivityValuesCommand.Title.Equals(y.Title)));
                if (!activityExists)
                {
                    createActivity = new CreateActivity(principal)
                    {
                        Mode = ActivityMode.Draft,
                    };

                    _createActivity.Handle(createActivity);
                    _unitOfWork.SaveChanges();

                    Activity activity = createActivity.CreatedActivity;

                    createActivityValuesCommand = new CreateActivityValues(principal)
                    {
                        ActivityId = activity.RevisionId,
                        Mode = activity.Mode,
                        Title = createActivityValuesCommand.Title,
                        Content = createActivityValuesCommand.Content,
                    };

                    _createActivityValues.Handle(createActivityValuesCommand);
                    _unitOfWork.SaveChanges();

                    _createActivityType.Handle(new CreateActivityType(principal, activity.RevisionId)
                    {
                        ActivityTypeId = employeeModuleSettings.ActivityTypes.Single(x => x.Type.Contains("Award")).Id,
                    });

                    _createActivityPlace.Handle(new CreateActivityPlace(principal, activity.RevisionId)
                    {
                        PlaceId = _entities.Get<Place>().Single(x => x.OfficialName == "China").RevisionId,
                    });

                    _unitOfWork.SaveChanges();
                }

                #endregion

            }
        }
 public IActionResult Post([FromBody] CreateActivity command)
 {
     System.Console.WriteLine($"Post activity: {command.Name}");
     return(Ok());
 }
        protected override void Seed(EFExamples2.EFExamples2Context context)
        {
            var stockholm = new Werehouse()
            {
                Id   = 1,
                City = "Stockholm",
                Name = "Stockholm 1",
            };

            var wroclav = new Werehouse()
            {
                Id   = 2,
                City = "Wroclav",
                Name = "Meest Express Werehouse",
            };

            var customs = new Werehouse()
            {
                Id   = 3,
                City = "Dolgobichuv",
                Name = "Customs",
            };

            var kyiv = new Werehouse()
            {
                Id   = 4,
                City = "Kyiv",
                Name = "Kyiv 1",
            };

            context.Werehouses.Add(stockholm);
            context.Werehouses.Add(wroclav);
            context.Werehouses.Add(customs);
            context.Werehouses.Add(kyiv);

            var tufli = new Parcel()
            {
                Weight      = 1.4m,
                DeliveryFee = 6m,
                Id          = 1,
                Value       = 120,
            };

            var createTufli = new CreateActivity()
            {
                Id = 1,
                ExpectedDeliveryFee = 6,
                Parcel          = tufli,
                Price           = 120,
                Timestamp       = new DateTime(2019, 9, 10),
                Werehouse       = stockholm,
                Weight          = 1.4m,
                TargetWerehouse = kyiv
            };

            var readyForDeliveryToMeest = new ReadyForSendActivity()
            {
                Parcel    = tufli,
                Werehouse = stockholm,
                Timestamp = new DateTime(2019, 9, 10, 0, 0, 1),
            };

            var sentToMeest = new SendActivity()
            {
                Parcel          = tufli,
                Werehouse       = stockholm,
                Timestamp       = new DateTime(2019, 9, 10, 0, 0, 2),
                SentToWerehouse = wroclav,
            };

            var retreivedByMeest = new RetrieveActivity()
            {
                Parcel    = tufli,
                Werehouse = wroclav,
                Timestamp = new DateTime(2019, 9, 12),
            };

            var readyForDeliveryToCustoms = new ReadyForSendActivity()
            {
                Parcel    = tufli,
                Werehouse = wroclav,
                Timestamp = new DateTime(2019, 9, 13),
            };

            var sentToCustoms = new SendActivity()
            {
                Parcel          = tufli,
                Werehouse       = wroclav,
                Timestamp       = new DateTime(2019, 9, 13),
                SentToWerehouse = customs,
            };


            context.Parcels.Add(tufli);

            context.Activities.Add(createTufli);
            context.Activities.Add(readyForDeliveryToMeest);
            context.Activities.Add(sentToMeest);
            context.Activities.Add(retreivedByMeest);
            context.Activities.Add(readyForDeliveryToCustoms);
            context.Activities.Add(sentToCustoms);
        }