Пример #1
0
 private void btnOK_Click(object sender, EventArgs e)
 {
     if (lstDaiLy.CheckedItems.Count == 0)
     {
         XuLyGiaoDien.Alert("Vui lòng nhập đầy đủ thông tin", Form_Alert.enmType.Info);
     }
     else
     {
         if (!XuLyGiaoDien.wait.IsSplashFormVisible)
         {
             XuLyGiaoDien.wait.ShowWaitForm();
         }
         //simpleButton1.Text = "Cần chạy lại: " + daiLyD.DemNgayPhiSai().ToString();
         D_GIAODICH gdb   = new D_GIAODICH();
         string     daily = string.Format("{0}", lstDaiLy.CheckedItems[0]);
         int        n     = lstDaiLy.CheckedItems.Count;
         for (int i = 1; i < n; i++)
         {
             daily += string.Format(",{0}", lstDaiLy.CheckedItems[i]);
         }
         giaoDichOBindingSource.DataSource = gdb.LayDanhSachCN((DateTime)dtpTuNgay.EditValue, (DateTime)dtpDenNgay.EditValue, daily);
         if (giaoDichOBindingSource.DataSource != null)
         {
             btnGuiMail.Enabled = true;
             btnExcel.Enabled   = true;
         }
         if (XuLyGiaoDien.wait.IsSplashFormVisible)
         {
             XuLyGiaoDien.wait.CloseWaitForm();
         }
     }
 }
Пример #2
0
        private void groupControl3_CustomButtonClick(object sender, DevExpress.XtraBars.Docking2010.BaseButtonEventArgs e)
        {
            D_GIAODICH giaoDichD = new D_GIAODICH();
            List <Dictionary <string, object> > lstDicS = new List <Dictionary <string, object> >();
            List <string> lstTb   = new List <string>();
            List <string> lstCTV  = new List <string>();
            List <string> lstThem = new List <string>();

            lstThem.Add("S");
            lstThem.Add("S");
            lstThem.Add("T");
            lstTb.Add("GIAODICH");
            lstTb.Add("GIAODICH");
            lstTb.Add("LS_GIAODICH");
            if (!XuLyGiaoDien.wait.IsSplashFormVisible)
            {
                XuLyGiaoDien.wait.ShowWaitForm();
            }
            List <O_GIAODICH> sss = lstGDR4.Where(w => w.GhiChu.Contains("Khác kì") || w.GhiChu.Contains("Khác ngày")).ToList();

            for (int i = 0; i < sss.Count(); i += 2)
            {
                XuLyGiaoDien.wait.SetWaitFormDescription(string.Format("Đang chỉnh ngày GD {0}/{1}", i, sss.Count()));
                Thread.Sleep(10);
                O_GIAODICH gd  = sss[i];
                O_GIAODICH gd2 = sss[i + 1];
                Dictionary <string, object> dicS  = new Dictionary <string, object>();
                Dictionary <string, object> dicS3 = new Dictionary <string, object>();
                dicS3.Add("NgayGD", gd2.NgayGD);
                lstCTV.Add(string.Format("WHERE ID = {0}", gd2.ID));
                lstDicS.Add(dicS3);

                dicS.Add("NgayGD", gd.NgayGD);
                lstCTV.Add(string.Format("WHERE ID = {0}", gd.ID));
                lstDicS.Add(dicS);

                Dictionary <string, object> dic = new Dictionary <string, object>();
                dic.Add("FormName", "Tự động");
                dic.Add("MaCho", gd.SoVeVN);
                dic.Add("NoiDung", "[Vé hoàn]: Chỉnh ngày bằng so sánh VN");
                dic.Add("NVGiaoDich", DuLieuTaoSan.NV.ID);
                dic.Add("LoaiKhachHang", 0);
                dic.Add("Ma", 0);
                lstCTV.Add(string.Empty);
                lstDicS.Add(dic);

                if (lstDicS.Count == 3)
                {
                    giaoDichD.CapNhat_ThemNhieu(lstDicS, lstTb, lstCTV, lstThem);
                    lstDicS.Clear();
                    lstCTV.Clear();
                }
            }

            XuLyGiaoDien.ExportExcel(gridControl4, gridView8, "ExHoan-" + DateTime.Now.ToString("dd-MM-yyy"));
            if (XuLyGiaoDien.wait.IsSplashFormVisible)
            {
                XuLyGiaoDien.wait.CloseWaitForm();
            }
        }
Пример #3
0
        public void NapDatCho()
        {
            if (!XuLyGiaoDien.wait.IsSplashFormVisible)
            {
                XuLyGiaoDien.wait.ShowWaitForm();
            }
            string query = "LoaiGiaoDich in (0,1,5,6,7,10,11,12)";

            if (query.Length > 0)
            {
                if (chk2.Checked)
                {
                    if (bdtpTu.EditValue != null && bdtpDen.EditValue != null)
                    {
                        query   = string.Format("({2}) AND (convert(date, NgayGD) BETWEEN '{0}' AND '{1}')", ((DateTime)bdtpTu.EditValue).ToString("yyyyMMdd"), ((DateTime)bdtpDen.EditValue).ToString("yyyyMMdd"), query);
                        lstGDDC = new D_GIAODICH().DuLieu(query, DuLieuTaoSan.Q.VeAdmin);
                    }
                }
                else if (chk1.Checked)
                {
                    query   = string.Format("({0}) {1}", query, DuLieuTaoSan.ThoiGianRutGon("NgayGD")[idThoiGian]);
                    lstGDDC = new D_GIAODICH().DuLieu(query, DuLieuTaoSan.Q.VeAdmin);
                }
                giaoDichOBindingSource.DataSource = lstGDDC;
            }
            if (XuLyGiaoDien.wait.IsSplashFormVisible)
            {
                XuLyGiaoDien.wait.CloseWaitForm();
            }
        }
Пример #4
0
        private void btnExcel_Click(object sender, EventArgs e)
        {
            XtraFolderBrowserDialog fbd = new XtraFolderBrowserDialog();

            if (fbd.ShowDialog() == DialogResult.OK)
            {
                D_GIAODICH gdb  = new D_GIAODICH();
                bool       isok = false;
                int        n    = lstDaiLy.CheckedItems.Count;
                for (int i = 0; i < n; i++)
                {
                    O_DAILY           dl        = lstDaiLy.GetItem(lstDaiLy.CheckedIndices[0]) as O_DAILY;
                    string            daily     = string.Format("{0}", dl.ID);
                    List <O_GIAODICH> lstCongNo = gdb.LayDanhSachCN((DateTime)dtpTuNgay.EditValue, (DateTime)dtpDenNgay.EditValue, daily, true);

                    if (lstCongNo.Count > 1)
                    {
                        gridCTCongNo.Refresh();
                        isok = true;
                        CTGiaoDichDindingSource.DataSource = lstCongNo;
                        // Xuất excel
                        string strFile = fbd.SelectedPath + @"\" + dl.Ten + " - " + ((DateTime)dtpTuNgay.EditValue).ToString("dd_MM_yyyy") + " - " + ((DateTime)dtpDenNgay.EditValue).ToString("dd_MM_yyyy") + ".xlsx";

                        XlsxExportOptionsEx opt = new XlsxExportOptionsEx();
                        opt.CustomizeCell += op_CustomizeCell;
                        opt.SheetName      = "Bản Công Nợ";
                        gridCTCongNo.ForceInitialize();
                        grvCTCongNo.Columns["LuyKe"].Width      = 90;
                        grvCTCongNo.Columns["GiaThu"].Width     = 90;
                        grvCTCongNo.Columns["GiaHeThong"].Width = 90;
                        grvCTCongNo.Columns["TaiKhoanCo"].Width = 90;
                        grvCTCongNo.Columns["TenKhach"].Width   = 400;
                        grvCTCongNo.OptionsPrint.AutoWidth      = false;
                        grvCTCongNo.OptionsView.ColumnAutoWidth = false;
                        gridCTCongNo.ExportToXlsx(strFile, opt);
                        int index = lstDaiLy.FindItem(0, true, delegate(ListBoxFindItemArgs ei) { ei.IsFound = object.Equals(dl.ID, ei.ItemValue); });
                        lstDaiLy.SetItemChecked(index, false);
                    }
                }
                if (isok)
                {
                    XuLyGiaoDien.Alert("Xuất file thành công!", Form_Alert.enmType.Success);
                }
                else
                {
                    XuLyGiaoDien.Alert("Không có thông tin", Form_Alert.enmType.Info);
                }
            }
        }
Пример #5
0
        private void repositoryItemButtonEdit1_Click(object sender, EventArgs e)
        {
            O_BAOCAOCTNH c = (gridView2.GetRow(gridView2.GetSelectedRows()[0]) as O_BAOCAOCTNH);

            switch (c.LoaiGiaoDich)
            {
            case 1:
            case 2:
                List <O_KHACHSAN> ks = new D_KHACHSAN().DuLieu_ID(c.IDGDLienKet);
                new frmKhachSanThem(ks).ShowDialog(this);
                break;

            case 3:
            case 0:
                List <O_GIAODICH> gd = new D_GIAODICH().DuLieu_ID(c.IDGDLienKet);
                new frmVeThem(gd).ShowDialog(this);
                break;
            }
        }
