public ActionResult ListeSupport() { var sup = new AgregSupportModel() { IdTypSup = -1, IdSg = -1, IdElig = -1, CodeISIN = string.Empty, Libelle = string.Empty, Call = CallEnum.LISTING }; Guid idcrmcabinet; SessionManager.Get<Guid>(AgregCgpBL.AgregCrmcabinetIdSessionKey, out idcrmcabinet); //nouveau procédure List<ag_upsideo_support> listeSupport = new List<ag_upsideo_support>(); using (UpsilabEntities db = new UpsilabEntities()) { listeSupport = db.ag_upsideo_support.Where(s => s.idcrmcabinet == idcrmcabinet).ToList(); } //supports présent dans la table support pour le cabinet //+ les supports dans la table référentiels moins ceux en communs entre les 2 tables using (UpsilabEntities db = new UpsilabEntities()) { List<ag_upsideo_referentiel> listereferentiel = db.ag_upsideo_referentiel.ToList(); listereferentiel = listereferentiel.Where(r => !listeSupport.Select(s => s.idrefsupport).ToList().Contains(r.idrefsupport)).ToList(); foreach (ag_upsideo_referentiel r in listereferentiel) { ag_upsideo_support newsup = new ag_upsideo_support() { idfrontsupport = 0, idrefsupport = r.idrefsupport, idcrmcabinet = idcrmcabinet, idsg = -1, idElig = -1, idtypesupport = r.idtypesupport, nomsupport = r.nomsupport, datevl = r.datevl, vl = r.vl, codeisin = r.codeisin, devise = r.devise, niveaurisque = r.niveaurisque, categorisation = r.categorisation, Vleuro = r.Vleuro, actions = r.actions, obligations = r.obligations, monetaire = r.monetaire, immobilier = r.immobilier, autres = r.autres, Performance12mois = r.Performance12mois, Performance3112 = r.Performance3112, Performance60mois = r.Performance60mois, Volatilite12mois = r.Volatilite12mois, Volatilite60mois = r.Volatilite60mois, deleted = "n", fiche_prospectus = r.fiche_prospectus, fiche_dici = r.fiche_dici }; listeSupport.Add(newsup); } } //fin procédure SessionManager.Set<String>(AgregCgpBL.AgregCallSupportIdSessionKey, CallEnum.LISTING.ToString()); Session["lstRet"] = listeSupport; Session["supcriteria"] = sup; InitSelectList(); ViewData["results"] = listeSupport; return View(); }
public ActionResult InsertOrUpdateSupport(AgregSupportModel model) { try { var idCgpAgreg = SessionManager.GetUserSession().idAgregCGP.Value; var languageData = PageLanguageHelper.GetLanguageContent("User", "agregsupport"); if (model != null && model.Categorisation.Equals(languageData.GetContent("select"))) { model.Categorisation = ""; } var cgp = AgregCgpBL.GetCgpById(idCgpAgreg).ConvertToViewModel(); if (cgp != null) { model.IdCab = cgp.IdCab; // UPDATE if (model.Id > 0) { AgregSupportBL.UpdateSupport(model.ConverToEntity()); } else // INSERT { AgregSupportBL.AddSupport(model.ConverToEntity()); } } } catch (Exception ex) { Log.AppendException(ex); return Content("Error"); } string call = ""; SessionManager.Get<String>(AgregCgpBL.AgregCallSupportIdSessionKey, out call); if (call == CallEnum.LISTING.ToString()) return RedirectToAction("Liste-support"); if (call == CallEnum.PORTEFEUILLE.ToString()) return RedirectToAction("ListeSupportPortefeuille"); return RedirectToAction("Index"); }
public PartialViewResult LoadPopupFormulaireSupport(int id, string call, int typeaction) { try { InitSelectList(); AgregSupportModel model;/* = (id > 0) ? AgregSupportBL.GetSupportById(id).ConverToViewModel() : new AgregSupportModel() { Id = -1 ,IdElig = -1,IdTypSup = -1,CodeISIN = string.Empty,Libelle = string.Empty,IdSg = -1,Devise = "EURO"};*/ switch (typeaction) { case 0: model = new AgregSupportModel() { Id = -1 ,IdElig = -1,IdTypSup = -1,CodeISIN = string.Empty,Libelle = string.Empty,IdSg = -1,Devise = "EUR"}; break; case 1: model = AgregSupportBL.GetSupportById(id).ConverToViewModel(); break; case 2: AgregReferentielModel r = AgregReferentielBL.GetReferentielById(id).ConverToViewModel(); model = new AgregSupportModel() { Id = -1, IdElig = -1, IdRefSup = r.Id, Actions = r.Actions, Libelle = r.Libelle, Autres = r.Autres, DateValeur = r.DateValeur, Devise = r.Devise, Categorisation = r.Categorisation, CodeISIN = r.CodeISIN, IdTypSup = r.IdTypSup, Immobilier = r.Immobilier, Monetaire = r.Monetaire, NiveauRisque = r.NiveauRisque, Obligations = r.Obligations, Perfo12Mois = r.Perfo12Mois, Perfo60Mois = r.Perfo60Mois, Perfo3112 = r.Perfo3112, Valeur = r.Valeur, ValeurEuro = r.ValeurEuro, Volatilite12Mois = r.Volatilite12Mois, Volatilite60Mois = r.Volatilite60Mois }; break; default: model = AgregSupportBL.GetSupportById(id).ConverToViewModel(); break; } if (call == "portefeuille") { model.Call = CallEnum.PORTEFEUILLE; } else { model.Call = (call == "listing") ? CallEnum.LISTING : CallEnum.SEARCH; } SessionManager.Set<String>(AgregCgpBL.AgregCallSupportIdSessionKey, model.Call.ToString()); return PartialView("FormulaireSupportPartial", model); } catch (Exception ex) { return PartialView("RetourPartial", ex.Message); } }
public ActionResult SearchSupport(AgregSupportModel sup) { try { #region Sauvegarde de la pageSize courant // Selection pageSize (ne sera utilisé que dans la declaration du webgrid) if (Request.Params["PageSize"] != null) { SessionManager.Set<int>("SelectedPageSizeSupportSessionKey", Convert.ToInt32(Request.Params["PageSize"])); } #endregion #region Sauvegarde des critère de recherche AgregSupportModel SessionManager.Set<AgregSupportModel>("AgregSupportModelSessionKey", sup); #endregion Guid idcrmcabinet; SessionManager.Get<Guid>(AgregCgpBL.AgregCrmcabinetIdSessionKey, out idcrmcabinet); //nouveau procédure List<ag_upsideo_support> listeSupport = new List<ag_upsideo_support>(); listeSupport = AgregSupportBL.GetSupportsByCriteria(idcrmcabinet, sup.ConverToEntity()); //supports présent dans la table support pour le cabinet //+ les supports dans la table référentiels moins ceux en communs entre les 2 tables List<ag_upsideo_referentiel> listereferentiel = new List<ag_upsideo_referentiel>(); listereferentiel = AgregReferentielBL.GetReferentielByCriteria(idcrmcabinet, sup.ConverToEntity()); listereferentiel = listereferentiel.Where(r => !listeSupport.Select(s => s.idrefsupport).ToList().Contains(r.idrefsupport)).ToList(); foreach (ag_upsideo_referentiel r in listereferentiel) { ag_upsideo_support newsup = new ag_upsideo_support() { idfrontsupport = 0, idrefsupport = r.idrefsupport, idcrmcabinet = idcrmcabinet, idsg = -1, idElig = -1, idtypesupport = r.idtypesupport, nomsupport = r.nomsupport, datevl = r.datevl, vl = r.vl, codeisin = r.codeisin, devise = r.devise, niveaurisque = r.niveaurisque, categorisation = r.categorisation, Vleuro = r.Vleuro, actions = r.actions, obligations = r.obligations, monetaire = r.monetaire, immobilier = r.immobilier, autres = r.autres, Performance12mois = r.Performance12mois, Performance3112 = r.Performance3112, Performance60mois = r.Performance60mois, Volatilite12mois = r.Volatilite12mois, Volatilite60mois = r.Volatilite60mois, deleted = "n", fiche_prospectus = r.fiche_prospectus, fiche_dici = r.fiche_dici }; listeSupport.Add(newsup); } //fin procédure /*var resultSup = AgregSupportBL.GetSupportsByCriteria(idcrmcabinet, sup.ConverToEntity()).ConverToViewModel(); var critRef = new AgregReferentielModel() { Actions = sup.Actions, Libelle = sup.Libelle, Autres = sup.Autres, DateValeur = sup.DateValeur, Devise = sup.Devise,Categorisation = sup.Categorisation, CodeISIN = sup.CodeISIN, IdTypSup = sup.IdTypSup, Immobilier = sup.Immobilier, Monetaire = sup.Monetaire, NiveauRisque = sup.NiveauRisque, Obligations = sup.Obligations, Perfo12Mois = sup.Perfo12Mois, Perfo60Mois = sup.Perfo60Mois, Perfo3112 = sup.Perfo3112, Valeur = sup.Valeur, ValeurEuro = sup.ValeurEuro, Volatilite12Mois = sup.Volatilite12Mois, Volatilite60Mois = sup.Volatilite60Mois }; if (sup.IdSg > 0) { var sg = AgregSocieteGestionBL.GetSocietesGestionsById(sup.IdSg); critRef.NomSocieteGestion = sg != null ? sg.ConvertToViewModel().Libelle : string.Empty; } var resultRef = AgregReferentielBL.GetReferentielByCriteria(idcrmcabinet,critRef.ConverToEntity()).ConverToViewModel(); if (resultRef != null && resultRef.Any()) resultRef.ToList().ForEach(r => { r.CriteriaSupportSearch = CriteriaSupportSearchEnum.REFERENTIEL; r.Call = CallEnum.SEARCH; }); var results = new List<AgregSupportModel>(); if (resultSup != null && resultSup.Any()) results.AddRange(resultSup); if (resultRef != null && resultRef.Any()) { resultRef.ToList().ForEach(r => { if (!results.Any(c => c.IdRefSup == r.Id)) { results.Add(new AgregSupportModel() { Id = 0, IdRefSup = r.Id, Actions = r.Actions, Libelle = r.Libelle, Autres = r.Autres, DateValeur = r.DateValeur, Devise = r.Devise, Categorisation = r.Categorisation, CodeISIN = r.CodeISIN, IdTypSup = r.IdTypSup, Immobilier = r.Immobilier, Monetaire = r.Monetaire, NiveauRisque = r.NiveauRisque, Obligations = r.Obligations, Perfo12Mois = r.Perfo12Mois, Perfo60Mois = r.Perfo60Mois, Perfo3112 = r.Perfo3112, Valeur = r.Valeur, ValeurEuro = r.ValeurEuro, Volatilite12Mois = r.Volatilite12Mois, Volatilite60Mois = r.Volatilite60Mois, CriteriaSupportSearch = r.CriteriaSupportSearch, }); } }); } results = results.OrderBy(c => c.Libelle).ToList();*/ SessionManager.Set<String>(AgregCgpBL.AgregCallSupportIdSessionKey, CallEnum.SEARCH.ToString()); Session["lstRet"] = listeSupport; Session["supcriteria"] = sup; InitSelectList(); ViewData["results"] = listeSupport; ViewData["IsFromMenu"] = 0; return View("Index", sup); } catch (Exception ex) { Log.AppendException(ex); return Content("Error"); } }