protected void btnReturn_Click(object sender, EventArgs e)
        {
            GridView1.DataBind();


            CirculatedCopy cc = new CirculatedCopy();



            cc.Id             = int.Parse(GridView1.SelectedRow.Cells[1].Text);
            cc.CopyNumber     = int.Parse(GridView1.SelectedRow.Cells[2].Text);
            cc.BorrowerNumber = int.Parse(GridView1.SelectedRow.Cells[3].Text);
            cc.BorrowedDate   = DateTime.ParseExact(GridView1.SelectedRow.Cells[4].Text, "dd-MM-yyyy", CultureInfo.CurrentCulture);;
            cc.DueDate        = DateTime.ParseExact(GridView1.SelectedRow.Cells[5].Text, "dd-MM-yyyy", CultureInfo.CurrentCulture);;
            cc.ReturnedDate   = Calendar1.SelectedDate;
            cc.FineAmount     = AvaluateAmount();

            Return(cc);

            if (int.Parse(lblNumBorrowedCopies.Text) > 1)
            {
                getData();
                displayButtons(1);
                btnCheckMember.Enabled = true;
                Calendar1.Enabled      = true;
            }
            else
            {
                clearData();
                getData();
                displayButtons(1);
            }
        }
Esempio n. 2
0
        private void borrow(CirculatedCopy cc, Copy c, Reservation r)
        {
            // Insert borrow record
            if (cc == null)
            {
                return;
            }
            CirculatedCopyDAO.Insert(cc);

            // update type = 'B' at Copy
            if (c == null)
            {
                return;
            }
            c.Type = 'B';
            CopyDAO.Update(c);


            // update status = 'A' at Reservation
            if (r == null)
            {
                return;
            }
            r.Status = 'A';
            ReserveDAO.Update(r);
        }
Esempio n. 3
0
        public static CirculatedCopy GetCirculatedCopy(Borrower borrower)
        {
            SqlConnection conn    = DAO.getConnections();
            string        sql     = "SELECT * FROM CirculatedCopy WHERE borrowerNumber = @borrowerNumber";
            SqlCommand    command = new SqlCommand(sql, conn);

            command.Parameters.Add(new SqlParameter("@borrowerNumber", borrower.BorrowerNumber));
            conn.Open();
            SqlDataReader reader = command.ExecuteReader();

            while (reader.Read())
            {
                CirculatedCopy s = new CirculatedCopy();
                s.Id             = Int32.Parse(reader["ID"].ToString());
                s.CopyNumber     = Int32.Parse(reader["copyNumber"].ToString());
                s.BorrowerNumber = Int32.Parse(reader["borrowerNumber"].ToString());
                s.BorrowedDate   = Convert.ToDateTime(reader["borrowedDate"]);
                s.DueDate        = Convert.ToDateTime(reader["dueDate"]);
                s.ReturnedDate   = Convert.ToDateTime(reader["returnedDate"]);
                s.FineAmount     = float.Parse(reader["fineAmount"].ToString());
                conn.Close();
                return(s);
            }
            return(null);
        }
Esempio n. 4
0
        protected void btReturn_Click(object sender, EventArgs e)
        {
            CirculatedCopy cc;


            double fine = 0;

            if (Calendar1.SelectedDate > Convert.ToDateTime(GridView1.SelectedRow.Cells[5].Text))
            {
                fine = (int)(DateTime.Now - Convert.ToDateTime(GridView1.SelectedRow.Cells[5].Text)).TotalDays;
            }

            //fineTotal += fine;

            cc = new CirculatedCopy(int.Parse(GridView1.SelectedRow.Cells[2].Text), int.Parse(GridView1.SelectedRow.Cells[3].Text),
                                    Convert.ToDateTime(GridView1.SelectedRow.Cells[4].Text), Convert.ToDateTime(GridView1.SelectedRow.Cells[5].Text));
            cc.Id           = int.Parse(GridView1.SelectedRow.Cells[1].Text);
            cc.ReturnedDate = Calendar1.SelectedDate;
            cc.FineAmount   = fine;

            Return(cc);

            //SqlDataSource1.DataBind();
            GridView1.DataBind();

            displayButtons(1);
        }
