public static void ThemCT_SUDUNGVTPT(CT_SUDUNGVTPT_DTO p, CT_PHIEUSUACHUA_DTO q, PHIEUSUACHUA_DTO n)
        {
            SqlConnection connection = new SqlConnection();

            connection.ConnectionString = KetNoi.Instance.conn;
            connection.Open();
            SqlCommand cmd = new SqlCommand("ThemCT_SuDungVTPT", connection);

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add("@MaXe", SqlDbType.Int);
            cmd.Parameters.Add("@NgaySuaChua", SqlDbType.SmallDateTime);
            cmd.Parameters.Add("@TongPhiSuaChua", SqlDbType.Int);
            cmd.Parameters.Add("@NoiDung", SqlDbType.NVarChar, 50);
            cmd.Parameters.Add("@MaTienCong", SqlDbType.Int);
            cmd.Parameters.Add("@TongTienCong", SqlDbType.Int);
            cmd.Parameters.Add("@ChiPhiVTPT", SqlDbType.Int);
            cmd.Parameters.Add("@TongChiPhi", SqlDbType.Int);
            cmd.Parameters.Add("@MaVTPT", SqlDbType.Int);
            cmd.Parameters.Add("@DonGia", SqlDbType.Int);
            cmd.Parameters.Add("@SoLuong", SqlDbType.Int);
            cmd.Parameters.Add("@ThanhTien", SqlDbType.Int);
            cmd.Parameters["@NoiDung"].Value        = q.NoiDung;
            cmd.Parameters["@MaTienCong"].Value     = q.MaTienCong;
            cmd.Parameters["@TongTienCong"].Value   = q.TongTienCong;
            cmd.Parameters["@ChiPhiVTPT"].Value     = q.ChiPhiVTPT;
            cmd.Parameters["@TongChiPhi"].Value     = q.TongChiPhi;
            cmd.Parameters["@MaXe"].Value           = n.MaXe;
            cmd.Parameters["@NgaySuaChua"].Value    = n.NgaySuaChua;
            cmd.Parameters["@TongPhiSuaChua"].Value = n.TongChiPhi;
            cmd.Parameters["@MaVTPT"].Value         = p.MaVTPT;
            cmd.Parameters["@DonGia"].Value         = p.DonGia;
            cmd.Parameters["@SoLuong"].Value        = p.SoLuong;
            cmd.Parameters["@ThanhTien"].Value      = p.ThanhTien;
            int count = cmd.ExecuteNonQuery();

            if (count > 0)
            {
            }
            connection.Close();
        }
