protected void Button1_Click(object sender, EventArgs e) { string macongty = DropCty.SelectedValue.ToString(); string madonvi = DropDownLDonVi.SelectedValue.ToString(); string manguoiduyet = txtNguoiDuyet.Text; int buocduyet = int.Parse(txtBucoDuyet.Text); BDepartment donvi = BDepartmentDAO.TimMaDonVi(madonvi, macongty); AbDepartmentType loaidonvi = LoaiDonViDAO.TimMaLoaiDonVi(int.Parse(donvi.DepartmentTypeID.ToString()), macongty); QuyTrinhXetDuyetCuaCanBo quytrinh = new QuyTrinhXetDuyetCuaCanBo(); //quytrinh.IDQuyTrinh = maquytrinh + (QuyTrinhXetDuyetDAO.DemQuyTrinhXetDuyet() + 1).ToString(); quytrinh.BADEPID = madonvi; quytrinh.tendonviTW = donvi.DepName; quytrinh.GSBH = macongty; //quytrinh.BuocDuyet = buocduyet; quytrinh.IDLoaiDonVi = loaidonvi.DepartmentTypeID; quytrinh.DepartmentTypeNameTW = loaidonvi.DepartmentTypeNameTW; if (DropDownLoaiPhieu.SelectedValue.ToString().Trim() == "") { quytrinh.abtype = "PDN1"; abill timloai = abillBUS.SearchAbillByID(quytrinh.abtype); quytrinh.abtypenameTW = timloai.abnameTW; } else { quytrinh.abtype = DropDownLoaiPhieu.SelectedValue.ToString(); abill timloai = abillBUS.SearchAbillByID(DropDownLoaiPhieu.SelectedValue.ToString()); quytrinh.abtypenameTW = timloai.abnameTW; } if (CheckThongQuaDonVi.Checked == true) { quytrinh.DonViThongQua = DropDownDonViThongQua.SelectedValue.ToString(); BDepartment donvithongqua = BDepartmentDAO.TimMaDonVi(DropDownDonViThongQua.SelectedValue.ToString(), macongty); quytrinh.tendonvithongqua = donvithongqua.DepName; Busers2 timnguoi = UserDAO.TimMaNhanVienTheoBoPhan(txtNguoiDuyet.Text, donvithongqua.ID, macongty); if (timnguoi == null) { quytrinh.NguoiDuyet = null; } else { quytrinh.NguoiDuyet = txtNguoiDuyet.Text; quytrinh.USERNAME = timnguoi.USERNAME; ChucVu chuc = ChucVuDAO.TimMaChucVu(timnguoi.IDChucVu, macongty); quytrinh.IDChucVu = chuc.IDChucVu; quytrinh.tendonvithongqua = chuc.TenChucVuTiengHoa; quytrinh.IDCapDuyet = timnguoi.IDCapDuyet; } } else { quytrinh.DonViThongQua = null; quytrinh.NguoiDuyet = txtNguoiDuyet.Text; Busers2 nguoi = UserDAO.TimNhanVienTheoMa(manguoiduyet, macongty); quytrinh.USERNAME = nguoi.USERNAME; ChucVu chuc = ChucVuDAO.TimMaChucVu(nguoi.IDChucVu, macongty); quytrinh.IDChucVu = chuc.IDChucVu; quytrinh.tendonvithongqua = chuc.TenChucVuTiengHoa; quytrinh.IDCapDuyet = nguoi.IDCapDuyet; } #region ThemQuyTrinh List <QuyTrinhXetDuyetCuaCanBo> ListQT1 = QuyTrinhXetDuyetCuaCanBoDAO.LayDanhSachQuyTrinhTheoCapDuyet(quytrinh.BADEPID, quytrinh.GSBH, quytrinh.abtype); int max1 = (from ct1 in ListQT1 select int.Parse(ct1.BuocDuyet.ToString())).Max(); quytrinh.BuocDuyet = max1 + 1; QuyTrinhXetDuyetCuaCanBo timquynguoi = QuyTrinhXetDuyetCuaCanBoDAO.TimNguoiTrongQuyTrinh(quytrinh.NguoiDuyet, quytrinh.abtype, quytrinh.BADEPID, quytrinh.GSBH); Busers2 timnguoiduyettrong = UserDAO.TimNhanVienTheoMa(quytrinh.NguoiDuyet, quytrinh.GSBH); if (timquynguoi == null && quytrinh.NguoiDuyet != null) { QuyTrinhXetDuyetCuaCanBoDAO.ThemQuyTrinhXetDuyetCuaCanBo(quytrinh);// them quy trinh List <QuyTrinhXetDuyetCuaCanBo> ListQT = QuyTrinhXetDuyetCuaCanBoDAO.LayDanhSachQuyTrinhTheoCapDuyet(quytrinh.BADEPID, quytrinh.GSBH, quytrinh.abtype); int min = (from ct1 in ListQT select int.Parse(ct1.BuocDuyet.ToString())).Min(); int min1 = (from ct1 in ListQT select int.Parse(ct1.IDCapDuyet.ToString())).Min(); foreach (QuyTrinhXetDuyetCuaCanBo qt in ListQT) { QuyTrinhXetDuyetCuaCanBo laynguoidautien = QuyTrinhXetDuyetCuaCanBoDAO.TimCapTiepTheoTrongQuyTrinh1(qt.BADEPID, qt.GSBH, qt.abtype, min1); if (qt.NguoiDuyet == laynguoidautien.NguoiDuyet) { QuyTrinhXetDuyetCuaCanBo quy = new QuyTrinhXetDuyetCuaCanBo(); quy.BuocDuyet = 1; quy.IDQuyTrinh = qt.IDQuyTrinh; buoc = 1; capduyet = int.Parse(qt.IDCapDuyet.ToString()); QuyTrinhXetDuyetCuaCanBoDAO.CapNhatQuyTrinh(quy); } else { //QuyTrinhXetDuyet laybuoc= QuyTrinhXetDuyetDAO.TimBuocTiepTheoTrongQuyTrinh1(qt.BADEPID, qt.GSBH, qt.abtype, int.Parse(qt.BuocDuyet.ToString())); if (qt.DonViThongQua == null && capduyet == qt.IDCapDuyet) { QuyTrinhXetDuyetCuaCanBo quy = new QuyTrinhXetDuyetCuaCanBo(); quy.BuocDuyet = buoc; quy.IDQuyTrinh = qt.IDQuyTrinh; buoc = int.Parse(quy.BuocDuyet.ToString()); capduyet = int.Parse(qt.IDCapDuyet.ToString()); QuyTrinhXetDuyetCuaCanBoDAO.CapNhatQuyTrinh(quy); } else { QuyTrinhXetDuyetCuaCanBo quy = new QuyTrinhXetDuyetCuaCanBo(); quy.BuocDuyet = buoc + 1; quy.IDQuyTrinh = qt.IDQuyTrinh; buoc = int.Parse(quy.BuocDuyet.ToString()); capduyet = int.Parse(qt.IDCapDuyet.ToString()); QuyTrinhXetDuyetCuaCanBoDAO.CapNhatQuyTrinh(quy); } } } } #endregion ///////////////////////////////////// code by Mr Tuan QuyTrinhXetDuyetCuaCanBo timng = QuyTrinhXetDuyetCuaCanBoDAO.TimNguoiTrongQuyTrinh(manguoiduyet, quytrinh.abtype, madonvi, macongty); List <Abcon> list = AbconDAO.LayDanhSachPhieuTaiCapDuyetChuaDuyet(madonvi, quytrinh.abtype, macongty, int.Parse(timng.BuocDuyet.ToString())); foreach (Abcon l in list) { buocthemvao = l.abde; if (l.IDCapDuyet > timng.IDCapDuyet) { List <Abcon> danh = AbconDAO.LayDanhSachPhieuTaiCapDuyetChuaDuyet1(l.from_depart, l.abtype, l.Gsbh, l.pdno, int.Parse(timng.BuocDuyet.ToString())); foreach (Abcon aa in danh) { if (timng.BuocDuyet == aa.Abstep && timng.DonViThongQua == null && timng.IDCapDuyet == aa.IDCapDuyet) { Abcon aabcc = new Abcon(); aabcc.abtype = aa.abtype; aabcc.pdno = aa.pdno; aabcc.Gsbh = aa.Gsbh; aabcc.IDCT = aa.IDCT; aabcc.Abstep = aa.Abstep; aabcc.abde = aa.abde + 1; AbconDAO.CapNhatPhieuChuyen(aabcc); } else { Abcon aabcc = new Abcon(); aabcc.abtype = aa.abtype; aabcc.pdno = aa.pdno; aabcc.Gsbh = aa.Gsbh; aabcc.IDCT = aa.IDCT; aabcc.Abstep = aa.Abstep + 1; aabcc.abde = aa.abde + 1; AbconDAO.CapNhatPhieuChuyen(aabcc); } } } else { if (l.IDCapDuyet == timng.IDCapDuyet && l.Abstep == timng.BuocDuyet) { List <Abcon> danh = AbconDAO.LayDanhSachPhieuTaiCapDuyetChuaDuyet1(l.from_depart, l.abtype, l.Gsbh, l.pdno, int.Parse(timng.BuocDuyet.ToString())); foreach (Abcon aa in danh) { if (timng.BuocDuyet == aa.Abstep && timng.DonViThongQua == null && timng.IDCapDuyet == aa.IDCapDuyet) { Abcon aabcc = new Abcon(); aabcc.abtype = aa.abtype; aabcc.pdno = aa.pdno; aabcc.Gsbh = aa.Gsbh; aabcc.IDCT = aa.IDCT; aabcc.Abstep = aa.Abstep; aabcc.abde = aa.abde + 1; AbconDAO.CapNhatPhieuChuyen(aabcc); } else { Abcon aabcc = new Abcon(); aabcc.abtype = aa.abtype; aabcc.pdno = aa.pdno; aabcc.Gsbh = aa.Gsbh; aabcc.IDCT = aa.IDCT; aabcc.Abstep = aa.Abstep + 1; aabcc.abde = aa.abde + 1; AbconDAO.CapNhatPhieuChuyen(aabcc); } } } else { List <Abcon> danh = AbconDAO.LayDanhSachPhieuTaiCapDuyetChuaDuyet1(l.from_depart, l.abtype, l.Gsbh, l.pdno, int.Parse(timng.BuocDuyet.ToString())); foreach (Abcon aa in danh) { if (timng.BuocDuyet == aa.Abstep && timng.DonViThongQua == null && timng.IDCapDuyet == aa.IDCapDuyet) { Abcon aabcc = new Abcon(); aabcc.abtype = aa.abtype; aabcc.pdno = aa.pdno; aabcc.Gsbh = aa.Gsbh; aabcc.IDCT = aa.IDCT; aabcc.Abstep = aa.Abstep; aabcc.abde = aa.abde + 1; AbconDAO.CapNhatPhieuChuyen(aabcc); } else { Abcon aabcc = new Abcon(); aabcc.abtype = aa.abtype; aabcc.pdno = aa.pdno; aabcc.Gsbh = aa.Gsbh; aabcc.IDCT = aa.IDCT; aabcc.Abstep = aa.Abstep + 1; aabcc.abde = aa.abde + 1; AbconDAO.CapNhatPhieuChuyen(aabcc); } } } } //them phieu //kiemtamaphieu = l.pdno; Abcon abco = new Abcon(); abco.ABC = l.ABC; abco.abde = buocthemvao; abco.ABJOB = l.ABJOB; abco.abmomo = l.abmomo; abco.Abstep = int.Parse(timng.BuocDuyet.ToString()); abco.abrult = false; abco.abtype = l.abtype; abco.Auditor = timng.NguoiDuyet; abco.bixoa = false; abco.boqua = false; abco.cothutu = true; abco.from_depart = l.from_depart; abco.from_user = l.from_user; abco.Gsbh = l.Gsbh; abco.Id_VB_CD = l.Id_VB_CD; abco.IDCapDuyet = timng.IDCapDuyet; abco.IDChiTiet = l.IDChiTiet; abco.kytoanbo = true; abco.lydokhongduyet = l.lydokhongduyet; abco.Maintitle = l.Maintitle; abco.ncancel = 0; abco.Nhom = l.Nhom; abco.Password2 = null; abco.pdno = l.pdno; abco.received = l.received; abco.signatue = null; abco.Userdate = l.Userdate; abco.Yn = 4; AbconBUS.ThemChiTiet(abco); } HienThiDanhSach(); }
protected void btnTrinhDuyet_Click(object sender, EventArgs e) { List <Abcon> ctxdlist = new List <Abcon>(); pdna phieudn = new pdna(); try { string maloai = Session["loaiphieu"].ToString(); string phieu = Session["maphieu"].ToString(); string bophan = Session["bp"].ToString(); string noidung = Session["noidung"].ToString(); string tieude = Session["tieude"].ToString(); string congty = Session["congty"].ToString(); string user = Session["user"].ToString(); //string ngaytao = DateTime.Parse(DateTime.Now.ToShortDateString()).ToString("yyyy-MM-dd"); pdna phieun = new pdna(); { phieun.GSBH = congty; phieun.pdno = phieu; phieun.pddepid = bophan; phieun.mytitle = tieude; phieun.pdmemovn = noidung; phieun.CFMDate0 = DateTime.Parse(DateTime.Now.ToShortDateString()); phieun.USERID = user; phieun.CFMID0 = user; phieun.bixoa = false; phieun.YN = 0; phieun.USERDATE = DateTime.Parse(DateTime.Now.ToShortDateString()); phieun.ABC = Convert.ToInt32(DropUutien.SelectedValue.ToString()); phieun.LevelDoing = 1; } db.pdnas.InsertOnSubmit(phieun); db.SubmitChanges(); for (int i = 0; i < TreeView1.Nodes[0].ChildNodes.Count; i++) { TreeNode tn = TreeView1.Nodes[0].ChildNodes[i]; tn.Value = (i + 1).ToString(); foreach (TreeNode node in tn.ChildNodes) { Abcon vb = new Abcon(); if (ctxds.TryGetValue(tn.Text, out vb)) { // vb.IDCT = MA_CTXetDuyet + (AbconBUS.DemSoLuongMaVanBan_CapDuyet() + 1).ToString(); vb.abde = int.Parse(tn.Value.ToString()); vb.pdno = phieu; vb.cothutu = true; vb.Abstep = int.Parse(tn.Value.ToString()); AbconBUS.ThemChiTiet(vb); ctxdlist.Add(vb); } } } foreach (string str in lstIdNguoiNhan) { Abcon temp = AbconBUS.TimKiemVanBanDenTheoIdVanBan_IdNguoiNhan(phieudn.pdno, str, phieudn.CFMID0, false); string manguoidung = Session["user"].ToString(); string macongty = Session["congty"].ToString(); Busers2 nguoi = UserBUS.TimNhanVienTheoMa(manguoidung, macongty); if (temp != null) { continue; } Abcon vbd = new Abcon(); vbd.from_user = nguoi.USERID; vbd.Auditor = str; //vbd.pdnoreceived = phieudn.pdno; vbd.from_depart = phieudn.pddepid; vbd.bixoa = true; AbconBUS.ThemChiTiet(vbd); } } catch (TimeoutException ex) { foreach (Abcon ct in ctxdlist) { AbconBUS.XoaChiTiet(ct.IDCT, false); } string manguoidung = Session["user"].ToString(); string macongty = Session["congty"].ToString(); Busers2 nguoi = UserBUS.TimNhanVienTheoMa(manguoidung, macongty); pdnaBUS.XoaVanBan(phieudn, false); Until.WriteFileLogServer(nguoi.USERNAME + "\tTạo văn bản\t" + phieudn.pdno + "\tThất bại."); LbThongBao.Text = "Lỗi trong quá trình xử lý"; } catch (Exception) { foreach (Abcon ct in ctxdlist) { AbconBUS.XoaChiTiet(ct.IDCT, false); } string manguoidung = Session["user"].ToString(); string macongty = Session["congty"].ToString(); Busers2 nguoi = UserBUS.TimNhanVienTheoMa(manguoidung, macongty); pdnaBUS.XoaVanBan(phieudn, false); Until.WriteFileLogServer(nguoi.USERNAME + "\tTạo văn bản\t" + phieudn.pdno + "\tThất bại."); LbThongBao.Text = "Lỗi trong quá trình xử lý"; } }