Пример #6
0
        private void btnCH_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            List <O_GIAODICH> l1 = new D_GIAODICH().GDRutGon(_NCCO.ID, ((DateTime)eDate1.EditValue), ((DateTime)eDate2.EditValue), false) as List <O_GIAODICH>;
            List <O_GIAODICH> l2 = new D_GIAODICH().GDRutGon(_NCCO.ID, ((DateTime)eDate1.EditValue), ((DateTime)eDate2.EditValue), true) as List <O_GIAODICH>;

            if (!chkMC.Checked)
            {
                for (int i = 0; i < l1.Count; i++)
                {
                    l1[i].MaCho = l1[i].SoVeVN;
                }
                for (int i = 0; i < l2.Count; i++)
                {
                    l2[i].MaCho = l2[i].SoVeVN;
                }
            }
            GCVTCT.DataSource = l1;
            GVVTCT.BestFitColumns();

            GCVHCT.DataSource = l2;
            GVVHCT.BestFitColumns();
        }
Пример #7
0
        public void DuLieu()
        {
            if (!XuLyGiaoDien.wait.IsSplashFormVisible)
            {
                XuLyGiaoDien.wait.ShowWaitForm();
            }
            string _Query = string.Empty;

            if (chk1.Checked)
            {
                _Query = DuLieuTaoSan.ThoiGianRutGon("NgayGD")[_IDThoiGian];
            }
            else if (chk2.Checked)
            {
                if (bdtpTu.EditValue != null && bdtpDen.EditValue != null)
                {
                    _Query = string.Format("AND (convert(date, NgayGD) BETWEEN '{0}' AND '{1}')", ((DateTime)bdtpTu.EditValue).ToString("yyyyMMdd"), ((DateTime)bdtpDen.EditValue).ToString("yyyyMMdd"));
                }
            }
            else if (chk3.Checked && _SV_MC.Length > 0)
            {
                _Query = string.Format("AND REPLACE(COALESCE(SoVeVN,''),' ','') in ('{0}')", String.Join("' ,'", _SV_MC));
            }
            else if (chk4.Checked && _SV_MC.Length > 0)
            {
                _Query = string.Format("AND REPLACE(COALESCE(MaCho,''),' ','') in ('{0}')", String.Join("' ,'", _SV_MC));
            }

            if (_Query != string.Empty)
            {
                _ListGiaoDichO = new D_GIAODICH().DuLieu(string.Format("TheoDoi = 1 AND ({0}{1})", _Query.Substring(3), chkAll.Checked ? " or TinhCongNo = 0" : string.Empty), DuLieuTaoSan.Q.VeAdmin);
                giaoDichOBindingSource.DataSource = _ListGiaoDichO;
            }
            if (XuLyGiaoDien.wait.IsSplashFormVisible)
            {
                XuLyGiaoDien.wait.CloseWaitForm();
            }
        }
Пример #8
0
        private void simpleButton1_Click(object sender, EventArgs e)
        {
            D_GIAODICH nhb = new D_GIAODICH();

            switch (iLoaiGiaoDich.EditValue.ToString())
            {
            case "1":
            case "0":
                if (!DuLieuTaoSan.Q.KhacThemSua)
                {
                    return;
                }
                break;

            default:
                if (!DuLieuTaoSan.Q.Lv2KhacAdmin)
                {
                    return;
                }
                break;
            }

            List <KiemTra> kiemTras = new List <KiemTra>()
            {
                new KiemTra()
                {
                    _Control = iIDKhachHang, _Tu = 2, _Den = 50
                },
                new KiemTra()
                {
                    _Control = iLoaiKhachHang, _Tu = 2, _Den = 50
                },
                new KiemTra()
                {
                    _Control = iLoaiGiaoDich, _Tu = 2, _Den = 50
                },
                new KiemTra()
                {
                    _Control = iTenKhach, _Tu = 2, _Den = 50
                },
                new KiemTra()
                {
                    _Control = iMaCho, _Tu = 2, _Den = 50, _ChoQuaThang = !(new List <int>()
                    {
                        1, 0
                    }).Contains((int)iLoaiGiaoDich.EditValue)
                }
            };

            XuLyGiaoDien.KiemTra(kiemTras, dxValidationProvider1);
            if (!dxValidationProvider1.Validate())
            {
                XuLyGiaoDien.Alert("Thông tin không hợp lệ", Form_Alert.enmType.Warning);
                return;
            }

            #region Lưu
            Dictionary <string, object> dic = new Dictionary <string, object>();
            dic = XuLyDuLieu.FormToDictionary(this, dic);
            dic.Add("NgayCuonChieu", "getdate()");
            dic.Add("NVGiaoDich", DuLieuTaoSan.NV.ID);
            dic.Add("CoDinh", 1);

            if ((new List <int>()
            {
                7, 11, 12
            }).Contains((int)iLoaiGiaoDich.EditValue))
            {
                dic.Remove("GiaThu");
                dic.Add("GiaHeThong", 0);
                dic.Add("GiaThu", 0);
                dic.Add("GiaHoan", iGiaThu.Value);
            }
            else
            {
                dic.Add("GiaHeThong", iGiaThu.Value);
            }


            if (XuLyGiaoDien.ThongBao(Text, Gd.ID != 0 ? (nhb.CapNhat(dic, Gd.ID) > 0) : (nhb.ThemMoi(dic) > 0)))
            {
                (Owner.ActiveMdiChild as frmTongHop).NapDatCho();
                GhiChuCmt(Gd.ID);
                Close();
            }
            #endregion
        }
