Пример #1
0
        private void button1_Click(object sender, EventArgs e)
        {
            int a = (int)numericUpDown1.Value;
            int b = (int)numericUpDown2.Value;

            if (radioButton1.Checked)
            {
                using (DataMy dt = DataMy.GetInstanse())
                {
                    for (int i = a; i <= b; ++i)
                    {
                        dt.UpdateIsActive(i, 1);
                    }
                }
            }
            if (radioButton2.Checked)
            {
                using (DataMy dt = DataMy.GetInstanse())
                {
                    for (int i = a; i <= b; ++i)
                    {
                        dt.UpdateIsActive(i, 0);
                    }
                }
            }
            this.DialogResult = DialogResult.OK;
        }
Пример #2
0
        } //dtToUnix

        /// <summary>
        /// Метод для удаления записи из бд  По айди взятому из таблицы на форме.
        /// </summary>
        /// <param name="dg">Таблица DataGridView на форме</param>
        /// <param name="tb">Название таблицы в бд из которой нужно удалить строку</param>
        public static void DelFromGridInDb(DataGridView dg, String tb)
        {
            if (MessageBox.Show("Вы действительно хотите удалить выбранную строку из базы?", "Подтвердите", MessageBoxButtons.OKCancel) == DialogResult.OK)
            {
                using (DataMy dt = DataMy.GetInstanse())
                {
                    if (dg.CurrentRow != null)
                    {
                        switch (tb)
                        {
                        case "Cannels":
                            dt.DelChannels(Int32.Parse(dg.CurrentRow.Cells[0].Value.ToString()));
                            break;

                        case "Contacts":
                            dt.DelContacts(Int32.Parse(dg.CurrentRow.Cells[0].Value.ToString()));
                            break;

                        case "group_contacts":
                            dt.DelGroups(Int32.Parse(dg.CurrentRow.Cells[0].Value.ToString()));
                            break;

                        default:
                            MessageBox.Show("Введите правильно название таблицы!");
                            return;
                        } //switch(tb)
                    }     //if (dg.CurrentRow != null)
                }         //using (DataMy dt = DataMy.GetInstanse())
            }             //If  == DialogResult.OK)
        }                 //DelFromGridInDb
Пример #3
0
        private void Form1_Load(object sender, EventArgs e)
        {
            progressBar1.Visible = false;
            #region  абота с контроллами. На всякий случай
            //Поиск нужных контроллов по имени и изменение их свойств
            //for (int i = 7; i <= 12; i++)
            //{
            //    foreach (Control c in this.Controls.Find("button" + i.ToString(), true))
            //    {
            //        c.Enabled = false;
            //        c.Visible = false;
            //    }
            //}
            //foreach (TextBox tb in Controls.Cast<Control>().Where(x => x is TextBox).Select(x => x as TextBox))
            //{

            //}
            #endregion
            this.UpdateGrid();
            this.UpdateContactsGrid();
            using (DataMy dt = DataMy.GetInstanse())
            {
                this.comboBox1.DataSource = dt.GetTable("group_contacts");
                comboBox1.DisplayMember   = "name_group";
                comboBox1.ValueMember     = "id_group";
            }
        }
Пример #4
0
 private void button4_Click(object sender, EventArgs e)
 {
     using (DataMy dt = DataMy.GetInstanse())
     {
         dt.InsertChannels(txtPhoneNumber.Text.Trim(), textBox1.Text, "", 0, 0, LogicMy.dtToUnix(DateTime.Now), 0, 0, "", 1);
     }
     this.DialogResult = DialogResult.OK;
 }
Пример #5
0
 private void button1_Click(object sender, EventArgs e)
 {
     using (DataMy dt = DataMy.GetInstanse())
     {
         dt.InsertGrops(textBox1.Text, textBox2.Text);
         DialogResult = DialogResult.OK;
     }
 }
Пример #6
0
 private void логинToolStripMenuItem_Click(object sender, EventArgs e)
 {
     using (DataMy dm = DataMy.GetInstanse())
     {
         using (DataTable dtt = dm.GetTable("Cannels"))
         {
             DataRow dr = dtt.Select("id_cannels=" + dataGridView1.CurrentRow.Cells[0].Value.ToString()).FirstOrDefault();
             LogicMy.ChekWALoginMy(dr, dm);
             UpdateGrid();
         }
     }
 }
