Ejemplo n.º 1
0
        public async Task <SanadBussines> GetAsync(string _connectionString, long number)
        {
            SanadBussines res = null;

            try
            {
                using (var cn = new SqlConnection(_connectionString))
                {
                    var cmd = new SqlCommand("sp_Sanad_SelectRowBuNumber", cn)
                    {
                        CommandType = CommandType.StoredProcedure
                    };
                    cmd.Parameters.AddWithValue("@number", number);

                    await cn.OpenAsync();

                    var dr = await cmd.ExecuteReaderAsync();

                    if (dr.Read())
                    {
                        res = LoadData(dr);
                    }
                    cn.Close();
                }
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }

            return(res);
        }
Ejemplo n.º 2
0
        private async void mnuViewSanad_Click(object sender, EventArgs e)
        {
            try
            {
                if (DGrid.RowCount <= 0 || DGrid.CurrentRow == null)
                {
                    return;
                }
                var guid     = (Guid)DGrid[dgGuid.Index, DGrid.CurrentRow.Index].Value;
                var avalDore = (bool)DGrid[dgAvalDore.Index, DGrid.CurrentRow.Index].Value;
                if (!avalDore)
                {
                    var str = await PardakhtCheckShakhsiBussines.GetAsync(guid);

                    var rec = await PardakhtBussines.GetAsync(str.MasterGuid);

                    var sanad = await SanadBussines.GetAsync(rec.SanadNumber);

                    var frm_ = new frmSanadMain(sanad.Guid, true);
                    frm_.ShowDialog(this);
                    return;
                }

                var frm = new frmPardakhtCheckAvalDore(guid, true);
                frm.ShowDialog(this);
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }
        }
Ejemplo n.º 3
0
        private SanadBussines LoadData(SqlDataReader dr)
        {
            var item = new SanadBussines();

            try
            {
                item.Guid               = (Guid)dr["Guid"];
                item.Modified           = (DateTime)dr["Modified"];
                item.DateM              = (DateTime)dr["DateM"];
                item.Description        = dr["Description"].ToString();
                item.Number             = (long)dr["Number"];
                item.SanadStatus        = (EnSanadStatus)dr["SanadStatus"];
                item.UserGuid           = (Guid)dr["UserGuid"];
                item.SanadType          = (EnSanadType)dr["SanadType"];
                item.UserName           = dr["UserName"].ToString();
                item.ServerDeliveryDate = (DateTime)dr["ServerDeliveryDate"];
                item.ServerStatus       = (ServerStatus)dr["ServerStatus"];
                item.Details            = AsyncContext.Run(() => SanadDetailBussines.GetAllAsync(item.Guid));
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }

            return(item);
        }
Ejemplo n.º 4
0
        public static async Task <ReturnedSaveFuncInfo> BargashtAsync(ReceptionCheckBussines cls)
        {
            var res = new ReturnedSaveFuncInfo();

            try
            {
                cls.CheckStatus = EnCheckM.Bargashti;
                cls.Modified    = DateTime.Now;
                res.AddReturnedValue(await cls.SaveAsync());

                var reception = await ReceptionBussines.GetAsync(cls.MasterGuid.Value);

                var pardazande = await TafsilBussines.GetAsync(reception.TafsilGuid);

                var sanad = new SanadBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"برگشت زدن چک دریافتنی * شناره: {cls.CheckNumber} بانک صادرکننده: {cls.BankName} * پردازنده: {pardazande.Name}",
                    DateM       = DateTime.Now,
                    Number      = await SanadBussines.NextNumberAsync(),
                    SanadStatus = EnSanadStatus.Temporary,
                    SanadType   = EnSanadType.Auto,
                    UserGuid    = UserBussines.CurrentUser.Guid
                };
                //بستانکار--اسناد
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"برگشت زدن چک {cls.CheckNumber} {cls.BankName} * پردازنده: {pardazande.Name}",
                    Debit       = 0,
                    Credit      = cls.Price,
                    TafsilGuid  = cls.SandouqTafsilGuid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = cls.SandouqMoeinGuid
                });
                //بدهکار--شخص
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"برگشت زدن چک {cls.CheckNumber} {cls.BankName} * پردازنده: {pardazande.Name}",
                    Debit       = cls.Price,
                    Credit      = 0,
                    TafsilGuid  = pardazande.Guid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = ParentDefaults.MoeinCoding.CLSMoein10304
                });

                res.AddReturnedValue(await sanad.SaveAsync());
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
                res.AddReturnedValue(ex);
            }

            return(res);
        }
