Exemplo n.º 1
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);
        }
Exemplo n.º 2
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);
            }
        }
Exemplo n.º 3
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);
        }
Exemplo n.º 4
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);
        }
Exemplo n.º 5
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);
        }
Exemplo n.º 6
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);
        }