示例#1
0
        public JsonResult SaveQouteData(List <QuoteModel> lstSampleSubmissionMaster, List <QuoteDetailModel> lstSampleSubmissionDetails)
        {
            var strMessage = string.Empty;

            try
            {
                foreach (var item in lstSampleSubmissionMaster)
                {
                    QuoteModel masterEntityModel = new QuoteModel();

                    #region Current User
                    var userName = HttpContext.User.Identity.Name;
                    masterEntityModel.IUser = userName;
                    masterEntityModel.IDate = DateTime.Now;
                    masterEntityModel.EDate = DateTime.Now;
                    #endregion
                    masterEntityModel.QuoteNo     = "Test";
                    masterEntityModel.SalesCallId = Convert.ToInt64(item.SalesCallId);
                    masterEntityModel.QuoteDate   = item.QuoteDate;
                    masterEntityModel.CustomerId  = Convert.ToInt64(item.CustomerId);
                    //masterList.Add(masterEntityModel);

                    var entity = masterEntityModel.ToEntity();
                    _QuoteService.BMSUnit.QuoteRepository.Add(entity);
                    _QuoteService.BMSUnit.QuoteRepository.SaveChanges();

                    Session["QuoteMasterId"] = entity.Id;
                }


                // Add new detail information

                foreach (var item in lstSampleSubmissionDetails)
                {
                    QuoteDetailModel entityDetailModel = new QuoteDetailModel();

                    entityDetailModel.QuoteId           = Convert.ToInt64(Convert.ToInt64(Session["QuoteMasterId"]));
                    entityDetailModel.ArticleId         = item.ArticleId;
                    entityDetailModel.MOQ               = item.MOQ;
                    entityDetailModel.ValidityDate      = item.ValidityDate;
                    entityDetailModel.SupplierId        = item.SupplierId;
                    entityDetailModel.PriceTermId       = item.PriceTermId;
                    entityDetailModel.ShipmentCountryId = item.ShipmentCountryId;
                    entityDetailModel.ShipmentLeadTime  = item.ShipmentLeadTime;
                    entityDetailModel.DetailText        = item.DetailText;

                    var detailEntity = entityDetailModel.ToEntity();
                    _QuoteService.BMSUnit.QuoteDetailsRepository.Add(detailEntity);
                    _QuoteService.BMSUnit.QuoteDetailsRepository.SaveChanges();
                }
                strMessage = "Information has been saved successfully";
            }
            catch (Exception ex)
            {
                strMessage = CommonExceptionMessage.GetExceptionMessage(ex, CommonAction.Save);
            }

            return(Json(new { strMessage = strMessage }));
        }