Ejemplo n.º 5
0
        public static async Task <ReturnedSaveFuncInfo> SaveAsync(SanadBussines cls)
        {
            var res = new ReturnedSaveFuncInfo();

            try
            {
                var obj = new WebSanad()
                {
                    Guid               = cls.Guid,
                    Modified           = cls.Modified,
                    UserGuid           = cls.UserGuid,
                    HardSerial         = cls.HardSerial,
                    ServerStatus       = cls.ServerStatus,
                    ServerDeliveryDate = cls.ServerDeliveryDate,
                    Description        = cls.Description,
                    DateM              = cls.DateM,
                    Number             = cls.Number,
                    SanadType          = cls.SanadType,
                    SanadStatus        = cls.SanadStatus,
                    DetList            = cls.Details
                };
                await obj.SaveAsync();
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
                res.AddReturnedValue(ex);
            }

            return(res);
        }
Ejemplo n.º 6
0
        public async Task <ReturnedSaveFuncInfo> SaveAsync(SanadBussines item, SqlTransaction tr)
        {
            var res = new ReturnedSaveFuncInfo();

            try
            {
                var cmd = new SqlCommand("sp_Sanad_Save", tr.Connection, tr)
                {
                    CommandType = CommandType.StoredProcedure
                };
                cmd.Parameters.AddWithValue("@guid", item.Guid);
                cmd.Parameters.AddWithValue("@modif", item.Modified);
                cmd.Parameters.AddWithValue("@dateM", item.DateM);
                cmd.Parameters.AddWithValue("@desc", item.Description ?? "");
                cmd.Parameters.AddWithValue("@number", item.Number);
                cmd.Parameters.AddWithValue("@sanadst", (short)item.SanadStatus);
                cmd.Parameters.AddWithValue("@userGuid", item.UserGuid);
                cmd.Parameters.AddWithValue("@sanadType", item.SanadType);
                cmd.Parameters.AddWithValue("@serverSt", (short)item.ServerStatus);
                cmd.Parameters.AddWithValue("@serverDate", item.ServerDeliveryDate);

                await cmd.ExecuteNonQueryAsync();
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
                res.AddReturnedValue(ex);
            }

            return(res);
        }
Ejemplo n.º 7
0
        private async void mnuPrint_Click(object sender, EventArgs e)
        {
            try
            {
                if (DGrid.RowCount <= 0)
                {
                    return;
                }
                if (DGrid.CurrentRow == null)
                {
                    return;
                }
                var guid = (Guid)DGrid[dgGuid.Index, DGrid.CurrentRow.Index].Value;

                var frm = new frmSetPrintSize(false);
                if (frm.ShowDialog(this) != DialogResult.OK)
                {
                    return;
                }

                var sanad = await SanadBussines.GetAsync(guid);

                var list = new List <SanadPrintViewModel>();
                foreach (var item in sanad.Details)
                {
                    list.Add(new SanadPrintViewModel()
                    {
                        Debit       = item.Debit,
                        Credit      = item.Credit,
                        SanadNumber = sanad.Number,
                        DetailDesc  = $"{item.MoeinName} * {item.TafsilCode} {item.TafsilName} * {item.Description}",
                        PrintDateSh = Calendar.MiladiToShamsi(DateTime.Now),
                        PrintTime   = DateTime.Now.ToShortTimeString(),
                        SanadDateSh = sanad.DateSh,
                        SanadDesc   = sanad.Description,
                        SanadTime   = sanad.DateM.ToShortTimeString(),
                        UserName    = sanad.UserName,
                        SumCredit   = sanad.SumCredit,
                        SumDebit    = sanad.SumDebit
                    });
                }

                list = list?.OrderBy(q => q.Credit)?.ToList();

                if (frm._PrintType == EnPrintType.Excel)
                {
                    return;
                }
                var cls = new ReportGenerator(StiType.Sanad, frm._PrintType)
                {
                    Lst = new List <object>(list)
                };
                cls.PrintNew();
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }
        }
Ejemplo n.º 8
0
 public frmSanadMain(Guid guid, bool isShowMode)
 {
     InitializeComponent();
     cls               = SanadBussines.Get(guid);
     grp.Enabled       = !isShowMode;
     panelEx1.Enabled  = !isShowMode;
     panelEx3.Enabled  = !isShowMode;
     btnFinish.Enabled = !isShowMode;
 }