Пример #7
0
 /// <summary>
 /// Метод для обновления таблицы и группами.
 /// </summary>
 private void UpdateGridGr()
 {
     using (DataMy dm = DataMy.GetInstanse())
     {
         using (
             ViewMyDataTableToGridView vm = new ViewMyDataTableToGridView(dm.GetTable("group_contacts"),
                                                                          dataGridView2))
         {
             vm.GroupsGridFiller();
         }
     }
 }
Пример #8
0
 /// <summary>
 /// Метод для фильтрации контактов по группам.
 /// </summary>
 void UpdateContactsGrid()
 {
     using (DataMy dt = DataMy.GetInstanse())
     {
         using (DataTable dtt = dt.GetTable("Contacts"))
         {
             using (ViewMyDataTableToGridView vm = new ViewMyDataTableToGridView(dtt, dataGridView2))
             {
                 vm.ContactsGridFiller(checkBox2, comboBox1);
             }
         }
     }
 }
Пример #9
0
 public AddContakt()
 {
     InitializeComponent();
     using (DataMy dt = DataMy.GetInstanse())
     {
         this.comboBox1.DataSource = dt.GetTable("group_contacts");
         comboBox1.DisplayMember   = "name_group";
         comboBox1.ValueMember     = "id_group";
     }
     this.comboBox2.Text = "Неопределен";
     this.comboBox3.Text = "Yes";
     this.comboBox4.Text = "Yes";
 }
Пример #10
0
        } //LoadingChannelsInFromFile

        /// <summary>
        /// Сохраниние каналов в файл c типом программы
        /// </summary>
        public void SaveChannelsToFile()
        {
            if (saveFileDialog1.ShowDialog() == DialogResult.Cancel)
            {
                return;
            }
            using (DataMy dt = DataMy.GetInstanse())
            {
                using (DataTable dtb = dt.GetTable("Cannels"))
                {
                    dtb.WriteXml(saveFileDialog1.FileName);
                }
            }
        } //SaveChannelsToFile
Пример #11
0
 private void button10_Click_1(object sender, EventArgs e)
 {
     using (Grupps sf = new Grupps())
     {
         if (sf.ShowDialog() == DialogResult.OK)
         {
         }
         UpdateGrid();
         using (DataMy dt = DataMy.GetInstanse())
         {
             this.comboBox1.DataSource = dt.GetTable("group_contacts");
             comboBox1.DisplayMember   = "name_group";
             comboBox1.ValueMember     = "id_group";
         }
     }
 }
Пример #12
0
        /// <summary>
        /// Метод для добавления каналов из специально созданной для этого формы.
        /// </summary>
        /// <param name="maskedTextBox1">TextBox C номером телефона</param>
        /// <param name="maskedTextBox2">Сегодня отправленно</param>
        /// <param name="maskedTextBox3">Всего отправленно</param>
        /// <param name="dateTimePicker1">Дата регистрации</param>
        /// <param name="dateTimePicker2">Последний раз авторизовался</param>
        /// <param name="dateTimePicker3">Дата блокировки канала</param>
        /// <param name="checkBox1">Активный ли канал</param>
        /// <param name="textBox1">Пароль</param>
        /// <param name="textBox2">Ник пользователя</param>
        /// <param name="textBox5">Ощибка пре авторизации</param>
        /// <returns>Возврашает true при успешном выполнени операции. Иначе ничего</returns>
        public static bool AddChannel(TextBox maskedTextBox1, MaskedTextBox maskedTextBox2,
                                      MaskedTextBox maskedTextBox3, DateTimePicker dateTimePicker1,
                                      DateTimePicker dateTimePicker2, DateTimePicker dateTimePicker3,
                                      CheckBox checkBox1,
                                      TextBox textBox1, TextBox textBox2, TextBox textBox5)
        {
            int dr = LogicMy.dtToUnix(dateTimePicker1.Value);
            int ll = LogicMy.dtToUnix(dateTimePicker2.Value);
            int?bd = LogicMy.dtToUnix(dateTimePicker3.Value);

            if (dateTimePicker3.Value.Date == DateTime.Now.Date)
            {
                bd = null;
            }
            Int32 i;
            Int32 j;

            if (!Int32.TryParse(maskedTextBox2.Text.Trim().Replace(" ", ""), out i))
            {
                i = 0;
            }
            if (!Int32.TryParse(maskedTextBox3.Text.Trim().Replace(" ", ""), out j))
            {
                j = 0;
            }
            Int32 k = 0;

            if (checkBox1.Checked)
            {
                k = 1;
            }
            using (DataMy dt = DataMy.GetInstanse())
            {
                dt.InsertChannels(
                    maskedTextBox1.Text.Trim(),
                    textBox1.Text,
                    textBox2.Text,
                    i,
                    j,
                    dr,
                    ll,
                    bd,
                    textBox5.Text,
                    k);
            }
            return(true);
        }// Конец AddChannel