Esempio n. 5
0
        private void btnReturn_Click(object sender, EventArgs e)
        {
            double fine, fineTotal = 0;

            try {
                DateTime.ParseExact(txtReturnedDate.Text, "dd/MM/yyyy", null);
            }
            catch {
                MessageBox.Show("Format of date must be 'dd/MM/yyyy'!");
                return;
            }
            CirculatedCopy cc;

            foreach (DataGridViewRow dr in dataGridView1.SelectedRows)
            {
                fine = 0;
                if (DateTime.ParseExact(txtReturnedDate.Text, "dd/MM/yyyy", null) > Convert.ToDateTime(dr.Cells["dueDate"].Value.ToString()))
                {
                    fine = (int)(DateTime.Now.AddDays(20) - Convert.ToDateTime(dr.Cells["dueDate"].Value.ToString())).TotalDays;
                }
                fineTotal += fine;
                cc         = new CirculatedCopy(int.Parse(dr.Cells["copyNumber"].Value.ToString()), int.Parse(dr.Cells["borrowerNumber"].Value.ToString()),
                                                Convert.ToDateTime(dr.Cells["borrowedDate"].Value.ToString()), Convert.ToDateTime(dr.Cells["dueDate"].Value.ToString()));
                cc.Id           = int.Parse(dr.Cells["ID"].Value.ToString());
                cc.ReturnedDate = DateTime.ParseExact(txtReturnedDate.Text, "dd/MM/yyyy", null);
                cc.FineAmount   = fine;
                Return(cc);
            }
            View();
            displayButtons(1);
        }
        private void btnReturn_Click(object sender, EventArgs e)
        {
            CirculatedCopy cc = new CirculatedCopy();

            cc.CirculatedCopyId = Convert.ToInt32(dgvBorrowedBooks.Rows[rowIndex].Cells["circulatedCopyId"].Value);
            cc.ReturnedDate     = dtpReturnedDate.Value;
            cc.FineAmount       = double.Parse(txtFineAmount.Text);
            CirculatedCopyDAO.Update(cc);

            Copy c = CopyDAO.GetCopy(Convert.ToInt32(dgvBorrowedBooks.Rows[rowIndex].Cells["copyNumber"].Value));

            if (ReservationDAO.GetFirstReservation(c.BookNumber) != null)
            {
                c.Type = 2;
            }
            else
            {
                c.Type = 0;
            }
            CopyDAO.UpdateType(c);

            view(int.Parse(txtMemberCode.Text));
            MessageBox.Show("Return Successful.");
            btnReturn.Enabled      = false;
            txtFineAmount.Text     = "";
            btnConfirmFine.Enabled = false;
        }
Esempio n. 7
0
        private void borrow(CirculatedCopy cc, Copy c, Reservation r)
        {
            // Insert borrow record
            if (cc == null)
            {
                return;
            }
            if (CirculatedCopyDAO.Insert(cc))
            {
                txtDueDate.Text = Calendar1.SelectedDate.AddDays(14).ToString("dd/MM/yyyy");
                // update type = 'B' at Copy
                c = (Copy)Session["copy"];
                if (c == null)
                {
                    return;
                }
                c.Type = 'B';
                CopyDAO.Update(c);


                // update status = 'A' at Reservation
                r = (Reservation)Session["reser"];
                if (r == null)
                {
                    return;
                }
                r.Status = 'A';
                ReserveDAO.Update(r);
            }
            else
            {
                lblError.Text = cc.BorrowedDate.ToString("yyyy-MM-dd hh:mm:ss");
                lblError.Text = "Borrow Fail :< ";
            }
        }
Esempio n. 8
0
        private void Return(CirculatedCopy cc)
        {
            CirculatedCopyDAO.Update(cc);
            Copy c = CopyDAO.GetCopy(cc.CopyNumber);

            // update type = 'A' in copy
            c.Type = 'A';
            CopyDAO.Update(c);
        }