Ejemplo n.º 9
0
        private async void mnuDelete_Click(object sender, EventArgs e)
        {
            var res = new ReturnedSaveFuncInfo();

            try
            {
                if (DGrid.RowCount <= 0)
                {
                    return;
                }
                if (DGrid.CurrentRow == null)
                {
                    return;
                }
                var guid = (Guid)DGrid[dgGuid.Index, DGrid.CurrentRow.Index].Value;

                var sanad = await SanadBussines.GetAsync(guid);

                if (sanad.SanadStatus == EnSanadStatus.Permament)
                {
                    res.AddError("شما مجاز به حذف سند دائمی نمی باشید");
                    return;
                }
                if (sanad.SanadType == EnSanadType.Auto)
                {
                    res.AddError("شما مجاز به حذف سند اتومات نمی باشید");
                    return;
                }

                if (MessageBox.Show(this,
                                    $@"آیا از حذف سند به شماره{DGrid[dgNumber.Index, DGrid.CurrentRow.Index].Value} اطمینان دارید؟",
                                    "حذف",
                                    MessageBoxButtons.YesNo,
                                    MessageBoxIcon.Question) == DialogResult.No)
                {
                    return;
                }
                res.AddReturnedValue(await sanad.RemoveAsync());
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
                res.AddReturnedValue(ex);
            }
            finally
            {
                if (res.HasError)
                {
                    this.ShowError(res, "خطا در حذف سند حسابداری");
                }
                else
                {
                    await LoadDataAsync(txtSearch.Text);
                }
            }
        }
Ejemplo n.º 10
0
        private async Task SetDataAsync()
        {
            try
            {
                await SetTafilAsync(cls?.TafsilGuid ?? Guid.Empty);

                txtDate.Text = cls?.DateSh;
                txtDesc.Text = cls?.Description;

                if (cls.Guid == Guid.Empty)
                {
                    txtNumber.Value = await ReceptionBussines.NextCodeAsync();

                    txtSanadNo.Value = await SanadBussines.NextNumberAsync();
                }
                else
                {
                    txtNumber.Value  = cls.Number;
                    txtSanadNo.Value = cls.SanadNumber;
                }

                if (!_isLoaded)
                {
                    if (cls.NaqdList != null)
                    {
                        foreach (var item in cls.NaqdList)
                        {
                            AddToGrid(item);
                        }
                    }

                    if (cls.HavaleList != null)
                    {
                        foreach (var item in cls.HavaleList)
                        {
                            AddToGrid(item);
                        }
                    }

                    if (cls.CheckList != null)
                    {
                        foreach (var item in cls.CheckList)
                        {
                            AddToGrid(item);
                        }
                    }
                }

                SetLables();
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }
        }
Ejemplo n.º 11
0
        private long NextNumber()
        {
            long res = 0;

            try
            {
                res = SanadBussines.NextNumber();
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }

            return(res);
        }
Ejemplo n.º 12
0
        private async Task LoadDataAsync(string search = "")
        {
            try
            {
                _token?.Cancel();
                _token = new CancellationTokenSource();
                var list = await SanadBussines.GetAllAsync(search, _token.Token);

                Invoke(new MethodInvoker(() => SanadBindingSource.DataSource = list.ToSortableBindingList()));
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }
        }
Ejemplo n.º 13
0
        private async void mnuEdit_Click(object sender, EventArgs e)
        {
            try
            {
                if (DGrid.RowCount <= 0)
                {
                    return;
                }
                if (DGrid.CurrentRow == null)
                {
                    return;
                }
                var guid  = (Guid)DGrid[dgGuid.Index, DGrid.CurrentRow.Index].Value;
                var sanad = await SanadBussines.GetAsync(guid);

                if (sanad.SanadStatus == EnSanadStatus.Permament)
                {
                    frmNotification.PublicInfo.ShowMessage("شما مجاز به ویرایش سند دائمی نمی باشید ");
                    return;
                }
                if (sanad.SanadType == EnSanadType.Auto)
                {
                    frmNotification.PublicInfo.ShowMessage("شما مجاز به ویرایش سند اتومات نمی باشید ");
                    return;
                }

                var frm = new frmSanadMain(guid, false);
                if (frm.ShowDialog(this) == DialogResult.OK)
                {
                    await LoadDataAsync(txtSearch.Text);
                }
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }
        }
Ejemplo n.º 14
0
 public frmSanadMain()
 {
     InitializeComponent();
     cls = new SanadBussines();
 }
Ejemplo n.º 15
0
        private static async Task <ReturnedSaveFuncInfo> NaqdBargashtAvalDoreAsync(PardakhtCheckAvalDoreBussines cls, SanadBussines sanad)
        {
            var res = new ReturnedSaveFuncInfo();

            try
            {
                var checkPage = await CheckPageBussines.GetAsync(cls.CheckPageGuid);

                var dasteCheck = await DasteCheckBussines.GetAsync(checkPage.CheckGuid);

                var bank = await TafsilBussines.GetAsync(dasteCheck.BankGuid);

                var girande = await TafsilBussines.GetAsync(cls.TafsilGuid);

                //بستانکار--اسناد
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"استرداد چک پرداختنی * شماره: {checkPage.Number} بانک صادرکننده: {bank.Name} * گیرنده: {girande.Name}",
                    Debit       = 0,
                    Credit      = cls.Price,
                    TafsilGuid  = bank.Guid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = ParentDefaults.MoeinCoding.CLSMoein30101
                });
                //بدهکار--شخص
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"استرداد چک پرداختنی * شماره: {checkPage.Number} بانک صادرکننده: {bank.Name} * گیرنده: {girande.Name}",
                    Debit       = cls.Price,
                    Credit      = 0,
                    TafsilGuid  = cls.TafsilGuid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = ParentDefaults.MoeinCoding.CLSMoein30103
                });

                res.AddReturnedValue(await sanad.SaveAsync());
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
                res.AddReturnedValue(ex);
            }

            return(res);
        }