Пример #13
0
        private void button3_Click(object sender, EventArgs e)
        {
            using (DataMy dt = DataMy.GetInstanse())
            {
                dt.InsertChannels(txtPhoneNumber.Text.Trim(), textBox1.Text, "", 0, 0, LogicMy.dtToUnix(DateTime.Now), 0, 0, "", 1);
            }
            grpResult.Enabled = true;
            grpStep1.Enabled  = true;
            grpStep2.Enabled  = true;
            txtOutput.Text    = String.Empty;
            txtCode.Text      = String.Empty;

            txtPhoneNumber.Text = String.Empty;
            textBox1.Text       = String.Empty;
            button3.Enabled     = true;
            button4.Enabled     = true;
        }
Пример #14
0
 private void button9_Click(object sender, EventArgs e)
 {
     AddContakt.MyStruct m = new AddContakt.MyStruct();
     if (dataGridView2.CurrentRow != null)
     {
         DataTable dtm = null;
         using (DataMy dt = DataMy.GetInstanse())
         {
             dtm = dt.GetTable("group_contacts");
         }
         int idContact = Convert.ToInt32(dataGridView2.CurrentRow.Cells[0].Value);
         var s         = dtm.AsEnumerable();
         var mm        = from ss in s
                         where ss["name_group"].ToString() == dataGridView2.CurrentRow.Cells[1].Value.ToString()
                         select ss["id_group"];
         var k = mm.FirstOrDefault();
         if (k == null)
         {
             k = "0";
         }
         m.id_group      = Convert.ToInt32(k.ToString());
         m.Date_reg      = LogicMy.dtToUnix(Convert.ToDateTime(dataGridView2.CurrentRow.Cells[2].Value.ToString()));
         m.Name          = dataGridView2.CurrentRow.Cells[4].Value.ToString();
         m.Familiya      = dataGridView2.CurrentRow.Cells[3].Value.ToString();
         m.Date_of_birth = LogicMy.dtToUnix(Convert.ToDateTime(dataGridView2.CurrentRow.Cells[5].Value.ToString()));
         m.Phone         = dataGridView2.CurrentRow.Cells[6].Value.ToString();
         m.Email         = dataGridView2.CurrentRow.Cells[7].Value.ToString();
         m.Sex           = dataGridView2.CurrentRow.Cells[8].Value.ToString();
         m.Is_whats_app  = dataGridView2.CurrentRow.Cells[9].Value.ToString().Trim() == "1" ? AddContakt.MyEnum.Yes : AddContakt.MyEnum.No;
         m.Subscrible    = dataGridView2.CurrentRow.Cells[10].Value.ToString().Trim() == "1" ? AddContakt.MyEnum.Yes : AddContakt.MyEnum.No;
         m.coment        = dataGridView2.CurrentRow.Cells[11].Value.ToString().Trim();
         using (UpdateContacts uc = new UpdateContacts(idContact, m))
         {
             if (uc.ShowDialog() == DialogResult.OK)
             {
                 this.UpdateContactsGrid();
             }
         }
     }
     else
     {
         MessageBox.Show("Выберите строку для редактирования!");
     }
 }
Пример #15
0
        }  //Конец Конструктора DataMy()

        /// <summary>
        /// Получение инстанса одиночки
        /// </summary>
        /// <returns>экземпляр класса DataMy </returns>
        public static DataMy GetInstanse()
        {
            if (instanse == null)
            {
                instanse = new DataMy();
                return(instanse);
            }
            if (instanse.connection == null)
            {
                instanse = new DataMy();
                return(instanse);
            }
            if (!instanse._disposed)
            {
                return(instanse);
            }
            instanse = new DataMy();
            return(instanse);
        } //Конец GetInstanse()
