Пример #1
0
        void init()
        {
            HasHistory = HistoryCheck(change);
            string[] date = calendar.SplitDate(change.getFromDate());
            lblFrom.Text = date[0] + "-" + date[1] + "-";
            txtFrom.Text = date[2];
            if (change.getToDate() != null)
            {
                date       = calendar.SplitDate(change.getToDate());
                lblTo.Text = date[0] + "-" + date[1] + "-";
                txtTo.Text = date[2];
            }
            else
            {
                lblTo.Text = lblFrom.Text;
                txtTo.Text = txtFrom.Text;
            }
            Option3.Text = change.getStatus();
            if (Option3.Text == "R")
            {
                Option3.BackColor = Color.LightPink;
                Option1.BackColor = Color.LightGreen;
                Option2.BackColor = Color.Khaki;
                Option1.Text      = "W";
                Option2.Text      = "A";
            }
            else if (Option3.Text == "W")
            {
                Option3.BackColor = Color.LightGreen;
                Option1.BackColor = Color.LightPink;
                Option2.BackColor = Color.Khaki;
                Option1.Text      = "R";
                Option2.Text      = "A";
            }
            else if (Option3.Text == "A")
            {
                Option3.BackColor = Color.Khaki;
                Option1.BackColor = Color.LightGreen;
                Option2.BackColor = Color.LightPink;
                Option1.Text      = "W";
                Option2.Text      = "R";
            }
            txtReason.Text = change.getReason();
            Personnel person = db.getPerson(change.getPersonId());

            lblName.Text      = person.getName();
            HasChangeToSave   = !HasHistory;
            btnRemove.Visible = HasHistory;
            HasChangeToSave   = false;
        }
Пример #2
0
        //Commands
        public void addChange(Changes change = null)
        {
            string sql = "INSERT INTO changes (person, from_date, to_date, status, reason) VALUES " +
                         "(" + change.getPersonId() + ", '" +
                         change.getFromDate() + "', '" +
                         change.getToDate() + "', '" +
                         change.getStatus() + "', '" +
                         change.getReason() + "');";

            connection.Open();
            SQLiteCommand command = new SQLiteCommand(sql, connection);

            command.ExecuteNonQuery();
        }
Пример #3
0
        public void updateChange(Changes change)
        {
            string sql = "UPDATE changes SET person = " + change.getPersonId() +
                         ", from_date = '" + change.getFromDate() +
                         "', to_date = '" + change.getToDate() +
                         "', status = '" + change.getStatus() +
                         "', reason = '" + change.getReason() +
                         "' WHERE id = " + change.getId() + ";";

            connection.Open();
            SQLiteCommand command = new SQLiteCommand(sql, connection);

            command.ExecuteNonQuery();
            connection.Close();
        }
Пример #4
0
        void AddPerson(int id, List <String> rest)
        {
            String dayStatus = "W";
            Color  color = Color.LightGreen;
            int    from, to, WORK, REST;

            from = to = WORK = REST = 0;
            string changeStatus = dayStatus;

            for (int i = 1; i <= MaxDay; i++)
            {
                Changes change = database.getChange(id, (Year + "-" + Month + "-" + i));
                if (change.getId() != 0)
                {
                    HasChange = true;
                    string[] date = calendar.SplitDate(change.getFromDate());
                    from      = int.Parse(date[2]);
                    date      = calendar.SplitDate(change.getToDate());
                    to        = int.Parse(date[2]);
                    dayStatus = changeStatus = change.getStatus();
                    color     = Color.MediumPurple;
                }
                else if (HasChange && (i >= from && i <= to))
                {
                    dayStatus = changeStatus;
                    color     = Color.MediumPurple;
                }
                else
                {
                    if (rest.Contains(i.ToString()))
                    {
                        dayStatus = "R";
                    }
                    else
                    {
                        dayStatus = "W";
                    }

                    if (dayStatus == "W")
                    {
                        color = Color.LightGreen;
                    }
                    else if (dayStatus == "R")
                    {
                        color = Color.LightPink;
                    }
                }
                if (Year == calendar.Year() && Month == calendar.Month() && i == calendar.Day())
                {
                    color = Color.LightBlue;
                }
                else if (dayStatus == "A")
                {
                    color = Color.Khaki;
                }

                if (dayStatus == "W")
                {
                    Available[i - 1]++;
                    Total[i - 1]++;
                    WORK++;
                }
                else if (dayStatus == "R")
                {
                    REST++;
                }

                this.Controls[PERSON + id + "-" + i].Text      = dayStatus;
                this.Controls[PERSON + id + "-" + i].Tag       = dayStatus + "~" + id + "~" + Year + "~" + Month + "~" + i;
                this.Controls[PERSON + id].Tag                 = id;
                this.Controls[PERSON + id + "-" + i].BackColor = color;
            }
            if (MaxDay < 31)
            {
                for (int i = MaxDay + 1; i <= 31; i++)
                {
                    this.Controls[PERSON + id + "-" + i].Text      = "";
                    this.Controls[PERSON + id + "-" + i].Tag       = null;
                    this.Controls[PERSON + id + "-" + i].BackColor = Color.White;
                }
            }
            this.Controls[PERSON_WORK + id].Text = (WORK).ToString();
            this.Controls[PERSON_REST + id].Text = (REST).ToString();
            Work += WORK;
            Rest += REST;
        }