Ejemplo n.º 16
0
        private async Task <ReturnedSaveFuncInfo> SaveAsync()
        {
            var res = new ReturnedSaveFuncInfo();

            try
            {
                if (cls.Guid == Guid.Empty)
                {
                    cls.Guid        = Guid.NewGuid();
                    cls.SanadNumber = await SanadBussines.NextNumberAsync();
                }

                cls.Code           = txtCode.Text.ParseToLong();
                cls.UserGuid       = (Guid)cmbUser.SelectedValue;
                cls.FirstSideGuid  = fSide.Guid;
                cls.FirstSideName  = fSide.Name;
                cls.SecondSideGuid = sSide.Guid;
                cls.SecondSideName = sSide.Name;
                cls.BuildingGuid   = building.Guid;
                cls.Modified       = DateTime.Now;

                cls.Term     = txtTerm.Text.ParseToInt();
                cls.FromDate = Calendar.ShamsiToMiladi(txtfDate.Text);
                if (txtSellPrice.TextDecimal != 0)
                {
                    cls.TotalPrice = txtSellPrice.TextDecimal;
                }
                if (txtRahn.TextDecimal != 0)
                {
                    cls.TotalPrice = txtRahn.TextDecimal;
                }
                if (txtBeyane.TextDecimal != 0)
                {
                    cls.MinorPrice = txtBeyane.TextDecimal;
                }
                if (txtEjare.TextDecimal != 0)
                {
                    cls.MinorPrice = txtEjare.TextDecimal;
                }

                cls.CheckNo       = txtCheckNo.Text;
                cls.BankName      = txtBankName.Text;
                cls.SarResid      = txtSarResid.Text;
                cls.Shobe         = txtShobe.Text;
                cls.DischargeDate = string.IsNullOrEmpty(txtDisCharge.Text)
                    ? DateTime.Now.AddYears(1)
                    : Calendar.ShamsiToMiladi(txtDisCharge.Text);
                cls.SetDocPlace = txtSetDocAddress.Text;
                cls.SetDocDate  = Calendar.ShamsiToMiladi(txtSetDocDate.Text);
                cls.SarQofli    = txtSarQofli.TextDecimal;
                cls.Description = txtDesc.Text;
                cls.Delay       = txtDelay.TextDecimal;

                cls.FirstTax         = txtfAddedValue.TextDecimal;
                cls.FirstAvarez      = txtfAvarez.TextDecimal;
                cls.FirstDiscount    = txtfDiscount.TextDecimal;
                cls.FirstTotalPrice  = txtfTotalPrice.TextDecimal;
                cls.SecondTax        = txtsAddedValue.TextDecimal;
                cls.SecondAvarez     = txtsAvarez.TextDecimal;
                cls.SecondDiscount   = txtsDiscount.TextDecimal;
                cls.SecondTotalPrice = txtsTotalPrice.TextDecimal;

                cls.fBabat = (EnContractBabat)cmbfBabat.SelectedIndex;
                cls.sBabat = (EnContractBabat)cmbsBabat.SelectedIndex;
                if (cmbBazaryab.SelectedValue == null || (Guid)cmbBazaryab.SelectedValue == Guid.Empty)
                {
                    cls.BazaryabGuid  = null;
                    cls.BazaryabPrice = 0;
                }
                else
                {
                    cls.BazaryabGuid  = (Guid)cmbBazaryab.SelectedValue;
                    cls.BazaryabPrice = txtBazaryabPrice.TextDecimal;
                }

                res.AddReturnedValue(await cls.SaveAsync());
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
                res.AddReturnedValue(ex);
            }

            return(res);
        }