Пример #16
0
 /// <summary>
 /// Обработчик кнопки обновить
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void button9_Click_1(object sender, EventArgs e)
 {
     using (DataMy dt = DataMy.GetInstanse())
     {
         if (dataGridView2.CurrentRow != null)
         {
             int    id  = Convert.ToInt32(dataGridView2.CurrentRow.Cells[0].Value);
             string nm  = dataGridView2.CurrentRow.Cells[1].Value.ToString();
             string kom = dataGridView2.CurrentRow.Cells[2].Value.ToString();
             using (ApdateGroups ap = new ApdateGroups(id, nm, kom))
             {
                 if (ap.ShowDialog() == DialogResult.OK)
                 {
                     UpdateGridGr();
                 }
             }
         }
     }
 }
Пример #17
0
        }//Класс РоуКомпарер

        /// <summary>
        /// Проверяет каналлы на активность.
        /// </summary>
        public static void CheckChannels(ProgressBar pb, DataGridView dgv)
        {
            using (DataMy dt = DataMy.GetInstanse())
            {
                using (DataTable dtt = dt.GetTable("Cannels"))
                {
                    pb.Minimum = 0;
                    pb.Maximum = dtt.Rows.Count;
                    pb.Value   = 0;
                    pb.Step    = 1;
                    pb.Visible = true;
                    for (int j = 0; j < dtt.Rows.Count; ++j)
                    {
                        ScrolRow(dgv, j);
                        pb.PerformStep();
                        DataRow dr = dtt.Rows[j];
                        ChekWALogin(dr, dt);
                    } // foreach (DataRow dr in dtt)
                }     //using (DataTable dtt = dt.GetTable("Cannels"))
            }         //using (DataMy dt = DataMy.GetInstanse())
        }
Пример #18
0
        private void button1_Click(object sender, EventArgs e)
        {
            MyStruct m = new MyStruct();

            m.id_group      = Convert.ToInt32(comboBox1.SelectedValue);
            m.Date_reg      = LogicMy.dtToUnix(dateTimePicker1.Value);
            m.Name          = textBox1.Text;
            m.Familiya      = textBox2.Text;
            m.Date_of_birth = LogicMy.dtToUnix(dateTimePicker2.Value);
            m.Phone         = textBox3.Text;
            m.Email         = textBox4.Text;
            m.Sex           = comboBox2.Text;
            m.Is_whats_app  = comboBox3.Text == "Yes" ? MyEnum.Yes : MyEnum.No;
            m.Subscrible    = comboBox4.Text == "Yes" ? MyEnum.Yes : MyEnum.No;
            m.coment        = textBox5.Text;
            using (DataMy dt = DataMy.GetInstanse())
            {
                dt.InsertContacts(m.id_group, m.Date_reg, m.Familiya, m.Name, m.Date_of_birth, m.Phone, m.Email, m.Sex, (int)m.Is_whats_app, (int)m.Subscrible, m.coment);
            }
            this.DialogResult = DialogResult.OK;
        }
Пример #19
0
        } //SaveChannelsToFile

        /// <summary>
        ///Загрузка данных из файла в таблицу каналы БД
        /// </summary>
        public void LoadChannelsFromFile()
        {
            if (openFileDialog1.ShowDialog() == DialogResult.Cancel)
            {
                return;
            }
            if (openFileDialog1.FileName.ToString().ToLower().EndsWith(".wpsm"))
            {
                using (DataSet ds = new DataSet())
                {
                    ds.ReadXml(openFileDialog1.FileName);
                    foreach (DataTable dbt in ds.Tables)
                    {
                        DataMy.LoadChannelsToDT(dbt);
                    }
                }
            } // if (openFileDialog1.FileName.ToString().IndexOf(".wpsm")>0)
            if (openFileDialog1.FileName.ToString().ToLower().EndsWith(".csv"))
            {
                String[] f = File.ReadAllLines(openFileDialog1.FileName);
                using (DataTable dt = new DataTable())
                {
                    dt.Columns.Add("Number");
                    dt.Columns.Add("Password");
                    dt.Columns.Add("Today_send");
                    dt.Columns.Add("Total_send");
                    dt.Columns.Add("Date_register");
                    dt.Columns.Add("Is_active");
                    for (int i = 0; i < f.Length; ++i)
                    {
                        string[] sf = f[i].Split(',');
                        dt.Rows.Add(sf[0], sf[1], 0, 0, LogicMy.dtToUnix(DateTime.Now), 0);
                    }
                    DataMy.LoadChannelsToDT(dt);
                }
            } //if (openFileDialog1.FileName.ToString().IndexOf(".csv") > 0)
        }     //LoadChannelsFromFile
