예제 #1
0
        public Models.InvoiceCumChallan getDataLecacy(string ChallanId)
        {
            InvoiceCumChallan objInvCumChallan = new InvoiceCumChallan();
            DataTable         dtChallanDtl     = objDbTrx.GetChallanPrintDetailsById(Convert.ToInt64(ChallanId));

            if (dtChallanDtl.Rows.Count > 0)
            {
                objInvCumChallan.InvoiceCumChallanNo   = dtChallanDtl.Rows[0]["CHALLAN_NUMBER"].ToString();
                objInvCumChallan.InvoiceCumChallanDate = Convert.ToDateTime(dtChallanDtl.Rows[0]["CHALLAN_DATE"]).ToString("dd-MMM-yyyy");
                // objInvCumChallan.InvoiceCumChallanYear = Convert.ToDateTime(dtChallanDtl.Rows[0]["CHALLAN_DATE"]).ToString("yyyy");

                objInvCumChallan.InvoiceCumChallanYear = (Convert.ToDateTime(dtChallanDtl.Rows[0]["CHALLAN_DATE"]).Month >= 4 ? (Convert.ToInt32(Convert.ToDateTime(dtChallanDtl.Rows[0]["CHALLAN_DATE"]).Year.ToString()) + 1).ToString() : (Convert.ToDateTime(dtChallanDtl.Rows[0]["CHALLAN_DATE"]).Year.ToString()).ToString());

                objInvCumChallan.Transporter  = dtChallanDtl.Rows[0]["Transport_Name"].ToString();
                objInvCumChallan.Language     = dtChallanDtl.Rows[0]["LANGUAGE"].ToString().ToUpper();
                objInvCumChallan.CONSIGNEE_NO = dtChallanDtl.Rows[0]["CONSIGNEE_NO"].ToString();
                objInvCumChallan.VEHICLE_NO   = dtChallanDtl.Rows[0]["VEHICLE_NO"].ToString();
                objInvCumChallan.DistrictName = dtChallanDtl.Rows[0]["DISTRICT"].ToString();
                objInvCumChallan.CircleName   = dtChallanDtl.Rows[0]["Circle_Name"].ToString();
                objInvCumChallan.UserId       = dtChallanDtl.Rows[0]["UPDATED_BY"].ToString();
                objInvCumChallan.BookRwCnt    = dtChallanDtl.Rows.Count;
                if (objInvCumChallan.BookRwCnt > 12)
                {
                    objInvCumChallan.BookRwCnt = ((objInvCumChallan.BookRwCnt) / 12);
                    if (objInvCumChallan.BookRwCnt > 0)
                    {
                        objInvCumChallan.BookRwCnt++;
                    }
                }
                else
                {
                    objInvCumChallan.BookRwCnt = 1;
                }
                List <InvoiceCumChallanList> lst_InvCumChallan = new List <InvoiceCumChallanList>();
                for (int iCnt = 0; iCnt < dtChallanDtl.Rows.Count; iCnt++)
                {
                    InvoiceCumChallanList icc = new InvoiceCumChallanList();
                    icc.ClassName  = Convert.ToString(dtChallanDtl.Rows[iCnt]["Class"].ToString());
                    icc.Book_Code  = Convert.ToString(dtChallanDtl.Rows[iCnt]["Book_Code"].ToString());
                    icc.Book_Name  = Convert.ToString(dtChallanDtl.Rows[iCnt]["book_name"].ToString());
                    icc.QtyShipped = Convert.ToInt32(dtChallanDtl.Rows[iCnt]["QtyShippedQty"].ToString());
                    icc.Cartoon    = dtChallanDtl.Rows[iCnt]["Cartoon"].ToString();
                    icc.Remarks    = dtChallanDtl.Rows[iCnt]["Remarks"].ToString();
                    lst_InvCumChallan.Add(icc);
                }
                objInvCumChallan.TotalAmount = 0;
                objInvCumChallan.InvoiceCumChallanCollection = lst_InvCumChallan;
                DataTable dt = objDbTrx.GetCircleMasterDetailsByCircleId(Convert.ToInt32(dtChallanDtl.Rows[0]["CircleId"].ToString()));
                if (dt.Rows.Count > 0)
                {
                    objInvCumChallan.CircleAddress    = Convert.ToString(dt.Rows[0]["CIRCLE_ADDRESS"]);
                    objInvCumChallan.CirclePinCode    = Convert.ToString(dt.Rows[0]["CIRCLE_PINCODE"]);
                    objInvCumChallan.InspectorName    = Convert.ToString(dt.Rows[0]["CIRCLE_OFFICER_NAME"]);
                    objInvCumChallan.InspectorPhoneNo = Convert.ToString(dt.Rows[0]["MOBILE_NO"]);
                    objInvCumChallan.InspectorEmailId = Convert.ToString(dt.Rows[0]["EMAIL_ID"]);
                    dt.Dispose();
                }
                objInvCumChallan.CustomerOrderNo = "";
                dt = objDbTrx.GetCustomerOrderNoByLanguageAndChallanCatId(Convert.ToInt16(dtChallanDtl.Rows[0]["LANGUAGE_ID"].ToString()), Convert.ToInt16(dtChallanDtl.Rows[0]["CHALLAN_BOOK_CATEGORY_ID"].ToString()));
                if (dt.Rows.Count > 0)
                {
                    objInvCumChallan.CustomerOrderNo = Convert.ToString(dt.Rows[0]["CUST_ORDER"]);
                    dt.Dispose();
                }

                dtChallanDtl.Dispose();
            }
            return(objInvCumChallan);
        }