Ejemplo n.º 17
0
        public static async Task <ReturnedSaveFuncInfo> NaqdAvalDoreAsync(ReceptionCheckAvalDoreBussines cls)
        {
            var res = new ReturnedSaveFuncInfo();

            try
            {
                var tafsil = await TafsilBussines.GetAsync(cls.SandouqTafsilGuid);

                var moeinGuid = tafsil.HesabType == HesabType.Bank
                    ? ParentDefaults.MoeinCoding.CLSMoein10101
                    : ParentDefaults.MoeinCoding.CLSMoein10102;



                var pardazande = await TafsilBussines.GetAsync(cls.TafsilGuid);

                var sanad = new SanadBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"نقد کردن چک دریافتنی * شماره: {cls.CheckNumber} بانک صادرکننده: {cls.BankName} * پردازنده: {pardazande.Name}",
                    DateM       = DateTime.Now,
                    Number      = await SanadBussines.NextNumberAsync(),
                    SanadStatus = EnSanadStatus.Temporary,
                    SanadType   = EnSanadType.Auto,
                    UserGuid    = UserBussines.CurrentUser.Guid
                };

                if (cls.CheckStatus == EnCheckM.Bargashti)
                {
                    res.AddReturnedValue(await NaqdBargashtAvalDoreAsync(cls, sanad));
                    if (res.HasError)
                    {
                        return(res);
                    }
                }

                //بستانکار--اسناد
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"نقد کردن چک {cls.CheckNumber} {cls.BankName} * پردازنده: {pardazande.Name}",
                    Debit       = 0,
                    Credit      = cls.Price,
                    TafsilGuid  = cls.SandouqTafsilGuid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = cls.SandouqMoeinGuid
                });
                //بدهکار--موجودی
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"نقد کردن چک {cls.CheckNumber} {cls.BankName} * پردازنده: {pardazande.Name}",
                    Debit       = cls.Price,
                    Credit      = 0,
                    TafsilGuid  = tafsil.Guid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = moeinGuid
                });

                res.AddReturnedValue(await sanad.SaveAsync());


                cls.CheckStatus = EnCheckM.Naqd;
                cls.Modified    = DateTime.Now;
                res.AddReturnedValue(await cls.SaveAsync(false));
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
                res.AddReturnedValue(ex);
            }

            return(res);
        }
Ejemplo n.º 18
0
        private static async Task <ReturnedSaveFuncInfo> NaqdBargashtAvalDoreAsync(ReceptionCheckAvalDoreBussines cls, SanadBussines sanad)
        {
            var res = new ReturnedSaveFuncInfo();

            try
            {
                cls.CheckStatus = EnCheckM.Bargashti;
                cls.Modified    = DateTime.Now;
                res.AddReturnedValue(await cls.SaveAsync(false));

                var pardazande = await TafsilBussines.GetAsync(cls.TafsilGuid);

                //بستانکار--شخص
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"استرداد چک {cls.CheckNumber} {cls.BankName} * پردازنده: {pardazande.Name}",
                    Debit       = 0,
                    Credit      = cls.Price,
                    TafsilGuid  = pardazande.Guid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = ParentDefaults.MoeinCoding.CLSMoein10304
                });
                //بدهکار--اسناد
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"استرداد چک {cls.CheckNumber} {cls.BankName} * پردازنده: {pardazande.Name}",
                    Debit       = cls.Price,
                    Credit      = 0,
                    TafsilGuid  = cls.SandouqTafsilGuid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = cls.SandouqMoeinGuid
                });

                res.AddReturnedValue(await sanad.SaveAsync());
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
                res.AddReturnedValue(ex);
            }

            return(res);
        }