Ejemplo n.º 2
0
        //Sử lí khi click nút Lưu
        private void btnSave_Click(object sender, EventArgs e)
        {
            DialogResult dr;

            dr = MessageBox.Show("Bạn có muốn lưu Phiếu sửa chữa không ?", "Xác nhận", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
            if (dr == DialogResult.OK)
            {
                int ChiPhiSuaChua = int.Parse(txtChiPhiSuaChua.Text);
                if (txtSoTienThu.Text.ToString() != "")
                {
                    int SoTienThu = int.Parse(txtSoTienThu.Text);
                    //Kiểm tra số tiền thu có bé hơn hoặc bằng Chi Phí sửa chữa hay không
                    if (SoTienThu <= ChiPhiSuaChua)
                    {
                        //// Lưu Chi tiết sử dụng VTPT cho record cuối cùng trong dgvPhieuSuaChua
                        if (dgvCT_SDVTPT.Rows.Count > 1 && flag == 0)
                        {
                            dtb[dem2] = new DataTable();
                            dtb[dem2].Columns.Add("STT", typeof(int));
                            dtb[dem2].Columns.Add("TenVTPT", typeof(string));
                            dtb[dem2].Columns.Add("DonGia", typeof(string));
                            dtb[dem2].Columns.Add("SoLuong", typeof(string));
                            dtb[dem2].Columns.Add("ThanhTien", typeof(string));
                            dtb[dem2].Columns.Add("MaVTPT", typeof(string));
                            for (int i = 0; i < dgvCT_SDVTPT.Rows.Count - 1; i++)
                            {
                                DataRow row;
                                row              = dtb[dem2].NewRow();
                                row["STT"]       = i + 1;
                                row["TenVTPT"]   = dgvCT_SDVTPT.Rows[i].Cells[1].Value;
                                row["DonGia"]    = dgvCT_SDVTPT.Rows[i].Cells[2].Value;
                                row["SoLuong"]   = dgvCT_SDVTPT.Rows[i].Cells[3].Value;
                                row["ThanhTien"] = dgvCT_SDVTPT.Rows[i].Cells[4].Value;
                                row["MaVTPT"]    = dgvCT_SDVTPT.Rows[i].Cells[5].Value;
                                dtb[dem2].Rows.Add(row);
                                flag++;
                            }
                        }
                        //// Gán Thông tin phiếu sửa chửa cho đối tượng PhHIEUSUACHUA_DTO
                        PHIEUSUACHUA_DTO PSC = new PHIEUSUACHUA_DTO(Convert.ToInt32(cbbMaXe.Text), dtpNgay.Value.Date,
                                                                    Convert.ToInt32(txtChiPhiSuaChua.Text), Convert.ToInt32(txtSoTienThu.Text),
                                                                    Convert.ToInt32(txtConLai.Text));
                        PHIEUSUACHUA_DAO.ThemPhieuSuaChua(PSC);// Lưu thông tin Phiếu sửa chữa xuống CSDL
                        //// Gán vàLưu từng Chi tiết phiếu sửa chữa và danh sách các vật tư phụ tùng tương ứng xuống cơ sở dữ liệu
                        for (int i = 0; i < dgvPhieuSuaChua.Rows.Count - 1; i++)
                        {
                            //Gán Chi tiết phiếu sửa chữa cho đối tượng CT_PHIEUSUACHUA_DTO
                            CT_PHIEUSUACHUA_DTO CT_PSC = new CT_PHIEUSUACHUA_DTO(dgvPhieuSuaChua.Rows[i].Cells[1].Value.ToString(),
                                                                                 Convert.ToInt32(dgvPhieuSuaChua.Rows[i].Cells[2].Value), Convert.ToInt32(dgvPhieuSuaChua.Rows[i].Cells[3].Value),
                                                                                 Convert.ToInt32(dgvPhieuSuaChua.Rows[i].Cells[4].Value), Convert.ToInt32(dgvPhieuSuaChua.Rows[i].Cells[5].Value),
                                                                                 Convert.ToInt32(dgvPhieuSuaChua.Rows[i].Cells[6].Value), Convert.ToInt32(dgvPhieuSuaChua.Rows[i].Cells[7].Value));
                            CT_PHIEUSUACHUA_DAO.ThemCT_PhieuSuaChua(CT_PSC, PSC);// lưu chi tiết phiếu sửa chữa xuống CSDL
                            if (dtb[i] != null)
                            {
                                for (int j = 0; j <= dtb[i].Rows.Count - 1; j++)
                                {
                                    // gán danh sách sử dụng VTPT vào đối tượng CT_SUDUNGVTPT_DTO với CT phiếu sưa chữa tương ứng
                                    CT_SUDUNGVTPT_DTO CT_SDVTPT = new CT_SUDUNGVTPT_DTO(Convert.ToInt32(dtb[i].Rows[j]["MaVTPT"].ToString()),
                                                                                        Convert.ToInt32(dtb[i].Rows[j]["DonGia"].ToString()),
                                                                                        Convert.ToInt32(dtb[i].Rows[j]["SoLuong"].ToString()),
                                                                                        Convert.ToInt32(dtb[i].Rows[j]["ThanhTien"].ToString()));
                                    CT_SUDUNGVTPT_DAO.ThemCT_SUDUNGVTPT(CT_SDVTPT, CT_PSC, PSC);//Lưu danh sách Sử dựng VTPT xuống CSDL
                                }
                            }
                            ///
                        }
                        MessageBox.Show("Bạn đã lưu thành công phiếu sửa chữa");
                        btnSave.Enabled          = false;
                        dgvPhieuSuaChua.ReadOnly = true;
                        dgvCT_SDVTPT.ReadOnly    = true;
                        txtSoTienThu.ReadOnly    = true;
                    }
                    else
                    {
                        MessageBox.Show("Nhập số tiền thu không hợp lệ, số tiền thu phải nhỏ hơn chi phí sửa chữa");
                    }
                }
                else
                {
                    MessageBox.Show("Chưa nhập số tiền thu");
                }
            }
        }