Beispiel #1
0
        /// <summary>
        /// Method to Delete Cheques Batch
        /// </summary>
        /// <param name="argEn">Cheques Entity is the Input.ProcessID is the Input Property.</param>
        /// <returns>Returns a Boolean</returns>
        public bool BatchDelete(ChequeEn argEn)
        {
            bool lbRes = false;
            List <ChequeDetailsEn> loChDetails = new List <ChequeDetailsEn>();
            string sqlCmd = "Select * from SAS_Cheque WHERE ProcessID = @ProcessID";

            try
            {
                if (!FormHelp.IsBlank(sqlCmd))
                {
                    DbCommand cmdSel = _DatabaseFactory.GetDbCommand(Helper.GetDataBaseType, sqlCmd, DataBaseConnectionString);
                    _DatabaseFactory.AddInParameter(ref cmdSel, "@ProcessID", DbType.String, argEn.ProcessID);
                    _DbParameterCollection = cmdSel.Parameters;

                    if (!FormHelp.IsBlank(sqlCmd))
                    {
                        ChequeDetailsDAL loObjChequeDAL = new ChequeDetailsDAL();
                        ChequeDetailsEn  loItem         = null;
                        using (IDataReader loReader = _DatabaseFactory.GetIDataReader(Helper.GetDataBaseType, cmdSel,
                                                                                      DataBaseConnectionString, sqlCmd, _DbParameterCollection).CreateDataReader())
                        {
                            loItem           = new ChequeDetailsEn();
                            loItem.ProcessId = GetValue <string>(loReader, "ProcessID");
                            loChDetails.Add(loItem);
                            loItem = null;
                            loReader.Close();
                        }

                        int i = 0;
                        //deleting each item in batch
                        for (i = 0; i < loChDetails.Count; i++)
                        {
                            loObjChequeDAL.Delete(loChDetails[i]);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            Delete(argEn);
            return(lbRes);
        }
Beispiel #2
0
        /// <summary>
        /// Method to Get refund Cheques
        /// </summary>
        /// <param name="argEn">Cheques Entity is an Input.ProcessID is Input Property.</param>
        /// <returns>Returns List of Cheques</returns>

        public List <ChequeEn> GetRefundList(ChequeEn argEn)
        {
            List <ChequeEn> loEnList = new List <ChequeEn>();

            argEn.ProcessID = argEn.ProcessID.Replace("*", "%");
            string sqlCmd = "SELECT SAS_Cheque.*, SAS_Accounts.TransCode, SAS_Cheque.PaymentNo, SAS_Accounts.BankCode,SAS_Accounts.transid,SAS_Accounts.BatchCode FROM  SAS_Cheque INNER JOIN SAS_Accounts ON SAS_Cheque.PaymentNo = SAS_Accounts.BatchCode where SAS_Cheque.PaymentType = '" + argEn.PaymentType + "' and SAS_Cheque.PrintStatus = '" + argEn.PrintStatus + "'";

            if (argEn.ProcessID.Length != 0)
            {
                sqlCmd = sqlCmd + " AND ProcessID LIKE '" + argEn.ProcessID + "'";
            }

            try
            {
                if (!FormHelp.IsBlank(sqlCmd))
                {
                    using (IDataReader loReader = _DatabaseFactory.ExecuteReader(Helper.GetDataBaseType,
                                                                                 DataBaseConnectionString, sqlCmd).CreateDataReader())
                    {
                        while (loReader.Read())
                        {
                            ChequeDetailsDAL dscheDetials = new ChequeDetailsDAL();
                            ChequeDetailsEn  locheDetials = new ChequeDetailsEn();
                            ChequeEn         loItem       = LoadObject(loReader);
                            locheDetials.ProcessId   = loItem.ProcessID;
                            loItem.ChequeDetailslist = dscheDetials.GetList(locheDetials);
                            loEnList.Add(loItem);
                        }
                        loReader.Close();
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(loEnList);
        }
Beispiel #3
0
        /// <summary>
        /// Method to Insert Cheques
        /// </summary>
        /// <param name="argEn">Cheques Entity is the Input.</param>
        /// <returns>Returns a Boolean</returns>
        public string Insert(ChequeEn argEn)
        {
            bool   lbRes     = false;
            int    iOut      = 0;
            string batchcode = "";
            string sqlCmd    = "Select count(*) as cnt From SAS_Cheque WHERE PaymentNo = @PaymentNo and printstatus = 'Ready'";

            try
            {
                if (!FormHelp.IsBlank(sqlCmd))
                {
                    DbCommand cmdsel = _DatabaseFactory.GetDbCommand(Helper.GetDataBaseType, sqlCmd, DataBaseConnectionString);
                    _DatabaseFactory.AddInParameter(ref cmdsel, "@PaymentNo", DbType.String, argEn.PaymentNo);
                    _DbParameterCollection = cmdsel.Parameters;

                    using (IDataReader dr = _DatabaseFactory.GetIDataReader(Helper.GetDataBaseType, cmdsel,
                                                                            DataBaseConnectionString, sqlCmd, _DbParameterCollection).CreateDataReader())
                    {
                        if (dr.Read())
                        {
                            iOut = clsGeneric.NullToInteger(dr["cnt"]);
                        }
                        if (iOut > 0)
                        {
                            throw new Exception("Record Already Exist");
                        }
                    }
                    if (iOut == 0)
                    {
                        if (argEn.ProcessID == "")
                        {
                            argEn.ProcessID = GetAutoNumber("TCQ");
                        }
                        if (argEn.PrintStatus == "Posted")
                        {
                            argEn.ProcessID = GetAutoNumber("CQ");
                        }
                        batchcode = argEn.ProcessID;

                        string sqlCmd1 = "INSERT INTO SAS_Cheque(ProcessID,PaymentNo,PaymentType,Description,ChequeDate,TransactionDate,PrintStatus,UpdatedBy,UpdatedTime) VALUES (@ProcessID,@PaymentNo,@PaymentType,@Description,@ChequeDate,@TransactionDate,@PrintStatus,@UpdatedBy,@UpdatedTime)";

                        if (!FormHelp.IsBlank(sqlCmd1))
                        {
                            DbCommand cmd = _DatabaseFactory.GetDbCommand(Helper.GetDataBaseType, sqlCmd, DataBaseConnectionString);
                            _DatabaseFactory.AddInParameter(ref cmd, "@ProcessID", DbType.String, argEn.ProcessID);
                            _DatabaseFactory.AddInParameter(ref cmd, "@PaymentNo", DbType.String, argEn.PaymentNo);
                            _DatabaseFactory.AddInParameter(ref cmd, "@PaymentType", DbType.String, argEn.PaymentType);
                            _DatabaseFactory.AddInParameter(ref cmd, "@Description", DbType.String, argEn.Description);
                            _DatabaseFactory.AddInParameter(ref cmd, "@ChequeDate", DbType.DateTime, argEn.ChequeDate);
                            _DatabaseFactory.AddInParameter(ref cmd, "@TransactionDate", DbType.DateTime, argEn.TransactionDate);
                            _DatabaseFactory.AddInParameter(ref cmd, "@PrintStatus", DbType.String, argEn.PrintStatus);
                            _DatabaseFactory.AddInParameter(ref cmd, "@UpdatedBy", DbType.String, argEn.UpdatedBy);
                            _DatabaseFactory.AddInParameter(ref cmd, "@UpdatedTime", DbType.DateTime, argEn.UpdatedTime);
                            _DbParameterCollection = cmd.Parameters;

                            int liRowAffected = _DatabaseFactory.ExecuteNonQuery(Helper.GetDataBaseType, cmd,
                                                                                 DataBaseConnectionString, sqlCmd, _DbParameterCollection);

                            if (liRowAffected > -1)
                            {
                                lbRes = true;
                            }
                            else
                            {
                                throw new Exception("Update Failed! No Row has been updated...");
                            }
                            //Inserting AccountDetails Table
                            if (argEn.ChequeDetailslist != null)
                            {
                                if (argEn.ChequeDetailslist.Count != 0)
                                {
                                    ChequeDetailsDAL loDS = new ChequeDetailsDAL();
                                    for (int i = 0; i < argEn.ChequeDetailslist.Count; i++)
                                    {
                                        argEn.ChequeDetailslist[i].ProcessId = batchcode;
                                        loDS.Insert(argEn.ChequeDetailslist[i]);
                                    }
                                }
                            }
                            if (argEn.PaymentType == "Payment")
                            {
                                //updating allocations
                                UpdatePayments(argEn.AcccountChques);
                            }
                            if (argEn.PaymentType == "Refund")
                            {
                                // updating Refunds
                                UpdatePayments(argEn.AcccountChques);
                            }
                            if (argEn.PaymentType == "Sponsor Payments")
                            {
                                // updating Sponsor Payments
                                UpdatePayments(argEn.AcccountChques);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(batchcode);
        }