Ejemplo n.º 19
0
        private async Task ResendDataToHost()
        {
            try
            {
                if (chbState.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebStates.SaveAsync(await StatesBussines.GetAllAsync(_token.Token));
                }
                if (chbCity.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebCity.SaveAsync(await CitiesBussines.GetAllAsync(_token.Token));
                }
                if (chbRegion.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebRegion.SaveAsync(await RegionsBussines.GetAllAsync(_token.Token));
                }
                if (chbUsers.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebUser.SaveAsync(await UserBussines.GetAllAsync(_token.Token));
                }
                if (chbPeopleGroup.Checked)
                {
                    await WebPeopleGroup.SaveAsync(await PeopleGroupBussines.GetAllAsync());
                }
                if (chbPeople.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebPeople.SaveAsync(await PeoplesBussines.GetAllAsync(_token.Token));
                }
                if (chbAccountType.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebBuildingAccountType.SaveAsync(await BuildingAccountTypeBussines.GetAllAsync(_token.Token));
                }
                if (chbCondition.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebBuildingCondition.SaveAsync(await BuildingConditionBussines.GetAllAsync(_token.Token));
                }
                if (chbType.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebBuildingType.SaveAsync(await BuildingTypeBussines.GetAllAsync(_token.Token));
                }
                if (chbView.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebBuildingView.SaveAsync(await BuildingViewBussines.GetAllAsync(_token.Token));
                }
                if (chbDocType.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebDocumentType.SaveAsync(await DocumentTypeBussines.GetAllAsync(_token.Token));
                }

                if (chbFloor.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebFloorCover.SaveAsync(await FloorCoverBussines.GetAllAsync(_token.Token));
                }

                if (chbKitchen.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebKitchenService.SaveAsync(await KitchenServiceBussines.GetAllAsync(_token.Token));
                }

                if (chbRental.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebRental.SaveAsync(await RentalAuthorityBussines.GetAllAsync(_token.Token));
                }

                if (chbOptions.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebBuildingOptions.SaveAsync(await BuildingOptionsBussines.GetAllAsync(_token.Token));
                }

                if (chbBuilding.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebBuilding.SaveAsync(await BuildingBussines.GetAllAsync(_token.Token), Application.StartupPath);
                }


                if (chbRequest.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebBuildingRequest.SaveAsync(await BuildingRequestBussines.GetAllAsync(_token.Token));
                }

                if (chbContract.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebContract.SaveAsync(await ContractBussines.GetAllAsync(_token.Token));
                }
                if (chbReception.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebReception.SaveAsync(await ReceptionBussines.GetAllAsync(_token.Token));
                }

                if (chbPardakht.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebPardakht.SaveAsync(await PardakhtBussines.GetAllAsync(_token.Token));
                }

                if (chbAdvisor.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebAdvisor.SaveAsync(await AdvisorBussines.GetAllAsync(_token.Token));
                }

                if (chbBank.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebBank.SaveAsync(await BankBussines.GetAllAsync(_token.Token));
                }

                if (chbKol.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebKol.SaveAsync(await KolBussines.GetAllAsync(_token.Token));
                }

                if (chbMoein.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebMoein.SaveAsync(await MoeinBussines.GetAllAsync(_token.Token));
                }

                if (chbTafsil.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebTafsil.SaveAsync(await TafsilBussines.GetAllAsync(_token.Token));
                }

                if (chbSanad.Checked)
                {
                    _token?.Cancel();
                    _token = new CancellationTokenSource();
                    await WebSanad.SaveAsync(await SanadBussines.GetAllAsync(_token.Token));
                }


                Invoke(new MethodInvoker(() => MessageBox.Show("انتقال داده ها به سرور با موفقیت انجام شد")));
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }
            finally
            {
                Invoke(new MethodInvoker(() =>
                {
                    btnSend.Enabled = true;
                    Cursor          = Cursors.Default;
                }));
            }
        }
Ejemplo n.º 20
0
        public static async Task <ReturnedSaveFuncInfo> VagozarBankAvalDore(ReceptionCheckAvalDoreBussines cls, TafsilBussines newBank)
        {
            var res = new ReturnedSaveFuncInfo();

            try
            {
                var pardazande = await TafsilBussines.GetAsync(cls.TafsilGuid);

                var sanad = new SanadBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"واگذار کردن چک دریافتنی * شماره: {cls.CheckNumber} بانک صادرکننده: {cls.BankName} * پردازنده: {pardazande.Name}",
                    DateM       = DateTime.Now,
                    Number      = await SanadBussines.NextNumberAsync(),
                    SanadStatus = EnSanadStatus.Temporary,
                    SanadType   = EnSanadType.Auto,
                    UserGuid    = UserBussines.CurrentUser.Guid
                };
                //بستانکار--اسناد قبلی
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"واگذار کردن چک {cls.CheckNumber} {cls.BankName} * پردازنده: {pardazande.Name}",
                    Debit       = 0,
                    Credit      = cls.Price,
                    TafsilGuid  = cls.SandouqTafsilGuid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = cls.SandouqMoeinGuid
                });
                //بدهکار--اسناد جدید
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"واگذار کردن چک {cls.CheckNumber} {cls.BankName} * پردازنده: {pardazande.Name}",
                    Debit       = cls.Price,
                    Credit      = 0,
                    TafsilGuid  = newBank.Guid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = ParentDefaults.MoeinCoding.CLSMoein10105
                });

                res.AddReturnedValue(await sanad.SaveAsync());


                cls.CheckStatus       = EnCheckM.Vagozar;
                cls.Modified          = DateTime.Now;
                cls.SandouqTafsilGuid = newBank.Guid;
                cls.SandouqMoeinGuid  = ParentDefaults.MoeinCoding.CLSMoein10105;
                res.AddReturnedValue(await cls.SaveAsync(false));
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
                res.AddReturnedValue(ex);
            }

            return(res);
        }