Пример #20
0
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex == 1 && e.RowIndex >= 0)
            {
                int i = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["Айди"].Value);

                if (((CheckState)dataGridView1.Rows[e.RowIndex].Cells["Активный"].Value) == CheckState.Checked)
                {
                    using (DataMy dt = DataMy.GetInstanse())
                    {
                        dt.UpdateIsActive(i, 0);
                    }
                    UpdateGrid();
                }
                else if (((CheckState)dataGridView1.Rows[e.RowIndex].Cells["Активный"].Value) == CheckState.Unchecked)
                {
                    using (DataMy dt = DataMy.GetInstanse())
                    {
                        dt.UpdateIsActive(i, 1);
                    }
                    UpdateGrid();
                }
            }
        }
Пример #21
0
 private void UpdateGrid()
 {
     using (DataMy dt = DataMy.GetInstanse())
         using (ViewMyDataTableToGridView vm = new ViewMyDataTableToGridView(dt.GetTable("Cannels"), dataGridView1))
             vm.ChannelsGridFiller(label1, label2, label3, checkBox1);
 }
Пример #22
0
        public static void ChekWALoginMy(DataRow dr, DataMy dt)
        {
            Int32   ok = 1;
            Int32   no = 0;
            decimal iiii;
            Int32   i = Convert.ToInt32(dr[0].ToString());

            dr[1] = dr[1].ToString().Replace("+", "");
            dr[1] = dr[1].ToString().Replace("-", "");
            dr[1] = dr[1].ToString().Replace("(", "");
            dr[1] = dr[1].ToString().Replace(")", "");
            dr[1] = dr[1].ToString().TrimStart(new char[] { '0' });
            // MessageBox.Show(dr[1].ToString()+"Первый");
            decimal.TryParse(dr[1].ToString().Trim(), out iiii);
            if (iiii <= 0)
            {
                return;
            }
            if (i >= 0 && i < 2147483647)
            {
                //  MessageBox.Show(dr[1].ToString()+"Второй"+iiii.ToString());
                string namber = dr[1].ToString() ?? " ";
                //WhatsAppApi.Parser.PhoneNumber pn =new WhatsAppApi.Parser.PhoneNumber(namber);
                string passWord         = dr[2].ToString() ?? " ";
                string nik              = dr[3].ToString() ?? " ";
                WhatsAppApi.WhatsApp wa = new WhatsAppApi.WhatsApp(namber, passWord, nik);

                wa.OnConnectSuccess += () =>
                {
                    // MessageBox.Show("Присоеденились");
                    wa.OnLoginSuccess += (phoneNumber, data) =>
                    {
                        MessageBox.Show("Залогинились");
                        dt.UpdateIsActive(i, ok);
                        dt.UpdateEror(i, " ");
                        dt.UpdateDateLastLogin(i, LogicMy.dtToUnix(DateTime.Now));
                    };
                    wa.OnLoginFailed += (data) =>
                    {
                        MessageBox.Show("Не удалось залогиниться: " + data);
                        dt.UpdateIsActive(i, no);
                        dt.UpdateEror(i, data.ToString());
                        dt.UpdateDateBlock(i, LogicMy.dtToUnix(DateTime.Now));
                    };
                    wa.OnError += (id, from, code, text) =>
                    {
                        dt.UpdateIsActive(i, no);
                        dt.UpdateEror(i, id + " : " + @from + " : " + code + " : " + text);
                        MessageBox.Show(id + " : " + from + " : " + code + " : " + text);
                    };
                    wa.Login();
                };
                wa.OnConnectFailed += (ex) =>
                {
                    MessageBox.Show("Не удалось присоедениться");
                    dt.UpdateEror(i, ex.Message);
                };
                wa.Connect();
                wa.Disconnect();
            }
        }
