Beispiel #1
0
        private DasteCheckBussines LoadData(SqlDataReader dr, CancellationToken token)
        {
            var item = new DasteCheckBussines();

            try
            {
                item.Guid               = (Guid)dr["Guid"];
                item.Modified           = (DateTime)dr["Modified"];
                item.Status             = (bool)dr["Status"];
                item.SerialNumber       = dr["SerialNumber"].ToString();
                item.BankGuid           = (Guid)dr["BankGuid"];
                item.FromNumber         = (long)dr["FromNumber"];
                item.ToNumber           = (long)dr["ToNumber"];
                item.Description        = dr["Description"].ToString();
                item.BankName           = dr["BankName"].ToString();
                item.ServerDeliveryDate = (DateTime)dr["ServerDeliveryDate"];
                item.ServerStatus       = (ServerStatus)dr["ServerStatus"];
                item.CheckPages         = AsyncContext.Run(() => CheckPageBussines.GetAllAsync(item.Guid, token));
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }

            return(item);
        }
Beispiel #2
0
        public async Task <CheckPageBussines> GetAsync(string _connectionString, Guid guid)
        {
            CheckPageBussines res = null;

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

                    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);
        }
Beispiel #3
0
        private CheckPageBussines LoadData(SqlDataReader dr)
        {
            var item = new CheckPageBussines();

            try
            {
                item.Guid      = (Guid)dr["Guid"];
                item.Modified  = (DateTime)dr["Modified"];
                item.CheckGuid = (Guid)dr["CheckGuid"];
                if (dr["DatePardakht"] != DBNull.Value)
                {
                    item.DatePardakht = (DateTime?)dr["DatePardakht"];
                }
                item.Number = (long)dr["Number"];
                if (dr["ReceptorGuid"] != DBNull.Value)
                {
                    item.ReceptorGuid = (Guid?)dr["ReceptorGuid"];
                }
                if (dr["DateSarresid"] != DBNull.Value)
                {
                    item.DateSarresid = (DateTime?)dr["DateSarresid"];
                }
                item.Description        = dr["Description"].ToString();
                item.Price              = (decimal)dr["Price"];
                item.CheckStatus        = (EnCheckSh)dr["CheckStatus"];
                item.ServerDeliveryDate = (DateTime)dr["ServerDeliveryDate"];
                item.ServerStatus       = (ServerStatus)dr["ServerStatus"];
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }

            return(item);
        }
Beispiel #4
0
        public async Task <ReturnedSaveFuncInfo> SaveAsync(CheckPageBussines item, SqlTransaction tr)
        {
            var res = new ReturnedSaveFuncInfo();

            try
            {
                var cmd = new SqlCommand("sp_CheckPage_Save", tr.Connection, tr)
                {
                    CommandType = CommandType.StoredProcedure
                };
                cmd.Parameters.AddWithValue("@guid", item.Guid);
                cmd.Parameters.AddWithValue("@modif", item.Modified);
                cmd.Parameters.AddWithValue("@CheckGuid", item.CheckGuid);
                cmd.Parameters.AddWithValue("@datePardakht", item.DatePardakht);
                cmd.Parameters.AddWithValue("@number", item.Number);
                cmd.Parameters.AddWithValue("@receptorGuid", item.ReceptorGuid);
                cmd.Parameters.AddWithValue("@sarresid", item.DateSarresid);
                cmd.Parameters.AddWithValue("@desc", item.Description ?? "");
                cmd.Parameters.AddWithValue("@price", item.Price);
                cmd.Parameters.AddWithValue("@st", (int)item.CheckStatus);
                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);
        }
Beispiel #5
0
        private static async Task <ReturnedSaveFuncInfo> NaqdBargashtAsync(PardakhtCheckShakhsiBussines 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 pardakht = await PardakhtBussines.GetAsync(cls.MasterGuid);

                var girande = await TafsilBussines.GetAsync(pardakht.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  = pardakht.TafsilGuid,
                    MasterGuid  = sanad.Guid,
                    MoeinGuid   = pardakht.MoeinGuid
                });

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

            return(res);
        }
        private async Task SetDataAsync()
        {
            try
            {
                await FillDasteCheckAsync();
                await SetTafilAsync(cls?.TafsilGuid ?? Guid.Empty);

                txtPrice.TextDecimal = cls?.Price ?? 0;
                txtDesc.Text         = cls?.Description;
                txtDate.Text         = cls?.DateSarresidSh;

                if (cls.Guid == Guid.Empty && CheckBookBindingSource.Count > 0)
                {
                    cmbCheckBook.SelectedIndex = 0;
                    cmbCheckBook_SelectedIndexChanged(null, null);
                }
                else
                {
                    var checkPage = await CheckPageBussines.GetAsync(cls.CheckPageGuid);

                    if (checkPage == null)
                    {
                        return;
                    }
                    var check = await DasteCheckBussines.GetAsync(checkPage.CheckGuid);

                    if (check == null)
                    {
                        return;
                    }
                    cmbCheckBook.SelectedValue = check.Guid;
                    cmbCheckBook_SelectedIndexChanged(null, null);
                }
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }
        }
        private async void cmbCheckBook_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                if (CheckBookBindingSource.Count <= 0 || cmbCheckBook.SelectedValue == null)
                {
                    return;
                }
                _token?.Cancel();
                _token = new CancellationTokenSource();
                var list = await CheckPageBussines.GetAllAsync((Guid)cmbCheckBook.SelectedValue, _token.Token);

                CheckPageBindingSource.DataSource = list?.OrderBy(q => q.Number).ToList();
                if (cls.Guid != Guid.Empty)
                {
                    cmbCheckPage.SelectedValue = cls.CheckPageGuid;
                }
            }
            catch (Exception ex)
            {
                WebErrorLog.ErrorInstence.StartErrorLog(ex);
            }
        }
Beispiel #8
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);
        }