private void AddPayment_Load(object sender, EventArgs e)
 {
     PersianDateFormatter pdf = new PersianDateFormatter();
     bSave.DialogResult = DialogResult.OK;
     bCancel.DialogResult = DialogResult.Cancel;
     tPaymentDate.Text = pdf.getDateString(DateTime.Now);
 }
 private void AddAppointment_Load(object sender, EventArgs e)
 {
     DefaultSettingsRepository repo = new DefaultSettingsRepository();
     radCheckedDropDownList1.DataSource = repo.GetSetingsByType("price").ToList();
     radCheckedDropDownList1.DisplayMember = "Name";
     radCheckedDropDownList1.ValueMember = "Value";
     bSave.DialogResult = DialogResult.OK;
     bCancel.DialogResult = DialogResult.Cancel;
     PersianDateFormatter pdf = new PersianDateFormatter();
     tTime.Format = DateTimePickerFormat.Custom;
     tTime.CustomFormat = "HH:mm";
     tTime.ShowUpDown = true;
     tDate.Text = pdf.getDateString(DateTime.Now);
 }
 private void toolStripbNext_Click(object sender, EventArgs e)
 {
     PersianDateFormatter pdf = new PersianDateFormatter();
     DateTime dt = DateTime.Now;
     dayCounter++;
     dt = dt.AddDays(dayCounter);
     toolStripTextBox1.Text = pdf.getDateString(dt);
     OtherRepository otherRepository = new OtherRepository();
     radGridView1.DataSource = otherRepository.getCustomerJoinContract(dt);
 }
        private void timer1_Tick(object sender, EventArgs e)
        {
            PersianDateFormatter pdf = new PersianDateFormatter();
            int date = pdf.convert(toolStripTextBox1.Text);
            OtherRepository otherRepository = new OtherRepository();
            radGridView1.DataSource = otherRepository.getCustomerJoinContract(date);

            /////////////////////////////////////////////////
            DefaultSettingsRepository dRepo = new DefaultSettingsRepository();
            DefaultSetting gsmPort = dRepo.GetSetting("gsm_port");
            DefaultSetting lastSend = dRepo.GetSetting("last_send");

            if (lastSend == null)
            {
                DefaultSetting ls = new DefaultSetting();
                ls.Value = "13000101";
                ls.Name = "last_send";
                dRepo.AddSettings(ls);
            }
            else
            {
                int lastSendInt = Convert.ToInt32(lastSend.Value);
                int todayInt = pdf.getDateInteger(DateTime.Now);
                int x = 0;
                if (todayInt <= lastSendInt)
                {
                    return;
                }
            }

            if (gsmPort != null)
            {

                if (gsmPort.Value != "NULL")
                {
                    try
                    {
                        GsmCommMain comm = new GsmCommMain(gsmPort.Value, 9600, 150);
                        comm.Open();
                        byte dcs = (byte)DataCodingScheme.GeneralCoding.Alpha16Bit;

                        DefaultSetting sendTime = dRepo.GetSetting("send_message_time");
                        DefaultSetting days = dRepo.GetSetting("days_before_send");
                        DefaultSetting text = dRepo.GetSetting("message_text");
                        int daysInteger = Convert.ToInt32(days.Value);

                        TimeSpan ts = TimeSpan.Parse(sendTime.Value);
                        TimeSpan nts = DateTime.Now.TimeOfDay;
                        TimeSpan fivemin = TimeSpan.FromMinutes(5);

                        if (nts.CompareTo(ts) >= 0)
                        {
                            if (nts.Subtract(ts).CompareTo(fivemin) > 0)
                            {
                                return;
                            }
                        }
                        else
                        {
                            if (ts.Subtract(nts).CompareTo(fivemin) > 0)
                            {
                                return;
                            }
                        }

                        DateTime dt = DateTime.Now;
                        dt = dt.AddDays(daysInteger);
                        string dateString = pdf.getDateString(dt);

                        object customers = otherRepository.getCustomerJoinContract(dt);

                        IEnumerable<object> collection = (IEnumerable<object>)customers;
                        foreach (object item in collection)
                        {
                            var nameOfProperty = "PhoneNumber";
                            var propertyInfo = item.GetType().GetProperty(nameOfProperty);
                            var phoneNumber = propertyInfo.GetValue(item, null);

                            var nameOfProperty2 = "Time";
                            var propertyInfo2 = item.GetType().GetProperty(nameOfProperty2);
                            var time = propertyInfo2.GetValue(item, null);

                            string timeString = time.ToString();
                            timeString = timeString.Remove(timeString.Length-3);

                            string smsText = text.Value + Environment.NewLine + dateString + Environment.NewLine + timeString;

                            SmsSubmitPdu pdu = new SmsSubmitPdu(smsText, phoneNumber.ToString(), dcs);
                            comm.SendMessage(pdu);
                        }

                        DefaultSettingsRepository dRepo2 = new DefaultSettingsRepository();
                        DefaultSetting lsls =  dRepo2.GetSetting("last_send");
                        lsls.Value = pdf.getDateInteger(DateTime.Now).ToString();
                        dRepo2.UpdateSetting(lsls);

                    }
                    catch (Exception ex)
                    {

                    }
                }
            }
        }
        private void EasyAccounting_Load(object sender, EventArgs e)
        {
            PersianDateFormatter pdf = new PersianDateFormatter();
            toolStripTextBox1.Text = pdf.getDateString(DateTime.Now);
            ((GridTableElement)radGridView1.TableElement).AlternatingRowColor = Color.FromArgb(215, 234, 124);
            radGridView1.TableElement.RowHeight = 50;
            OtherRepository otherRepository = new OtherRepository();
            radGridView1.DataSource = otherRepository.getCustomerJoinContract(DateTime.Now);
            timer1.Start();

            //GsmCommMain comm = new GsmCommMain("COM8", 9600, 150);
            //comm.Open();
            //byte dcs = (byte)DataCodingScheme.GeneralCoding.Alpha16Bit;
            //SmsSubmitPdu pdu = new SmsSubmitPdu("امین", "09398987855", dcs);
            //comm.SendMessage(pdu);
        }
        private void AddEditContractForm_Load(object sender, EventArgs e)
        {
            bSave.DialogResult = DialogResult.OK;
            bCancel.DialogResult = DialogResult.Cancel;
            PersianDateFormatter pdf = new PersianDateFormatter();
            tNextAppointmentTime.Format = DateTimePickerFormat.Custom;
            tNextAppointmentTime.CustomFormat = "HH:mm";
            tNextAppointmentTime.ShowUpDown = true;
            if (isNewContract)
            {
                tPayment.Text = "0";
                tStartDate.Text = pdf.getDateString(DateTime.Now);
                tNextAppointmentDate.Text = pdf.getDateString(DateTime.Now.AddMonths(1));

            }
            else
            {
                ContractRepository repository = new ContractRepository();
                Contract contract = repository.getContract(contractId);
                tPayment.Text = contract.ContractPayment.Value.ToString();

                tNextAppointmentDate.Text = pdf.convert(contract.NextAppointmentDate.Value);
                tStartDate.Text = pdf.convert(contract.ContractStartDate.Value);

                if (contract.NextAppointmentTime.Value != null)
                {
                    DateTime dt = new DateTime(2000, 1, 1, 0, 0, 0).Add(contract.NextAppointmentTime.Value);

                    tNextAppointmentTime.Value = dt;
                }
                if (!String.IsNullOrWhiteSpace(contract.Description))
                {
                    tDescription.Text = contract.Description;
                }
                if (contract.IsAppointmentFinished.Value == true)
                {
                    cIsFinished.Checked = true;
                }
            }
        }