Ejemplo n.º 21
0
        public static async Task <ReturnedSaveFuncInfo> NaqdAvalDoreAsync(PardakhtCheckAvalDoreBussines cls)
        {
            var res = new ReturnedSaveFuncInfo();

            try
            {
                var checkPage = await CheckPageBussines.GetAsync(cls.CheckPageGuid);

                var dasteCheck = await DasteCheckBussines.GetAsync(checkPage.CheckGuid);

                var bank = await TafsilBussines.GetAsync(dasteCheck.BankGuid);

                var girande = await TafsilBussines.GetAsync(cls.TafsilGuid);

                var sanad = new SanadBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"نقد کردن چک پرداختنی * شماره: {checkPage.Number} بانک صادر کننده: {bank.Name} * گیرنده: {girande.Name}",
                    DateM       = DateTime.Now,
                    Number      = await SanadBussines.NextNumberAsync(),
                    SanadStatus = EnSanadStatus.Temporary,
                    SanadType   = EnSanadType.Auto,
                    UserGuid    = UserBussines.CurrentUser.Guid
                };

                if (checkPage.CheckStatus == EnCheckSh.Bargashti)
                {
                    res.AddReturnedValue(await NaqdBargashtAvalDoreAsync(cls, sanad));
                    if (res.HasError)
                    {
                        return(res);
                    }
                }

                //بستانکار--موجودی
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"نقد کردن چک {checkPage.Number} {bank.Name} * گیرنده: {girande.Name}",
                    Debit       = 0,
                    Credit      = cls.Price,
                    TafsilGuid  = bank.Guid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = ParentDefaults.MoeinCoding.CLSMoein10101
                });
                //بدهکار--اسناد
                sanad.AddToListSanad(new SanadDetailBussines()
                {
                    Guid        = Guid.NewGuid(),
                    Modified    = DateTime.Now,
                    Description = $"نقد کردن چک {checkPage.Number} {bank.Name} * گیرنده: {girande.Name}",
                    Debit       = cls.Price,
                    Credit      = 0,
                    TafsilGuid  = bank.Guid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = ParentDefaults.MoeinCoding.CLSMoein30101
                });

                res.AddReturnedValue(await sanad.SaveAsync());


                checkPage.CheckStatus = EnCheckSh.Pass;
                checkPage.Modified    = DateTime.Now;
                res.AddReturnedValue(await checkPage.SaveAsync());
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
                res.AddReturnedValue(ex);
            }

            return(res);
        }
