Beispiel #1
0
        //to do
        //public static string GetCurrentGSTIN()
        //{
        //    UnitOfWork unitofWork = new UnitOfWork();
        //    var userid = LoggedInUserID();
        //    var gstin = unitofWork.AspnetRepository.Filter(x => x.Id == userid).Select(x => x.GSTNNo).FirstOrDefault();
        //    return gstin;
        //}
        //public static string LoggedInUserID()
        //{
        //    var userId = HttpContext.Current.User.Identity.GetUserId();
        //    if (userId != null)
        //        return userId;
        //    else
        //        return string.Empty;
        //}

        // final method
        public string generateJson(Int16 getMonth, string gstin, string userid, string isAmendment)
        {
            if (isAmendment == Convert.ToString(GST.Utility.EnumConstants.InvoiceStatus.Amended))
            {
                var data = unitOfWork.InvoiceRepository.Filter(x => x.SellerUserID == userid && x.InvoiceStatus == 1 && x.InvoiceMonth == getMonth);
                clsonlineinvoice OnlineInvoices = new clsonlineinvoice();
                OnlineInvoices.gstin   = gstin;
                OnlineInvoices.hash    = "hash";
                OnlineInvoices.gt      = 0;
                OnlineInvoices.cur_gt  = 0;
                OnlineInvoices.fp      = DateTime.Now.Month.ToString() + DateTime.Now.Year.ToString();
                OnlineInvoices.version = "GST2.0";
                OnlineInvoices.b2b     = new List <B2b>();
                OnlineInvoices.b2cl    = new List <B2cl>();
                OnlineInvoices.b2cs    = new List <B2cs>();
                OnlineInvoices.cdnr    = new List <Cdnr>();
                OnlineInvoices.cdnur   = new List <Cdnur>();
                OnlineInvoices.exp     = new List <Exp>();
                OnlineInvoices.at      = new List <At>();

                OnlineInvoices.txpd = new List <Txpd>();
                var B2Bs = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.Regular);
                foreach (var B2B in B2Bs)
                {
                    OnlineInvoices.b2b.Add(GetB2b(B2B));
                }

                var b2cldatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.B2CL);
                foreach (var b2cldata in b2cldatas)
                {
                    OnlineInvoices.b2cl.Add(GetB2cl(b2cldata));
                }

                var b2csdatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.B2CS);
                foreach (var b2csdata in b2csdatas)
                {
                    OnlineInvoices.b2cs.Add(GetB2cs(b2csdata));
                }

                var expdatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.Export);
                foreach (var expdata in expdatas)
                {
                    OnlineInvoices.exp.Add(GetExpData(expdata));
                }


                var ats = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.Advance);
                foreach (var at in ats)
                {
                    OnlineInvoices.at.Add(Getatsdata(at));
                }

                //var cdnrdatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.CDNR);
                //foreach (var cdnrdata in cdnrdatas)
                //{
                //    OnlineInvoices.cdnr.Add(Getcdnrdata(cdnrdata));
                //}

                //var cdnurdatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.CDNUR);
                //foreach (var cdnur in cdnurdatas)
                //{
                //    OnlineInvoices.cdnur.Add(Getcdnurdata(cdnur));
                //}
                //var hsndatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.HSN).ToList();
                //OnlineInvoices.hsn = Gethsndata(hsndatas);

                //var txpddatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.MASTER);
                //foreach (var txpddata in txpddatas)
                //{
                //    OnlineInvoices.txpd.Add(Gettxpdata(txpddata));
                //}


                return(DownloadJsonApi(OnlineInvoices));
            }
            else
            {
                //var gstin = GetCurrentGSTIN();
                //var userid =LoggedInUserID();
                var data = unitOfWork.InvoiceRepository.Filter(x => x.SellerUserID == userid && x.InvoiceStatus == 0 && x.InvoiceMonth == getMonth);
                clsonlineinvoice OnlineInvoices = new clsonlineinvoice();
                OnlineInvoices.gstin   = gstin;
                OnlineInvoices.hash    = "hash";
                OnlineInvoices.gt      = 0;
                OnlineInvoices.cur_gt  = 0;
                OnlineInvoices.fp      = DateTime.Now.Month.ToString() + DateTime.Now.Year.ToString();
                OnlineInvoices.version = "GST2.0";
                OnlineInvoices.b2b     = new List <B2b>();
                OnlineInvoices.b2cl    = new List <B2cl>();
                OnlineInvoices.b2cs    = new List <B2cs>();
                OnlineInvoices.cdnr    = new List <Cdnr>();
                OnlineInvoices.cdnur   = new List <Cdnur>();
                OnlineInvoices.exp     = new List <Exp>();
                OnlineInvoices.at      = new List <At>();

                OnlineInvoices.txpd = new List <Txpd>();
                var B2Bs = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.Regular);
                foreach (var B2B in B2Bs)
                {
                    OnlineInvoices.b2b.Add(GetB2b(B2B));
                }

                var b2cldatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.B2CL);
                foreach (var b2cldata in b2cldatas)
                {
                    OnlineInvoices.b2cl.Add(GetB2cl(b2cldata));
                }

                var b2csdatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.B2CS);
                foreach (var b2csdata in b2csdatas)
                {
                    OnlineInvoices.b2cs.Add(GetB2cs(b2csdata));
                }

                var expdatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.Export);
                foreach (var expdata in expdatas)
                {
                    OnlineInvoices.exp.Add(GetExpData(expdata));
                }


                var ats = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.Advance);
                foreach (var at in ats)
                {
                    OnlineInvoices.at.Add(Getatsdata(at));
                }

                //var cdnrdatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.CDNR);
                //foreach (var cdnrdata in cdnrdatas)
                //{
                //    OnlineInvoices.cdnr.Add(Getcdnrdata(cdnrdata));
                //}

                //var cdnurdatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.CDNUR);
                //foreach (var cdnur in cdnurdatas)
                //{
                //    OnlineInvoices.cdnur.Add(Getcdnurdata(cdnur));
                //}
                //var hsndatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.HSN).ToList();
                //OnlineInvoices.hsn = Gethsndata(hsndatas);

                //var txpddatas = data.Where(x => x.InvoiceSpecialCondition == (byte)EnumConstants.InvoiceSpecialCondition.MASTER);
                //foreach (var txpddata in txpddatas)
                //{
                //    OnlineInvoices.txpd.Add(Gettxpdata(txpddata));
                //}


                return(DownloadJsonApi(OnlineInvoices));
            }
        }
Beispiel #2
0
        //pending
        public string DownloadJsonApi(clsonlineinvoice JSONOffline)
        {
            var json = new JavaScriptSerializer().Serialize(JSONOffline);

            return(json);
        }