Пример #9
0
        void DieuChinh(string azs = "GiaNet")
        {
            if (bdtpTu.EditValue == null || bdtpDen.EditValue == null)
            {
                return;
            }
            DataTable dt = new DataTable();

            for (int i = 0; i < GVTK.Bands.Count; i++)
            {
                if (!GVTK.Bands[i].Name.Equals("Gb1"))
                {
                    GVTK.Bands.Remove(GVTK.Bands[i]); i--;
                }
            }

            for (int i = 0; i < GVTK.Columns.Count; i++)
            {
                if (!"colDaiLy, colHang, colSale".Contains(GVTK.Columns[i].Name))
                {
                    GVTK.GroupSummary.Remove(GVTK.GroupSummary[i - 3]);
                    GVTK.Columns.Remove(GVTK.Columns[i]);
                }
            }

            DateTime startDate = ((DateTime)bdtpTu.EditValue).Date;
            DateTime endDate   = ((DateTime)bdtpDen.EditValue).Date;

            var dates = Enumerable.Range(0, (int)(endDate - startDate).TotalDays + 1)
                        .Select(x => startDate.AddDays(x))
                        .ToList();
            List <DateTime> Ngay = dates.ToList();
            List <string>   Nam;
            List <string>   Quy;
            List <string>   Thang;
            List <string>   Tuan;
            List <string>   ListTenCot = new List <string>();
            string          TenCot     = string.Empty;
            CultureInfo     cul        = CultureInfo.GetCultureInfo("vi-VN");

            Nam   = Ngay.Select(w => w.Year.ToString()).Distinct().AsEnumerable().Reverse().ToList();
            Quy   = Ngay.Select(w => (1 + (w.Month - 1) / 3) + "/" + w.Year).Distinct().AsEnumerable().Reverse().ToList();
            Thang = Ngay.Select(w => w.Month + "/" + (1 + (w.Month - 1) / 3) + "/" + w.Year).Distinct().AsEnumerable().Reverse().ToList();
            Tuan  = Ngay.Select(w => cul.Calendar.GetWeekOfYear(w, CalendarWeekRule.FirstDay, DayOfWeek.Monday) + "/" + w.Year).Distinct().AsEnumerable().Reverse().ToList();
            string TenCotTao  = string.Empty;
            string TenCotTao2 = string.Empty;

            switch (_IDThoiGian)
            {
            case 0:
                TenCotTao  = "datepart(YEAR, NgayGD)";
                TenCotTao2 = "datepart(YEAR, NgayGD)";
                GridBand gridBand = new GridBand()
                {
                    Caption = "Năm", Name = "Gb2", VisibleIndex = 1, Width = 225
                };
                GVTK.Bands.Add(gridBand);
                foreach (string a in Nam)
                {
                    TenCot = a;
                    ListTenCot.Add(TenCot);
                    dt.Columns.Add(TenCot, typeof(long));
                    BandedGridColumn bandedGridColumn = new BandedGridColumn()
                    {
                        Caption = $"-{a}-", FieldName = TenCot, Name = $"col{a}", Visible = true, Width = 50
                    };
                    bandedGridColumn.DisplayFormat.FormatType   = DevExpress.Utils.FormatType.Numeric;
                    bandedGridColumn.OptionsColumn.AllowMerge   = DevExpress.Utils.DefaultBoolean.False;
                    bandedGridColumn.DisplayFormat.FormatString = "{0:#,##0;(#,##0)}";
                    bandedGridColumn.Summary.AddRange(new GridSummaryItem[] { new GridColumnSummaryItem(DevExpress.Data.SummaryItemType.Sum, TenCot, "{0:#,##0;(#,##0)}") });
                    gridBand.Columns.Add(bandedGridColumn);
                }
                break;

            case 1:
                foreach (string a in Nam)
                {
                    TenCotTao  = "cast(datepart(QUARTER, NgayGD) as varchar)+cast(datepart(YEAR, NgayGD) as varchar)";
                    TenCotTao2 = "datepart(YEAR, NgayGD), datepart(QUARTER, NgayGD)";
                    GridBand gridBand1 = new GridBand()
                    {
                        Caption = $"-{a}-", Name = $"Gb{a}", VisibleIndex = 1, Width = 225
                    };
                    GVTK.Bands.Add(gridBand1);
                    List <string> _Quy = Quy.Where(w => w.Split('/')[1].Contains(a)).ToList();
                    foreach (string b in _Quy)
                    {
                        TenCot = b.Replace("/", string.Empty);
                        ListTenCot.Add(TenCot);
                        dt.Columns.Add(TenCot, typeof(long));
                        BandedGridColumn bandedGridColumn = new BandedGridColumn()
                        {
                            Caption = $"Quý {b.Split('/')[0]}", FieldName = TenCot, Name = $"col{b.Replace("/", string.Empty)}", Visible = true, Width = 50
                        };
                        bandedGridColumn.DisplayFormat.FormatType   = DevExpress.Utils.FormatType.Numeric;
                        bandedGridColumn.OptionsColumn.AllowMerge   = DevExpress.Utils.DefaultBoolean.False;
                        bandedGridColumn.DisplayFormat.FormatString = "{0:#,##0;(#,##0)}";
                        bandedGridColumn.Summary.AddRange(new GridSummaryItem[] { new GridColumnSummaryItem(DevExpress.Data.SummaryItemType.Sum, TenCot, "{0:#,##0;(#,##0)}") });
                        gridBand1.Columns.Add(bandedGridColumn);
                    }
                }
                break;

            case 2:
                foreach (string a in Nam)
                {
                    TenCotTao  = "cast(datepart(MONTH, NgayGD) as varchar)+cast(datepart(YEAR, NgayGD) as varchar)";
                    TenCotTao2 = "datepart(YEAR, NgayGD), datepart(MONTH, NgayGD)";
                    GridBand gridBand1 = new GridBand()
                    {
                        Caption = $"-{a}-", Name = $"Gb{a}", VisibleIndex = 1, Width = 225
                    };
                    GVTK.Bands.Add(gridBand1);
                    List <string> _Quy = Quy.Where(w => w.Contains(a)).ToList();
                    foreach (string b in _Quy)
                    {
                        GridBand gridBand2 = new GridBand()
                        {
                            Caption = $"Quý {b.Split('/')[0]}", Name = $"Gb{a}", VisibleIndex = 1, Width = 225
                        };
                        gridBand1.Children.Add(gridBand2);
                        List <string> _Thang = Thang.Where(w => w.Split('/')[2].Equals(a) && w.EndsWith(b)).ToList();
                        foreach (string c in _Thang)
                        {
                            TenCot = c.Replace($"/{b}", string.Empty) + a;
                            ListTenCot.Add(TenCot);
                            dt.Columns.Add(TenCot, typeof(long));
                            BandedGridColumn bandedGridColumn = new BandedGridColumn()
                            {
                                Caption = $"Tháng {c.Split('/')[0]}", FieldName = TenCot, Name = $"col{c.Replace("/", string.Empty)}", Visible = true, Width = 50
                            };
                            bandedGridColumn.DisplayFormat.FormatType   = DevExpress.Utils.FormatType.Numeric;
                            bandedGridColumn.OptionsColumn.AllowMerge   = DevExpress.Utils.DefaultBoolean.False;
                            bandedGridColumn.DisplayFormat.FormatString = "{0:#,##0;(#,##0)}";
                            bandedGridColumn.Summary.AddRange(new GridSummaryItem[] { new GridColumnSummaryItem(DevExpress.Data.SummaryItemType.Sum, TenCot, "{0:#,##0;(#,##0)}") });

                            gridBand2.Columns.Add(bandedGridColumn);
                            GVTK.GroupSummary.Add(new GridGroupSummaryItem(DevExpress.Data.SummaryItemType.Sum, bandedGridColumn.FieldName, bandedGridColumn, "{0:#,##0;(#,##0)}"));
                        }
                    }
                }
                break;

            case 3:
                foreach (string a in Nam)
                {
                    TenCotTao  = "cast(datepart(WEEK, NgayGD) as varchar)+cast(datepart(YEAR, NgayGD) as varchar)";
                    TenCotTao2 = "datepart(YEAR, NgayGD), datepart(WEEK, NgayGD)";
                    GridBand gridBand1 = new GridBand()
                    {
                        Caption = $"-{a}-", Name = $"Gb{a}", VisibleIndex = 1, Width = 225
                    };
                    GVTK.Bands.Add(gridBand1);
                    List <string> _Tuan = Tuan.Where(w => w.Split('/')[1].Contains(a)).ToList();
                    foreach (string b in _Tuan)
                    {
                        TenCot = b.Replace("/", string.Empty);
                        ListTenCot.Add(TenCot);
                        dt.Columns.Add(TenCot, typeof(long));
                        BandedGridColumn bandedGridColumn = new BandedGridColumn()
                        {
                            Caption = $"Tuần {b.Split('/')[0]}", FieldName = TenCot, Name = $"col{b.Replace("/", string.Empty)}", Visible = true, Width = 50
                        };
                        bandedGridColumn.DisplayFormat.FormatType   = DevExpress.Utils.FormatType.Numeric;
                        bandedGridColumn.OptionsColumn.AllowMerge   = DevExpress.Utils.DefaultBoolean.False;
                        bandedGridColumn.DisplayFormat.FormatString = "{0:#,##0;(#,##0)}";
                        bandedGridColumn.Summary.AddRange(new GridSummaryItem[] { new GridColumnSummaryItem(DevExpress.Data.SummaryItemType.Sum, TenCot, "{0:#,##0;(#,##0)}") });
                        gridBand1.Columns.Add(bandedGridColumn);
                    }
                }
                break;
            }
            string az = "";

            if (barCheckItem2.Checked)
            {
                colHang.Visible = false;
                az = string.Format(@"
        SET DATEFIRST 1
        select * from (
                    select IDKhachHang,dl.NVGiaoDich,{0} 'CotMoc',SUM({5}) Gia from GIAODICH
                    left join (select ID MaIDDL,NVGiaoDich from DAILY where LoaiKhachHang = 1) dl on IDKhachHang = MaIDDL where MaIDDL is not null and LoaiGiaoDich in ({6}) and CONVERT(date,NgayGD) between '{2}' and '{3}' group by {1} ,IDKhachHang ,dl.NVGiaoDich
                    ) Y pivot (max(Gia) for CotMoc in ([{4}])) as pv
                    order by IDKhachHang", TenCotTao, TenCotTao2, startDate.ToString("yyyyMMdd"), endDate.ToString("yyyyMMdd"), String.Join("],[", ListTenCot.ToArray()), azs, azs == "GiaNet" ? "4" : "9");
            }
            else
            {
                colHang.Visible = true;
                az = string.Format(@"
        SET DATEFIRST 1
        select * from (
                    select IDKhachHang,dl.NVGiaoDich,NhaCungCap,{0} 'CotMoc',SUM({5}) Gia from GIAODICH
                    left join (select ID MaIDDL,NVGiaoDich from DAILY where LoaiKhachHang = 1) dl on IDKhachHang = MaIDDL where MaIDDL is not null and LoaiGiaoDich in ({6}) and CONVERT(date,NgayGD) between '{2}' and '{3}' and coalesce(NhaCungCap,0)>0 group by {1} ,IDKhachHang,NhaCungCap ,dl.NVGiaoDich
                    ) Y pivot (max(Gia) for CotMoc in ([{4}])) as pv
                    order by IDKhachHang,NhaCungCap", TenCotTao, TenCotTao2, startDate.ToString("yyyyMMdd"), endDate.ToString("yyyyMMdd"), String.Join("],[", ListTenCot.ToArray()), azs, azs == "GiaNet" ? "4" : "9");
            }
            dt = new D_GIAODICH().LayDataTable(az);
            GCTK.DataSource = dt;
            GVTK.BestFitColumns();
        }
Пример #10
0
        private void btnGuiMail_Click(object sender, EventArgs e)
        {
            if (XtraMessageBox.Show("Bạn muốn gửi mail ?", "Câu hỏi", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                D_GIAODICH gdb = new D_GIAODICH();

                List <string> vs = new List <string>();
                if ((txtFileDinhKem.EditValue ?? string.Empty) != string.Empty)
                {
                    vs = txtFileDinhKem.EditValue.ToString().Split(',').ToList();
                }

                int n = lstDaiLy.CheckedItems.Count;
                if (n == 0)
                {
                    XuLyGiaoDien.Alert("Chưa chọn đại lý cần gửi", Form_Alert.enmType.Info);
                }
                else
                {
                    try
                    {
                        O_CAUHINHSMTP cauHinhSMTPO = cauHinhSMTPD.DuLieu();
                        O_MAUEMAIL    ma           = new D_MAUEMAIL().DuLieu()[0];

                        SmtpClient client = new SmtpClient();
                        client.Port                  = cauHinhSMTPO.Port;
                        client.Host                  = cauHinhSMTPO.Host;
                        client.EnableSsl             = cauHinhSMTPO.SSL;
                        client.Timeout               = 10000;
                        client.DeliveryMethod        = SmtpDeliveryMethod.Network;
                        client.UseDefaultCredentials = false;
                        client.Credentials           = new System.Net.NetworkCredential(cauHinhSMTPO.Email, cauHinhSMTPO.Password);

                        grvCTCongNo.Columns["Hang"].Width       = 50;
                        grvCTCongNo.Columns["SoVeVN"].Width     = 90;
                        grvCTCongNo.Columns["LuyKe"].Width      = 90;
                        grvCTCongNo.Columns["GiaThu"].Width     = 90;
                        grvCTCongNo.Columns["GiaHeThong"].Width = 90;
                        grvCTCongNo.Columns["TaiKhoanCo"].Width = 90;
                        grvCTCongNo.Columns["TenKhach"].Width   = 250;
                        grvCTCongNo.OptionsPrint.AutoWidth      = false;
                        grvCTCongNo.OptionsView.ColumnAutoWidth = false;

                        XlsxExportOptionsEx opt = new XlsxExportOptionsEx();
                        opt.CustomizeCell += op_CustomizeCell;
                        opt.SheetName      = "Bản Công Nợ";


                        bool sendOK = false;
                        if (!XuLyGiaoDien.wait.IsSplashFormVisible)
                        {
                            XuLyGiaoDien.wait.ShowWaitForm();
                        }
                        for (int i = 0; i < n; i++)
                        {
                            O_DAILY dl = lstDaiLy.GetItem(lstDaiLy.CheckedIndices[0]) as O_DAILY;
                            if (!dl.GuiMail)
                            {
                                int index1 = lstDaiLy.FindItem(0, true, delegate(ListBoxFindItemArgs ei) { ei.IsFound = object.Equals(dl.ID, ei.ItemValue); });
                                lstDaiLy.SetItemChecked(index1, false);
                                continue;
                            }
                            lstInt.Add(dl.ID);
                            string            daily     = string.Format("{0}", dl.ID);
                            List <O_GIAODICH> lstCongNo = gdb.LayDanhSachCN((DateTime)dtpTuNgay.EditValue, (DateTime)dtpDenNgay.EditValue, daily, true);
                            txtMauEmail.HtmlText = ma.NoiDung.Replace("{0}", dl.MaDL).Replace("{1}", XuLyDuLieu.NotVietKey(dl.Ten));

                            if ((dl.EmailKeToan ?? string.Empty) == string.Empty)
                            {
                                goto RE1;
                            }

                            string[] EmailKeToanString = Regex.Replace(dl.EmailKeToan, @"\t|\n|\r", "|").Replace("||", "|").Split('|');
                            for (int ii = 0; ii < EmailKeToanString.Count(); ii++)
                            {
                                if (EmailKeToanString[ii].Length > 5)
                                {
                                    MailMessage mm = new MailMessage();
                                    mm.From         = new MailAddress("*****@*****.**", "Thành Hoàng");
                                    mm.BodyEncoding = UTF8Encoding.UTF8;
                                    mm.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
                                    mm.IsBodyHtml = true;
                                    RichEditMailMessageExporter exporter = new RichEditMailMessageExporter(txtMauEmail, mm);
                                    exporter.Export();
                                    mm.To.Add(new MailAddress(EmailKeToanString[ii]));
                                    //mm.To.Add(new MailAddress("*****@*****.**"));
                                    if (lstCongNo.Count > 1)
                                    {
                                        XuLyGiaoDien.wait.SetWaitFormDescription("Gửi cho: " + dl.Ten + " (" + (i + 1) + "/" + n + ").");
                                        CTGiaoDichDindingSource.DataSource = lstCongNo;
                                        mm.Subject = "Công Nợ - " + dl.Ten + " - Từ ngày " + ((DateTime)dtpTuNgay.EditValue).ToString("dd_MM_yyyy") + " - đến ngày " + ((DateTime)dtpDenNgay.EditValue).ToString("dd_MM_yyyy");

                                        #region Xuất excel
                                        gridCTCongNo.ForceInitialize();
                                        string strFile = @"C:\CongNo\" + dl.Ten + " - " + ((DateTime)dtpTuNgay.EditValue).ToString("dd_MM_yyyy") + " - " + ((DateTime)dtpDenNgay.EditValue).ToString("dd_MM_yyyy") + ".xlsx";
                                        Directory.CreateDirectory(@"C:\CongNo");
                                        gridCTCongNo.ExportToXlsx(strFile, opt);
                                        #endregion

                                        mm.Attachments.Add(new Attachment(strFile));
                                        foreach (string g in vs)
                                        {
                                            if (g.Count() > 0)
                                            {
                                                mm.Attachments.Add(new Attachment(g));
                                            }
                                        }
                                        client.Send(mm);

                                        sendOK = true;
                                        mm.Attachments.Dispose();
                                        if (File.Exists(strFile))
                                        {
                                            File.Delete(strFile);
                                        }
                                    }
                                }
                            }
                            RE1 :
                            int index = lstDaiLy.FindItem(0, true, delegate(ListBoxFindItemArgs ei) { ei.IsFound = object.Equals(dl.ID, ei.ItemValue); });
                            lstDaiLy.SetItemChecked(index, false);
                        }

                        if (sendOK)
                        {
                            XuLyGiaoDien.Alert("Gửi mail thành công", Form_Alert.enmType.Success);
                        }
                        else
                        {
                            XuLyGiaoDien.Alert("Gửi mail không thành công", Form_Alert.enmType.Warning);
                        }
                    }
                    catch (Exception ex) { XtraMessageBox.Show(ex.Message, "Thông báo"); }
                    gdb.ChayCapNhatLuyKe(lstInt);
                    if (XuLyGiaoDien.wait.IsSplashFormVisible)
                    {
                        XuLyGiaoDien.wait.CloseWaitForm();
                    }
                }
            }
        }
Пример #11
0
        private void btnDel_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (XtraMessageBox.Show("Bạn có chắc xóa", "Thông báo", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.Cancel)
            {
                return;
            }

            cTNgan = (GVCTNH.GetRow(GVCTNH.GetSelectedRows()[0]) as O_CTNGANHANG);
            D_CTNGANHANG nh = new D_CTNGANHANG();

            List <object> lstCtv = new List <object>();

            if (cTNgan.LoaiKhachHang == 7)
            {
                List <O_CTNGANHANG> cTNganHangOs = new D_CTNGANHANG().Dem($"WHERE MaLienKet = '{cTNgan.MaLienKet}'");
                if (cTNganHangOs.Count == 2)
                {
                    lstCtv.Add(cTNganHangOs[0].ID);
                    lstCtv.Add(cTNganHangOs[1].ID);
                }
                else
                {
                    XuLyGiaoDien.Alert("Sai định dạng", Form_Alert.enmType.Info);
                    return;
                }
            }
            else
            {
                lstCtv.Add(cTNgan.ID);
                new D_BAOCAOCTNH().Xoa(cTNgan.ID, "WHERE IDCTNganHang = {0}");
            }

            if (XuLyGiaoDien.ThongBao(Text, nh.XoaNhieu1Ban(lstCtv, "CTNGANHANG") > 0, true))
            {
                if (cTNgan.LoaiKhachHang == 1 || cTNgan.LoaiKhachHang == 2)
                {
                    new D_DAILY().ChayLaiPhi(cTNgan.NgayHT);
                }
                else if (cTNgan.LoaiKhachHang == 4 || cTNgan.LoaiKhachHang == 30)
                {
                    List <O_GIAODICH> _GiaoDich = new D_GIAODICH().DuLieuNganHang(cTNgan.IDGiaoDich);
                    List <Dictionary <string, object> > lstdic2 = new List <Dictionary <string, object> >();
                    List <string> CTV = new List <string>();
                    Dictionary <string, object> dic2 = new Dictionary <string, object>();
                    for (int i = 0; i < _GiaoDich.Count; i++)
                    {
                        O_GIAODICH gd = _GiaoDich[i];
                        dic2 = new Dictionary <string, object>();
                        CTV.Add(string.Format("WHERE ID = {0}", gd.ID));
                        dic2.Add("Khoa", false);
                        lstdic2.Add(dic2);
                    }
                    new D_GIAODICH().SuaNhieu1Ban(lstdic2, CTV);
                }
                nhD.ChayLaiSD();

                string NoiDung = string.Format("Xóa GD Ngân Hàng : {0} VNĐ [{1}]", cTNgan.SoTien.ToString("#,###"), cTNgan.GhiChu);
                Dictionary <string, object> dic = new Dictionary <string, object>();
                dic.Add("FormName", Text);
                dic.Add("MaCho", cTNgan.MaLienKet);
                dic.Add("NoiDung", NoiDung);
                dic.Add("NVGiaoDich", DuLieuTaoSan.NV.ID);
                dic.Add("LoaiKhachHang", cTNgan.LoaiKhachHang);
                dic.Add("Ma", cTNgan.MaDL);
                if (NoiDung.Length > 10)
                {
                    new D_LS_GIAODICH().ThemMoi(dic);
                }
                TaiLaiDuLieu();
            }
        }
Пример #12
0
        List <ClsHanhKhach> LayHanhKhach2()
        {
            D_GIAODICH          gdb   = new D_GIAODICH();
            List <O_GIAODICH>   lstGD = data1;
            List <ClsHanhKhach> lstHK = new List <ClsHanhKhach>();
            // Danh sách hành khách
            List <string> hks = new List <string>();

            // Lấy tên duy nhất
            for (int i = 0; i < lstGD.Count; i++)
            {
                if (!hks.Contains(lstGD[i].TenKhach))
                {
                    ClsHanhKhach HKC = new ClsHanhKhach();
                    hks.Add(lstGD[i].TenKhach);
                    HKC.Khach = lstGD[i].TenKhach;
                    HKC.so   += i;
                    if (lstGD[i].BiDanh == null)
                    {
                        HKC.Loaive = "Người lớn";
                    }
                    else
                    {
                        switch (lstGD[i].BiDanh.ToLower())
                        {
                        case "mstr":
                        case "miss":
                            HKC.Loaive = "Trẻ em";
                            break;

                        case "em bé":
                            HKC.Loaive = "Em bé";
                            break;

                        default:
                            HKC.Loaive = "Người lớn";
                            break;
                        }
                    }

                    if (lstGD[i].HanhLyDi == null)
                    {
                        HKC.HanhLy = "0 KG";
                    }
                    else if (lstGD[i].HanhLyDi == string.Empty)
                    {
                        HKC.HanhLy = "0 KG";
                    }
                    else
                    {
                        HKC.HanhLy = (lstGD[i].HanhLyDi).Replace("KG", string.Empty) + " KG";
                    }

                    if (data.SoLuongVe == 2)
                    {
                        if (lstGD[i].HanhLyVe == null)
                        {
                            HKC.HanhLy += " - 0 KG";
                        }
                        else if (lstGD[i].HanhLyVe == string.Empty)
                        {
                            HKC.HanhLy += " - 0 KG";
                        }
                        else
                        {
                            HKC.HanhLy += " - " + (lstGD[i].HanhLyVe).Replace("KG", string.Empty) + " KG";
                        }
                    }
                    lstHK.Add(HKC);
                }
            }
            return(lstHK);
        }
Пример #13
0
        void XuLyVeHoanKt()
        {
            D_GIAODICH giaoDichD = new D_GIAODICH();

            List <O_GIAODICH> lstGiaoDich  = giaoDichD.DuLieu($"TinhCongNo = 0 and LoaiGiaoDich = 9 and LoaiKhachHang <> 3", false);
            String            range        = $"Kế toán CN!A2:I";
            var        request             = SService.Spreadsheets.Values.Get(SpreadsheetId, range);
            ValueRange response            = request.Execute();
            IList <IList <Object> > values = response.Values;
            List <APISheet>         lstAPI = new List <APISheet>();

            if (values != null)
            {
                foreach (var row in values)
                {
                    if (row.Count < 1)//có ít nhất 2 cột có dữ liệu
                    {
                        continue;
                    }
                    if (row[0].ToString() == string.Empty)//không mã chỗ số vé
                    {
                        continue;
                    }
                    List <O_GIAODICH> GiaoDinhTamLuu = lstGiaoDich.Where(w => (w.SoVeVN ?? string.Empty).Replace(" ", string.Empty).Equals(row[0].ToString().Replace(" ", string.Empty))).ToList();

                    if (GiaoDinhTamLuu.Count == 1)// Mã chỗ có tồn tại theo điều kiện
                    {
                        O_GIAODICH ac = new O_GIAODICH();
                        ac.LoaiKhachHang = 0;

                        ac.GhiChu     = row.Count > 7 ? row[7].ToString() : string.Empty;
                        ac.GiaHeThong = row.Count > 3 ? XuLyDuLieu.ConvertStringToLong(row[3].ToString() == string.Empty ? "0" : row[3].ToString()) : -1;
                        ac.GiaHoan    = row.Count > 4 ? XuLyDuLieu.ConvertStringToLong(row[4].ToString() == string.Empty ? "0" : row[4].ToString()) : -1;
                        ac.GiaNet     = row.Count > 5 ? XuLyDuLieu.ConvertStringToLong(row[5].ToString() == string.Empty ? "0" : row[5].ToString()) : -1;
                        ac.HangHoan   = row.Count > 6 ? XuLyDuLieu.ConvertStringToLong(row[6].ToString() == string.Empty ? "0" : row[6].ToString()) : -1;

                        if (row.Count > 1)
                        {
                            if (row[1].ToString() != string.Empty)// tìm DL theo sheet
                            {
                                if (lstDaiLy.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[1].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).Count() > 0)
                                {
                                    ac.IDKhachHang   = lstDaiLy.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[1].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).First().ID;
                                    ac.LoaiKhachHang = 1;
                                }
                                if (ac.LoaiKhachHang == 0)
                                {
                                    lstAPI.Add(aPI("Không tìm thấy khách", row[0].ToString(), row[1].ToString(), row[2].ToString(), row[5].ToString(), row[6].ToString(), ac.GiaHeThong, ac.GiaHoan));
                                    continue;
                                }
                            }
                            else if (row.Count > 3)
                            {
                                if (row[2].ToString() != string.Empty)// tìm CTV theo sheet
                                {
                                    if (lstCTV.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[2].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).Count() > 0)
                                    {
                                        ac.IDKhachHang   = lstCTV.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[2].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).First().ID;
                                        ac.LoaiKhachHang = 2;
                                    }

                                    if (ac.LoaiKhachHang == 0)
                                    {
                                        lstAPI.Add(aPI("Không tìm thấy khách", row[0].ToString(), row[1].ToString(), row[2].ToString(), row[5].ToString(), row[6].ToString(), ac.GiaHeThong, ac.GiaHoan));
                                        continue;
                                    }
                                }
                            }
                        }

                        string GhiChuTam = string.Format("GExcel Hoàn : Nhận hoàn [{0}] - ", row[0].ToString());

                        if (ac.LoaiKhachHang > 0 && ac.IDKhachHang != GiaoDinhTamLuu[0].IDKhachHang)
                        {
                            GhiChuTam += string.Format("[{0} => {1}] ", lstALL.Where(w => w.ID.Equals(GiaoDinhTamLuu[0].IDKhachHang)).Count() > 0 ? lstALL.Where(w => w.ID.Equals(GiaoDinhTamLuu[0].IDKhachHang)).ToList()[0].Ten : string.Empty, lstALL.Where(w => w.ID.Equals(ac.IDKhachHang)).ToList()[0].Ten);
                        }
                        if (ac.GiaHeThong > 10 && ac.GiaHeThong != GiaoDinhTamLuu[0].GiaHeThong)
                        {
                            GhiChuTam += string.Format("[Phí hoàn {0} => {1}] ", GiaoDinhTamLuu[0].GiaHeThong.ToString("#,##0"), ac.GiaHeThong.ToString("#,##0"));
                        }
                        if (ac.GiaHoan > 10 && ac.GiaHoan != GiaoDinhTamLuu[0].GiaHoan)
                        {
                            GhiChuTam += string.Format("[Giá hoàn {0} => {1}] ", GiaoDinhTamLuu[0].GiaHoan.ToString("#,##0"), ac.GiaHoan.ToString("#,##0"));
                        }
                        if (ac.GiaNet > 10 && ac.GiaNet != GiaoDinhTamLuu[0].GiaNet)
                        {
                            GhiChuTam += string.Format("[Phí hãng {0} => {1}] ", GiaoDinhTamLuu[0].GiaNet.ToString("#,##0"), ac.GiaNet.ToString("#,##0"));
                        }
                        if (ac.HangHoan > 10 && ac.HangHoan != GiaoDinhTamLuu[0].HangHoan)
                        {
                            GhiChuTam += string.Format("[Hãng hoàn {0} => {1}] ", GiaoDinhTamLuu[0].HangHoan.ToString("#,##0"), ac.HangHoan.ToString("#,##0"));
                        }

                        GhiChuTam += "[";

                        for (int u = 0; u < GiaoDinhTamLuu.Count; u++)
                        {
                            GiaoDinhTamLuu[u].TinhCongNo = true;
                            if (ac.LoaiKhachHang > 0)
                            {
                                GiaoDinhTamLuu[u].LoaiKhachHang = ac.LoaiKhachHang;
                                GiaoDinhTamLuu[u].IDKhachHang   = ac.IDKhachHang;
                            }
                            if (ac.GiaHeThong > 10)
                            {
                                GiaoDinhTamLuu[u].GiaHeThong = ac.GiaHeThong;
                            }
                            if (ac.GiaHoan > 10)
                            {
                                GiaoDinhTamLuu[u].GiaHoan = ac.GiaHoan;
                            }
                            if (ac.GiaNet > 10)
                            {
                                GiaoDinhTamLuu[u].GiaNet = ac.GiaNet;
                            }
                            if (ac.HangHoan > 100)
                            {
                                GiaoDinhTamLuu[u].HangHoan = ac.HangHoan;
                            }

                            GhiChuTam += GiaoDinhTamLuu[u].ID;
                            GhiChuTam += (u != GiaoDinhTamLuu.Count - 1) ? ", " : "]";
                        }

                        if (giaoDichD.ThucThiSua(GiaoDinhTamLuu) > 0)
                        {
                            Dictionary <string, object> dic1 = new Dictionary <string, object>();
                            dic1.Add("FormName", "Hệ thống");
                            dic1.Add("MaCho", row[0].ToString());
                            dic1.Add("NoiDung", GhiChuTam);
                            dic1.Add("LoaiKhachHang", 0);
                            dic1.Add("Ma", 0);
                            new D_LS_GIAODICH().ThemMoi(dic1);
                        }
                    }
                    else if (GiaoDinhTamLuu.Count == 0)
                    {
                        lstAPI.Add(aPI("Không tìm thấy hoàn", row[0].ToString(), row.Count > 1 ? row[1].ToString() : string.Empty, row.Count > 2 ? row[2].ToString() : string.Empty, row.Count > 7 ? row[7].ToString() : string.Empty, row.Count > 7 ? row[7].ToString() : string.Empty, row.Count > 3 ? long.Parse(row[3].ToString() == string.Empty ? "0" : row[3].ToString()) : 0, row.Count > 4 ? long.Parse(row[4].ToString() == string.Empty ? "0" : row[4].ToString()) : 0, row.Count > 5 ? long.Parse(row[5].ToString() == string.Empty ? "0" : row[5].ToString()) : 0, row.Count > 6 ? long.Parse(row[6].ToString() == string.Empty ? "0" : row[6].ToString()) : 0));
                    }
                    else
                    {
                        lstAPI.Add(aPI("Trên 2 giao dịch", row[0].ToString(), row.Count > 1 ? row[1].ToString() : string.Empty, row.Count > 2 ? row[2].ToString() : string.Empty, row.Count > 7 ? row[7].ToString() : string.Empty, row.Count > 7 ? row[7].ToString() : string.Empty, row.Count > 3 ? long.Parse(row[3].ToString() == string.Empty ? "0" : row[3].ToString()) : 0, row.Count > 4 ? long.Parse(row[4].ToString() == string.Empty ? "0" : row[4].ToString()) : 0, row.Count > 5 ? long.Parse(row[5].ToString() == string.Empty ? "0" : row[5].ToString()) : 0, row.Count > 6 ? long.Parse(row[6].ToString() == string.Empty ? "0" : row[6].ToString()) : 0));
                    }
                }

                #region Xóa
                var requestbody = new ClearValuesRequest();
                var request1    = SService.Spreadsheets.Values.Clear(requestbody, SpreadsheetId, range);
                var Drequest1   = request1.Execute();
                #endregion

                #region Thêm lại các dòng lỗi
                if (lstAPI.Count > 0)
                {
                    var valueRange = new ValueRange();

                    List <IList <object> > lstList = new List <IList <object> >();
                    foreach (APISheet aPI in lstAPI)
                    {
                        var objectList = new List <object>()
                        {
                            aPI.MaCho, aPI.DaiLy, aPI.CTV, aPI.PhiHoanDaiLy, aPI.GiaHoanDaiLy, aPI.PhiHoan, aPI.GiaHoan, aPI.GhiChu, aPI.GhiChuHeThong
                        };
                        lstList.Add(objectList);
                    }
                    valueRange.Values = lstList;

                    var appendRequest = SService.Spreadsheets.Values.Append(valueRange, SpreadsheetId, range);
                    appendRequest.ValueInputOption = SpreadsheetsResource.ValuesResource.AppendRequest.ValueInputOptionEnum.USERENTERED;
                    var appendResponse = appendRequest.Execute();
                    lstAPI.Clear();
                }
                #endregion
            }
        }
