private void KhoiTaoDanhBaOnMEM_KhachHang_GetLast(DateTime LastUpdate)
 {
     try
     {
         List <DanhBaEx> lstKhachVip = DanhBaKhachQuen.GetKhachQuens_LastUpdate_V2(LastUpdate);
         if (lstKhachVip != null && lstKhachVip.Count > 0)
         {
             g_ThoiDiemLayTruoc_KhachHang = DateTime.Now;
             foreach (var item in lstKhachVip)
             {
                 if (dicKhachQuen.ContainsKey(item.PhoneNumber))
                 {
                     dicKhachQuen[item.PhoneNumber] = item;
                 }
                 else
                 {
                     dicKhachQuen.TryAdd(item.PhoneNumber, item);
                 }
                 if (Global.IsDebug)
                 {
                     LogError.WriteLogInfo("KhoiTaoDanhBaOnMEM_KhachHang_GetLast:" + item.PhoneNumber + "-" + item.Address);
                 }
             }
         }
     }
     catch (Exception ex)
     {
         LogError.WriteLogError("KhoiTaoDanhBaOnMEM_KhachHang_GetLast.", ex);
     }
 }
 public static DanhBaKhachQuen GetKhachQuen_Row(DataRow dr)
 {
     try
     {
         DanhBaKhachQuen objKhachQuen = new DanhBaKhachQuen();
         objKhachQuen.MaKH     = dr.Table.Columns.Contains("MaKH") && dr["MaKH"] != DBNull.Value ? dr["MaKH"].ToString() : string.Empty;
         objKhachQuen.Phones   = dr.Table.Columns.Contains("Phones") && dr["Phones"] != DBNull.Value ? dr["Phones"].ToString() : string.Empty;    //dr["Phones"].ToString();
         objKhachQuen.Name     = dr.Table.Columns.Contains("Name") && dr["Name"] != DBNull.Value ? dr["Name"].ToString() : string.Empty;          //dr["Name"].ToString();
         objKhachQuen.Address  = dr.Table.Columns.Contains("Address") && dr["Address"] != DBNull.Value ? dr["Address"].ToString() : string.Empty; //dr["Address"].ToString();
         objKhachQuen.BirthDay = !dr.Table.Columns.Contains("BirthDay") || dr["BirthDay"] == DBNull.Value ? DateTime.MinValue : Convert.ToDateTime(dr["BirthDay"]);
         objKhachQuen.Email    = dr.Table.Columns.Contains("Email") && dr["Email"] != DBNull.Value ? dr["Email"].ToString() : string.Empty;       //dr["Email"].ToString();
         objKhachQuen.Fax      = dr.Table.Columns.Contains("Fax") && dr["Fax"] != DBNull.Value ? dr["Fax"].ToString() : string.Empty;             //dr["Fax"].ToString();
         objKhachQuen.IsActive = dr.Table.Columns.Contains("IsActive") && dr["IsActive"] != DBNull.Value && Convert.ToBoolean(dr["IsActive"]);
         objKhachQuen.Notes    = dr.Table.Columns.Contains("Notes") && dr["Notes"] != DBNull.Value ? dr["Notes"].ToString() : string.Empty;       //dr["Notes"].ToString();
         objKhachQuen.Rank     = !dr.Table.Columns.Contains("Rank") || dr["Rank"] == DBNull.Value ? 0 : Convert.ToInt16(dr["Rank"].ToString());
         objKhachQuen.Type     = !dr.Table.Columns.Contains("Type") || dr["Type"] == DBNull.Value ? 0 : Convert.ToInt16(dr["Type"]);
         objKhachQuen.RankName = dr.Table.Columns.Contains("RankName") && dr["RankName"] != DBNull.Value ? dr["RankName"].ToString() : string.Empty; // dr["RankName"] == DBNull.Value ? string.Empty : dr["RankName"].ToString();
         objKhachQuen.TypeName = dr.Table.Columns.Contains("TypeName") && dr["TypeName"] != DBNull.Value ? dr["TypeName"].ToString() : string.Empty; // dr["TypeName"] == DBNull.Value ? string.Empty : dr["TypeName"].ToString();
         objKhachQuen.KinhDo   = !dr.Table.Columns.Contains("KinhDo") || dr["KinhDo"] == DBNull.Value ? 0 : float.Parse(dr["KinhDo"].ToString());
         objKhachQuen.ViDo     = !dr.Table.Columns.Contains("ViDo") || dr["ViDo"] == DBNull.Value ? 0 : float.Parse(dr["ViDo"].ToString());
         return(objKhachQuen);
     }
     catch (Exception ex)
     {
         LogError.WriteLogError("GetKhachQuen_Row", ex);
         return(new DanhBaKhachQuen());
     }
 }
 private void bwSync_LoadDanhBaKhachQuen_DoWork(object sender, DoWorkEventArgs e)
 {
     try
     {
         List <DanhBaEx> lstKhachVip = DanhBaKhachQuen.GetAllKhachQuens_V2();
         if (lstKhachVip != null && lstKhachVip.Count > 0)
         {
             DanhBaEx dicRet = new DanhBaEx();
             foreach (DanhBaEx item in lstKhachVip)
             {
                 if (dicKhachQuen.ContainsKey(dicRet.PhoneNumber))
                 {
                     continue;
                 }
                 dicKhachQuen.TryAdd(dicRet.PhoneNumber, dicRet);
                 if (Global.IsDebug)
                 {
                     LogError.WriteLogInfo("bwSync_LoadDanhBaKhachQuen_DoWork:" + dicRet.PhoneNumber + "-" + dicRet.Address);
                 }
             }
         }
     }
     catch (Exception ex)
     {
         LogError.WriteLogError("bwSync_LoadDanhBaKhachQuen_DoWork.", ex);
     }
 }
        public static DanhBaKhachQuen GetKhachQuen_Phones_Search(string Phones)
        {
            DanhBaKhachQuen objKhachQuen = new DanhBaKhachQuen();
            DataTable       dt           = new DataTable();

            dt = new Data.DanhBaKhachQuen().GetDanhBaKhachQuen_Phones_Search(Phones);
            if (dt.Rows.Count > 0)
            {
                objKhachQuen = GetKhachQuen_Row(dt.Rows[0]);
            }
            dt.Dispose();
            dt = null;

            return(objKhachQuen);
        }