Esempio n. 9
0
        private void btnBorrow_Click(object sender, EventArgs e)
        {
            CirculatedCopy cc = new CirculatedCopy(int.Parse(txtCopyNumber.Text), int.Parse(txtBorrowerNumber.Text),
                                                   DateTime.ParseExact(dateTimePicker1.Text, "dd/MM/yyyy", null), DateTime.ParseExact(txtDueDate.Text, "dd/MM/yyyy", null));

            borrow(cc, c, r);

            View();
            displayButtons(1);
        }
Esempio n. 10
0
        public static bool Insert(CirculatedCopy b)
        {
            SqlCommand cmd = new SqlCommand("insert into CirculatedCopy(copyNumber,borrowerNumber, borrowedDate, dueDate) values(@copyNumber,@borrowerNumber,@borrowedDate,@dueDate)");

            cmd.Parameters.AddWithValue("@copyNumber", b.CopyNumber);
            cmd.Parameters.AddWithValue("@borrowerNumber", b.BorrowerNumber);
            cmd.Parameters.AddWithValue("@borrowedDate", b.BorrowedDate);
            cmd.Parameters.AddWithValue("@dueDate", b.DueDate);
            return(DAO.UpdateTable(cmd));
        }
Esempio n. 11
0
        public static bool Update(CirculatedCopy c)
        {
            SqlCommand cmd = new SqlCommand("Update CirculatedCopy set returnedDate = @r , fineAmount = @f where ID = @i");

            cmd.Parameters.AddWithValue("@r", c.ReturnedDate);
            cmd.Parameters.AddWithValue("@f", c.FineAmount);
            cmd.Parameters.AddWithValue("@i", c.Id);

            return(DAO.UpdateTable(cmd));
        }
Esempio n. 12
0
        protected void btnBorrow_Click(object sender, EventArgs e)
        {
            CirculatedCopy cc = new CirculatedCopy(int.Parse(txtCopyNumber.Text), int.Parse(txtBorrowerNumber.Text),
                                                   Convert.ToDateTime(Calendar1.SelectedDate.ToString()), DateTime.ParseExact(txtDueDate.Text, "dd/MM/yyyy", null));

            borrow(cc, c, r);

            View();
            displayButtons(1);
        }
Esempio n. 13
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            CirculatedCopy cc = new CirculatedCopy(int.Parse(txtCopyNumber.Text), int.Parse(txtBorrowerNumber.Text),
                                                   Calendar1.SelectedDate, DateTime.ParseExact(txtDueDate.Text, "dd/MM/yyyy", null));

            borrow(cc, c, r);

            ObjectDataSource1.Select();
            GridView1.DataBind();
            displayButtons(1);
        }
Esempio n. 14
0
        public static bool Renew(CirculatedCopy cc)
        {
            SqlCommand cmd = new SqlCommand();

            cmd = new SqlCommand("update CirculatedCopy " +
                                 " set dueDate = @dd, numberRenew = numberRenew + 1 " +
                                 " where circulatedCopyId = @cid");
            cmd.Parameters.AddWithValue("@dd", cc.DueDate);
            cmd.Parameters.AddWithValue("@cid", cc.CirculatedCopyId);
            return(DAO.UpdateTable(cmd));
        }
Esempio n. 15
0
        public static bool Update(CirculatedCopy cc)
        {
            SqlCommand cmd = new SqlCommand();

            cmd = new SqlCommand("update CirculatedCopy " +
                                 "set returnedDate = @rd, fineAmount = @fa " +
                                 "where circulatedCopyId = @cid");
            cmd.Parameters.AddWithValue("@rd", cc.ReturnedDate);
            cmd.Parameters.AddWithValue("@fa", cc.FineAmount);
            cmd.Parameters.AddWithValue("@cid", cc.CirculatedCopyId);
            return(DAO.UpdateTable(cmd));
        }
