/// <summary> /// Kiểm tra và thêm mới Doandanhgiatochucchungnhan /// </summary> /// <param name="entity">Entity</param> /// <returns>Int32: ID của Doandanhgiatochucchungnhan Mới Thêm Vào</returns> public static Int32 Add(DoandanhgiatochucchungnhanEntity entity) { checkLogic(entity); checkDuplicate(entity, false); checkFK(entity); return DoandanhgiatochucchungnhanDAL.Add(entity); }
/// <summary> /// Kiểm tra và chỉnh sửa Doandanhgiatochucchungnhan /// </summary> /// <param name="entity">DoandanhgiatochucchungnhanEntity</param> /// <returns>bool:kết quả thực hiện</returns> public static bool Edit(DoandanhgiatochucchungnhanEntity entity) { checkExist(entity.PK_iDoandanhgiatochucchungnhanID); checkLogic(entity); checkDuplicate(entity, true); checkFK(entity); return DoandanhgiatochucchungnhanDAL.Edit(entity); }
protected void btnLuu_Click(object sender, EventArgs e) { //Kiểm tra số lượng thành viên trong đoàn đánh giá //Số lượng <=5 thành viên kể cả trưởng đoàn đánh giá bool bTruongdoancotrongdanhsach = false; int iSoluongchuyengia = 0; for (int i = 0; i < cblDoandanhgia.Items.Count; ++i) { if (cblDoandanhgia.Items[i].Selected) { iSoluongchuyengia++; if (ddlTruongdoan.SelectedValue == cblDoandanhgia.Items[i].Value) { bTruongdoancotrongdanhsach = true; } } } if(!bTruongdoancotrongdanhsach) { iSoluongchuyengia++; } if(iSoluongchuyengia > 5) { lblThongbao.Text = "Chọn không quá 5 chuyên gia cho một đoàn đánh giá!"; return; } else if(iSoluongchuyengia < 3) { lblThongbao.Text = "Đoàn đánh giá phải từ 3 đến 5 chuyên gia!"; return; } //----------------------------------------------------- try { if (Session["PK_iTochucchungnhanID"] != null) PK_iTochucchungnhanID = Convert.ToInt32(Session["PK_iTochucchungnhanID"].ToString()); PK_iDanhgiatochucID = getThongtindanhgia(PK_iTochucchungnhanID); DanhgiatochucchungnhanEntity oDanhgia = new DanhgiatochucchungnhanEntity(); oDanhgia.sPhamvinghidinh = txtPhamvideghi.InnerText; oDanhgia.dNgaydanhgia = DateTime.Parse(txtNgaydg.Text + " " + txtGiodg.Text); oDanhgia.sCancudanhgia = txtCancudanhgia.InnerText; oDanhgia.sNoidungdanhgia = txtNoidungdanhgia.InnerText; oDanhgia.sKetquadanhgia = txtKetquadanhgia.InnerText; oDanhgia.sKetquadanhgia = txtKetquadanhgia.InnerText; oDanhgia.iKetquadanhgia = short.Parse(ddlKetluan.SelectedItem.Value); oDanhgia.sKiennghi = txtaKiennghi.InnerText; oDanhgia.FK_iTochucchungnhanID = PK_iTochucchungnhanID; oDanhgia.FK_iTruongdoandanhgiaID = int.Parse(ddlTruongdoan.SelectedItem.Value); if (PK_iDanhgiatochucID == 0) { PK_iDanhgiatochucID = DanhgiatochucchungnhanBRL.Add(oDanhgia); DoandanhgiatochucchungnhanEntity oDoandanhgiaTmp = new DoandanhgiatochucchungnhanEntity(); for (int i = 0; i < cblDoandanhgia.Items.Count; ++i) { if (cblDoandanhgia.Items[i].Selected) { oDoandanhgiaTmp.FK_iDanhgiatochucchungnhanID = PK_iDanhgiatochucID; oDoandanhgiaTmp.FK_iChuyengiaID = int.Parse(cblDoandanhgia.Items[i].Value); DoandanhgiatochucchungnhanBRL.Add(oDoandanhgiaTmp); } } if (!bTruongdoancotrongdanhsach) { oDoandanhgiaTmp.FK_iDanhgiatochucchungnhanID = PK_iDanhgiatochucID; oDoandanhgiaTmp.FK_iChuyengiaID = int.Parse(ddlTruongdoan.SelectedValue); DoandanhgiatochucchungnhanBRL.Add(oDoandanhgiaTmp); } //Cập nhật trạng thái duyệt của tổ chức được chứng nhận TochucchungnhanEntity oTochuc = TochucchungnhanBRL.GetOne(PK_iTochucchungnhanID); oTochuc.bDuyet = (Int32.Parse(ddlKetluan.SelectedItem.Value) == 1 ? true : false); oTochuc.iTrangthai = 2; // 2 - Hoàn chỉnh hồ sơ oTochuc.sKytuviettat = " "; // Cập nhập giá trị Trạng thái TochucchungnhanBRL.Edit(oTochuc); lblThongbao.Text = "Lưu thành công!"; btnExportToWord.Enabled = true; NapThongtin(PK_iTochucchungnhanID); } else { oDanhgia.PK_iDanhgiatochucchungnhanID = PK_iDanhgiatochucID; DanhgiatochucchungnhanBRL.Edit(oDanhgia); //Xóa danh sách đánh giá viên đã tồn tại List<DoandanhgiatochucchungnhanEntity> lstDoandanhgiaE = DoandanhgiatochucchungnhanBRL.GetByFK_iDanhgiatochucchungnhanID(PK_iDanhgiatochucID); for (int i = 0; i < lstDoandanhgiaE.Count; ++i) { DoandanhgiatochucchungnhanBRL.Remove(lstDoandanhgiaE[i].PK_iDoandanhgiatochucchungnhanID); } bTruongdoancotrongdanhsach = false; DoandanhgiatochucchungnhanEntity oDoandanhgiaTmp = new DoandanhgiatochucchungnhanEntity(); DoandanhgiatochucchungnhanEntity oDoandanhgiaFound = null; for (int i = 0; i < cblDoandanhgia.Items.Count; ++i) { oDoandanhgiaFound = null; oDoandanhgiaFound = lstDoandanhgiaE.Find( delegate(DoandanhgiatochucchungnhanEntity oDoanDGFind) { return oDoanDGFind.FK_iChuyengiaID == int.Parse(cblDoandanhgia.Items[i].Value); } ); if (oDoandanhgiaFound != null) { if (!cblDoandanhgia.Items[i].Selected) { DoandanhgiatochucchungnhanBRL.Remove(oDoandanhgiaFound.PK_iDoandanhgiatochucchungnhanID); } lstDoandanhgiaE.Remove(oDoandanhgiaFound); } else { if (cblDoandanhgia.Items[i].Selected) { oDoandanhgiaTmp.FK_iDanhgiatochucchungnhanID = PK_iDanhgiatochucID; oDoandanhgiaTmp.FK_iChuyengiaID = int.Parse(cblDoandanhgia.Items[i].Value); DoandanhgiatochucchungnhanBRL.Add(oDoandanhgiaTmp); } } } lstDoandanhgiaE = null; //Nếu trưởng đoàn không có trong danh sách thì thêm vào danh sách if (!bTruongdoancotrongdanhsach) { oDoandanhgiaTmp.FK_iDanhgiatochucchungnhanID = PK_iDanhgiatochucID; oDoandanhgiaTmp.FK_iChuyengiaID = int.Parse(ddlTruongdoan.SelectedValue); DoandanhgiatochucchungnhanBRL.Add(oDoandanhgiaTmp); } //Cập nhật trạng thái duyệt của tổ chức được chứng nhận TochucchungnhanEntity oTochuc = TochucchungnhanBRL.GetOne(PK_iTochucchungnhanID); oTochuc.bDuyet = (Int32.Parse(ddlKetluan.SelectedItem.Value) == 1 ? true : false); string sNamCapPhep = DateTime.Today.Year.ToString("yy"); string sSoThuTuCuaToChuc = TochucchungnhanBRL.GetAll().Count + 1 + ""; oTochuc.sMaso = "VietGAP-TS-" + sNamCapPhep + "-" + sSoThuTuCuaToChuc; TochucchungnhanBRL.Edit(oTochuc); lblThongbao.Text = "Cập nhật thành công!"; NapThongtin(PK_iTochucchungnhanID); } } catch(Exception ex) { } }
/// <summary> /// Kiểm tra logic Entity /// </summary> /// <param name="entity">DoandanhgiatochucchungnhanEntity: entity</param> private static void checkLogic(DoandanhgiatochucchungnhanEntity entity) { if (entity.FK_iDanhgiatochucchungnhanID < 0) throw new Exception(EX_FK_IDANHGIATOCHUCCHUNGNHANID_INVALID); if (entity.FK_iChuyengiaID < 0) throw new Exception(EX_FK_ICHUYENGIAID_INVALID); }
/// <summary> /// Kiểm tra tồn tại khóa ngoại /// </summary> /// <param name="entity">DoandanhgiatochucchungnhanEntity:entity</param> private static void checkFK(DoandanhgiatochucchungnhanEntity entity) { DanhgiatochucchungnhanEntity oDanhgiatochucchungnhan = DanhgiatochucchungnhanDAL.GetOne(entity.FK_iDanhgiatochucchungnhanID); if (oDanhgiatochucchungnhan==null) { throw new Exception("Không tìm thấy :FK_iDanhgiatochucchungnhanID"); } ChuyengiaEntity oChuyengia = ChuyengiaDAL.GetOne(entity.FK_iChuyengiaID); if (oChuyengia==null) { throw new Exception("Không tìm thấy :FK_iChuyengiaID"); } }
/// <summary> /// Kiểm tra trùng lặp bản ghi /// </summary> /// <param name="entity">DoandanhgiatochucchungnhanEntity: DoandanhgiatochucchungnhanEntity</param> private static void checkDuplicate(DoandanhgiatochucchungnhanEntity entity,bool checkPK) { /* Example List<DoandanhgiatochucchungnhanEntity> list = DoandanhgiatochucchungnhanDAL.GetAll(); if (list.Exists( delegate(DoandanhgiatochucchungnhanEntity oldEntity) { bool result =oldEntity.FIELD.Equals(entity.FIELD, StringComparison.OrdinalIgnoreCase); if(checkPK) result=result && oldEntity.PK_iDoandanhgiatochucchungnhanID != entity.PK_iDoandanhgiatochucchungnhanID; return result; } )) { list.Clear(); throw new Exception(EX_FIELD_EXISTED); } */ }