public IHttpActionResult Submit() { try { var request = Context.GetCurrentRequest(); var formInfo = FormManager.GetFormInfoByPost(request); if (formInfo == null) { return(NotFound()); } if (!request.IsAdminLoggin || !request.AdminPermissions.HasSitePermissions(formInfo.SiteId, FormUtils.PluginId)) { return(Unauthorized()); } var logId = request.GetPostInt("logId"); var logInfo = LogDao.GetLogInfo(logId); if (logInfo == null) { return(NotFound()); } logInfo.ReplyContent = request.GetPostString("replyContent"); LogDao.Reply(formInfo, logInfo); return(Ok(new{})); } catch (Exception ex) { return(InternalServerError(ex)); } }
public IHttpActionResult Submit() { try { var request = Context.GetCurrentRequest(); var formInfo = FormManager.GetFormInfoByPost(request); if (formInfo == null) { return(NotFound()); } if (!request.IsAdminLoggin || !request.AdminPermissions.HasSitePermissions(formInfo.SiteId, FormUtils.PluginId)) { return(Unauthorized()); } var logId = request.GetPostInt("logId"); var logInfo = logId > 0 ? LogDao.GetLogInfo(logId) : new LogInfo { FormId = formInfo.Id, AddDate = DateTime.Now }; var fieldInfoList = FieldManager.GetFieldInfoList(formInfo.Id); foreach (var fieldInfo in fieldInfoList) { if (request.IsPostExists(fieldInfo.Title)) { var value = request.GetPostString(fieldInfo.Title); if (fieldInfo.FieldType == InputType.Date.Value || fieldInfo.FieldType == InputType.DateTime.Value) { var dt = FormUtils.ToDateTime(request.GetPostString(fieldInfo.Title)); logInfo.Set(fieldInfo.Title, dt.ToLocalTime()); } else { logInfo.Set(fieldInfo.Title, value); } } } if (logId == 0) { LogDao.Insert(formInfo, logInfo); } else { LogDao.Update(logInfo); } return(Ok(new{})); } catch (Exception ex) { return(InternalServerError(ex)); } }
public IHttpActionResult Delete() { try { var request = Context.GetCurrentRequest(); var formInfo = FormManager.GetFormInfoByPost(request); if (formInfo == null) { return(NotFound()); } if (!request.IsAdminLoggin || !request.AdminPermissions.HasSitePermissions(formInfo.SiteId, FormUtils.PluginId)) { return(Unauthorized()); } var logId = request.GetPostInt("logId"); var logInfo = LogDao.GetLogInfo(logId); if (logInfo == null) { return(NotFound()); } LogDao.Delete(formInfo, logInfo); var pages = Convert.ToInt32(Math.Ceiling((double)formInfo.TotalCount / FormUtils.PageSize)); if (pages == 0) { pages = 1; } var page = request.GetQueryInt("page", 1); if (page > pages) { page = pages; } var logInfoList = LogDao.GetLogInfoList(formInfo, false, page); var logs = new List <Dictionary <string, object> >(); foreach (var info in logInfoList) { logs.Add(info.ToDictionary()); } return(Ok(new { Value = logs, Count = formInfo.TotalCount, Pages = pages, Page = page })); } catch (Exception ex) { return(InternalServerError(ex)); } }
public IHttpActionResult Get() { try { var request = Context.GetCurrentRequest(); var formInfo = FormManager.GetFormInfoByGet(request); if (formInfo == null) { return(NotFound()); } if (!request.IsAdminLoggin || !request.AdminPermissions.HasSitePermissions(formInfo.SiteId, FormUtils.PluginId)) { return(Unauthorized()); } var logId = request.GetQueryInt("logId"); var fieldInfoList = FieldManager.GetFieldInfoList(formInfo.Id); var logInfo = LogDao.GetLogInfo(logId); var attributeNames = FormManager.GetAllAttributeNames(formInfo, fieldInfoList); if (!logInfo.IsReplied) { attributeNames.Remove(nameof(LogInfo.ReplyDate)); } attributeNames.Remove(nameof(LogInfo.ReplyContent)); return(Ok(new { Value = logInfo.ToDictionary(), AttributeNames = attributeNames })); } catch (Exception ex) { return(InternalServerError(ex)); } }
public IHttpActionResult Get() { try { var request = Context.GetCurrentRequest(); var formInfo = FormManager.GetFormInfoByGet(request); if (formInfo == null) { return(NotFound()); } if (!request.IsAdminLoggin || !request.AdminPermissions.HasSitePermissions(formInfo.SiteId, FormUtils.PluginId)) { return(Unauthorized()); } var logId = request.GetQueryInt("logId"); var fieldInfoList = FieldManager.GetFieldInfoList(formInfo.Id); if (logId > 0) { var logInfo = LogDao.GetLogInfo(logId); foreach (var fieldInfo in fieldInfoList) { if (fieldInfo.FieldType == InputType.CheckBox.Value || fieldInfo.FieldType == InputType.SelectMultiple.Value) { fieldInfo.Value = FormUtils.JsonDeserialize <List <string> >(logInfo.GetString(fieldInfo.Title)); } else if (fieldInfo.FieldType == InputType.Date.Value || fieldInfo.FieldType == InputType.DateTime.Value) { fieldInfo.Value = logInfo.GetDateTime(fieldInfo.Title); } else { fieldInfo.Value = logInfo.GetString(fieldInfo.Title); } } } else { foreach (var fieldInfo in fieldInfoList) { if (fieldInfo.FieldType == InputType.CheckBox.Value || fieldInfo.FieldType == InputType.SelectMultiple.Value) { fieldInfo.Value = new List <string>(); } else if (fieldInfo.FieldType == InputType.Date.Value || fieldInfo.FieldType == InputType.DateTime.Value) { fieldInfo.Value = null; } else { fieldInfo.Value = string.Empty; } } } return(Ok(new { Value = fieldInfoList })); } catch (Exception ex) { return(InternalServerError(ex)); } }