예제 #1
0
        public void UserUpdate(User user, ActivityNote activ)
        {
            XDocument doc  = XDocument.Load($@"{dirPath}\Users\{user.Name}.xml");
            XElement  root = doc.Element("User").Element("WorkedActivities");

            if (!Checker.IsToday((XElement)root.LastNode))
            {
                root.Add(new XElement("Day",
                                      new XAttribute("Date", activ.Date.ToShortDateString()),
                                      new XElement("Activity",
                                                   new XAttribute("Name", activ.ChosenActivity.Name),
                                                   new XElement("Intensivity", activ.Intens),
                                                   new XElement("TrainingTime", activ.WorkingTime))));

                ((XElement)root.LastNode).AddFirst(new XElement("Summary",
                                                                new XElement("CaloriesWasted", activ.CaloriesWasted),
                                                                new XElement("TrainingTime", activ.WorkingTime)));
            }
            else
            {
                root = (XElement)root.LastNode;

                root.Add(new XElement("Activity",
                                      new XAttribute("Name", activ.ChosenActivity.Name),
                                      new XElement("TrainingTime", activ.WorkingTime)));

                ChangeSummary(activ, root.Element("Summary"));
            }

            doc.Save($@"{dirPath}\Users\{user.Name}.xml");
        }
예제 #2
0
        private void AddNoteButton_Click(object sender, EventArgs e)
        {
            if (activityDataSource.DataSource != null)
            {
                String       errorMessage = String.Empty;
                Activity     act          = (Activity)activityDataSource.DataSource;
                ActivityNote note         = new ActivityNote();
                note.ActivityID = act.ActivityID;
                note.Note       = ActivityNote.Text.Trim();

                Controller.InsertActivityNote(note, out errorMessage);

                if (errorMessage == String.Empty)
                {
                    act.ActivityNoteList.Add(note);
                    activityDataSource.DataSource = act;
                    refreshActivityTab();
                }
                else
                {
                    MessageBox.Show(errorMessage);
                }
            }
            else
            {
                MessageBox.Show("Please first select an activity to add a note to.");
            }
        }
예제 #3
0
        private void ChangeSummary(ActivityNote activ, XElement root)
        {
            root.Element("CaloriesWasted").Value = (ParseFromXml(root.Element("CaloriesWasted").Value) + activ.CaloriesWasted).ToString();

            root.Element("TrainingTime").Value =
                (int.Parse(root.Element("TrainingTime").Value) + activ.WorkingTime).ToString();
        }
예제 #4
0
 private void refreshActivityTab()
 {
     textBox1.Clear();
     ActivityNote.Clear();
     populateActivityVehicles();
     populateActivityNotes();
     populateActivityParticipants();
     populateAssignedTree();
 }
        public void AddActivityNote(string activityName, int intens, decimal trainingTimeMinutes, decimal trainingTimeSeconds)
        {
            ActivityNote activ = new ActivityNote
            {
                ChosenActivity = _db.GetActivityByName(activityName),
                Date           = DateTime.Today,
                Intens         = 0.5m + 0.25m * intens,
                WorkingTime    = (int)(trainingTimeMinutes * 60 + trainingTimeSeconds)
            };

            activ.CaloriesWasted = decimal.Round(activ.ChosenActivity.CaloriesCost * activ.WorkingTime / 60 * activ.Intens, 2);

            _updater.UserUpdate(currentUser, activ);
        }
예제 #6
0
        public void SaveActivityNote(ActivityNote note, out string errorMessage)
        {
            errorMessage = String.Empty;
            using (SqlConnection connection = new SqlConnection(LoginCredentials.ConnectionString))
            {
                try
                {
                    using (SqlCommand cmd = new SqlCommand())
                    {
                        if (note.ActivityNoteID == 0)
                        {
                            cmd.CommandText = "dbo.ActivityNoteInsert";
                            cmd.Parameters.Add(new SqlParameter("@NewID", System.Data.SqlDbType.Int)
                            {
                                Direction = System.Data.ParameterDirection.Output
                            });

                            cmd.Parameters.AddWithValue("@ActivityID", note.ActivityID);
                            cmd.Parameters.AddWithValue("@Note", note.Note);

                            cmd.Connection  = connection;
                            cmd.CommandType = System.Data.CommandType.StoredProcedure;
                            cmd.Connection.Open();
                            cmd.ExecuteScalar();

                            if (note.ActivityNoteID == 0)
                            {
                                int returnID = Convert.ToInt32(cmd.Parameters["@NewID"].Value);
                                if (returnID > 0)
                                {
                                    note.ActivityNoteID = returnID;
                                }
                            }
                        }
                    }
                }
                catch (Exception e)
                {
                    errorMessage = "Error occured when saving: " + e.Message;
                }
                finally
                {
                    connection.Close();
                }
            }
        }
예제 #7
0
        public ActivityNote GetActivityNote(ActivityNote note, out string errorMessage)
        {
            List <ActivityNote> returnList = new List <ActivityNote>();
            List <SqlParameter> parameters = new List <SqlParameter>();

            parameters.Add(new SqlParameter("@ActivityNoteID", note.ActivityNoteID));

            SqlCommand cmd = new SqlCommand("dbo.ActivityNoteGetByID");

            returnList = createConnection(cmd, out errorMessage, parameters);

            if (returnList.Count > 0)
            {
                return(returnList[0]);
            }
            else
            {
                return(new ActivityNote());
            }
        }
예제 #8
0
        public override IActivityNote ToModel()
        {
            var model = new ActivityNote()
            {
                Id                  = AlId,
                AuditId             = AuditId,
                EntityId            = EntityId,
                ActivityTypeId      = ActivityTypeId,
                ActionTypeId        = ActionTypeId,
                ActivityDate        = ActivityDate,
                UserId              = UserId,
                ActivityDescription = ActivityDescription,
                ToFromId            = ToFromId,
                EmailorPhone        = EmailorPhone,
                CallResultId        = CallResultId,
                IsCompleted         = IsCompleted,
                CreatedOn           = CreatedDate
            };

            return(model);
        }
예제 #9
0
 public void InsertActivityNote(ActivityNote note, out string errorMessage)
 {
     ActivityNoteData.SaveActivityNote(note, out errorMessage);
 }
예제 #10
0
 public ActivityNote GetActivityNote(ActivityNote note, out string errorMessage)
 {
     return(ActivityNoteData.GetActivityNote(note, out errorMessage));
 }