Пример #23
0
        /// <summary>
        /// Заполняет таблицу контакты
        /// </summary>
        /// <param name="checkBox2">Галочка для проверки фильтровать ли по группам</param>
        /// <param name="comboBox1">Название группы по которой надо фильтровать.</param>
        public void ContactsGridFiller(CheckBox checkBox2, ComboBox comboBox1)
        {
            dg.Columns[0].Name  = "Айди";
            dg.Columns[1].Name  = "Название группы";
            dg.Columns[2].Name  = "Дата регистрации";
            dg.Columns[3].Name  = "Фамилия";
            dg.Columns[4].Name  = "Имя";
            dg.Columns[5].Name  = "Дата рождения";
            dg.Columns[6].Name  = "Телефон";
            dg.Columns[7].Name  = "Email";
            dg.Columns[8].Name  = "Пол";
            dg.Columns[9].Name  = "Is WhatsApp?";
            dg.Columns[10].Name = "Subscrible?";
            dg.Columns[11].Name = "Коментарий";
            for (int i = 0; i < 12; ++i)
            {
                dg.Columns[i].SortMode = DataGridViewColumnSortMode.Automatic;
            }
            if (dg == null)
            {
                return;
            }
            DataTable dtm = null;

            using (DataMy dt = DataMy.GetInstanse())
            {
                dtm = dt.GetTable("group_contacts");
            }
            for (int i = 0; i < this.dg.Rows.Count; ++i)
            {
                this.dg.Rows[i].Cells["Айди"].Value = this.dt.Rows[i]["Id_contact"].ToString();
                var s = dtm.AsEnumerable();
                var m = from ss in s
                        where ss["id_group"].ToString() == this.dt.Rows[i]["Id_group"].ToString()
                        select ss["name_group"];
                var    k        = m.FirstOrDefault();
                string nameGrop = String.Empty;
                if (k != null)
                {
                    nameGrop = k.ToString();
                }
                this.dg.Rows[i].Cells["Название группы"].Value = nameGrop;
                string   dataString = this.dt.Rows[i]["Date_reg"].ToString();
                DateTime dt         = LogicMy.unixToDT(Convert.ToInt32(dataString));
                this.dg.Rows[i].Cells["Дата регистрации"].Value = dt;
                this.dg.Rows[i].Cells["Фамилия"].Value          = this.dt.Rows[i]["Familiya"].ToString();
                this.dg.Rows[i].Cells["Имя"].Value           = this.dt.Rows[i]["Name"].ToString();
                this.dg.Rows[i].Cells["Дата рождения"].Value = LogicMy.unixToDT(Convert.ToInt32(this.dt.Rows[i]["Date_of_birth"].ToString()));
                this.dg.Rows[i].Cells["Телефон"].Value       = this.dt.Rows[i]["Phone"].ToString();
                this.dg.Rows[i].Cells["Email"].Value         = this.dt.Rows[i]["Email"].ToString();
                this.dg.Rows[i].Cells["Пол"].Value           = this.dt.Rows[i]["Sex"].ToString();
                this.dg.Rows[i].Cells["Is WhatsApp?"].Value  = this.dt.Rows[i]["Is_whats_app"].ToString().Trim() == "1"?"Yes":"No";
                this.dg.Rows[i].Cells["Subscrible?"].Value   = this.dt.Rows[i]["Subscrible"].ToString().Trim() == "1" ? "Yes" : "No";
                this.dg.Rows[i].Cells["Коментарий"].Value    = this.dt.Rows[i]["coment"].ToString();
                if (checkBox2 != null && checkBox2.Checked)
                {
                    // MessageBox.Show(comboBox1.Text);
                    if ((string)dg.Rows[i].Cells["Название группы"].Value != comboBox1.Text)
                    {
                        dg.Rows[i].Visible = false;
                    }
                    else
                    {
                        dg.Rows[i].Visible = true;
                    }
                }
                else
                {
                    dg.Rows[i].Visible = true;
                }
            }
        }