Пример #1
0
        public static CLayer.InvoiceNumberData GetGDSGSTInvoiceNumber(long BookId, long PropertyID = 0)
        {
            int BillingEntityStateID = BLayer.State.GetBillingEntityStateID(PropertyID);

            BillingEntityStateID = (BillingEntityStateID == 0) ? Convert.ToInt32(BLayer.Settings.GetValue(CLayer.Settings.STAYBAZARDEFAULTBILLINGENTITY)) : BillingEntityStateID;

            string GDSStateID = Convert.ToString(BillingEntityStateID);
            int    stateId    = Convert.ToInt32(GDSStateID);

            if (stateId == 0)
            {
                throw new Exception("SB Entity state id not found.. BLayer::NumberGenerator::GetGSTInvoiceNumber");
            }
            DataLayer.State          state = new DataLayer.State();
            CLayer.InvoiceNumberData data  = BLayer.Invoice.GetOldGDSInvoiceNumber(stateId);
            if (data == null || data.InvoiceNumber == "")
            {
                string statecode = state.GetGSTCode(stateId);
                long   numb      = state.GetInvoiceNumber(stateId);

                data = new CLayer.InvoiceNumberData();
                data.InvoiceNumber = statecode + numb.ToString("00000#");
                data.InvoiceDate   = DateTime.Today;
                return(data); //return new invoice number
            }

            return(data); //return deleted invoice's data and invoice number
        }
Пример #2
0
        public CLayer.InvoiceNumberData GetOldGDSInvoiceNumber(long stateId)
        {
            List <DataPlug.Parameter> param = new List <DataPlug.Parameter>();

            param.Add(Connection.GetParameter("pStateId", DataPlug.DataType._BigInt, stateId));
            DataTable dt = Connection.GetTable("State_OldGDSInvoiceNumber", param);

            if (dt.Rows.Count == 0)
            {
                return(null);
            }
            CLayer.InvoiceNumberData data = new CLayer.InvoiceNumberData();
            data.InvoiceNumber = Connection.ToString(dt.Rows[0]["IncNumber"]);
            data.InvoiceDate   = Connection.ToDate(dt.Rows[0]["InvDate"]);
            return(data);
        }
Пример #3
0
        public CLayer.InvoiceNumberData GetNumber(string guid, NumberType nType)
        {
            List <DataPlug.Parameter> param = new List <DataPlug.Parameter>();

            param.Add(Connection.GetParameter("pType", DataPlug.DataType._Int, (int)nType));
            param.Add(Connection.GetParameter("pGuidVal", DataPlug.DataType._Varchar, guid));
            DataTable dt = Connection.GetTable("GenerateNumber", param);

            if (dt.Rows.Count == 0)
            {
                return(null);
            }
            CLayer.InvoiceNumberData data = new CLayer.InvoiceNumberData();
            data.InvoiceNumber = Connection.ToString(dt.Rows[0]["IncNumber"]);
            data.InvoiceDate   = Connection.ToDate(dt.Rows[0]["InvDate"]);
            return(data);
        }
Пример #4
0
        public static CLayer.InvoiceNumberData GetGSTInvoiceNumber(long offlineBookId)
        {
            int stateId = BLayer.OfflineBooking.GetBillingEntityState(offlineBookId);

            if (stateId == 0)
            {
                throw new Exception("SB Entity state id not found.. BLayer::NumberGenerator::GetGSTInvoiceNumber");
            }
            DataLayer.State          state = new DataLayer.State();
            CLayer.InvoiceNumberData data  = BLayer.Invoice.GetOldInvoiceNumber(stateId);
            if (data == null || data.InvoiceNumber == "")
            {
                string statecode = state.GetGSTCode(stateId);
                long   numb      = state.GetInvoiceNumber(stateId);

                data = new CLayer.InvoiceNumberData();
                data.InvoiceNumber = statecode + numb.ToString("00000#");
                data.InvoiceDate   = DateTime.Today;
                return(data); //return new invoice number
            }

            return(data); //return deleted invoice's data and invoice number
        }
Пример #5
0
 public static string GetProformaNumber()
 {
     DataLayer.NumberGenerator ng = new DataLayer.NumberGenerator();
     CLayer.InvoiceNumberData  dt = ng.GetNumber(Guid.NewGuid().ToString(), DataLayer.NumberGenerator.NumberType.Proforma);
     return(dt.InvoiceNumber);
 }