public MarketPlace.Models.Survey.SurveyViewModel SurveyUpsert (string SurveyUpsert) { MarketPlace.Models.Survey.SurveyViewModel oReturn = null; if (SurveyUpsert == "true") { ProveedoresOnLine.SurveyModule.Models.SurveyModel SurveyToUpsert = GetSurveyUpsertRequest(); SurveyToUpsert = ProveedoresOnLine.SurveyModule.Controller.SurveyModule.SurveyUpsert(SurveyToUpsert); oReturn = new Models.Survey.SurveyViewModel(SurveyToUpsert); } return(oReturn); }
public bool SurveyRemoveFile (string SurveyRemoveFile, string SurveyPublicId, int SurveyInfoId) { bool oReturn = false; if (SurveyRemoveFile == "true" && !string.IsNullOrEmpty(SurveyPublicId)) { //get project basic info ProveedoresOnLine.SurveyModule.Models.SurveyModel oSurvey = ProveedoresOnLine.SurveyModule.Controller.SurveyModule.SurveyGetById (SurveyPublicId); //create object to upsert ProveedoresOnLine.SurveyModule.Models.SurveyModel oSurveyToUpsert = new ProveedoresOnLine.SurveyModule.Models.SurveyModel() { SurveyPublicId = SurveyPublicId, RelatedProvider = new ProveedoresOnLine.CompanyProvider.Models.Provider.ProviderModel() { RelatedCompany = new ProveedoresOnLine.Company.Models.Company.CompanyModel() { CompanyPublicId = oSurvey.RelatedProvider.RelatedCompany.CompanyPublicId, } }, RelatedSurveyConfig = new ProveedoresOnLine.SurveyModule.Models.SurveyConfigModel(), SurveyInfo = oSurvey.SurveyInfo. Where(pjinf => pjinf.ItemInfoId == SurveyInfoId). Select(pjinf => new ProveedoresOnLine.Company.Models.Util.GenericItemInfoModel() { ItemInfoId = pjinf.ItemInfoId, ItemInfoType = pjinf.ItemInfoType, Value = pjinf.Value, LargeValue = pjinf.LargeValue, Enable = false, }).ToList(), }; //upsert project info oSurveyToUpsert = ProveedoresOnLine.SurveyModule.Controller.SurveyModule.SurveyInfoUpsert(oSurveyToUpsert); oReturn = true; } return(oReturn); }
public List <MarketPlace.Models.General.FileModel> SurveyUploadFile (string SurveyUploadFile, string SurveyPublicId, string SurveyConfigInfoId, string ProviderPublicId) { List <MarketPlace.Models.General.FileModel> oReturn = new List <MarketPlace.Models.General.FileModel>(); if (SurveyUploadFile == "true" && !string.IsNullOrEmpty(SurveyPublicId) && System.Web.HttpContext.Current.Request.Files.AllKeys.Length > 0) { List <string> lstUsedFiles = new List <string>(); //get folder string strFolder = System.Web.HttpContext.Current.Server.MapPath (MarketPlace.Models.General.InternalSettings.Instance [MarketPlace.Models.General.Constants.C_Settings_File_TempDirectory].Value); if (!System.IO.Directory.Exists(strFolder)) { System.IO.Directory.CreateDirectory(strFolder); } System.Web.HttpContext.Current.Request.Files.AllKeys.All(reqFile => { MarketPlace.Models.General.FileModel oFile = new MarketPlace.Models.General.FileModel(); //get File request var oUploadFile = System.Web.HttpContext.Current.Request.Files[reqFile]; if (oUploadFile != null && !string.IsNullOrEmpty(oUploadFile.FileName)) { oFile.FileName = oUploadFile.FileName.Replace(",", ""); //save local file string strLocalFile = strFolder.TrimEnd('\\') + "\\SurveyFile_" + SurveyPublicId + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + "." + oFile.FileExtension; oUploadFile.SaveAs(strLocalFile); //load file to s3 oFile.ServerUrl = ProveedoresOnLine.FileManager.FileController.LoadFile (strLocalFile, MarketPlace.Models.General.InternalSettings.Instance [MarketPlace.Models.General.Constants.C_Settings_File_RemoteDirectory].Value.TrimEnd('\\') + "\\SurveyFile\\" + SurveyPublicId + "\\"); //remove temporal file if (System.IO.File.Exists(strLocalFile)) { System.IO.File.Delete(strLocalFile); } ProveedoresOnLine.SurveyModule.Models.SurveyModel oSurvey = ProveedoresOnLine.SurveyModule.Controller.SurveyModule.SurveyGetById(SurveyPublicId); //add file to Survey ProveedoresOnLine.SurveyModule.Models.SurveyModel oSurveyToUpsert = new ProveedoresOnLine.SurveyModule.Models.SurveyModel() { SurveyPublicId = SurveyPublicId, RelatedProvider = new ProveedoresOnLine.CompanyProvider.Models.Provider.ProviderModel() { RelatedCompany = new ProveedoresOnLine.Company.Models.Company.CompanyModel() { CompanyPublicId = ProviderPublicId, } }, RelatedSurveyConfig = new ProveedoresOnLine.SurveyModule.Models.SurveyConfigModel() { ItemId = Convert.ToInt32(SurveyConfigInfoId), }, SurveyInfo = new List <ProveedoresOnLine.Company.Models.Util.GenericItemInfoModel>() { new ProveedoresOnLine.Company.Models.Util.GenericItemInfoModel() { ItemInfoType = new ProveedoresOnLine.Company.Models.Util.CatalogModel() { ItemId = (int)MarketPlace.Models.General.enumSurveyInfoType.File, }, LargeValue = oFile.ServerUrl + "," + oFile.FileName, Enable = true, }, }, Enable = true, }; ProveedoresOnLine.SurveyModule.Controller.SurveyModule.SurveyUpsert(oSurveyToUpsert); oFile.FileObjectId = oSurveyToUpsert.SurveyInfo.Where (pjinf => pjinf.ItemInfoType.ItemId == (int)MarketPlace.Models.General.enumSurveyInfoType.File && pjinf.ItemInfoId > 0). Select(pjinf => pjinf.ItemInfoId.ToString()). DefaultIfEmpty(string.Empty). FirstOrDefault(); lstUsedFiles.Add(oFile.ServerUrl); //add result to response oReturn.Add(oFile); } return(true); }); //register used files LogManager.ClientLog.FileUsedCreate(lstUsedFiles); } return(oReturn); }
private ProveedoresOnLine.SurveyModule.Models.SurveyModel GetSurveyUpsertRequest() { //Obtener El reponsable //Obetener todos los evaluadores List <Tuple <string, int, int> > EvaluatorsRoleObj = new List <Tuple <string, int, int> >(); List <string> EvaluatorsEmail = new List <string>(); #region Parent Survey ProveedoresOnLine.SurveyModule.Models.SurveyModel oReturn = new ProveedoresOnLine.SurveyModule.Models.SurveyModel() { ChildSurvey = new List <ProveedoresOnLine.SurveyModule.Models.SurveyModel>(), SurveyPublicId = System.Web.HttpContext.Current.Request["SurveyPublicId"], RelatedProvider = new ProveedoresOnLine.CompanyProvider.Models.Provider.ProviderModel() { RelatedCompany = new ProveedoresOnLine.Company.Models.Company.CompanyModel() { CompanyPublicId = System.Web.HttpContext.Current.Request["ProviderPublicId"], } }, RelatedSurveyConfig = new ProveedoresOnLine.SurveyModule.Models.SurveyConfigModel() { ItemId = Convert.ToInt32(System.Web.HttpContext.Current.Request["SurveyConfigId"].Trim()), }, Enable = true, User = SessionModel.CurrentCompany.RelatedUser.FirstOrDefault().User, //Responsable SurveyInfo = new List <ProveedoresOnLine.Company.Models.Util.GenericItemInfoModel>() }; System.Web.HttpContext.Current.Request.Form.AllKeys.Where(x => x.Contains("SurveyInfo_")).All(req => { string[] strSplit = req.Split('_'); //Set Parent Survey Info if (strSplit.Length >= 3) { oReturn.SurveyInfo.Add(new ProveedoresOnLine.Company.Models.Util.GenericItemInfoModel() { ItemInfoId = !string.IsNullOrEmpty(strSplit[2]) ? Convert.ToInt32(strSplit[2].Trim()) : 0, ItemInfoType = new ProveedoresOnLine.Company.Models.Util.CatalogModel() { ItemId = Convert.ToInt32(strSplit[1].Trim()) }, Value = System.Web.HttpContext.Current.Request[req], //LargeValue = Convert.ToInt32(strSplit[1].Trim()) == (int)enumSurveyInfoType.Evaluator ? strSplit[4].Trim() : string.Empty, Enable = true, }); if (Convert.ToInt32(strSplit[1].Trim()) == (int)enumSurveyInfoType.Evaluator) { EvaluatorsRoleObj.Add(new Tuple <string, int, int>(System.Web.HttpContext.Current.Request[req], Convert.ToInt32(strSplit[4].Trim()), Convert.ToInt32(strSplit[2].Trim()))); } } return(true); }); #endregion if (EvaluatorsRoleObj != null && EvaluatorsRoleObj.Count > 0) { EvaluatorsEmail = new List <string>(); EvaluatorsEmail = EvaluatorsRoleObj.GroupBy(x => x.Item1).Select(grp => grp.First().Item1).ToList(); #region Child Survey //Set survey by evaluators EvaluatorsEmail.All(x => { oReturn.ChildSurvey.Add(new SurveyModel() { SurveyPublicId = System.Web.HttpContext.Current.Request["SurveyPublicId"], RelatedProvider = new ProveedoresOnLine.CompanyProvider.Models.Provider.ProviderModel() { RelatedCompany = new ProveedoresOnLine.Company.Models.Company.CompanyModel() { CompanyPublicId = System.Web.HttpContext.Current.Request["ProviderPublicId"], } }, RelatedSurveyConfig = new ProveedoresOnLine.SurveyModule.Models.SurveyConfigModel() { ItemId = Convert.ToInt32(System.Web.HttpContext.Current.Request["SurveyConfigId"].Trim()), }, Enable = true, User = x,//Evaluator, SurveyInfo = new List <GenericItemInfoModel>() }); return(true); }); //Set SurveyChild Info oReturn.ChildSurvey.All(inf => { List <Tuple <int, int> > AreaIdList = new List <Tuple <int, int> >(); AreaIdList.AddRange(EvaluatorsRoleObj.Where(y => y.Item1 == inf.User).Select(y => new Tuple <int, int>(y.Item2, y.Item3)).ToList()); if (AreaIdList != null) { AreaIdList.All(a => { inf.SurveyInfo.Add(new GenericItemInfoModel() { ItemInfoId = a.Item2 != null ? a.Item2 : 0, ItemInfoType = new ProveedoresOnLine.Company.Models.Util.CatalogModel() { ItemId = (int)enumSurveyInfoType.CurrentArea }, Value = a.Item1.ToString(), Enable = true, }); inf.SurveyInfo.Add(new GenericItemInfoModel() { ItemInfoId = 0, ItemInfoType = new ProveedoresOnLine.Company.Models.Util.CatalogModel() { ItemId = (int)enumSurveyInfoType.IssueDate }, Value = oReturn.SurveyInfo.Where(x => x.ItemInfoType.ItemId == (int)enumSurveyInfoType.IssueDate).Select(x => x.Value).FirstOrDefault(), Enable = true, }); inf.SurveyInfo.Add(new GenericItemInfoModel() { ItemInfoId = 0, ItemInfoType = new ProveedoresOnLine.Company.Models.Util.CatalogModel() { ItemId = (int)enumSurveyInfoType.Contract }, Value = oReturn.SurveyInfo.Where(x => x.ItemInfoType.ItemId == (int)enumSurveyInfoType.Contract).Select(x => x.Value).FirstOrDefault(), Enable = true, }); inf.SurveyInfo.Add(new GenericItemInfoModel() { ItemInfoId = 0, ItemInfoType = new ProveedoresOnLine.Company.Models.Util.CatalogModel() { ItemId = (int)enumSurveyInfoType.Status }, Value = oReturn.SurveyInfo.Where(x => x.ItemInfoType.ItemId == (int)enumSurveyInfoType.Status).Select(x => x.Value).FirstOrDefault(), Enable = true, }); inf.SurveyInfo.Add(new GenericItemInfoModel() { ItemInfoId = 0, ItemInfoType = new ProveedoresOnLine.Company.Models.Util.CatalogModel() { ItemId = (int)enumSurveyInfoType.Comments }, Value = oReturn.SurveyInfo.Where(x => x.ItemInfoType.ItemId == (int)enumSurveyInfoType.Comments).Select(x => x.Value).FirstOrDefault(), Enable = true, }); inf.SurveyInfo.Add(new GenericItemInfoModel() { ItemInfoId = 0, ItemInfoType = new ProveedoresOnLine.Company.Models.Util.CatalogModel() { ItemId = (int)enumSurveyInfoType.Responsible }, Value = oReturn.SurveyInfo.Where(x => x.ItemInfoType.ItemId == (int)enumSurveyInfoType.Responsible).Select(x => x.Value).FirstOrDefault(), Enable = true, }); inf.SurveyInfo.Add(new GenericItemInfoModel() { ItemInfoId = 0, ItemInfoType = new ProveedoresOnLine.Company.Models.Util.CatalogModel() { ItemId = (int)enumSurveyInfoType.ExpirationDate }, Value = oReturn.SurveyInfo.Where(x => x.ItemInfoType.ItemId == (int)enumSurveyInfoType.ExpirationDate).Select(x => x.Value).FirstOrDefault(), Enable = true, }); List <GenericItemInfoModel> oEvaluators = new List <GenericItemInfoModel>(); oEvaluators = oReturn.SurveyInfo.Where(x => x.ItemInfoType.ItemId == (int)enumSurveyInfoType.Evaluator).Select(x => x).ToList(); if (oEvaluators.Count > 0) { oEvaluators.All(x => { inf.SurveyInfo.Add(new GenericItemInfoModel() { ItemInfoId = 0, ItemInfoType = new ProveedoresOnLine.Company.Models.Util.CatalogModel() { ItemId = (int)enumSurveyInfoType.Evaluator }, Value = x.Value, Enable = true, }); return(true); }); } return(true); }); } return(true); }); #endregion } return(oReturn); }