Esempio n. 16
0
        public static bool Add(CirculatedCopy cc)
        {
            SqlCommand cmd = new SqlCommand();

            cmd = new SqlCommand("insert into CirculatedCopy(copyNumber, memberNumber, borrowedDate, dueDate, numberRenew) " +
                                 "values(@copyNum, @memNum, @borDate, @dueDate, 0)");
            cmd.Parameters.AddWithValue("@copyNum", cc.CopyNumber);
            cmd.Parameters.AddWithValue("@memNum", cc.MemberNumber);
            cmd.Parameters.AddWithValue("@borDate", cc.BorrowedDate);
            cmd.Parameters.AddWithValue("@dueDate", cc.DueDate);
            return(DAO.UpdateTable(cmd));
        }
Esempio n. 17
0
        static public bool Insert(CirculatedCopy cc)
        {
            String sql = "INSERT dbo.CirculatedCopy(copyNumber, borrowerNumber, borrowedDate, dueDate)" + Environment.NewLine +
                         "VALUES( @copyNumber,  @borrowerNumber, @borrowerDate,  @dueDate )";
            SqlCommand com = new SqlCommand(sql);

            com.Parameters.AddWithValue("@copyNumber", cc.CopyNumber);
            com.Parameters.AddWithValue("@borrowerNumber", cc.BorrowerNumber);
            com.Parameters.AddWithValue("@borrowerDate", cc.BorrowedDate);
            com.Parameters.AddWithValue("@dueDate", cc.DueDate);

            return(UpdateTable(com));
        }
Esempio n. 18
0
        public static bool Update(CirculatedCopy b)
        {
            SqlCommand cmd = new SqlCommand("update CirculatedCopy set copyNumber=@copyNumber, borrowerNumber = @borrowerNumber, borrowedDate = @borrowedDate, dueDate = @dueDate, returnedDate = @returnedDate,fineAmount = @fineAmount where ID=@id");

            cmd.Parameters.AddWithValue("@copyNumber", b.CopyNumber);
            cmd.Parameters.AddWithValue("@borrowerNumber", b.BorrowerNumber);
            cmd.Parameters.AddWithValue("@borrowedDate", b.BorrowedDate);
            cmd.Parameters.AddWithValue("@dueDate", b.DueDate);
            cmd.Parameters.AddWithValue("@returnedDate", b.ReturnedDate);
            cmd.Parameters.AddWithValue("@fineAmount", b.FineAmount);
            cmd.Parameters.AddWithValue("@ID", b.Id);
            return(DAO.UpdateTable(cmd));
        }
Esempio n. 19
0
        static public void Update(CirculatedCopy cc)
        {
            SqlCommand cmd = new SqlCommand("UPDATE CirculatedCopy SET copyNumber = @cn , borrowerNumber = @bn, borrowedDate = @bd, dueDate = @dd, returnedDate = @rd, fineAmount = @fa WHERE ID = @i ");

            cmd.Parameters.AddWithValue("@cn", cc.CopyNumber);
            cmd.Parameters.AddWithValue("@bn", cc.BorrowerNumber);
            cmd.Parameters.AddWithValue("@bd", cc.BorrowedDate);
            cmd.Parameters.AddWithValue("@dd", cc.DueDate);
            cmd.Parameters.AddWithValue("@rd", cc.ReturnedDate);
            cmd.Parameters.AddWithValue("@fa", cc.FineAmount);
            cmd.Parameters.AddWithValue("@i", cc.Id);
            UpdateTable(cmd);
        }
Esempio n. 20
0
        public static void Update(CirculatedCopy cc)
        {
            SqlConnection conn = new SqlConnection(strConn);

            conn.Open();
            SqlCommand cmd = new SqlCommand("update CirculatedCopy set returnedDate=@returnedDate, fineAmount=@fineAmount " +
                                            "where id=@id", conn);

            cmd.Parameters.AddWithValue("@id", cc.Id);
            cmd.Parameters.AddWithValue("@returnedDate", cc.ReturnedDate);
            cmd.Parameters.AddWithValue("@fineAmount", cc.FineAmount);
            cmd.ExecuteNonQuery();
            conn.Close();
        }
