Пример #1
0
        public Prq_SupplierBillChallan ConvertChallan(PrqSupplierBillChallan model, long billId, long?purchaseId,
                                                      string billStatus)
        {
            var entity = billStatus == "new"
                ? new Prq_SupplierBillChallan()
                : (from b in _context.Prq_SupplierBillChallan.AsEnumerable()
                   where b.SupplierBillID == billId && b.ChallanID == model.ChallanID
                   select b).FirstOrDefault();

            entity.ChallanID       = model.ChallanID;
            entity.SupplierBillID  = billId;
            entity.S_ChallanRef    = model.ChallanNo;
            entity.ChallanCategory = _unit.PrqPurchaseChallanRepo.GetByID(model.ChallanID).ChallanCategory;
            entity.PurchaseID      = purchaseId;
            entity.IsDelete        = false;
            return(entity);
        }
        public ActionResult GetBillById(long billId)
        {
            var bill         = new PrqSupplierBill();
            var ritems       = new List <PrqSupplierBillItem>();
            var rchallans    = new List <PrqSupplierBillChallan>();
            var supplierBill = _unit.SupplierBillRepository.GetByID(billId);

            if (supplierBill != null)
            {
                bill.SupplierBillID    = supplierBill.SupplierBillID;
                bill.SupplierBillNo    = supplierBill.SupplierBillNo;
                bill.SupplierBillRefNo = supplierBill.SupplierBillRefNo;
                bill.SupplierID        = supplierBill.SupplierID;
                bill.SupplierCode      = _unit.SysSupplierRepository.GetByID(supplierBill.SupplierID).SupplierCode;
                bill.SupplierName      = _unit.SysSupplierRepository.GetByID(supplierBill.SupplierID).SupplierName;
                bill.SupplierAddressID = supplierBill.SupplierAddressID;
                bill.SupplierAddress   = _unit.SupplierAddressRepository.GetByID(supplierBill.SupplierAddressID).Address;
                bill.PurchaseID        = supplierBill.PurchaseID;
                bill.PurchaseNo        = supplierBill.PurchaseID == null
                    ? ""
                    : _unit.PrqPurchaseRepository.GetByID(supplierBill.PurchaseID).PurchaseNo;
                bill.BillCategory    = supplierBill.BillCategory;
                bill.BillType        = supplierBill.BillType;
                bill.BillDate        = string.Format("{0:dd/MM/yyyy}", supplierBill.BillDate);
                bill.PurchaseYear    = supplierBill.PurchaseYear;
                bill.Remarks         = supplierBill.Remarks;
                bill.TotalQty        = supplierBill.TotalQty;
                bill.TotalRejectQty  = supplierBill.TotalRejectQty;
                bill.AvgPrice        = supplierBill.ApprovedPrice;
                bill.ApprovedPrice   = supplierBill.ApprovedPrice;
                bill.OtherCost       = supplierBill.OtherCost;
                bill.DiscountAmt     = supplierBill.DiscountAmt;
                bill.DiscountPercent = supplierBill.DiscountPercent;
                bill.ApprovedAmt     = supplierBill.ApprovedAmt;
                bill.TotalAmt        = supplierBill.TotalAmt;
                bill.PayableAmt      = supplierBill.PayableAmt;
                bill.CheckComment    = supplierBill.CheckComment;
                bill.ApproveComment  = supplierBill.ApproveComment;
                bill.RecordStatus    = supplierBill.RecordStatus;
                var challans =
                    _unit.SupplierBillChallanRepository.Get()
                    .Where(ob => ob.SupplierBillID == supplierBill.SupplierBillID && ob.IsDelete == false)
                    .ToList();
                if (challans.Count > 0)
                {
                    foreach (var c in challans)
                    {
                        var rchallan = new PrqSupplierBillChallan();
                        rchallan.ChallanID   = c.ChallanID;
                        rchallan.ChallanNo   = c.S_ChallanRef;
                        rchallan.ChallanDate = string.Format("{0:dd/MM/yyyy}",
                                                             _unit.PrqPurchaseChallanRepo.GetByID(c.ChallanID).ChallanDate);
                        rchallan.Quantity =
                            _unit.PurchaseChallanItemRepository.Get()
                            .Where(ob => ob.ChallanID == c.ChallanID)
                            .Sum(ob => ob.ChallanQty);
                        rchallans.Add(rchallan);
                    }
                }
                var items =
                    _unit.SupplierBillItemRepository.Get()
                    .Where(ob => ob.SupplierBillID == supplierBill.SupplierBillID && ob.IsDelete == false)
                    .ToList();
                if (items.Count > 0)
                {
                    foreach (var item in items)
                    {
                        var ritem = new PrqSupplierBillItem();
                        ritem.BillItemID   = item.BillItemID;
                        ritem.ItemTypeID   = item.ItemType;
                        ritem.ItemTypeName = _unit.SysItemTypeRepository.GetByID(item.ItemType).ItemTypeName;
                        ritem.ItemSizeID   = item.ItemSize;
                        ritem.ItemSizeName = _unit.SysSizeRepository.GetByID(item.ItemSize).SizeName;
                        ritem.ItemQty      = item.ItemQty;
                        ritem.RejectQty    = item.RejectQty;
                        ritem.ItemRate     = item.ItemRate;
                        ritem.ApproveRate  = item.ApproveRate;
                        ritem.Amount       = item.Amount;
                        ritem.AmtUnit      = item.AmtUnit ?? 0;
                        ritem.AvgArea      = item.AvgArea;
                        ritem.AreaUnit     = item.AreaUnit;
                        ritem.AreaUnitName = item.AreaUnit == null ? "" : _unit.SysUnitRepository.GetByID(item.AreaUnit).UnitName;
                        ritem.Remarks      = item.Remarks;
                        ritems.Add(ritem);
                    }
                }
            }
            return(Json(new { bill, rchallans, ritems }, JsonRequestBehavior.AllowGet));
        }