Пример #14
0
        void XuLyVeHoanBk()
        {
            D_GIAODICH giaoDichD = new D_GIAODICH();

            for (int i = 0; i < NhanVienName.Count; i++)
            {
                String     range               = $"{NhanVienName[i]}!F3:L";
                var        request             = SService.Spreadsheets.Values.Get(SpreadsheetId, range);
                ValueRange response            = request.Execute();
                IList <IList <Object> > values = response.Values;
                List <APISheet>         lstAPI = new List <APISheet>();
                if (values != null)
                {
                    List <string> str = new List <string>();
                    foreach (var row in values)
                    {
                        if (row.Count < 1)//có ít nhất 2 cột có dữ liệu
                        {
                            continue;
                        }
                        if (row[0].ToString() == string.Empty)//không mã chỗ số vé
                        {
                            continue;
                        }
                        str.Add(row[0].ToString());
                    }

                    if (str.Count < 0)
                    {
                        return;
                    }

                    List <O_GIAODICH> lstGiaoDich = giaoDichD.DuLieu($"LoaiGiaoDich = 9 and LoaiKhachHang <> 3 and SoVeVN in ('{String.Join("' ,'", str.ToArray())}')", false);

                    //List<GiaoDichO> lstGiaoDich = giaoDichD.DuLieu($"TinhCongNo = 0 and LoaiGiaoDich = 9 and LoaiKhachHang <> 3 and NVGiaoDich in (0,{NhanVienID[i]})", false);
                    //List<GiaoDichO> DaNhan2 = giaoDichD.DuLieu($"TinhCongNo = 1 and LoaiGiaoDich = 9 and LoaiKhachHang <> 3 and NVGiaoDich in (0,{NhanVienID[i]})", false);

                    foreach (var row in values)
                    {
                        if (row.Count < 1)//có ít nhất 2 cột có dữ liệu
                        {
                            continue;
                        }
                        if (row[0].ToString() == string.Empty)//không mã chỗ số vé
                        {
                            continue;
                        }
                        List <O_GIAODICH> GiaoDinhTamLuu = lstGiaoDich.Where(w => w.SoVeVN.Replace(" ", "").Equals(row[0].ToString().Replace(" ", "")) && !w.TinhCongNo).ToList();
                        List <O_GIAODICH> DaNhan         = lstGiaoDich.Where(w => w.SoVeVN.Replace(" ", "").Equals(row[0].ToString().Replace(" ", "")) && w.TinhCongNo).ToList();

                        if (GiaoDinhTamLuu.Count == 1)// Mã chỗ có tồn tại theo điều kiện
                        {
                            O_GIAODICH ac = new O_GIAODICH();
                            ac.NVGiaoDich    = NhanVienID[i];
                            ac.LoaiKhachHang = 0;
                            ac.GhiChu        = row.Count > 5 ? row[5].ToString() : string.Empty;
                            ac.GiaHeThong    = row.Count > 3 ? long.Parse(row[3].ToString() == string.Empty ? "0" : row[3].ToString()) : -1;
                            ac.GiaHoan       = row.Count > 4 ? long.Parse(row[4].ToString() == string.Empty ? "0" : row[4].ToString()) : -1;

                            if (GiaoDinhTamLuu[0].NVGiaoDich != NhanVienID[i] && GiaoDinhTamLuu[0].NVGiaoDich != 0)
                            {
                                lstAPI.Add(aPI($"Vé của {lstNV.Where(w => w.ID.Equals(GiaoDinhTamLuu[0].NVGiaoDich)).ToList()[0].TenDangNhapCty}", row[0].ToString(), row.Count > 1 ? row[1].ToString() : string.Empty, row.Count > 2 ? row[2].ToString() : string.Empty, row.Count > 5 ? row[5].ToString() : string.Empty, row.Count > 6 ? row[6].ToString() : string.Empty, row.Count > 3 ? long.Parse(row[3].ToString() == string.Empty ? "0" : row[3].ToString()) : 0, row.Count > 4 ? long.Parse(row[4].ToString() == string.Empty ? "0" : row[4].ToString()) : 0));
                                continue;
                            }// Vé đã có người nhận


                            if (row[1].ToString() != string.Empty)// tìm DL theo sheet
                            {
                                if (lstDaiLy.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[1].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).Count() > 0)
                                {
                                    ac.IDKhachHang   = lstDaiLy.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[1].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).First().ID;
                                    ac.LoaiKhachHang = 1;
                                }
                                if (ac.LoaiKhachHang == 0)
                                {
                                    lstAPI.Add(aPI("Không tìm thấy khách", row[0].ToString(), row[1].ToString(), row[2].ToString(), row[5].ToString(), row[6].ToString(), ac.GiaHeThong, ac.GiaHoan));
                                    continue;
                                }
                            }
                            else if (row.Count > 3)
                            {
                                if (row[2].ToString() != string.Empty)// tìm CTV theo sheet
                                {
                                    if (lstCTV.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[2].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).Count() > 0)
                                    {
                                        ac.IDKhachHang   = lstCTV.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[2].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).First().ID;
                                        ac.LoaiKhachHang = 2;
                                    }

                                    if (ac.LoaiKhachHang == 0)
                                    {
                                        lstAPI.Add(aPI("Không tìm thấy khách", row[0].ToString(), row[1].ToString(), row[2].ToString(), row[5].ToString(), row[6].ToString(), ac.GiaHeThong, ac.GiaHoan));
                                        continue;
                                    }
                                }
                            }

                            string GhiChuTam = string.Format("GExcel Hoàn : [{1}] {0} - ", row[0].ToString(), NhanVienName[i]);

                            if (ac.LoaiKhachHang > 0 && ac.IDKhachHang != GiaoDinhTamLuu[0].IDKhachHang)
                            {
                                GhiChuTam += string.Format("[{0} => {1}] ", lstALL.Where(w => w.ID.Equals(GiaoDinhTamLuu[0].IDKhachHang)).Count() > 0 ? lstALL.Where(w => w.ID.Equals(GiaoDinhTamLuu[0].IDKhachHang)).ToList()[0].Ten : string.Empty, lstALL.Where(w => w.ID.Equals(ac.IDKhachHang)).ToList()[0].Ten);
                            }
                            if (ac.GiaHeThong != -1 && ac.GiaHeThong != GiaoDinhTamLuu[0].GiaHeThong)
                            {
                                GhiChuTam += string.Format("[Phí hoàn {0} => {1}] ", GiaoDinhTamLuu[0].GiaHeThong.ToString("#,##0"), ac.GiaHeThong.ToString("#,##0"));
                            }
                            if (ac.GiaHoan != -1 && ac.GiaHoan != GiaoDinhTamLuu[0].GiaHoan)
                            {
                                GhiChuTam += string.Format("[Giá hoàn {0} => {1}] ", GiaoDinhTamLuu[0].GiaHoan.ToString("#,##0"), ac.GiaHoan.ToString("#,##0"));
                            }
                            GhiChuTam += "[";

                            if (GhiChuTam == string.Format("GExcel Hoàn : [{1}] {0} - [", row[0].ToString(), NhanVienName[i]) && ac.NVGiaoDich == GiaoDinhTamLuu[0].NVGiaoDich)
                            {
                                continue;
                            }

                            for (int u = 0; u < GiaoDinhTamLuu.Count; u++)
                            {
                                GiaoDinhTamLuu[u].NVGiaoDich = ac.NVGiaoDich;
                                GiaoDinhTamLuu[u].GhiChu     = ac.GhiChu;
                                if (ac.LoaiKhachHang > 0)
                                {
                                    GiaoDinhTamLuu[u].LoaiKhachHang = ac.LoaiKhachHang;
                                    GiaoDinhTamLuu[u].IDKhachHang   = ac.IDKhachHang;
                                }
                                if (ac.GiaHeThong > 10000)
                                {
                                    GiaoDinhTamLuu[u].GiaHeThong = ac.GiaHeThong;
                                }
                                if (ac.GiaHoan > 10000)
                                {
                                    GiaoDinhTamLuu[u].GiaHoan = ac.GiaHoan;
                                }

                                GhiChuTam += GiaoDinhTamLuu[u].ID;
                                GhiChuTam += (u != GiaoDinhTamLuu.Count - 1) ? ", " : "]";
                            }

                            if (giaoDichD.ThucThiSua(GiaoDinhTamLuu) > 0)
                            {
                                Dictionary <string, object> dic1 = new Dictionary <string, object>();
                                dic1.Add("FormName", "Hệ thống");
                                dic1.Add("MaCho", row[0].ToString());
                                dic1.Add("NoiDung", GhiChuTam);
                                dic1.Add("LoaiKhachHang", 0);
                                dic1.Add("Ma", 0);
                                new D_LS_GIAODICH().ThemMoi(dic1);
                            }
                        }
                        else if (GiaoDinhTamLuu.Count == 0)
                        {
                            if (DaNhan.Count > 0)
                            {
                                if (DaNhan[0].NVGiaoDich != NhanVienID[i] && DaNhan[0].NVGiaoDich != 0)
                                {
                                    lstAPI.Add(aPI($"Vé đã nhận cho {lstNV.Where(w => w.ID.Equals(DaNhan[0].NVGiaoDich)).ToList()[0].TenDangNhapCty}", row[0].ToString(), row.Count > 1 ? row[1].ToString() : string.Empty, row.Count > 2 ? row[2].ToString() : string.Empty, row.Count > 5 ? row[5].ToString() : string.Empty, row.Count > 6 ? row[6].ToString() : string.Empty, row.Count > 3 ? long.Parse(row[3].ToString() == string.Empty ? "0" : row[3].ToString()) : 0, row.Count > 4 ? long.Parse(row[4].ToString() == string.Empty ? "0" : row[4].ToString()) : 0));
                                }
                            }
                            else
                            {
                                lstAPI.Add(aPI("Không tìm thấy hoàn", row[0].ToString(), row.Count > 1 ? row[1].ToString() : string.Empty, row.Count > 2 ? row[2].ToString() : string.Empty, row.Count > 5 ? row[5].ToString() : string.Empty, row.Count > 6 ? row[6].ToString() : string.Empty, row.Count > 3 ? long.Parse(row[3].ToString() == string.Empty ? "0" : row[3].ToString()) : 0, row.Count > 4 ? long.Parse(row[4].ToString() == string.Empty ? "0" : row[4].ToString()) : 0));
                            }
                        }
                        else
                        {
                            lstAPI.Add(aPI("Trên 2 giao dịch", row[0].ToString(), row.Count > 1 ? row[1].ToString() : string.Empty, row.Count > 2 ? row[2].ToString() : string.Empty, row.Count > 5 ? row[5].ToString() : string.Empty, row.Count > 6 ? row[6].ToString() : string.Empty, row.Count > 3 ? long.Parse(row[3].ToString() == string.Empty ? "0" : row[3].ToString()) : 0, row.Count > 4 ? long.Parse(row[4].ToString() == string.Empty ? "0" : row[4].ToString()) : 0));
                        }
                    }

                    #region Xóa
                    var requestbody = new ClearValuesRequest();
                    var request1    = SService.Spreadsheets.Values.Clear(requestbody, SpreadsheetId, range);
                    var Drequest1   = request1.Execute();
                    #endregion

                    #region Thêm lại các dòng lỗi
                    if (lstAPI.Count > 0)
                    {
                        var valueRange = new ValueRange();

                        List <IList <object> > lstList = new List <IList <object> >();
                        foreach (APISheet aPI in lstAPI)
                        {
                            var objectList = new List <object>()
                            {
                                aPI.MaCho, aPI.DaiLy, aPI.CTV, aPI.PhiHoanDaiLy, aPI.GiaHoanDaiLy, aPI.GhiChu, aPI.GhiChuHeThong
                            };
                            lstList.Add(objectList);
                        }
                        valueRange.Values = lstList;

                        var appendRequest = SService.Spreadsheets.Values.Append(valueRange, SpreadsheetId, range);
                        appendRequest.ValueInputOption = SpreadsheetsResource.ValuesResource.AppendRequest.ValueInputOptionEnum.USERENTERED;
                        var appendResponse = appendRequest.Execute();
                        lstAPI.Clear();
                    }
                    #endregion
                }
            }
        }