Esempio n. 21
0
        protected void btnBorrow_Click(object sender, EventArgs e)
        {
            DateTime receiveDate = Calendar1.SelectedDate;
            DateTime dueDate     = Calendar1.SelectedDate.AddDays(14);

            CirculatedCopy cc = new CirculatedCopy(int.Parse(txtCopyNumber.Text), int.Parse(txtBorrowerNumber.Text),
                                                   receiveDate, dueDate);

            c = CopyDAO.GetCopy(int.Parse(txtCopyNumber.Text));
            r = r = ReserveDAO.GetFirstReservation(c.BookNumber);
            borrow(cc, c, r);

            showData();
            displayButtons(1);
        }
Esempio n. 22
0
        public static bool Insert(CirculatedCopy cc)
        {
            SqlCommand cmd = new SqlCommand("insert into CirculatedCopy(copyNumber, borrowerNumber, borrowedDate, dueDate, fineAmount)" +
                                            "values(@copyNumber, @borrowerNumber, @borrowedDate , @dueDate, @fineAmount)");



            cmd.Parameters.AddWithValue("@copyNumber", cc.CopyNumber);
            cmd.Parameters.AddWithValue("@borrowerNumber", cc.BorrowerNumber);
            cmd.Parameters.AddWithValue("@borrowedDate", cc.BorrowedDate);
            cmd.Parameters.AddWithValue("@dueDate", cc.DueDate);
            cmd.Parameters.AddWithValue("@fineAmount", cc.FineAmount);

            return(DAO.UpdateTable(cmd));
        }
Esempio n. 23
0
        private void Return(CirculatedCopy cc)
        {
            CirculatedCopyDAO.Update(cc);

            Copy c = CopyDAO.GetCopy(cc.CopyNumber);

            // if copy is reference
            if (c.Type == 'R')
            {
                return;
            }
            // update type = 'A' in copy
            c.Type = 'A';
            CopyDAO.Update(c);
        }
        private void Return(CirculatedCopy cc)
        {
            if (CirculatedCopyDAO.Update(cc))
            {
                showMessageError("Return completed <3");

                Copy c = CopyDAO.GetCopy(cc.CopyNumber);

                // update type = 'A' in copy
                c.Type = 'A';
                CopyDAO.Update(c);
            }
            else
            {
                showMessageError("Return Fail :<");
            }
        }
Esempio n. 25
0
        public static void Insert(CirculatedCopy cc)
        {
            SqlConnection conn = new SqlConnection(strConn);

            conn.Open();
            SqlCommand cmd = new SqlCommand("insert into CirculatedCopy(id, copyNumber, borrowerNumber, dueDate, returnDate, fineAmount)" +
                                            "values (@id, @copyNumber, @borrowerNumber, @dueDate, @returnDate, @fineAmount)", conn);

            cmd.Parameters.AddWithValue("@id", cc.Id);
            cmd.Parameters.AddWithValue("@copyNumber", cc.CopyNumber);
            cmd.Parameters.AddWithValue("@borrowerNumber", cc.BorrowerNumber);
            cmd.Parameters.AddWithValue("@dueDate", cc.DueDate);
            cmd.Parameters.AddWithValue("@returnDate", cc.ReturnedDate);
            cmd.Parameters.AddWithValue("@fineAmounteDate", cc.FineAmount);
            cmd.ExecuteNonQuery();
            conn.Close();
        }
