Exemplo n.º 1
0
        public LCM_CommercialInvoice ModelConversionToLcmCommercialInvoice(CommercialInvoiceVM model, int userId, string url)
        {
            var entity = model.CIID == 0
                ? new LCM_CommercialInvoice()
                : (from b in _context.LCM_CommercialInvoice.AsEnumerable()
                   where b.CIID == model.CIID
                   select b).FirstOrDefault();

            entity.CIID             = model.CIID;
            entity.CINo             = model.CINo;
            entity.CIDate           = DalCommon.SetDate(model.CIDate);
            entity.CICurrency       = model.CICurrency;
            entity.LCID             = model.LCID;
            entity.LCNo             = model.LCNo;
            entity.CIStatus         = model.CIStatus;
            entity.ExchangeCurrency = model.ExchangeCurrency;
            entity.ExchangeRate     = model.ExchangeRate;
            entity.ExchangeValue    = model.ExchangeValue;
            entity.CINote           = model.CINote;
            entity.RecordStatus     = model.CIID == 0 ? "NCF" : _unit.CommercialInvoiceRepository.GetByID(model.CIID).RecordStatus;
            entity.SetBy            = model.CIID == 0 ? userId : _unit.CommercialInvoiceRepository.GetByID(model.CIID).SetBy;
            entity.SetOn            = model.CIID == 0 ? DateTime.Now : _unit.CommercialInvoiceRepository.GetByID(model.CIID).SetOn;
            entity.ModifiedBy       = model.CIID == 0 ? (int?)null : userId;
            entity.ModifiedOn       = model.CIID == 0 ? (DateTime?)null : DateTime.Now;
            return(entity);
        }
        public ActionResult Save(CommercialInvoiceVM model)
        {
            _userId = Convert.ToInt32(Session["UserID"]);

            _validationMsg = _dalCommercialInvoice.Save(model, _userId, "CommercialInvoice/CommercialInvoice");

            return(Json(_validationMsg, JsonRequestBehavior.AllowGet));
        }
        public ActionResult GetAllInvoice(int CIID)
        {
            var commercialInvoice = _unit.CommercialInvoiceRepository.GetByID(CIID);
            var CI = new CommercialInvoiceVM();

            CI.CIID             = commercialInvoice.CIID;
            CI.CINo             = commercialInvoice.CINo;
            CI.CIDate           = string.Format("{0:dd/MM/yyyy}", commercialInvoice.CIDate);
            CI.CIStatus         = commercialInvoice.CIStatus;
            CI.CICurrency       = commercialInvoice.CICurrency;
            CI.LCID             = commercialInvoice.LCID;
            CI.LCNo             = commercialInvoice.LCNo;
            CI.PIID             = _unit.LCOpeningRepository.GetByID(commercialInvoice.LCID).PIID;
            CI.PINo             = _unit.LCOpeningRepository.GetByID(commercialInvoice.LCID).PINo;
            CI.OrderNo          = _unit.PRQ_ChemicalPIRepository.GetByID(CI.PIID).OrderNo;
            CI.ExchangeCurrency = commercialInvoice.ExchangeCurrency;
            CI.ExchangeRate     = commercialInvoice.ExchangeRate;
            CI.ExchangeValue    = commercialInvoice.ExchangeValue;
            CI.CINote           = commercialInvoice.CINote;
            CI.RecordStatus     = commercialInvoice.RecordStatus;
            CI.ApprovalAdvice   = commercialInvoice.ApprovalAdvice;
            CI.Items            = new List <CommercialInvoiceItemVM>();
            var CiItems = _unit.CommercialInvoiceItemRepository.Get().Where(c => c.CIID == commercialInvoice.CIID).ToList();

            if (CiItems.Count > 0)
            {
                foreach (var cItem in CiItems)
                {
                    var ciItem = new CommercialInvoiceItemVM();

                    ciItem.CIItemID       = cItem.CIItemID;
                    ciItem.ItemID         = cItem.ItemID;
                    ciItem.ItemName       = _unit.SysChemicalItemRepository.GetByID(cItem.ItemID).ItemName;
                    ciItem.PackSize       = cItem.PackSize;
                    ciItem.PackSizeName   = _unit.SysSizeRepository.GetByID(cItem.PackSize).SizeName;
                    ciItem.SizeUnit       = cItem.SizeUnit;
                    ciItem.SizeUnitName   = _unit.SysUnitRepository.GetByID(cItem.SizeUnit).UnitName;
                    ciItem.PackQty        = cItem.PackQty;
                    ciItem.CIQty          = cItem.CIQty;
                    ciItem.CIUnit         = cItem.CIUnit;
                    ciItem.CIUnitName     = _unit.SysUnitRepository.GetByID(cItem.CIUnit).UnitName;
                    ciItem.CIUnitPrice    = cItem.CIUnitPrice;
                    ciItem.CITotalPrice   = cItem.CITotalPrice;
                    ciItem.SupplierID     = cItem.SupplierID;
                    ciItem.ManufacturerID = cItem.ManufacturerID;
                    if (cItem.ManufacturerID != null)
                    {
                        ciItem.ManufacturerName = _unit.SysSupplierRepository.GetByID(cItem.ManufacturerID).SupplierName;
                    }


                    CI.Items.Add(ciItem);
                }
            }

            return(Json(CI, JsonRequestBehavior.AllowGet));
        }
        public ActionResult GetAllLCforCommercialInvoice(int lcId)
        {
            var lc     = _unit.LCOpeningRepository.GetByID(lcId);
            var lcFull = new CommercialInvoiceVM
            {
                LCID             = lc.LCID,
                LCNo             = lc.LCNo,
                LCDate           = lc.LCDate.ToString("dd-MMM-yyyy"),
                PIID             = lc.PIID,
                PINo             = lc.PINo,
                OrderNo          = _unit.PRQ_ChemicalPIRepository.GetByID(lc.PIID).OrderNo,
                ExchangeCurrency = lc.ExchangeCurrency,
                ExchangeRate     = lc.ExchangeRate,
                ExchangeValue    = lc.ExchangeValue,
                Items            = new List <CommercialInvoiceItemVM>()
            };

            var chemicalPiItems = _unit.PrqChemicalPiItemRepository.Get().Where(ob => ob.PIID == lc.PIID).ToList();

            if (chemicalPiItems.Count != 0)
            {
                foreach (var piItem in chemicalPiItems)
                {
                    var item = new CommercialInvoiceItemVM
                    {
                        ItemID         = piItem.ItemID,
                        ItemName       = _unit.SysChemicalItemRepository.GetByID(piItem.ItemID).ItemName,
                        PackSize       = piItem.PackSize,
                        PackSizeName   = piItem.PackSize == null ? "" : _unit.SysSizeRepository.GetByID(piItem.PackSize).SizeName,
                        SizeUnit       = piItem.SizeUnit,
                        PackQty        = piItem.PackQty,
                        CIQty          = piItem.PIQty,
                        CIUnit         = piItem.PIUnit,
                        CIUnitName     = _unit.SysUnitRepository.GetByID(piItem.PIUnit).UnitName,
                        CIUnitPrice    = Convert.ToDecimal(piItem.PIUnitPrice),
                        CITotalPrice   = piItem.PITotalPrice,
                        SupplierID     = piItem.SupplierID,
                        ManufacturerID = piItem.ManufacturerID
                    };
                    if (piItem.SizeUnit != null)
                    {
                        item.SizeUnitName = _unit.SysUnitRepository.GetByID(piItem.SizeUnit).UnitName;
                    }
                    if (piItem.SupplierID != null)
                    {
                        item.SupplierName = _unit.SysSupplierRepository.GetByID(piItem.SupplierID).SupplierName;
                    }
                    if (piItem.ManufacturerID != null)
                    {
                        item.ManufacturerName = _unit.SysSupplierRepository.GetByID(piItem.SupplierID).SupplierName;
                    }
                    lcFull.Items.Add(item);
                }
            }
            return(Json(lcFull, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 5
0
 public ValidationMsg Save(CommercialInvoiceVM model, int userId, string url)
 {
     try
     {
         using (var tx = new TransactionScope())
         {
             using (_context)
             {
                 var commercialInvoiceData = ModelConversionToLcmCommercialInvoice(model, userId, url);
                 if (model.CIID == 0)
                 {
                     _context.LCM_CommercialInvoice.Add(commercialInvoiceData);
                     _context.SaveChanges();
                     _mode = 1;
                 }
                 else
                 {
                     _context.SaveChanges();
                     _mode = 2;
                 }
                 if (model.Items.Count > 0)
                 {
                     foreach (var items in model.Items)
                     {
                         var commercialInvoiceItemData = ModelConversionToLcmCommercialInvoiceItem(items, userId,
                                                                                                   commercialInvoiceData.CIID);
                         if (items.CIItemID == 0)
                         {
                             _context.LCM_CommercialInvoiceItem.Add(commercialInvoiceItemData);
                             _context.SaveChanges();
                         }
                         else
                         {
                             _context.SaveChanges();
                         }
                     }
                 }
                 tx.Complete();
                 if (_mode == 1)
                 {
                     _validationMsg.ReturnId = commercialInvoiceData.CIID;
                     //_validationMsg.ReturnCode = _unit.CommercialInvoiceRepository.GetByID(_validationMsg.ReturnId).CINo;
                     _validationMsg.Type = Enums.MessageType.Success;
                     _validationMsg.Msg  = "Saved successfully";
                 }
                 if (_mode == 2)
                 {
                     _validationMsg.ReturnId = commercialInvoiceData.CIID;
                     _validationMsg.Type     = Enums.MessageType.Update;
                     _validationMsg.Msg      = "Updated successfully";
                 }
             }
         }
     }
     catch (Exception e)
     {
         _validationMsg.Type = Enums.MessageType.Error;
         _validationMsg.Msg  = "Failed to save";
     }
     return(_validationMsg);
 }