Пример #15
0
        void XulyVeThuong()
        {
            D_GIAODICH giaoDichD = new D_GIAODICH();

            for (int i = 0; i < NhanVienName.Count; i++)
            {
                List <O_GIAODICH> lstGiaoDich  = giaoDichD.DuLieu($"TinhCongNo = 1 and LoaiGiaoDich in (4,13,14)  and LoaiKhachHang <> 3 and convert(date,NgayGD) > convert(date,getdate()-10) and IDKhachHang <> 87451 and NVGiaoDich in (0,{NhanVienID[i]})", false);
                String            range        = $"{NhanVienName[i]}!A3:E";
                var        request             = SService.Spreadsheets.Values.Get(SpreadsheetId, range);
                ValueRange response            = request.Execute();
                IList <IList <Object> > values = response.Values;
                List <APISheet>         lstAPI = new List <APISheet>();
                if (values != null)
                {
                    #region Cập nhật khách
                    foreach (var row in values)
                    {
                        #region Điều kiện
                        if (row.Count < 2)//có ít nhất 2 cột có dữ liệu
                        {
                            continue;
                        }
                        else if (row.Count > 1)
                        {
                            if (row[0].ToString() == string.Empty)//không mã chỗ số vé
                            {
                                continue;
                            }

                            if (row.Count == 5)
                            {
                                if (row[4].ToString() != string.Empty)//Xóa Giao dịch quá hạn
                                {
                                    if (DateTime.ParseExact(row[4].ToString().Split(':')[0].Replace("-", "/"), "dd/MM/yyyy", null).Subtract(DateTime.Now.AddDays(-7)).Days < 0)
                                    {
                                        continue;
                                    }
                                }
                            }

                            if (row.Count == 2)
                            {
                                if (row[1].ToString() == string.Empty)// Đại lý và CTV trống
                                {
                                    lstAPI.Add(aPI("Thiếu thông tin khách", row[0].ToString(), row[1].ToString(), string.Empty, string.Empty, string.Empty));
                                    continue;
                                }
                            }
                            else
                            {
                                if (row[1].ToString() == string.Empty && row[2].ToString() == string.Empty)// Đại lý và CTV trống
                                {
                                    lstAPI.Add(aPI("Thiếu thông tin khách", row[0].ToString(), row[1].ToString(), row[2].ToString(), (row.Count == 4) ? row[3].ToString() : string.Empty, string.Empty));
                                    continue;
                                }
                            }
                        }
                        #endregion

                        List <O_GIAODICH> GiaoDinhTamLuu = lstGiaoDich.Where(w => w.MaCho.Replace(" ", string.Empty).Equals(row[0].ToString().ToUpper().Replace(" ", string.Empty)) || (w.SoVeVN ?? string.Empty).Replace(" ", string.Empty).Equals(row[0].ToString().Replace(" ", string.Empty))).ToList();

                        if (GiaoDinhTamLuu.Count > 0)// Mã chỗ có tồn tại theo điều kiện
                        {
                            O_GIAODICH ac = new O_GIAODICH();
                            ac.NVGiaoDich = NhanVienID[i];
                            ac.GhiChu     = row.Count > 3 ? row[3].ToString() : string.Empty;

                            if (row[1].ToString() != string.Empty)// tìm DL theo sheet
                            {
                                if (lstDaiLy.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[1].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).Count() > 0)
                                {
                                    ac.IDKhachHang   = lstDaiLy.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[1].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).First().ID;
                                    ac.LoaiKhachHang = 1;
                                }
                            }
                            else// tìm CTV theo sheet
                            {
                                if (lstCTV.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[2].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).Count() > 0)
                                {
                                    ac.IDKhachHang   = lstCTV.Where(w => w.Ten.TrimEnd().ToLower().Normalize(NormalizationForm.FormKD).Equals(row[2].ToString().TrimEnd().ToLower().Normalize(NormalizationForm.FormKD))).First().ID;
                                    ac.LoaiKhachHang = 2;
                                }
                            }

                            if (ac.NVGiaoDich == GiaoDinhTamLuu[0].NVGiaoDich && ac.IDKhachHang == GiaoDinhTamLuu[0].IDKhachHang)
                            {
                                continue;
                            }

                            if (ac.LoaiKhachHang > 0 && ac.IDKhachHang > 0)//Thay đổi dữ liệu trên hệ thống
                            {
                                string GhiChuTam = string.Format("GExcel : [{1}] {0} - ", row[0].ToString(), NhanVienName[i]);
                                if (ac.IDKhachHang != GiaoDinhTamLuu[0].IDKhachHang)
                                {
                                    GhiChuTam += string.Format("[{0} => {1}] ", lstALL.Where(w => w.ID.Equals(GiaoDinhTamLuu[0].IDKhachHang)).Count() > 0 ? lstALL.Where(w => w.ID.Equals(GiaoDinhTamLuu[0].IDKhachHang)).ToList()[0].Ten : string.Empty, lstALL.Where(w => w.ID.Equals(ac.IDKhachHang)).ToList()[0].Ten);
                                }

                                GhiChuTam += "[";

                                if (GhiChuTam == string.Format("GExcel : [{1}] {0} - [", row[0].ToString(), NhanVienName[i]) && ac.NVGiaoDich == GiaoDinhTamLuu[0].NVGiaoDich)
                                {
                                    continue;
                                }

                                for (int u = 0; u < GiaoDinhTamLuu.Count; u++)
                                {
                                    GiaoDinhTamLuu[u].GhiChu        = ac.GhiChu;
                                    GiaoDinhTamLuu[u].NVGiaoDich    = ac.NVGiaoDich;
                                    GiaoDinhTamLuu[u].LoaiKhachHang = ac.LoaiKhachHang;
                                    GiaoDinhTamLuu[u].IDKhachHang   = ac.IDKhachHang;
                                    GhiChuTam += GiaoDinhTamLuu[u].ID;
                                    GhiChuTam += (u != GiaoDinhTamLuu.Count - 1) ? ", " : "]";
                                }

                                if (giaoDichD.ThucThiSua(GiaoDinhTamLuu) > 0)
                                {
                                    Dictionary <string, object> dic1 = new Dictionary <string, object>();
                                    dic1.Add("FormName", "Hệ thống");
                                    dic1.Add("MaCho", row[0].ToString());
                                    dic1.Add("NoiDung", GhiChuTam);
                                    dic1.Add("LoaiKhachHang", 0);
                                    dic1.Add("Ma", 0);
                                    new D_LS_GIAODICH().ThemMoi(dic1);
                                }
                            }
                            else
                            {
                                lstAPI.Add(aPI("Không tìm thấy khách", row[0].ToString(), row[1].ToString(), row.Count > 2 ? row[2].ToString() : string.Empty, row.Count > 3 ? row[3].ToString() : string.Empty, row.Count > 4 ? row[4].ToString() : string.Empty));
                            }
                        }
                        else
                        {
                            lstAPI.Add(aPI("Không tìm thấy vé", row[0].ToString(), row[1].ToString(), row.Count > 2 ? row[2].ToString() : string.Empty, row.Count > 3 ? row[3].ToString() : string.Empty, row.Count > 4 ? row[4].ToString() : string.Empty));
                        }
                    }
                    #endregion

                    #region Xóa
                    var requestbody = new ClearValuesRequest();
                    var request1    = SService.Spreadsheets.Values.Clear(requestbody, SpreadsheetId, range);
                    var Drequest1   = request1.Execute();
                    #endregion

                    #region Thêm lại các dòng lỗi
                    if (lstAPI.Count > 0)
                    {
                        var valueRange = new ValueRange();

                        List <IList <object> > lstList = new List <IList <object> >();
                        foreach (APISheet aPI in lstAPI)
                        {
                            var objectList = new List <object>()
                            {
                                aPI.MaCho, aPI.DaiLy, aPI.CTV, aPI.GhiChu, aPI.GhiChuHeThong
                            };
                            lstList.Add(objectList);
                        }
                        valueRange.Values = lstList;

                        var appendRequest = SService.Spreadsheets.Values.Append(valueRange, SpreadsheetId, range);
                        appendRequest.ValueInputOption = SpreadsheetsResource.ValuesResource.AppendRequest.ValueInputOptionEnum.USERENTERED;
                        var appendResponse = appendRequest.Execute();
                        lstAPI.Clear();
                    }
                    #endregion
                }
            }
        }