Esempio n. 26
0
        private void btnBorrow_Click(object sender, EventArgs e)
        {
            try {
                DateTime.ParseExact(txtBorrowedDate.Text, "dd/MM/yyyy", null);
            } catch {
                MessageBox.Show("Format of date is not valid!");
                return;
            }

            CirculatedCopy cc = new CirculatedCopy(int.Parse(txtCopyNumber.Text), int.Parse(txtBorrowerNumber.Text),
                                                   DateTime.ParseExact(txtBorrowedDate.Text, "dd/MM/yyyy", null), DateTime.ParseExact(txtDueDate.Text, "dd/MM/yyyy", null));

            borrow(cc, c, r);

            View();
            displayButtons(1);
        }
        private void btnBorrow_Click(object sender, EventArgs e)
        {
            if (dtpBorrowed.Value < dtpDue.Value)
            {
                CirculatedCopy cc = new CirculatedCopy();
                cc.CopyNumber   = int.Parse(txtCopyNumber.Text);
                cc.MemberNumber = int.Parse(txtMemberCode.Text);
                cc.BorrowedDate = dtpBorrowed.Value;
                cc.DueDate      = dtpDue.Value;

                if (CirculatedCopyDAO.Add(cc))
                {
                    Copy c = CopyDAO.GetCopy(int.Parse(txtCopyNumber.Text));
                    c.Type = 1;
                    CopyDAO.UpdateType(c);
                    display(2);
                    view(int.Parse(txtMemberCode.Text));
                    MessageBox.Show("Add Successful.");

                    if (check == 1)
                    {
                        Reservation r = ReservationDAO.GetFirstReservation(c.BookNumber);
                        r.Status = true;
                        ReservationDAO.UpdateStatus(r);
                    }

                    if (dgvBorrowedBooks.Rows.Count >= 5)
                    {
                        display(0);
                        MessageBox.Show("The number of borrowed books is 5. You can not borrow anymore book.");
                    }
                }
                else
                {
                    MessageBox.Show("Error.");
                }
            }
            else
            {
                MessageBox.Show("Borrowed date has to be smaller than Due date.");
            }
        }
Esempio n. 28
0
        private void dgvBorrowedBooks_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            DataGridView dgv = (DataGridView)sender;

            if (dgv.Columns[e.ColumnIndex] is DataGridViewButtonColumn && e.RowIndex >= 0)
            {
                if (Convert.ToInt32(dgvBorrowedBooks.Rows[e.RowIndex].Cells["numberRenew"].Value) < 3)
                {
                    CirculatedCopy cc = new CirculatedCopy();
                    cc.CirculatedCopyId = Convert.ToInt32(dgvBorrowedBooks.Rows[e.RowIndex].Cells["circulatedCopyId"].Value);
                    cc.DueDate          = Convert.ToDateTime(dgvBorrowedBooks.Rows[e.RowIndex].Cells["dueDate"].Value).AddDays(14);
                    if (CirculatedCopyDAO.Renew(cc))
                    {
                        dgvBorrowedBooks.DataSource = MemberDAO.GetBorrowedBooks(Convert.ToInt32(txtMemberCode.Text));
                        MessageBox.Show("Renew Successful.");
                    }
                }
                else
                {
                    MessageBox.Show("You can not renew more than 3 times.");
                }
            }
        }
Esempio n. 29
0
        protected void btnReturn_Click(object sender, EventArgs e)
        {
            CirculatedCopy cc;

            double fine = 0;

            if (Convert.ToDateTime(Calendar1.SelectedDate.ToString()) > Convert.ToDateTime(GridView1.SelectedRow.Cells[5].Text))
            {
                fine = (int)(Convert.ToDateTime(Calendar1.SelectedDate.ToString()) - Convert.ToDateTime(GridView1.SelectedRow.Cells[5].Text)).TotalDays;
            }

            cc = new CirculatedCopy(int.Parse(GridView1.SelectedRow.Cells[2].Text), int.Parse(GridView1.SelectedRow.Cells[3].Text),
                                    Convert.ToDateTime(GridView1.SelectedRow.Cells[4].Text), Convert.ToDateTime(GridView1.SelectedRow.Cells[5].Text));
            cc.Id           = int.Parse(GridView1.SelectedRow.Cells[1].Text);
            cc.ReturnedDate = Convert.ToDateTime(Calendar1.SelectedDate.ToString());
            cc.FineAmount   = fine;

            Return(cc);

            View();
            txtFineAmount.Text = "";
            displayButtons(1);
        }
Esempio n. 30
0
        private void borrow(CirculatedCopy cc, Copy c, Reservation r)
        {
            // Insert borrow record
            if (cc == null)
            {
                return;
            }
            CirculatedCopyDAO.Insert(cc);

            // update type = 'B' at Copy
            c      = CopyDAO.GetCopy(Int32.Parse(txtCopyNumber.Text));
            c.Type = 'B';
            CopyDAO.Update(c);


            // update status = 'A' at Reservation
            if (r == null)
            {
                return;
            }
            r.Status = 'A';
            ReserveDAO.Update(r);
        }