예제 #2
0
        public Models.InvoiceCumChallan getData(string ChallanId)
        {
            int manualQty = 1;

            int.TryParse((ConfigurationManager.AppSettings["ManualQty"] != null ? ConfigurationManager.AppSettings["ManualQty"] : "25"), out manualQty);

            InvoiceCumChallan objInvCumChallan = new InvoiceCumChallan();
            DataTable         dtChallanDtl     = objDbTrx.GetChallanPrintDetailsById(Convert.ToInt64(ChallanId));

            if (dtChallanDtl.Rows.Count > 0)
            {
                objInvCumChallan.InvoiceCumChallanNo   = dtChallanDtl.Rows[0]["CHALLAN_NUMBER"].ToString();
                objInvCumChallan.InvoiceCumChallanDate = Convert.ToDateTime(dtChallanDtl.Rows[0]["CHALLAN_DATE"]).ToString("dd-MMM-yyyy");
                // objInvCumChallan.InvoiceCumChallanYear = Convert.ToDateTime(dtChallanDtl.Rows[0]["CHALLAN_DATE"]).ToString("yyyy");

                objInvCumChallan.InvoiceCumChallanYear = (Convert.ToDateTime(dtChallanDtl.Rows[0]["CHALLAN_DATE"]).Month >= 4 ? (Convert.ToInt32(Convert.ToDateTime(dtChallanDtl.Rows[0]["CHALLAN_DATE"]).Year.ToString()) + 1).ToString() : (Convert.ToDateTime(dtChallanDtl.Rows[0]["CHALLAN_DATE"]).Year.ToString()).ToString());

                objInvCumChallan.Transporter     = dtChallanDtl.Rows[0]["Transport_Name"].ToString();
                objInvCumChallan.Language        = dtChallanDtl.Rows[0]["LANGUAGE"].ToString().ToUpper();
                objInvCumChallan.CONSIGNEE_NO    = dtChallanDtl.Rows[0]["CONSIGNEE_NO"].ToString();
                objInvCumChallan.VEHICLE_NO      = dtChallanDtl.Rows[0]["VEHICLE_NO"].ToString();
                objInvCumChallan.DistrictName    = dtChallanDtl.Rows[0]["DISTRICT"].ToString();
                objInvCumChallan.CircleName      = dtChallanDtl.Rows[0]["Circle_Name"].ToString();
                objInvCumChallan.UserId          = dtChallanDtl.Rows[0]["UPDATED_BY"].ToString();
                objInvCumChallan.ManualChallanNo = dtChallanDtl.Rows[0]["ManualChallanNo"].ToString();
                objInvCumChallan.BookRwCnt       = dtChallanDtl.Rows.Count;
                if (objInvCumChallan.BookRwCnt > 12)
                {
                    objInvCumChallan.BookRwCnt = ((objInvCumChallan.BookRwCnt) / 12);
                    if (objInvCumChallan.BookRwCnt > 0)
                    {
                        objInvCumChallan.BookRwCnt++;
                    }
                }
                else
                {
                    objInvCumChallan.BookRwCnt = 1;
                }
                DataTable lot      = objDbTrx.GetlotfromchallanID(ChallanId);
                var       strlisst = new List <string>();

                List <InvoiceCumChallanList> lst_InvCumChallan = new List <InvoiceCumChallanList>();
                for (int iCnt = 0; iCnt < dtChallanDtl.Rows.Count; iCnt++)
                {
                    InvoiceCumChallanList icc = new InvoiceCumChallanList();
                    icc.ClassName  = Convert.ToString(dtChallanDtl.Rows[iCnt]["Class"].ToString());
                    icc.Book_Code  = Convert.ToString(dtChallanDtl.Rows[iCnt]["Common_Book_Code"].ToString());
                    icc.Book_Name  = Convert.ToString(dtChallanDtl.Rows[iCnt]["book_name"].ToString());
                    icc.QtyShipped = Convert.ToInt32(dtChallanDtl.Rows[iCnt]["QtyShippedQty"].ToString());

                    //foreach (DataRow row in lot.Rows)
                    //{
                    //    if (row[0].ToString() == icc.Book_Code)
                    //    {
                    //        strlisst.Add("" + row[1] + " pack," + row[2] + " book(s)");
                    //        ////7 cartoon 25 in each pack, 1 cartoon of (reminder) in 1 pack
                    //    }
                    //}

                    //icc.Cartoon = string.Format("{0} in each pack", string.Join("; ", strlisst));
                    //strlisst.Clear();

                    icc.Cartoon = Convert.ToString((icc.QtyShipped / manualQty)) + " bundle, " + manualQty.ToString() + " book(s) in each bundle" + ((icc.QtyShipped % manualQty) > 0 ? "; " + Convert.ToString(icc.QtyShipped % manualQty) + " book(s) in 1 pack" : "");
                    //icc.Cartoon = dtChallanDtl.Rows[iCnt]["Cartoon"].ToString();

                    icc.Remarks = dtChallanDtl.Rows[iCnt]["Remarks"].ToString();
                    icc.Weight  = icc.QtyShipped * Convert.ToInt32(dtChallanDtl.Rows[iCnt]["Book_Weight"]);
                    lst_InvCumChallan.Add(icc);
                }
                objInvCumChallan.TotalAmount = 0;
                objInvCumChallan.InvoiceCumChallanCollection = lst_InvCumChallan;
                DataTable dt = objDbTrx.GetCircleMasterDetailsByCircleId(Convert.ToInt32(dtChallanDtl.Rows[0]["CircleId"].ToString()));
                if (dt.Rows.Count > 0)
                {
                    objInvCumChallan.CircleAddress    = Convert.ToString(dt.Rows[0]["CIRCLE_ADDRESS"]);
                    objInvCumChallan.CirclePinCode    = Convert.ToString(dt.Rows[0]["CIRCLE_PINCODE"]);
                    objInvCumChallan.InspectorName    = Convert.ToString(dt.Rows[0]["CIRCLE_OFFICER_NAME"]);
                    objInvCumChallan.InspectorPhoneNo = Convert.ToString(dt.Rows[0]["MOBILE_NO"]);
                    objInvCumChallan.InspectorEmailId = Convert.ToString(dt.Rows[0]["EMAIL_ID"]);
                    dt.Dispose();
                }
                objInvCumChallan.CustomerOrderNo = "";
                dt = objDbTrx.GetCustomerOrderNoByLanguageAndChallanCatId(Convert.ToInt16(dtChallanDtl.Rows[0]["LANGUAGE_ID"].ToString()), Convert.ToInt16(dtChallanDtl.Rows[0]["CHALLAN_BOOK_CATEGORY_ID"].ToString()));
                if (dt.Rows.Count > 0)
                {
                    objInvCumChallan.CustomerOrderNo = Convert.ToString(dt.Rows[0]["CUST_ORDER"]);
                    dt.Dispose();
                }

                dtChallanDtl.Dispose();
            }
            return(objInvCumChallan);
        }