Пример #16
0
        private void btnTHu_Click(object sender, EventArgs e)
        {
            if (XtraMessageBox.Show("Bạn muốn thêm phí ?", "Câu hỏi", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                int n = lstDaiLyz.CheckedItems.Count;
                if (n == 0)
                {
                    XuLyGiaoDien.Alert("Chưa chọn đại lý tìm", Form_Alert.enmType.Info);
                }
                else
                {
                    if (!XuLyGiaoDien.wait.IsSplashFormVisible)
                    {
                        XuLyGiaoDien.wait.ShowWaitForm();
                    }
                    List <long> a     = new List <long>();
                    string      daily = string.Format("{0}", lstDaiLyz.CheckedItems[0]);
                    a.Add(long.Parse(lstDaiLyz.CheckedItems[0].ToString()));
                    for (int i = 1; i < n; i++)
                    {
                        a.Add(long.Parse(lstDaiLyz.CheckedItems[i].ToString()));
                        daily += string.Format(",{0}", lstDaiLyz.CheckedItems[i]);
                    }

                    lst = new D_HOADON().DuLieu(string.Format("CONVERT(date, NgayThucHien) BETWEEN '{0}' AND '{1}' AND MaHD <> '0'  AND ((GiaYeuCau - GiaHeThong) * PhanTram / 100) > 0 AND IDKhachHang in ({2}) ORDER BY IDKhachHang,MaHD,MaCho,GiaHeThong Desc", bdtpTu.DateTime.ToString("yyyyMMdd"), bdtpDen.DateTime.ToString("yyyyMMdd"), daily));

                    O_GIAODICH gdo;

                    O_KHOANGAY kn = new D_KHOANGAY().KiemTraNgayKhoa(bdtpTu.DateTime);
                    if (kn.KhoaAdmin)
                    {
                        return;
                    }

                    D_GIAODICH giaoDichD = new D_GIAODICH();
                    foreach (int b in a)
                    {
                        O_DAILY dl = lstDaiLy.Where(w => w.ID.Equals(b)).ToList()[0];
                        XuLyGiaoDien.wait.SetWaitFormDescription("Thu phí: " + dl.Ten);

                        gdo = new O_GIAODICH();
                        gdo.LoaiKhachHang = dl.LoaiKhachHang;
                        gdo.IDKhachHang   = dl.ID;
                        gdo.MaCho         = "HD";
                        gdo.NVGiaoDich    = DuLieuTaoSan.NV.ID;
                        gdo.GiaThu        = gdo.GiaHeThong = long.Parse(lst.Where(w => w.IDKhachHang.Equals(b)).Sum(w => w.CL2).ToString());
                        gdo.TenKhach      = "Phí hóa đơn tháng " + bdtpTu.DateTime.Month;
                        gdo.CoDinh        = true;
                        gdo.HTTT          = 1;
                        gdo.LoaiGiaoDich  = 5;
                        if (gdo.GiaHeThong > 0)
                        {
                            giaoDichD.ThemMoi(XuLyDuLieu.ConvertClassToDic(gdo));
                        }
                    }
                    if (XuLyGiaoDien.wait.IsSplashFormVisible)
                    {
                        XuLyGiaoDien.wait.CloseWaitForm();
                    }
                    XuLyGiaoDien.Alert("Thêm giao dịch thành công!", Form_Alert.enmType.Success);
                }
            }
        }