示例#2
0
        public ActionResult Edit(QuoteModel viewModel)
        {
            var strMessage = string.Empty;

            try
            {
                if (ModelState.IsValid)
                {
                    var model = _QuoteService.BMSUnit.QuoteRepository.GetByID(viewModel.Id);

                    #region Current User
                    viewModel.IUser = model.IUser;
                    viewModel.IDate = model.IDate;

                    var userName = HttpContext.User.Identity.Name;
                    viewModel.EUser = userName;
                    viewModel.EDate = DateTime.Now;

                    #endregion


                    List <QuoteDetailModel> list = new List <QuoteDetailModel>();
                    if (Session["lstQuoteDetails"] != null)
                    {
                        list = (List <QuoteDetailModel>)Session["lstQuoteDetails"];
                    }

                    #region Releated Data
                    viewModel.QuoteNo   = "Test";
                    viewModel.QuoteText = "N/A";
                    //viewModel.testVal1 = _QuoteService.Get_New_InvoiceId().FirstOrDefault().testVal1;
                    #endregion

                    var entity = viewModel.ToEntity();

                    // Get previous detail list
                    var lst = _QuoteService.BMSUnit.QuoteDetailsRepository.GetAll().Where(
                        q => q.QuoteId == entity.Id);

                    foreach (var dt in lst)
                    {
                        _QuoteService.BMSUnit.QuoteDetailsRepository.Delete_64Bit(Convert.ToInt64(dt.Id));
                    }



                    #region Save Quote Detail

                    if (list != null && list.Count > 0)
                    {
                        foreach (QuoteDetailModel detail in list)
                        {
                            detail.QuoteId = Convert.ToInt64(entity.Id);
                            var detailEntity = detail.ToEntity();
                            _QuoteService.BMSUnit.QuoteDetailsRepository.Add(detailEntity);
                            _QuoteService.BMSUnit.QuoteDetailsRepository.SaveChanges();
                        }
                    }
                    #endregion

                    _QuoteService.BMSUnit.QuoteRepository.Update(entity);
                    _QuoteService.BMSUnit.QuoteRepository.SaveChanges();

                    Session["lstQuoteDetails"] = null;


                    #region Save Quote Document

                    // Get and delete previous detail list
                    var prevAttachDocList = _QuoteService.BMSUnit.QuoteDocumentRepository.GetAll().Where(
                        q => q.QuoteId == entity.Id);

                    foreach (var dt in prevAttachDocList)
                    {
                        _QuoteService.BMSUnit.QuoteDocumentRepository.Delete_64Bit(Convert.ToInt64(dt.Id));
                    }

                    foreach (DocumentModel doc in viewModel.documentModels)
                    {
                        if (doc.IsSelected == true)
                        {
                            QuoteDocumentModel qdm = new QuoteDocumentModel();
                            qdm.QuoteId    = Convert.ToInt64(entity.Id);
                            qdm.DocumentId = doc.Id;
                            var detailDocumentEntity = qdm.ToEntity();
                            _QuoteService.BMSUnit.QuoteDocumentRepository.Add(detailDocumentEntity);
                            _QuoteService.BMSUnit.QuoteDocumentRepository.SaveChanges();
                        }
                    }
                    #endregion


                    return(Content(Boolean.TrueString));
                }

                strMessage = Common.GetModelStateErrorMessage(ModelState);
            }
            catch (Exception ex)
            {
                strMessage = CommonExceptionMessage.GetExceptionMessage(ex, CommonAction.Update);
            }

            return(Content(strMessage));
        }
示例#3
0
        public ActionResult Create(QuoteModel viewModel)
        {
            var strMessage = string.Empty;

            try
            {
                if (Session["lstQuoteDetails"] != null)
                {
                    if (ModelState.IsValid)
                    {
                        #region Current User

                        var userName = HttpContext.User.Identity.Name;
                        viewModel.IUser = userName;
                        viewModel.IDate = DateTime.Now;
                        viewModel.EDate = DateTime.Now;
                        #endregion

                        #region Releated Data
                        viewModel.QuoteNo   = "Test";
                        viewModel.QuoteText = "N/A";
                        #endregion

                        List <QuoteDetailModel> list = new List <QuoteDetailModel>();
                        if (Session["lstQuoteDetails"] != null)
                        {
                            list = (List <QuoteDetailModel>)Session["lstQuoteDetails"];
                        }

                        var entity = viewModel.ToEntity();

                        _QuoteService.BMSUnit.QuoteRepository.Add(entity);
                        _QuoteService.BMSUnit.QuoteRepository.SaveChanges();

                        Session["QuoteMasterId"] = entity.Id;

                        #region Save Quote Detail

                        if (list != null && list.Count > 0)
                        {
                            foreach (QuoteDetailModel detail in list)
                            {
                                detail.QuoteId = Convert.ToInt64(entity.Id);
                                var detailEntity = detail.ToEntity();
                                _QuoteService.BMSUnit.QuoteDetailsRepository.Add(detailEntity);
                                _QuoteService.BMSUnit.QuoteDetailsRepository.SaveChanges();
                            }
                        }

                        Session["lstQuoteDetails"] = null;

                        #endregion


                        #region Save Sample Request Document

                        foreach (DocumentModel doc in viewModel.documentModels)
                        {
                            if (doc.IsSelected == true)
                            {
                                QuoteDocumentModel qdm = new QuoteDocumentModel();
                                qdm.QuoteId    = Convert.ToInt64(entity.Id);
                                qdm.DocumentId = doc.Id;
                                var detailDocumentEntity = qdm.ToEntity();
                                _QuoteService.BMSUnit.QuoteDocumentRepository.Add(detailDocumentEntity);
                                _QuoteService.BMSUnit.QuoteDocumentRepository.SaveChanges();
                            }
                        }

                        #endregion


                        return(Content(Boolean.TrueString));
                    }
                }
                strMessage = Common.GetModelStateErrorMessage(ModelState);
            }
            catch (Exception ex)
            {
                strMessage = CommonExceptionMessage.GetExceptionMessage(ex, CommonAction.Save);
            }

            return(Content(strMessage));
        }