Ejemplo n.º 22
0
        private static async Task StartSendToServerAsync()
        {
            try
            {
                var list = await TempBussines.GetAllAsync();

                while (true)
                {
                    if (list == null || list.Count <= 0)
                    {
                        await Task.Delay(2000);

                        continue;
                    }
                    foreach (var item in list)
                    {
                        switch (item.Type)
                        {
                        case EnTemp.States:
                            var states = await StatesBussines.GetAsync(item.ObjectGuid);

                            if (states != null)
                            {
                                await WebStates.SaveAsync(states);
                            }
                            break;

                        case EnTemp.Cities:
                            var city = await CitiesBussines.GetAsync(item.ObjectGuid);

                            if (city != null)
                            {
                                await WebCity.SaveAsync(city);
                            }
                            break;

                        case EnTemp.Region:
                            var region = await RegionsBussines.GetAsync(item.ObjectGuid);

                            if (region != null)
                            {
                                await WebRegion.SaveAsync(region);
                            }
                            break;

                        case EnTemp.Users:
                            var user = await UserBussines.GetAsync(item.ObjectGuid);

                            if (user != null)
                            {
                                await WebUser.SaveAsync(user);
                            }
                            break;

                        case EnTemp.PeopleGroups:
                            var pg = await PeopleGroupBussines.GetAsync(item.ObjectGuid);

                            if (pg != null)
                            {
                                await WebPeopleGroup.SaveAsync(pg);
                            }
                            break;

                        case EnTemp.Peoples:
                            var p = await PeoplesBussines.GetAsync(item.ObjectGuid);

                            if (p != null)
                            {
                                await WebPeople.SaveAsync(p);
                            }
                            break;

                        case EnTemp.BuildingAccountType:
                            var acc = await BuildingAccountTypeBussines.GetAsync(item.ObjectGuid);

                            if (acc != null)
                            {
                                await WebBuildingAccountType.SaveAsync(acc);
                            }
                            break;

                        case EnTemp.BuildingCondition:
                            var co = await BuildingConditionBussines.GetAsync(item.ObjectGuid);

                            if (co != null)
                            {
                                await WebBuildingCondition.SaveAsync(co);
                            }
                            break;

                        case EnTemp.BuildingType:
                            var type = await BuildingTypeBussines.GetAsync(item.ObjectGuid);

                            if (type != null)
                            {
                                await WebBuildingType.SaveAsync(type);
                            }
                            break;

                        case EnTemp.BuildingView:
                            var view = await BuildingViewBussines.GetAsync(item.ObjectGuid);

                            if (view != null)
                            {
                                await WebBuildingView.SaveAsync(view);
                            }
                            break;

                        case EnTemp.DocumentType:
                            var doc = await DocumentTypeBussines.GetAsync(item.ObjectGuid);

                            if (doc != null)
                            {
                                await WebDocumentType.SaveAsync(doc);
                            }
                            break;

                        case EnTemp.FloorCover:
                            var fc = await FloorCoverBussines.GetAsync(item.ObjectGuid);

                            if (fc != null)
                            {
                                await WebFloorCover.SaveAsync(fc);
                            }
                            break;

                        case EnTemp.KitchenService:
                            var ks = await KitchenServiceBussines.GetAsync(item.ObjectGuid);

                            if (ks != null)
                            {
                                await WebKitchenService.SaveAsync(ks);
                            }
                            break;

                        case EnTemp.RentalAuthority:
                            var ra = await RentalAuthorityBussines.GetAsync(item.ObjectGuid);

                            if (ra != null)
                            {
                                await WebRental.SaveAsync(ra);
                            }
                            break;

                        case EnTemp.BuildingOptions:
                            var o = await BuildingOptionsBussines.GetAsync(item.ObjectGuid);

                            if (o != null)
                            {
                                await WebBuildingOptions.SaveAsync(o);
                            }
                            break;

                        case EnTemp.Building:
                            var bu = await BuildingBussines.GetAsync(item.ObjectGuid);

                            if (bu != null)
                            {
                                await WebBuilding.SaveAsync(bu, Application.StartupPath);
                            }
                            break;

                        case EnTemp.Contract:
                            var con = await ContractBussines.GetAsync(item.ObjectGuid);

                            if (con != null)
                            {
                                await WebContract.SaveAsync(con);
                            }
                            break;

                        case EnTemp.Requests:
                            var req = await BuildingRequestBussines.GetAsync(item.ObjectGuid);

                            if (req != null)
                            {
                                await WebBuildingRequest.SaveAsync(req);
                            }
                            break;

                        case EnTemp.Reception:
                            var rec = await ReceptionBussines.GetAsync(item.ObjectGuid);

                            if (rec != null)
                            {
                                await WebReception.SaveAsync(rec);
                            }
                            break;

                        case EnTemp.Pardakht:
                            var pa = await PardakhtBussines.GetAsync(item.ObjectGuid);

                            if (pa != null)
                            {
                                await WebPardakht.SaveAsync(pa);
                            }
                            break;

                        case EnTemp.BuildingRelatedOptions:
                            var re = await BuildingRelatedOptionsBussines.GetAsync(item.ObjectGuid);

                            if (re != null)
                            {
                                await WebBuildingRelatedOptions.SaveAsync(re);
                            }
                            break;

                        case EnTemp.RequestRegions:
                            var rr = await BuildingRequestRegionBussines.GetAsync(item.ObjectGuid);

                            if (rr != null)
                            {
                                await WebBuildingRequestRegion.SaveAsync(rr);
                            }
                            break;

                        case EnTemp.PhoneBook:
                            var ph = await PhoneBookBussines.GetAsync(item.ObjectGuid);

                            if (ph != null)
                            {
                                await WebPhoneBook.SaveAsync(ph);
                            }
                            break;

                        case EnTemp.Advisor:
                            var ad = await AdvisorBussines.GetAsync(item.ObjectGuid);

                            if (ad != null)
                            {
                                await WebAdvisor.SaveAsync(ad);
                            }
                            break;

                        case EnTemp.Bank:
                            var ba = await BankBussines.GetAsync(item.ObjectGuid);

                            if (ba != null)
                            {
                                await WebBank.SaveAsync(ba);
                            }
                            break;

                        case EnTemp.Kol:
                            var kol = await KolBussines.GetAsync(item.ObjectGuid);

                            if (kol != null)
                            {
                                await WebKol.SaveAsync(kol);
                            }
                            break;

                        case EnTemp.Moein:
                            var moein = await MoeinBussines.GetAsync(item.ObjectGuid);

                            if (moein != null)
                            {
                                await WebMoein.SaveAsync(moein);
                            }
                            break;

                        case EnTemp.Tafsil:
                            var tafsil = await TafsilBussines.GetAsync(item.ObjectGuid);

                            if (tafsil != null)
                            {
                                await WebTafsil.SaveAsync(tafsil);
                            }
                            break;

                        case EnTemp.Sanad:
                            var sa = await SanadBussines.GetAsync(item.ObjectGuid);

                            if (sa != null)
                            {
                                await WebSanad.SaveAsync(sa);
                            }
                            break;

                        case EnTemp.SanadDetail:
                            var saD = await SanadDetailBussines.GetAsync(item.ObjectGuid);

                            if (saD != null)
                            {
                                await WebSanadDetail.SaveAsync(saD);
                            }
                            break;
                        }

                        await item.RemoveAsync();
                    }

                    await Task.Delay(2000);

                    list = await TempBussines.GetAllAsync();
                }
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }
        }