예제 #3
0
        public ActionResult GetBooksReqDetails(string District, string CircleId, string categoryId, string languageId, string ChallanId, bool isPartialViewRequest = false)
        {
            InvoiceCumChallan lst_invCumChal = new InvoiceCumChallan();

            try
            {
                Int16     AccadYear = Convert.ToInt16(GlobalSettings.oUserData.AcademicYearId);
                DataTable dtReqDtl  = new DataTable();
                if (Convert.ToInt64(ChallanId) != 0)
                {
                    dtReqDtl = objDbTrx.GetChallanDetailsById(Convert.ToInt64(ChallanId));
                }
                DataTable dtTransaction = objDbTrx.GetChallanListDtlForBarcode(CircleId, categoryId, languageId, ChallanId, AccadYear);

                DataTable dt = objDbTrx.GetBinderDtlListByChallanIdOnly(ChallanId);

                List <InvoiceCumChallanList> ObjlstInvCumCha = new List <InvoiceCumChallanList>();
                if (dtTransaction.Rows.Count > 0)
                {
                    for (int iCnt = 0; iCnt < dtTransaction.Rows.Count; iCnt++)
                    {
                        InvoiceCumChallanList icc = new InvoiceCumChallanList();
                        icc.ClassName         = Convert.ToString(dtTransaction.Rows[iCnt]["Class"].ToString());
                        icc.Book_Code         = Convert.ToString(dtTransaction.Rows[iCnt]["Book_Code"].ToString());
                        icc.Common_Book_Code  = Convert.ToString(dtTransaction.Rows[iCnt]["Common_Book_Code"].ToString());
                        icc.Book_Name         = Convert.ToString(dtTransaction.Rows[iCnt]["book_name"].ToString());
                        icc.NetReqQty         = Convert.ToInt32(dtTransaction.Rows[iCnt]["NetReqQtyAfterStockDeduction"].ToString()) > default(int) ? Convert.ToInt32(dtTransaction.Rows[iCnt]["NetReqQtyAfterStockDeduction"].ToString()) : default(int);
                        icc.AlreadyShippedQty = Convert.ToInt32(dtTransaction.Rows[iCnt]["AlreadyShipped"].ToString());
                        icc.QtyShipped        = 0;
                        icc.Cartoon           = "";
                        //icc.Cartoon = !string.IsNullOrWhiteSpace(dtTransaction.Rows[iCnt]["LOT"].ToString()) ? string.Format("Lot - {0}, Books per lot - {1}", dtTransaction.Rows[iCnt]["LOT"].ToString(), dtTransaction.Rows[iCnt]["REQ_QTY"].ToString()) : "";
                        //icc.Lot = dtTransaction.Rows[iCnt]["LOT"].ToString();
                        //icc.TotBooksPerLot = icc.Cartoon = !string.IsNullOrWhiteSpace(dtTransaction.Rows[iCnt]["LOT"].ToString()) ? string.Format("Lot - {0}, Books per lot - {1}", dtTransaction.Rows[iCnt]["LOT"].ToString(), dtTransaction.Rows[iCnt]["REQ_QTY"].ToString()) : "";
                        icc.TotalLot = Convert.ToInt32(dtTransaction.Rows[iCnt]["LOT"] != null && !string.IsNullOrWhiteSpace(dtTransaction.Rows[iCnt]["LOT"].ToString()) ? dtTransaction.Rows[iCnt]["LOT"].ToString() : default(int).ToString());
                        icc.Remarks  = "";
                        if (dtReqDtl != null && dtReqDtl.Rows.Count > default(int))
                        {
                            for (int jCnt = 0; jCnt < dtReqDtl.Rows.Count; jCnt++)
                            {
                                if (dtTransaction.Rows[iCnt]["Book_Code"].ToString() == dtReqDtl.Rows[jCnt]["Book_Code"].ToString())
                                {
                                    icc.QtyShipped = Convert.ToInt32(dtReqDtl.Rows[jCnt]["QtyShippedQty"].ToString());
                                    icc.Cartoon    = dtReqDtl.Rows[jCnt]["Cartoon"].ToString();
                                    // icc.RemarksId = dtReqDtl.Rows[jCnt]["RemarksID"].ToString();
                                    break;
                                }
                            }
                        }
                        try
                        {
                            icc.RemainBal = (icc.NetReqQty - icc.AlreadyShippedQty) - icc.QtyShipped;
                            if (icc.RemainBal < 1)
                            {
                                icc.RemainBal = 0;
                            }
                        }
                        catch
                        {
                            icc.RemainBal = 0;
                        }
                        icc.BookSurplusQty = "Gross Req: " + dtTransaction.Rows[iCnt]["TOTAL"].ToString() + ",<br/> Stock total: " + dtTransaction.Rows[iCnt]["STOCK_TOTAL"].ToString() + ",<br/> Already Shiped: " + dtTransaction.Rows[iCnt]["ALREADYSHIPPED"].ToString() + ",<br/> Extra Book " + dtTransaction.Rows[iCnt]["SURPLUS_QTY"].ToString() + " " + (dtTransaction.Rows[iCnt]["SURPLUS_MODE"].ToString() == "PER" ? "%" : "Copies");
                        ObjlstInvCumCha.Add(icc);
                    }

                    if (dt != null && dt.Rows.Count > default(int))
                    {
                        if (ObjlstInvCumCha != null && ObjlstInvCumCha.Count() > default(int))
                        {
                            List <BinderDtlListByChallan> lst = new List <BinderDtlListByChallan>();
                            for (int i = 0; i < dt.Rows.Count; i++)
                            {
                                BinderDtlListByChallan obj = new BinderDtlListByChallan();
                                obj.BOOK_CODE         = dt.Rows[i]["BOOK_CODE"].ToString();
                                obj.COMMON_BOOK_CODE  = dt.Rows[i]["COMMON_BOOK_CODE"].ToString();
                                obj.TotalScannedCount = Convert.ToInt32(dt.Rows[i]["TotalScannedCount"].ToString());
                                obj.LOT = Convert.ToInt32(dt.Rows[i]["LOT"].ToString());
                                lst.Add(obj);
                            }

                            foreach (var item in ObjlstInvCumCha)
                            {
                                try
                                {
                                    IEnumerable <BinderDtlListByChallan> obNew = lst.Where(s => s.BOOK_CODE == item.Book_Code);
                                    if (obNew != null && obNew.Count() > default(int))
                                    {
                                        var lstOb = obNew.GroupBy(x => x.BOOK_CODE).Select(g => new {
                                            Key          = g.Key,
                                            Value        = g.Sum(s => s.TotalScannedCount),
                                            LOT          = g.First().LOT,
                                            LOTDELIMITED = string.Join(",", g.Select(c => c.LOT.ToString()).ToArray())
                                        });

                                        var ob = lstOb.FirstOrDefault();
                                        item.TotalLot          = ob != null ? ob.LOT : item.TotalLot;
                                        item.TotalLotDelimited = ob != null ? (string.IsNullOrWhiteSpace(ob.LOTDELIMITED) ? item.TotalLot.ToString() : ob.LOTDELIMITED) : item.TotalLot.ToString();
                                        item.QtyShipped        = ob != null ? ob.Value : item.QtyShipped;
                                        item.RemainBal         = (item.NetReqQty - item.AlreadyShippedQty) - item.QtyShipped;
                                        if (item.RemainBal < 1)
                                        {
                                            item.RemainBal = 0;
                                        }
                                    }



                                    //var ob = lst.Where(s => s.BOOK_CODE == item.Book_Code).FirstOrDefault();
                                    //item.TotalLot = ob != null ? ob.LOT : item.TotalLot;
                                    ////item.TotalLotDelimited = "";
                                    //item.QtyShipped = ob != null ? ob.TotalScannedCount : item.QtyShipped;
                                    //item.RemainBal = (item.NetReqQty - item.AlreadyShippedQty) - item.QtyShipped;
                                    //if (item.RemainBal < 1)
                                    //    item.RemainBal = 0;
                                }
                                catch (Exception) { }
                            }
                        }
                    }

                    lst_invCumChal.TotalAmount = 0;
                    lst_invCumChal.InvoiceCumChallanCollection = ObjlstInvCumCha.Where(o => o.NetReqQty > 0).ToList();
                }
                dtTransaction.Dispose();
            }
            catch (Exception ex)
            {
                objDbTrx.SaveSystemErrorLog(ex, Request.UserHostAddress);
            }

            if (isPartialViewRequest)
            {
                return(PartialView("~/Views/InvoiceCumChallanReqList/_ReqBookDtl.cshtml", lst_invCumChal));
            }
            else
            {
                return(Json(lst_invCumChal, JsonRequestBehavior.AllowGet));
            }
        }