public RichTextAttachment GetRichTextAttachment(Guid id) { using (VistosDbContext ctx = new VistosDbContext()) { return(ctx.RichTextAttachment.First(x => x.UniqueGuid == id)); } }
public List <vwParticipant> GetVwParticipants(int dbObjectId, int recordId) { using (VistosDbContext ctx = new VistosDbContext()) { return(ctx.vwParticipant.Where(x => x.DbObject_Id == dbObjectId && x.Participant_RecordId == recordId).ToList().Distinct().ToList()); } }
public void VwUserAuthTokenListReset() { using (VistosDbContext ctx = new VistosDbContext()) { vwUserAuthTokenList = ctx.vwUserAuthToken.ToList().Distinct().ToList(); } }
public JsonResult ThumbnailAvatarUploadImage(string userToken) { UserInfo userInfo = GetUserInfoFromUserToken(userToken); try { if (userInfo != null && Request.Form.Files != null && Request.Form.Files.Count > 0) { for (int i = 0; i < Request.Form.Files.Count; i++) { IFormFile file = Request.Form.Files[i]; if (file.Length > 0) { byte[] byteArray = null; using (MemoryStream ms = new MemoryStream()) { file.CopyTo(ms); byteArray = ms.ToArray(); } if (byteArray != null && byteArray.Length > 0) { byte[] resizeArr = ImageTool.ResizeImage(byteArray, new System.Drawing.Size(200, 200)); using (VistosDbContext ctx = new VistosDbContext()) { UserAvatar userAvatar = new UserAvatar() { Deleted = false, Created = DateTime.Now, Modified = DateTime.Now, CreatedBy_FK = userInfo.UserId, Avatar = resizeArr }; ctx.UserAvatar.Add(userAvatar); ctx.SaveChanges(); var staleItem = Url.Action("GetThumbnailAvatar", "VistosApi", new { id = userInfo.UserId }); //**Response.RemoveOutputCacheItem(staleItem); return(Json(new { id = userAvatar.Id })); } } } } } } catch (Exception ex) { Logger.SaveLogError(LogLevel.Error, "ThumbnailAvatarUploadImage", ex, null, userInfo); } return(null); }
static void Main(string[] args) { Console.WriteLine("Hello World!"); using (VistosDbContext ctx = new VistosDbContext()) { List <UserAvatar> ts = ctx.UserAvatar.Where(t => t.Deleted == false).ToList(); List <vwRole> vwRole1 = ctx.vwRole.ToList(); List <vwUserAuthToken> vwUserAuthToken1 = ctx.vwUserAuthToken.ToList(); string s = ""; } List <vwRole> vwRole2 = Settings.GetInstance.VwRoleList; }
public static void SaveLogError(LogLevel logLevel, string message, Exception ex, ApiRequest request, UserInfo userInfo) { StringBuilder sb = new StringBuilder(); sb.AppendLine(message); if (request != null) { try { sb.AppendLine(); sb.AppendLine("ApiRequest"); sb.AppendLine("------------------------------------------"); sb.AppendLine(JsonConvert.SerializeObject(request, Formatting.Indented)); } catch (Exception ex1) { string s = ex1.Message; } } if (userInfo != null) { try { sb.AppendLine(); sb.AppendLine("UserInfo"); sb.AppendLine("-----------------------------------------"); sb.AppendLine(JsonConvert.SerializeObject(userInfo, Formatting.Indented)); } catch (Exception ex1) { string s = ex1.Message; } } using (VistosDbContext ctx = new VistosDbContext()) { Log log = new Log() { Time = DateTime.Now, Application = "Vistos v3", Level = logLevel.ToString(), Message = sb.ToString(), RequestGuid = request != null ? request.RequestGuid : null, Exception = ex != null?ex.ToString() : null, StackTrace = ex != null ? ex.StackTrace : null }; ctx.Log.Add(log); ctx.SaveChanges(); } }
public string SaveNewRichTextAttachment(byte[] byteArray, UserInfo userInfo) { using (VistosDbContext ctx = new VistosDbContext()) { RichTextAttachment att = new RichTextAttachment(); att.Deleted = false; att.Created = DateTime.Now; att.Modified = DateTime.Now; att.CreatedBy_FK = userInfo.UserId; att.Content = byteArray; att.UniqueGuid = Guid.NewGuid(); ctx.RichTextAttachment.Add(att); ctx.SaveChanges(); return(att.UniqueGuid.ToString()); } }
public List <ReminderSettings> GetReminderSettings(Int32?dbObjectId = null) { Expression <Func <ReminderSettings, bool> > expr = x => !x.Deleted; if (dbObjectId.HasValue) { expr = x => !x.Deleted && x.DbObject_FK.HasValue && (x.DbObject_FK == dbObjectId.Value); } using (VistosDbContext ctx = new VistosDbContext()) { // return ctx.ReminderSettings.Include(rs => rs.Reminder && rs.Reminder.de).Where(expr).ToList(); //**return ctx.ReminderSettings.Include(x => x.Reminder).Where(expr).ToList().Distinct().ToList(); return(ctx.ReminderSettings.Where(expr).ToList().Distinct().ToList()); } }
public static void SaveLogWarn(string requestGuid, string message) { using (VistosDbContext ctx = new VistosDbContext()) { Log log = new Log() { Time = DateTime.Now, Application = "Vistos v3", Level = LogLevel.Warning.ToString(), Message = message, RequestGuid = requestGuid }; ctx.Log.Add(log); ctx.SaveChanges(); } }
public ActionResult GetSignatureImageByGuid(string id) { Guid guid = !string.IsNullOrEmpty(id) ? Guid.Parse(id) : Guid.Empty; Signature signature = null; using (VistosDbContext ctx = new VistosDbContext()) { signature = ctx.Signature.Where(s => !s.Deleted && s.UniqueGuid == guid).FirstOrDefault(); } MemoryStream ms = null; if (signature != null && signature.Id > 0) { ms = new MemoryStream(signature.Bitmap); return(new FileStreamResult(ms, "image/jpeg")); } return(NotFound()); }
private void CheckEnumerationDict(string typeName) { if (!enumerationDict.ContainsKey(typeName)) { using (VistosDbContext ctx = new VistosDbContext()) { int typeId = ctx.EnumerationType.Where(t => !t.Deleted && t.Type.ToLower() == typeName.ToLower()).Select(t => t.Id).FirstOrDefault(); if (typeId > 0) { enumerationDict.GetOrAdd(typeName, ctx.Enumeration.Where(e => !e.Deleted && e.EnumerationType_FK.Value == typeId).ToList()); } else { enumerationDict.GetOrAdd(typeName, new List <Enumeration>()); } } } }
public ActionResult DownloadEmailAttachment(int attachmentId, string userToken) { UserInfo userInfo = GetUserInfoFromUserToken(userToken); try { EmailAttachment emailAttachment = null; using (VistosDbContext ctx = new VistosDbContext()) { emailAttachment = ctx.EmailAttachment.FirstOrDefault(a => a.Id == attachmentId && !a.Deleted); } if (emailAttachment != null && emailAttachment.Id > 0) { if (emailAttachment.Data == null && emailAttachment.DataLength > 0 && emailAttachment.Email_FK.HasValue) { if (emailAttachment.StoredInDropbox) { DropBoxService dropBox = new DropBoxService(Settings.GetInstance.SystemSettings.DropBoxSecurityToken); Uri dropBoxAttachUri = dropBox.GetUriEmailAttachment(emailAttachment.Email_FK.Value, emailAttachment.Id, emailAttachment.FileName); return(new RedirectResult(dropBoxAttachUri.ToString(), false)); } else { // Refresh attachment content from IMAP server //**Service.Model.EmailViewModel model = new Service.Model.EmailViewModel(emailAttachment.Email_FK.Value, userInfo); //**model.RefreshAttachmentsFromIMAP(); using (VistosDbContext ctx = new VistosDbContext()) { emailAttachment = ctx.EmailAttachment.FirstOrDefault(a => a.Id == attachmentId && !a.Deleted); } } } return(File(emailAttachment.Data, emailAttachment.Type, emailAttachment.FileName)); } } catch (Exception ex) { Logger.SaveLogError(LogLevel.Error, "Execute", ex, null, null); } return(NotFound()); }
public async Task SaveAudit() { try { if (auditDB.Operation == "GetPage" || auditDB.Operation == "Delete" || auditDB.Operation == "GetById" || auditDB.Operation == "Save" || auditDB.Operation == "Create" || auditDB.Operation == "Login" || auditDB.Operation == "Remove" || auditDB.Operation == "GetCalendarData" || auditDB.Operation == "UpdateCalendarData" || auditDB.Operation == "SaveLayout" || auditDB.Operation == "SaveGridSettings" || auditDB.Operation == "MassActionGrid" || auditDB.Operation == "AddSignature" || auditDB.Operation == "UpdateCalendarData" || auditDB.Operation == "CreateEntityFrom" || auditDB.Operation == "MassActionUpdate" || auditDB.Operation == "AddExistingManyToMany" || auditDB.Operation == "SaveAccessRights" || auditDB.Operation == "ResetLayout" || auditDB.Operation == "SaveLocalization" || auditDB.Operation == "SaveAccessRightsColumns" || auditDB.Operation == "SaveDiscussionMessage" || auditDB.Operation == "EditDiscussionMessage" || auditDB.Operation == "RestartAPI" || auditDB.Operation == "CleanCache" ) { using (VistosDbContext ctx = new VistosDbContext()) { ctx.Audit.Add(auditDB); await ctx.SaveChangesAsync(); } } } catch (Exception ex) { // LOG ERR } }
private Settings() { IConfigurationRoot configuration = new ConfigurationBuilder() .SetBasePath(AppDomain.CurrentDomain.BaseDirectory) .AddJsonFile("appsettings.json") .Build(); dbConnectionString = configuration.GetConnectionString("DefaultConnection"); queryBuilderScripts = new ConcurrentDictionary <string, ConcurrentDictionary <int, ConcurrentDictionary <string, ConcurrentDictionary <string, string> > > >(); vwProjectionDict = new ConcurrentDictionary <int, List <vwProjection> >(); crmEntityDict = new ConcurrentDictionary <string, CrmEntity>(); vwProjectionColumnDict = new ConcurrentDictionary <int, ConcurrentDictionary <string, List <vwProjectionColumn> > >(); enumerationDict = new ConcurrentDictionary <string, List <Enumeration> >(); vwLocalizationDict = new ConcurrentDictionary <string, ConcurrentDictionary <string, Dictionary <string, string> > >(); schemaDict = new ConcurrentDictionary <int, string>(); menuDict = new ConcurrentDictionary <int, string>(); using (VistosDbContext ctx = new VistosDbContext()) { projectionReportList = ctx.ProjectionReport.ToList().Distinct().ToList(); vwProjectionActionList = ctx.vwProjectionAction.ToList().Distinct().ToList(); vwProjectionRelationList = ctx.vwProjectionRelation.ToList().Distinct().ToList(); vwProjectionActionColumnMappingList = ctx.vwProjectionActionColumnMapping.ToList().Distinct().ToList(); vwProjectionList = ctx.vwProjection.ToList().Distinct().ToList(); crmEntityList = ctx.CrmEntity.ToList().Distinct().ToList(); vwProjectionColumnList = ctx.vwProjectionColumn.ToList().Distinct().ToList(); systemSettings = ctx.vwSystemSettings.First(); localizationLanguageList = ctx.LocalizationLanguage.ToList().Distinct().ToList(); vwUserAuthTokenList = ctx.vwUserAuthToken.ToList().Distinct().ToList(); vwUserList = ctx.vwUser.ToList().Distinct().ToList(); vwRoleList = ctx.vwRole.ToList().Distinct().ToList(); vwBusinessUnitList = ctx.vwBusinessUnit.ToList().Distinct().ToList(); vwNumberingSequence = ctx.vwNumberingSequence.ToList().Distinct().ToList(); if (this.SystemSettings.PohodaConnectorEnabled) { vwPohodaDbObjectConfigurationList = ctx.vwPohodaDbObjectConfiguration.ToList().Distinct().ToList(); } } }
//**[ResponseCache(Duration = 600, VaryByQueryKeys = new string[] { "id" })] public ActionResult GetThumbnailAvatar(int id) { if (id > 0) { UserAvatar userAvatar = null; using (VistosDbContext ctx = new VistosDbContext()) { vwUser vwUser1 = ctx.vwUser.Where(u => u.Id == id).FirstOrDefault(); if (vwUser1 != null && vwUser1.Id > 0 && vwUser1.User_Avatar_FK.HasValue) { userAvatar = ctx.UserAvatar.Where(ua => ua.Id == vwUser1.User_Avatar_FK.Value).FirstOrDefault(); } } if (userAvatar != null && userAvatar.Id > 0 && userAvatar.Avatar != null && userAvatar.Avatar.Length > 0) { MemoryStream ms = null; ms = new MemoryStream(userAvatar.Avatar); return(new FileStreamResult(ms, "image/jpeg")); } } return(File(Url.Content("~/Data/profil-default.jpg"), "image/jpeg")); }
public Dictionary <string, string> GetLocalizations(string areaName, string language) { if (vwLocalizationDict == null) { vwLocalizationDict = new ConcurrentDictionary <string, ConcurrentDictionary <string, Dictionary <string, string> > >(); } if (!vwLocalizationDict.ContainsKey(areaName) || !vwLocalizationDict[areaName].ContainsKey(language)) { using (VistosDbContext ctx = new VistosDbContext()) { var projectionColumnLocalizations = ctx.vwLocalization .Where(x => (x.LocalizationArea_Name == areaName && x.LocalizationLanguage_Name == language)).ToList(); if (!vwLocalizationDict.ContainsKey(areaName)) { vwLocalizationDict.GetOrAdd(areaName, new ConcurrentDictionary <string, Dictionary <string, string> >()); } if (!vwLocalizationDict[areaName].ContainsKey(language)) { vwLocalizationDict[areaName].GetOrAdd(language, new Dictionary <string, string>()); } // zpracovani vychozich lokalizaci na projekci projectionColumnLocalizations.ForEach(x => { if (!vwLocalizationDict[areaName][language].ContainsKey(x.LocalizationString_Key)) { vwLocalizationDict[areaName][language].Add(x.LocalizationString_Key, x.LocalizationString_Value); } }); } } return(vwLocalizationDict[areaName][language]); }
public ActionResult Preview( int id , string entityName , string userToken ) { UserInfo userInfo = GetUserInfoFromUserToken(userToken); try { if (userInfo != null) { if (entityName.ToLower() == "document") { List <DocumentAttachment> docAttachmentList = new List <DocumentAttachment>(); using (VistosDbContext ctx = new VistosDbContext()) { docAttachmentList = ctx.DocumentAttachment.Where(d => !d.Deleted && d.Document_FK == id).ToList(); } if (docAttachmentList.Count == 1) { DocumentAttachment att = docAttachmentList.Single(); if (att.StoreInFtp) { FtpService ftpService = new FtpService( Settings.GetInstance.SystemSettings.FtpType , Settings.GetInstance.SystemSettings.FtpHost , Settings.GetInstance.SystemSettings.FtpPort , Settings.GetInstance.SystemSettings.FtpUserName , Settings.GetInstance.SystemSettings.FtpPassword , Settings.GetInstance.SystemSettings.FtpPrivateKey , Settings.GetInstance.SystemSettings.FtpPassPhrase , Settings.GetInstance.SystemSettings.FtpRoot ); byte[] content = ftpService.DownloadDocAttachment(att.Id, att.DocName); MemoryStream dataStream = new MemoryStream(); dataStream.Write(content, 0, content.Length); dataStream.Position = 0; return(new FileStreamResult(dataStream, att.ContentType)); } else if (att.StoreInDropBox) { DropBoxService dropBox = new DropBoxService(Settings.GetInstance.SystemSettings.DropBoxSecurityToken); Uri dropBoxAttachUri = dropBox.GetUriDocAttachment(att.Id, att.DocName); return(new RedirectResult(dropBoxAttachUri.ToString(), false)); } else { MemoryStream dataStream = new MemoryStream(); dataStream.Write(att.Attachment, 0, att.Attachment.Length); dataStream.Position = 0; return(new FileStreamResult(dataStream, att.ContentType)); } } } } return(NotFound()); } catch (Exception ex) { return(NotFound()); throw; } }
public ActionResult Download( int id , string entityName , string userToken ) { UserInfo userInfo = GetUserInfoFromUserToken(userToken); try { if (userInfo != null) { if (entityName.ToLower() == "document") { List <DocumentAttachment> docAttachmentList = new List <DocumentAttachment>(); using (VistosDbContext ctx = new VistosDbContext()) { docAttachmentList = ctx.DocumentAttachment.Where(d => !d.Deleted && d.Document_FK == id).ToList(); } if (docAttachmentList.Count == 1) { DocumentAttachment att = docAttachmentList.Single(); if (att.StoreInFtp) { FtpService ftpService = new FtpService( Settings.GetInstance.SystemSettings.FtpType , Settings.GetInstance.SystemSettings.FtpHost , Settings.GetInstance.SystemSettings.FtpPort , Settings.GetInstance.SystemSettings.FtpUserName , Settings.GetInstance.SystemSettings.FtpPassword , Settings.GetInstance.SystemSettings.FtpPrivateKey , Settings.GetInstance.SystemSettings.FtpPassPhrase , Settings.GetInstance.SystemSettings.FtpRoot ); byte[] content = ftpService.DownloadDocAttachment(att.Id, att.DocName); return(File(content, att.ContentType, att.DocName)); } else if (att.StoreInDropBox) { DropBoxService dropBox = new DropBoxService(Settings.GetInstance.SystemSettings.DropBoxSecurityToken); Uri dropBoxAttachUri = dropBox.GetUriDocAttachment(att.Id, att.DocName); return(new RedirectResult(dropBoxAttachUri.ToString(), false)); } else { return(File(att.Attachment, att.ContentType, att.DocName)); } } else { using (MemoryStream str = new MemoryStream()) { using (ZipArchive zipFile = new ZipArchive(str, ZipArchiveMode.Update, false)) { foreach (DocumentAttachment att in docAttachmentList) { byte[] content; if (att.StoreInFtp) { FtpService ftpService = new FtpService( Settings.GetInstance.SystemSettings.FtpType , Settings.GetInstance.SystemSettings.FtpHost , Settings.GetInstance.SystemSettings.FtpPort , Settings.GetInstance.SystemSettings.FtpUserName , Settings.GetInstance.SystemSettings.FtpPassword , Settings.GetInstance.SystemSettings.FtpPrivateKey , Settings.GetInstance.SystemSettings.FtpPassPhrase , Settings.GetInstance.SystemSettings.FtpRoot ); content = ftpService.DownloadDocAttachment(att.Id, att.DocName); } else if (att.StoreInDropBox) { DropBoxService dropBox = new DropBoxService(Settings.GetInstance.SystemSettings.DropBoxSecurityToken); content = dropBox.DownloadDocAttachment(att.Id, att.DocName); } else { content = att.Attachment; } if (content != null) { ZipArchiveEntry zipEntry = zipFile.CreateEntry(att.DocName); using (MemoryStream originalFileStream = new MemoryStream(content)) { using (Stream zipEntryStream = zipEntry.Open()) { originalFileStream.CopyTo(zipEntryStream); } } } } } return(File(str.ToArray(), "application/octet-stream", "Download.zip")); } } } } return(NotFound()); } catch (Exception ex) { return(NotFound()); throw; } }
public ActionResult AddEmailAttachment(string userToken) { List <object> list = new List <object>(); UserInfo userInfo = GetUserInfoFromUserToken(userToken); try { if (Request.Form.Files != null && Request.Form.Files.Count > 0) { for (int i = 0; i < Request.Form.Files.Count; i++) { IFormFile file = Request.Form.Files[i]; if (file.Length > 0) { byte[] byteArray = null; using (MemoryStream ms = new MemoryStream()) { file.CopyTo(ms); byteArray = ms.ToArray(); } if (byteArray != null && byteArray.Length > 0) { EmailAttachment item = new EmailAttachment(); item.Deleted = false; item.Created = DateTime.Now; item.CreatedBy_FK = userInfo.UserId; item.Modified = DateTime.Now; item.FileName = file.FileName; item.Data = byteArray; item.DataLength = byteArray.Length; item.Type = file.ContentType; using (VistosDbContext ctx = new VistosDbContext()) { ctx.EmailAttachment.Add(item); ctx.SaveChanges(); list.Add(new { Id = item.Id, FileName = item.FileName, DataLength = item.DataLength, Type = item.ContentType, Deleted = false }); } } } } } return(Json(list.ToArray())); } catch (Exception ex) { Logger.SaveLogError(LogLevel.Error, "Execute", ex, null, userInfo); } return(new ContentResult() { Content = "AttachmentUploadError", ContentType = "text/html" }); }
public ApiResponse Execute() { try { if (this.userInfo == null) { if (request.LoginParam != null) { var repository = new DbRepository(this.auditService); var json = repository.Login(request.LoginParam.UserName, request.LoginParam.Password); if (!String.IsNullOrEmpty(json)) { Settings.GetInstance.VwUserAuthTokenListReset(); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseInvalidLogin("")); } return(responseBuilder.ReturnRepositoryResponseUnauthenticated("")); } else { if (request.GetGridCountParam != null) { if (service.IsAllowedCallQueryBuilder(request.GetGridCountParam.EntityName, OperationAccessRightsEnum.GetPageParam)) { try { var json = service.GetGridCount(request.GetGridCountParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } catch (Exception ex) { Logger.SaveLogError(LogLevel.Error, this.ToString(), ex, request, userInfo); return(responseBuilder.ReturnRepositoryResponseWarning("{}", "ERROR_LOAD_DATAGRID_RECORDS")); } } return(responseBuilder.ReturnRepositoryResponseWarning("{}", "ERROR_LOAD_DATAGRID_RECORDS")); } if (request.GetPageParam != null) { if (service.IsAllowedCallQueryBuilder(request.GetPageParam.EntityName, OperationAccessRightsEnum.GetPageParam)) { try { var json = service.GetPage(request.GetPageParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } catch (Exception ex) { Logger.SaveLogError(LogLevel.Error, this.ToString(), ex, request, userInfo); return(responseBuilder.ReturnRepositoryResponseWarning("{}", "ERROR_LOAD_DATAGRID_RECORDS")); } } return(responseBuilder.ReturnRepositoryResponseUnauthorized()); } if (request.MoveEmailsToFolderParam != null) { var json = service.MoveEmailsToFolder(request.MoveEmailsToFolderParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.GetRsReportList != null) { try { var json = service.GetReports(); //repository.GetReports(); return(responseBuilder.ReturnRepositoryResponseOK(json)); } catch (Exception ex) { Logger.SaveLogError(LogLevel.Error, this.ToString(), ex, request, userInfo); return(responseBuilder.ReturnRepositoryResponseError(ex.Message)); } } if (request.GetGridIdsParam != null) { if (service.IsAllowedCallQueryBuilder(request.GetGridIdsParam.EntityName, OperationAccessRightsEnum.GetGridIdsParam)) { var json = service.GetGridIds(request.GetGridIdsParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.GetByIdParam != null) { if (service.IsAllowedCallQueryBuilder(request.GetByIdParam.EntityName, OperationAccessRightsEnum.GetByIdParam) || request.GetByIdParam.EntityId == 0) { String json = service.GetById(request.GetByIdParam, false); return(responseBuilder.ReturnRepositoryResponseOK(json, "")); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.GetByIdSimpleParam != null) { if (service.IsAllowedCallQueryBuilder(request.GetByIdSimpleParam.EntityName, OperationAccessRightsEnum.GetByIdParam) || request.GetByIdSimpleParam.EntityId == 0) { String json = service.GetById(request.GetByIdSimpleParam, true); return(responseBuilder.ReturnRepositoryResponseOK(json, "")); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.ImportParam != null) { if (request.ImportParam.Data != null) { if (service.IsAllowedCallQueryBuilder(request.ImportParam.ProjectionName, OperationAccessRightsEnum.SaveParam)) { var json = service.Import(request.ImportParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } } if (request.GetAutocompleteParam != null) { if (service.IsAllowedCallQueryBuilder(request.GetAutocompleteParam.EntityName, OperationAccessRightsEnum.GetAutocompleteParam)) { var json = service.GetItemsForAutocomplete(request.GetAutocompleteParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.GetEntityFilteredParam != null) { if (service.IsAllowedCallQueryBuilder(request.GetEntityFilteredParam.EntityName, OperationAccessRightsEnum.GetEntityFilteredParam)) { var json = service.GetByFilter(request.GetEntityFilteredParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.GetEntityListParam != null) { var json = service.GetEntityList(request.GetEntityListParam); if (!String.IsNullOrEmpty(json)) { return(responseBuilder.ReturnRepositoryResponseOK(json)); } else { return(responseBuilder.ReturnRepositoryResponseError("EntityList is empty!")); } } if (request.GetMenu != null) { var json = service.GetMenu(); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.GetMerkInfoRegNumberParam != null) { var json = service.GetMerkInfoRegNumber(request.GetMerkInfoRegNumberParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.GetMerkSuggestParam != null) { var json = service.GetMerkSuggest(request.GetMerkSuggestParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.GetEmailFoldersParam != null) { var json = service.GetEmailFolders(); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.GetSchema != null) { var json = service.GetSchema(); if (String.IsNullOrEmpty(json)) { return(responseBuilder.ReturnRepositoryResponseError("Get schema error")); } return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.GetEnumerationParam != null) { var json = service.GetEnumerationByType(request.GetEnumerationParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.GetCategoriesByProjectionNameParam != null) { var json = service.GetCategoriesByProjectionName(request.GetCategoriesByProjectionNameParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.GdprDeleteDataParam != null) { if (request.GdprDeleteDataParam.Columns != null) { if (service.IsAllowedCallQueryBuilder(request.GdprDeleteDataParam.EntityName, OperationAccessRightsEnum.SaveParam)) { var json = service.GdprDeleteData(request.GdprDeleteDataParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } } if (request.SaveParam != null) { if (request.SaveParam.Data != null) { IList <ValidationError> errList = new List <ValidationError>(); JObject jsonToValidate = (JObject)request.SaveParam.Data.DeepClone(); if (!jsonToValidate.Validate(request.SaveParam.EntityName, this.userInfo, out errList) || (errList != null && errList.Count > 0)) { Logger.SaveLogError(LogLevel.JsonValidationError, errList, new System.ArgumentException("Json Validation Error - Update"), request, userInfo); responseBuilder.ReturnRepositoryResponseInvalidJson(errList); } if (service.IsAllowedCallQueryBuilder(request.SaveParam.EntityName, OperationAccessRightsEnum.SaveParam)) { var json = service.UpdateRecord(request.SaveParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } } if (request.SetEmailIsReadParam != null) { var json = service.SetEmailIsRead(request.SetEmailIsReadParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.SetEmailsIsReadParam != null) { var json = service.SetEmailsIsRead(request.SetEmailsIsReadParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.SetEmailFolderIsReadParam != null) { var json = service.SetEmailFolderIsRead(request.SetEmailFolderIsReadParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.SetEmailIsLinkedWithVistosParam != null) { var json = service.SetEmailIsLinkedWithVistos(request.SetEmailIsLinkedWithVistosParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.SetEmailIsFlaggedParam != null) { var json = service.SetEmailIsFlagged(request.SetEmailIsFlaggedParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.MassActionGridParam != null) { if (!string.IsNullOrEmpty(request.MassActionGridParam.ActionName)) { if (service.IsAllowedCallQueryBuilder(request.MassActionGridParam.EntityName, OperationAccessRightsEnum.MassActionGridParam)) { var json = service.MassAction(request.MassActionGridParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } } if (request.RemoveParam != null) { if (service.IsAllowedCallQueryBuilder(request.RemoveParam.EntityName, OperationAccessRightsEnum.RemoveParam)) { var json = service.Remove(request.RemoveParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.MassRemoveParam != null) { if (service.IsAllowedCallQueryBuilder(request.MassRemoveParam.EntityName, OperationAccessRightsEnum.RemoveParam)) { var json = service.MassRemove(request.MassRemoveParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.CreateParam != null) { if (request.CreateParam.EntityName == "Log") { return(responseBuilder.ReturnRepositoryResponseOK(null, "")); } if (request.CreateParam.Data != null) { IList <ValidationError> errList = new List <ValidationError>(); JObject jsonToValidate = (JObject)request.CreateParam.Data.DeepClone(); if (!jsonToValidate.Validate(request.CreateParam.EntityName, this.userInfo, out errList) || (errList != null && errList.Count > 0)) { Logger.SaveLogError(LogLevel.JsonValidationError, errList, new System.ArgumentException("Json Validation Error - Create"), request, userInfo); responseBuilder.ReturnRepositoryResponseInvalidJson(errList); } if (service.IsAllowedCallQueryBuilder(request.CreateParam.EntityName, OperationAccessRightsEnum.CreateParam)) { var json = service.Add(request.CreateParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } } if (request.SaveLayoutParam != null) { if (request.SaveLayoutParam.Layout != null) { var json = service.SaveLayout(request.SaveLayoutParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } } if (request.GetGridSettingsParam != null) { var json = service.GetGridSettings(request.GetGridSettingsParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.SaveGridSettingsParam != null) { if (this.userInfo.ProfileId == Settings.PROFILE_SYS_ADMIN_ID) { var json = service.SaveGridSettings(request.SaveGridSettingsParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseOK("{}")); } if (request.FullTextSearchParam != null) { var json = service.FullTextSearch(request.FullTextSearchParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.AddSignatureParam != null) { if (!string.IsNullOrWhiteSpace(request.AddSignatureParam.Data)) { byte[] bytes = System.Convert.FromBase64String(request.AddSignatureParam.Data.Replace("data:image/png;base64,", "")); Guid guid = Guid.NewGuid(); using (VistosDbContext ctx = new VistosDbContext()) { Signature signature = new Signature(); signature.Deleted = false; signature.CreatedBy_FK = this.userInfo.UserId; signature.Modified = DateTime.Now; signature.Created = DateTime.Now; signature.Value = string.Empty; signature.UniqueGuid = guid; signature.Bitmap = bytes; ctx.Signature.Add(signature); ctx.SaveChanges(); return(responseBuilder.ReturnRepositoryResponseOK($"\"{guid.ToString()}\"", "")); } } } if (request.GetCalendarDataParam != null) { var json = service.GetCalendarAppointments(request.GetCalendarDataParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.UpdateCalendarDataParam != null) { if (service.IsAllowedCallQueryBuilder(request.UpdateCalendarDataParam.EntityName, OperationAccessRightsEnum.UpdateCalendarDataParam)) { var json = service.UpdateCalendarData(request.UpdateCalendarDataParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.CreateEntityFromParam != null) { if (service.IsAllowedCallQueryBuilder(request.CreateEntityFromParam.EntityNameFrom, OperationAccessRightsEnum.CreateEntityFromParam)) { var json = service.CreateEntityFrom(request.CreateEntityFromParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.GetFiltersParam != null) { var json = service.GetFilterSettings(request.GetFiltersParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.SaveFiltersParam != null) { var json = service.SaveFilterSettings(request.SaveFiltersParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.MassActionUpdateParam != null) { if (request.MassActionUpdateParam.Data.HasValues) { if (service.IsAllowedCallQueryBuilder(request.MassActionUpdateParam.EntityName, OperationAccessRightsEnum.MassActionUpdateParam)) { var json = service.MassUpdate(request.MassActionUpdateParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } return(responseBuilder.ReturnRepositoryResponseOK("{}", "")); } if (request.AddExistingManyToManyParam != null) { var json = service.AddManyToMany(request.AddExistingManyToManyParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.GetSpDataParam != null) { try { var json = service.GetSpData(request.GetSpDataParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } catch (Exception ex) { Logger.SaveLogError(LogLevel.ErrorGetSpData, this.ToString(), ex, request, userInfo); return(responseBuilder.ReturnRepositoryResponseWarning("{}", "ERROR_GET_SP_DATA")); } } if (request.GetProjectionAccessRightsParam != null) { if (this.userInfo.ProfileId == 1) { var json = service.GetProjectionAccessRights(request.GetProjectionAccessRightsParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.SaveAccessRightsParam != null) { try { var json = service.SaveProjectionAccessRights(request.SaveAccessRightsParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } catch (Exception ex) { Logger.SaveLogError(LogLevel.Error, this.ToString(), ex, request, userInfo); return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } } if (request.ResetLayoutParam != null) { // TODO: proc jsou tady dva parametry (ResetLayoutParam,SaveLayoutParam)? var json = service.ResetLayout(request.ResetLayoutParam, request.SaveLayoutParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.GetAccessRightsColumnByProjectionParam != null) { try { var json = service.GetProjectionAccessRightsColumns( request.GetAccessRightsColumnByProjectionParam ); return(responseBuilder.ReturnRepositoryResponseOK(json)); } catch (Exception ex) { Logger.SaveLogError(LogLevel.Error, this.ToString(), ex, request, userInfo); return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } } if (request.GetLocalizationParam != null) { try { var json = service.GetLocalization(request.GetLocalizationParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } catch (Exception ex) { Logger.SaveLogError(LogLevel.Error, this.ToString(), ex, request, userInfo); return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } } if (request.SaveLocalizationParam != null) { try { var json = service.SaveLocalization(request.SaveLocalizationParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } catch (Exception ex) { Logger.SaveLogError(LogLevel.Error, this.ToString(), ex, request, userInfo); return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } } if (request.SaveAccessRightsColumnsParam != null) { var json = service.SaveProjectionAccessRightsColumns(request.SaveAccessRightsColumnsParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.GetDiscussionByEntitParam != null) { var json = service.GetDiscussionByProjection(request.GetDiscussionByEntitParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.SaveDiscussionMessageParam != null) { var json = service.SaveNewDiscussionMessage(request.SaveDiscussionMessageParam, userInfo.UserId); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.EditDiscussionMessageParam != null) { var json = service.EditDiscussionMessage(request.EditDiscussionMessageParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } if (request.RestartAPIParam != null) { if (this.userInfo.ProfileId == Settings.PROFILE_SYS_ADMIN_ID) { Settings.Restart(); return(responseBuilder.ReturnRepositoryResponseOK("", "Restart OK")); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.CleanCacheParam != null) { if (this.userInfo.ProfileId == Settings.PROFILE_SYS_ADMIN_ID) { Settings.Restart(); return(responseBuilder.ReturnRepositoryResponseOK("", "Clean cache OK")); } return(responseBuilder.ReturnRepositoryResponseUnauthorized("")); } if (request.CallCustomMethodParam != null) { var json = service.CallCustomMethod(request.CallCustomMethodParam); return(responseBuilder.ReturnRepositoryResponseOK(json)); } } } catch (Exception ex) { Logger.SaveLogError(LogLevel.Error, this.ToString(), ex, request, userInfo); } return(responseBuilder.ReturnRepositoryResponseError("Api manager Error")); }
public String SaveNewDiscussionByEntity(string text, int recordId, string projectionName, string hierarchyId) { var dbObjectId = Settings.GetInstance.GetVwProjectionList(userInfo.ProfileId).Find(x => x.Projection_Name == projectionName).DbObject_Id; var discussionMessageId = 0; using (SqlConnection conn = new SqlConnection(DbConnectionString)) { conn.Open(); using (SqlTransaction trans = conn.BeginTransaction()) { try { #region 1. Save new discussion message var saveNewDiscussionByEntityCommand = this.GetSaveNewDiscussionByEntityCommand(text, recordId, projectionName, hierarchyId); saveNewDiscussionByEntityCommand.Connection = conn; saveNewDiscussionByEntityCommand.Transaction = trans; object a = saveNewDiscussionByEntityCommand.ExecuteScalar(); discussionMessageId = (int)a; #endregion #region 2. Add information to TrackChanges var trackChanges = new TrackChanges(); trackChanges.Created = DateTime.Now; using (VistosDbContext ctx = new VistosDbContext()) { trackChanges.RecordId = recordId; trackChanges.ReferenceId = (int)discussionMessageId; trackChanges.DbObject_FK = dbObjectId; //**trackChanges.Type_FK = (int)BAL.Services.TrackChanges.TrackChangesType.AddDiscusionMessage; trackChanges.NewValue = text; trackChanges.User_FK = userInfo.UserId; ctx.TrackChanges.Add(trackChanges); ctx.SaveChanges(); } #endregion trans.Commit(); //**var nws = new GenerateNotificationWorkerSettings(this.userInfo, new List<TrackChanges>() { trackChanges }, DbConnectionString); //**Worker.ExecuteGenerateNotification(nws); } catch (Exception ex) { // TODO: log exception Logger.SaveLogError(LogLevel.Error, ex.Message, ex, null, userInfo); trans.Rollback(); } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } } } } return("{}"); }
public DocumentExt SaveNewDocumentWithAttachment(string documentName, byte[] byteArray, string type, UserInfo userInfo) { using (VistosDbContext ctx = new VistosDbContext()) { int enumDocsId = 0; if (!string.IsNullOrEmpty(type)) { int enumDocsTypeId = ctx.EnumerationType.Where(e => !e.Deleted && e.Type == "DocsType").Select(e => e.Id).First(); enumDocsId = ctx.Enumeration.Where(e => e.EnumerationType_FK == enumDocsTypeId && e.Description == type && !e.Deleted).Select(e => e.Id).FirstOrDefault(); } bool storeInDropBox = !string.IsNullOrEmpty(SystemSettings.DropBoxSecurityToken); bool storeInFtp = !string.IsNullOrEmpty(SystemSettings.FtpType); Document doc = new Document(); int lastDot = documentName.LastIndexOf('.'); doc.Deleted = false; doc.CreatedBy_FK = userInfo.UserId; doc.Modified = DateTime.Now; doc.Created = DateTime.Now; doc.Account_FK = userInfo.AccountId; doc.Contact_FK = userInfo.ContactId; if (enumDocsId > 0) { doc.Type_FK = enumDocsId; } doc.Name = lastDot <= 0 ? documentName : documentName.Substring(0, lastDot); ctx.Document.Add(doc); ctx.SaveChanges(); DocumentAttachment da = new DocumentAttachment(); da.Deleted = false; da.CreatedBy_FK = userInfo.UserId; da.Modified = DateTime.Now; da.Created = DateTime.Now; da.StoreInDropBox = storeInDropBox; da.StoreInFtp = storeInFtp; da.DocName = documentName; da.Attachment = !storeInDropBox && !storeInFtp ? byteArray : null; da.DataLength = byteArray?.LongLength ?? 0; da.UploadDate = DateTime.Now; da.Document_FK = doc.Id; da.ContentType = MimeMapping.MimeUtility.GetMimeMapping(documentName); da.Icon = Icon.GetIconByExtension(System.IO.Path.GetExtension(documentName)); DocumentExt docExt = new DocumentExt() { Id = doc.Id, Name = doc.Name, Type_FK = doc.Type_FK, Icon = da.Icon }; ctx.DocumentAttachment.Add(da); ctx.SaveChanges(); if (storeInFtp) { FtpService ftpService = new FtpService( SystemSettings.FtpType , SystemSettings.FtpHost , SystemSettings.FtpPort , SystemSettings.FtpUserName , SystemSettings.FtpPassword , SystemSettings.FtpPrivateKey , SystemSettings.FtpPassPhrase , SystemSettings.FtpRoot ); ftpService.UploadDocAttachment(byteArray, da.Id, da.DocName); } if (storeInDropBox) { DropBoxService dropBox = new DropBoxService(SystemSettings.DropBoxSecurityToken); dropBox.UploadDocAttachment(byteArray, da.Id, da.DocName); } return(docExt); } }