/// <summary> /// 更新ContentItem /// </summary> /// <param name="contentItem"></param> public void Update(ContentItem contentItem) { //执行事件 EventBus <ContentItem> .Instance().OnBefore(contentItem, new CommonEventArgs(EventOperationType.Instance().Update())); AuditStatus prevAuditStatus = contentItem.AuditStatus; //设置审核状态 AuditService auditService = new AuditService(); auditService.ChangeAuditStatusForUpdate(contentItem.UserId, contentItem); if (contentItem.AdditionalProperties.Get <bool>("FirstAsTitleImage", false)) { IEnumerable <Attachment> attachments = new AttachmentService(TenantTypeIds.Instance().ContentItem()).GetsByAssociateId(contentItem.ContentItemId); Attachment fristImage = attachments.Where(n => n.MediaType == MediaType.Image).FirstOrDefault(); if (fristImage != null) { contentItem.FeaturedImageAttachmentId = fristImage.AttachmentId; contentItem.FeaturedImage = fristImage.GetRelativePath() + "\\" + fristImage.FileName; } } contentItemRepository.Update(contentItem); //执行事件 EventBus <ContentItem> .Instance().OnAfter(contentItem, new CommonEventArgs(EventOperationType.Instance().Update(), ApplicationIds.Instance().CMS())); EventBus <ContentItem, AuditEventArgs> .Instance().OnAfter(contentItem, new AuditEventArgs(prevAuditStatus, contentItem.AuditStatus)); }
/// <summary> /// 更新审核状态 /// danny-20150318 /// </summary> /// <param name="id"></param> /// <param name="enumStatusType"></param> /// <returns></returns> public bool UpdateAuditStatus(int id, AuditStatus enumStatusType) { bool reslut = false; try { string sql = string.Empty; if (enumStatusType == AuditStatus.Status1) { sql = string.Format(" update clienter set Status={0} where Id=@id ", ClienteStatus.Status1.GetHashCode()); } else if (enumStatusType == AuditStatus.Status0) { sql = string.Format(" update clienter set Status={0} where Id=@id ", ClienteStatus.Status0.GetHashCode()); } IDbParameters dbParameters = DbHelper.CreateDbParameters(); dbParameters.AddWithValue("id", id); int i = DbHelper.ExecuteNonQuery(SuperMan_Write, sql, dbParameters); if (i > 0) { reslut = true; } } catch (Exception ex) { reslut = false; LogHelper.LogWriter(ex, "更新审核状态"); throw; } return(reslut); }
/// <summary> /// 批量更新审核状态 /// </summary> /// <param name="ids">评论Id列表</param> /// <param name="auditingStatus">审核状态</param> public void UpdateAuditStatus(IEnumerable <long> ids, AuditStatus auditStatus) { //声明PetaPoco的SqlBuilder var sql = PetaPoco.Sql.Builder; //组装sql sql.Append("update tn_Categories set AuditStatus =@0", (int)auditStatus) .Where("CategoryId in (@ids)", new { ids = ids }); //执行语句 int effectLineCount = CreateDAO().Execute(sql); #region 处理缓存 if (effectLineCount > 0) { //更新实体缓存 foreach (long id in ids) { T category = Get(id); if (category != null) { category.AuditStatus = auditStatus; } RealTimeCacheHelper.IncreaseEntityCacheVersion(id); } //处理全局缓存 - 后台管理,需要即时显示 RealTimeCacheHelper.IncreaseGlobalVersion(); } #endregion }
/// <summary> /// 批准/不批准群组 /// </summary> /// <param name="groupId">待被更新的群组Id</param> /// <param name="isApproved">是否通过审核</param> public void Approve(long groupId, bool isApproved) { //设计要点 //1、审核状态未变化不用进行任何操作; //2、需要触发的事件参见《设计说明书-群组》; GroupEntity group = groupRepository.Get(groupId); AuditStatus newAuditStatus = isApproved ? AuditStatus.Success : AuditStatus.Fail; if (group.AuditStatus == newAuditStatus) { return; } AuditStatus oldAuditStatus = group.AuditStatus; group.AuditStatus = newAuditStatus; groupRepository.Update(group); string operationType = isApproved ? EventOperationType.Instance().Approved() : EventOperationType.Instance().Disapproved(); EventBus <GroupEntity> .Instance().OnAfter(group, new CommonEventArgs(operationType)); EventBus <GroupEntity, AuditEventArgs> .Instance().OnAfter(group, new AuditEventArgs(oldAuditStatus, newAuditStatus)); }
/// <summary> /// 输出审核图标的方法 /// </summary> /// <param name="htmlHelper"></param> /// <param name="auditStatus">审核状态</param> /// <returns>审核图标</returns> public static MvcHtmlString AuditStatusIcon(this HtmlHelper htmlHelper, AuditStatus auditStatus) { TagBuilder span = new TagBuilder("span"); switch (auditStatus) { case AuditStatus.Again: span.MergeAttribute("class", "tn-icon-colorful tn-icon-colorful-again tn-icon-inline"); span.MergeAttribute("title", "需再次审核"); break; case AuditStatus.Fail: span.MergeAttribute("class", "tn-icon-colorful tn-icon-colorful-stop tn-icon-inline"); span.MergeAttribute("title", "未通过"); break; case AuditStatus.Pending: span.MergeAttribute("class", "tn-icon-colorful tn-icon-colorful-wait tn-icon-inline"); span.MergeAttribute("title", "待审核"); break; default: span.MergeAttribute("class", "tn-icon-colorful tn-icon-colorful-pass tn-icon-inline"); span.MergeAttribute("title", "已通过"); break; } return new MvcHtmlString(" " + span.ToString()); }
/// <summary> /// 发送即时通讯提醒 /// </summary> /// <param name="id">主键</param> /// <param name="auditStatus">审核状态</param> /// <param name="auditIdea">审核意见</param> /// <param name="userId">发送给用户主键</param> /// <param name="roleId">发送给角色主键</param> /// <returns>影响行数</returns> public int SendRemindMessage(string id, AuditStatus auditStatus, string auditIdea, string[] userIds, string[] organizeIds, string[] roleIds) { int returnValue = 0; // 发送请求审核的信息 BaseMessageEntity messageEntity = new BaseMessageEntity(); messageEntity.Id = BaseBusinessLogic.NewGuid(); // 这里是回调的类,用反射要回调的 messageEntity.FunctionCode = this.GetType().ToString(); messageEntity.ObjectId = id; // 这里是网页上的显示地址 // messageEntity.Title = this.GetUrl(id); // messageEntity.Content = BaseBusinessLogic.GetAuditStatus(auditStatus) + ":" + this.GetEntity(id).Title + " 请查收" // + Environment.NewLine // + this.GetUrl(id) // + auditIdea; messageEntity.IsNew = 1; messageEntity.ReadCount = 0; messageEntity.Enabled = 1; messageEntity.DeletionStateCode = 0; BaseMessageManager messageManager = new BaseMessageManager(this.UserInfo); returnValue = messageManager.BatchSend(userIds, organizeIds, roleIds, messageEntity, false); return(returnValue); }
/// <summary> /// 批量更新审核状态 /// </summary> /// <param name="ids">标签Id列表</param> /// <param name="isApproved">是否通过审核</param> public void UpdateAuditStatus(IEnumerable <long> ids, bool isApproved) { List <PetaPoco.Sql> sqls = new List <PetaPoco.Sql>(); foreach (var id in ids) { var sql = PetaPoco.Sql.Builder; sql.Append("UPDATE tn_Tags SET AuditStatus = @0", isApproved ? (int)AuditStatus.Success : (int)AuditStatus.Fail) .Where("TagId = @0", id); sqls.Add(sql); } int affectCount = CreateDAO().Execute(sqls); //更新缓存版本号 if (affectCount > 0) { AuditStatus status = isApproved ? AuditStatus.Success : AuditStatus.Fail; foreach (var id in ids) { var tag = Get(id); if (tag != null) { tag.AuditStatus = status; RealTimeCacheHelper.IncreaseEntityCacheVersion(id); } } RealTimeCacheHelper.IncreaseGlobalVersion(); } }
/// <summary> /// 更新日志 /// </summary> /// <param name="blogThread">日志实体</param> /// <param name="changeAuditStatusForUpdate">是否改变审核状态</param> public void Update(BlogThread blogThread, bool changeAuditStatusForUpdate = true, string privacyStatus1 = null, string privacyStatus2 = null) { //done:mazq,by zhengw:更新时,审核状态也不需要更新吧 //设计要点 //1、需要触发的事件参见《设计说明书-日志》; //2、Repository更新时不处理:IsEssential; EventBus <BlogThread> .Instance().OnBefore(blogThread, new CommonEventArgs(EventOperationType.Instance().Update())); AuditStatus prevAuditStatus = blogThread.AuditStatus; //设置审核状态 if (changeAuditStatusForUpdate) { AuditService auditService = new AuditService(); auditService.ChangeAuditStatusForUpdate(blogThread.UserId, blogThread); } blogThreadRepository.Update(blogThread); //设置隐私状态 UpdatePrivacySettings(blogThread, privacyStatus1, privacyStatus2); EventBus <BlogThread> .Instance().OnAfter(blogThread, new CommonEventArgs(EventOperationType.Instance().Update())); EventBus <BlogThread, AuditEventArgs> .Instance().OnAfter(blogThread, new AuditEventArgs(prevAuditStatus, blogThread.AuditStatus)); }
/// <summary> /// 批准/不批准日志 /// </summary> /// <param name="threadId">待被更新的主题帖Id</param> /// <param name="isApproved">是否通过审核</param> public void Approve(long threadId, bool isApproved) { //设计要点 //1、审核状态未变化不用进行任何操作; //2、需要触发的事件参见《设计说明书-日志》; BlogThread blogThread = blogThreadRepository.Get(threadId); AuditStatus newAuditStatus = isApproved ? AuditStatus.Success : AuditStatus.Fail; if (blogThread.AuditStatus == newAuditStatus) { return; } AuditStatus oldAuditStatus = blogThread.AuditStatus; blogThread.AuditStatus = newAuditStatus; this.Update(blogThread, false); string operationType = isApproved ? EventOperationType.Instance().Approved() : EventOperationType.Instance().Disapproved(); EventBus <BlogThread> .Instance().OnAfter(blogThread, new CommonEventArgs(operationType)); EventBus <BlogThread, AuditEventArgs> .Instance().OnAfter(blogThread, new AuditEventArgs(oldAuditStatus, newAuditStatus)); }
public string GetImage(AuditStatus oStatus) { string strImage = "/images/bigHelp.gif"; switch (oStatus) { case AuditStatus.Error: strImage = "/images/bigError.gif"; break; case AuditStatus.Ignore: strImage = "/images/bigCheck.gif"; break; case AuditStatus.Running: strImage = "/images/bigArrowRight.gif"; break; case AuditStatus.Success: strImage = "/images/bigCheck.gif"; break; case AuditStatus.TimedOut: strImage = "/images/clock.gif"; break; case AuditStatus.Warning: strImage = "/images/bigAlert.gif"; break; } return(strImage); }
/// <summary> /// 输出审核图标的方法 /// </summary> /// <param name="htmlHelper"></param> /// <param name="auditStatus">审核状态</param> /// <returns>审核图标</returns> public static MvcHtmlString AuditStatusIcon(this HtmlHelper htmlHelper, AuditStatus auditStatus) { TagBuilder span = new TagBuilder("span"); switch (auditStatus) { case AuditStatus.Again: span.MergeAttribute("class", "tn-icon-colorful tn-icon-colorful-again tn-icon-inline"); span.MergeAttribute("title", "需再次审核"); break; case AuditStatus.Fail: span.MergeAttribute("class", "tn-icon-colorful tn-icon-colorful-stop tn-icon-inline"); span.MergeAttribute("title", "未通过"); break; case AuditStatus.Pending: span.MergeAttribute("class", "tn-icon-colorful tn-icon-colorful-wait tn-icon-inline"); span.MergeAttribute("title", "待审核"); break; default: span.MergeAttribute("class", "tn-icon-colorful tn-icon-colorful-pass tn-icon-inline"); span.MergeAttribute("title", "已通过"); break; } return(new MvcHtmlString(" " + span.ToString())); }
/// <summary> /// 编辑问题 /// </summary> /// <remarks> /// 1.使用AuditService.ChangeAuditStatusForUpdate设置审核状态; /// 2.Repository更新时不处理:IsEssential /// 3.需要触发的事件:Update的OnBefore、OnAfter; /// </remarks> /// <param name="question">问题实体</param> /// <param name="changeAuditStatusForUpdate">是否更新审核状态</param> public void UpdateQuestion(AskQuestion question, bool changeAuditStatusForUpdate = true) { AskQuestion question_beforeUpDate = GetQuestion(question.QuestionId); if (question.Reward != question_beforeUpDate.Reward && question.Reward < (question.User.TradePoints + question_beforeUpDate.Reward)) { question.AddedReward = question.Reward - question_beforeUpDate.Reward; } else { question.AddedReward = 0; } EventBus <AskQuestion> .Instance().OnBefore(question, new CommonEventArgs(EventOperationType.Instance().Update())); AuditStatus prevAuditStatus = question.AuditStatus; //设置审核状态 if (changeAuditStatusForUpdate) { new AuditService().ChangeAuditStatusForUpdate(question.UserId, question); } askQuestionRepository.Update(question); AtUserService atUserService = new AtUserService(TenantTypeIds.Instance().AskQuestion()); atUserService.ResolveBodyForEdit(question.Body, question.UserId, question.QuestionId); EventBus <AskQuestion> .Instance().OnAfter(question, new CommonEventArgs(EventOperationType.Instance().Update())); EventBus <AskQuestion, AuditEventArgs> .Instance().OnAfter(question, new AuditEventArgs(prevAuditStatus, question.AuditStatus)); }
private void DoSaveArchiveWorkflow(AuditStatus status, ArchiveWorkflow flow) { archiveFlowSaved = true; BusyIndicator1.IsBusy = true; BusyIndicator1.BusyContent = "正在保存流程..."; flow.SubmitUserId = AuthenticateStatus.CurrentUser.UserId; flow.Status = status; flowContext.SaveWorkflow(flow, obj => { BusyIndicator1.IsBusy = false; if (Utility.Utility.CheckInvokeOperation(obj)) { if (obj.Value == null) { CustomMessageBox.Show("流程保存失败,请您检查输入是否正确!"); } else { ArchiveFlow = obj.Value; if (ArchiveFlow.Status == AuditStatus.Draft) { LayoutRoot.DataContext = ArchiveFlow; } else if (ArchiveFlow.Status == AuditStatus.Auditing) { CustomMessageBox.Alert("流程提交成功!"); OnBackToBrowseButtonClick(this, null); } } } }, null); }
/// <summary> /// 编辑回答 /// </summary> /// <remarks> /// 1.使用AuditService.ChangeAuditStatusForUpdate设置审核状态; /// 2.需要触发的事件:Update的OnBefore、OnAfter; /// </remarks> /// <param name="answer">回答实体</param> /// <param name="changeAuditStatusForUpdate">是否更新审核状态</param> public void UpdateAnswer(AskAnswer answer, bool changeAuditStatusForUpdate = true) { EventBus <AskAnswer> .Instance().OnBefore(answer, new CommonEventArgs(EventOperationType.Instance().Update())); AuditStatus prevAuditStatus = answer.AuditStatus; //设置审核状态 if (changeAuditStatusForUpdate) { new AuditService().ChangeAuditStatusForUpdate(answer.UserId, answer); } askAnswerRepository.Update(answer); //更新相关问题的内容 AskQuestion question = askQuestionRepository.Get(answer.QuestionId); question.LastAnswerUserId = answer.UserId; question.LastAnswerAuthor = answer.Author; question.LastAnswerDate = answer.DateCreated; if (answer.IsBest) { question.Status = QuestionStatus.Resolved; } //将临时附件转换为正式附件 AttachmentService attachmentService = new AttachmentService(TenantTypeIds.Instance().AskAnswer()); attachmentService.ToggleTemporaryAttachments(answer.UserId, TenantTypeIds.Instance().AskAnswer(), answer.AnswerId); this.UpdateQuestion(question, false); //调用Service中的Update方法,以触发相应的事件,但是不更新审核状态 EventBus <AskAnswer> .Instance().OnAfter(answer, new CommonEventArgs(EventOperationType.Instance().Update())); EventBus <AskAnswer, AuditEventArgs> .Instance().OnAfter(answer, new AuditEventArgs(prevAuditStatus, answer.AuditStatus)); }
/// <summary> /// 批量更新审核状态 /// </summary> /// <param name="postIds">待被更新的回复贴Id集合</param> /// <param name="isApproved">是否通过审核</param> public void BatchUpdateAuditStatus(IEnumerable <long> postIds, bool isApproved) { IEnumerable <BarPost> posts = GetBarPosts(postIds); AuditStatus auditStatus = isApproved ? AuditStatus.Success : AuditStatus.Fail; string operationType = isApproved ? EventOperationType.Instance().Approved() : EventOperationType.Instance().Disapproved(); foreach (var post in posts) { if (post.AuditStatus == auditStatus) { continue; } AuditStatus oldAuditStatus = post.AuditStatus; post.AuditStatus = auditStatus; barPostRepository.Update(post); EventBus <BarPost> .Instance().OnAfter(post, new CommonEventArgs(operationType)); EventBus <BarPost, AuditEventArgs> .Instance().OnAfter(post, new AuditEventArgs(oldAuditStatus, post.AuditStatus)); } //更新主题帖最新回复的缓存 }
public static string WithDisplayName(this AuditStatus status, string errorMsg) { switch (status) { case AuditStatus.NotFond: return("未创建"); case AuditStatus.UnCommitted: return("未提交审核"); case AuditStatus.CHECKING: return("审核中"); case AuditStatus.EXPIRED: return("协议过期"); case AuditStatus.REJECTED: return(string.Format("<i class=\"fa fa-info-circle red\" title=\"{1}\">{0} </i>", "已拒绝", errorMsg.Replace("*****@*****.**", "*****@*****.**") .Replace("</br>", string.Empty))); case AuditStatus.APPROVED: return("审核通过"); } return("未定义的状态"); }
//用户审计工作流使能 public bool CanUserAuditWorkflow(int flowId, AuditStatus status, int userId) { if (status != AuditStatus.Auditing) { return(false); } return(GetAuditFlowByUser(userId, status).Any(o => o.FlowId == flowId)); }
/// <summary> /// Move state to review. /// </summary> /// <remarks> /// Can move to this state from: /// <list type="bullet"> /// <item>Pending</item> /// </list> /// </remarks> public void TransitionToReview() { if (AuditStatus != AuditStatus.Pending) { throw new StateTransitionException(AuditStatus, AuditStatus.PendingReview); } AuditStatus = AuditStatus.PendingReview; }
public static bool IsAuditOffline(AuditStatus status) { if (status == AuditStatus.Offline || status == AuditStatus.OnlineAuditing || status == AuditStatus.OnlineAuditRejected) { return(true); } return(false); }
public ArticleAuditLog(Guid id, Guid?tenantId, Guid articleId, AuditStatus status, string remark) : base(id) { TenantId = tenantId; ArticleId = articleId; Status = status; Remark = remark; }
/// <summary> /// Move state to todo. /// </summary> /// <remarks> /// Can move to this state from: /// <list type="bullet"> /// <item>Pending</item> /// </list> /// </remarks> public void TransitionToTodo() { if (AuditStatus != AuditStatus.Pending) { throw new StateTransitionException(AuditStatus, AuditStatus.Todo); } AuditStatus = AuditStatus.Todo; }
/// <summary> /// Move state to done. /// </summary> /// <remarks> /// Can move to this state from: /// <list type="bullet"> /// <item>PendingReview</item> /// </list> /// </remarks> public void TransitionToDone() { if (AuditStatus != AuditStatus.PendingReview) { throw new StateTransitionException(AuditStatus, AuditStatus.Done); } AuditStatus = AuditStatus.Done; }
/// <summary> /// 更新审核状态 /// danny-20150318 /// </summary> /// <param name="id"></param> /// <param name="price"></param> /// <returns></returns> public bool UpdateAuditStatus(int id, AuditStatus enumStatusType) { ETS.NoSql.RedisCache.RedisCache redis = new ETS.NoSql.RedisCache.RedisCache(); string cacheKey = string.Format(RedissCacheKey.ClienterProvider_GetUserStatus, id); redis.Delete(cacheKey); return(dao.UpdateAuditStatus(id, enumStatusType)); }
/// <summary> /// Move state to rejected. /// </summary> /// <remarks> /// Can move to this state from: /// <list type="bullet"> /// <item>PendingReview</item> /// </list> /// </remarks> public void TransitionToRejected() { if (AuditStatus != AuditStatus.PendingReview) { throw new StateTransitionException(AuditStatus, AuditStatus.Rejected); } AuditStatus = AuditStatus.Rejected; }
/// <summary> /// 审核评论 /// </summary> /// <param name="status"></param> /// <param name="auditRmark"></param> public void Audit(AuditStatus status, string auditRmark = "") { Status = status; if (!string.IsNullOrEmpty(auditRmark)) { AuditRemark = auditRmark; } }
private AuditMessage GenerateMessage(string id, string message, AuditStatus status) { return(new AuditMessage { Status = status, Message = message, Url = $"https://byui.instructure.com/api/v1/courses/{id}/modules" }); }
/// <summary> /// 资讯后台管理 /// </summary> /// <param name="siteUrls"></param> /// <param name="auditStatus">审核状态</param> public static string CmsControlPanelManage(this SiteUrls siteUrls, AuditStatus? auditStatus = null) { RouteValueDictionary dic = new RouteValueDictionary(); if (auditStatus.HasValue) { dic.Add("auditStatus", auditStatus); } return CachedUrlHelper.Action("ManageContentItems", "ControlPanelCms", CmsAreaName, dic); }
public void UpdateServer(int _id, AuditStatus _status, string _completed) { // Called when a script has finished processing (during audit phase of provisioning) // Completed is "" unless it finished successfully arParams = new SqlParameter[3]; arParams[0] = new SqlParameter("@id", _id); arParams[1] = new SqlParameter("@status", _status); arParams[2] = new SqlParameter("@completed", (_completed == "" ? SqlDateTime.Null : DateTime.Parse(_completed))); SqlHelper.ExecuteNonQuery(dsn, CommandType.StoredProcedure, "pr_updateServerAudit", arParams); }
/// <summary> /// Saves the specified audit message. /// </summary> /// <param name="id">Type of audit being logged.</param> /// <param name="status">Indicates if the audit was a success or failure.</param> /// <param name="elapsedTime">Amount of time in milliseconds to complete the operation.</param> /// <param name="message">Message associated with the audit.</param> public void Audit(AuditId id, AuditStatus status, long elapsedTime, string message) { try { this.dalc.WriteMessage(this.RegionCode, id, status, message, this.UserId, this.TransactionId, elapsedTime); } catch (Exception e) { this.Logger.Log(TraceEventType.Error, LoggingMessageId.DALCGenericMessage, e.ToString()); } }
public string GetErrorBody(int _requestid, int _serviceid, int _number) { DataSet ds = GetError(_requestid, _serviceid, _number); Users oUser = new Users(0, dsn); Requests oRequest = new Requests(0, dsn); Servers oServer = new Servers(0, dsn); StringBuilder sbDetails = new StringBuilder(); if (ds.Tables[0].Rows.Count > 0) { DataRow dr = ds.Tables[0].Rows[0]; int intUser = oRequest.GetUser(_requestid); int intAudit = Int32.Parse(ds.Tables[0].Rows[0]["auditid"].ToString()); DataSet dsAudit = GetServer(intAudit); if (dsAudit.Tables[0].Rows.Count > 0) { int intServer = Int32.Parse(dsAudit.Tables[0].Rows[0]["serverid"].ToString()); sbDetails.Append("<tr><td colspan=\"5\"><b>SERVER: " + oServer.GetName(intServer, true) + "</b></td></tr>"); sbDetails.Append("<tr><td colspan=\"5\"><b>SCRIPT: " + dsAudit.Tables[0].Rows[0]["name"].ToString() + "</b></td></tr>"); sbDetails.Append("<tr>"); sbDetails.Append("<td> </td>"); sbDetails.Append("<td><b>Status</b></td>"); sbDetails.Append("<td><b>Code</b></td>"); sbDetails.Append("<td><b>Result</b></td>"); sbDetails.Append("<td><b>Date</b></td>"); sbDetails.Append("</tr>"); try { DataSet dsAuditResult = GetServerDetailsRemote(intAudit); foreach (DataRow drAuditResult in dsAuditResult.Tables[0].Rows) { sbDetails.Append("<tr>"); sbDetails.Append("<td></td>"); try { int intAuditStatus = Int32.Parse(drAuditResult["status"].ToString()); AuditStatus oAuditStatus = (AuditStatus)intAuditStatus; sbDetails.Append("<td valign=\"top\" nowrap>" + oAuditStatus.ToString() + "</td>"); } catch { sbDetails.Append("<td valign=\"top\" nowrap>Unknown Status (" + drAuditResult["status"].ToString() + ")</td>"); } sbDetails.Append("<td valign=\"top\" nowrap>" + drAuditResult["code"].ToString() + "</td>"); sbDetails.Append("<td valign=\"top\" width=\"100%\">" + drAuditResult["result"].ToString() + "</td>"); sbDetails.Append("<td valign=\"top\" nowrap>" + drAuditResult["created"].ToString() + "</td>"); sbDetails.Append("</tr>"); } } catch { } } } return(sbDetails.ToString()); }
/// <summary> /// 设置用户审核状态 /// </summary> /// <param name="userInfo">用户</param> /// <param name="ids">主键数组</param> /// <param name="auditStates">审核状态</param> /// <returns>影响行数</returns> public int SetUserAuditStates(BaseUserInfo userInfo, string[] ids, AuditStatus auditStates) { // 写入调试信息 #if (DEBUG) int milliStart = BaseBusinessLogic.StartDebug(userInfo, MethodBase.GetCurrentMethod()); #endif // 加强安全验证防止未授权匿名调用 #if (!DEBUG) LogOnService.UserIsLogOn(userInfo); #endif int returnValue = 0; using (IDbHelper dbHelper = DbHelperFactory.GetHelper(BaseSystemInfo.UserCenterDbType)) { try { dbHelper.Open(UserCenterDbConnection); BaseUserManager userManager = new BaseUserManager(dbHelper, userInfo); returnValue = userManager.SetProperty(ids, new KeyValuePair <string, object>(BaseUserEntity.FieldAuditStatus, auditStates.ToString())); // 被审核通过 if (auditStates == AuditStatus.AuditPass) { returnValue = userManager.SetProperty(ids, new KeyValuePair <string, object>(BaseUserEntity.FieldEnabled, 1)); // returnValue = userManager.SetProperty(ids, BaseUserEntity.FieldAuditStatus, StatusCode.UserIsActivate.ToString()); } // 被退回 if (auditStates == AuditStatus.AuditReject) { returnValue = userManager.SetProperty(ids, new KeyValuePair <string, object>(BaseUserEntity.FieldEnabled, 0)); returnValue = userManager.SetProperty(ids, new KeyValuePair <string, object>(BaseUserEntity.FieldAuditStatus, StatusCode.UserLocked.ToString())); } BaseLogManager.Instance.Add(dbHelper, userInfo, this.serviceName, AppMessage.UserService_SetUserAuditStates, MethodBase.GetCurrentMethod()); } catch (Exception ex) { BaseExceptionManager.LogException(dbHelper, userInfo, ex); throw ex; } finally { dbHelper.Close(); } } // 写入调试信息 #if (DEBUG) BaseBusinessLogic.EndDebug(MethodBase.GetCurrentMethod(), milliStart); #endif return(returnValue); }
/// <summary> /// 资讯前台管理 /// </summary> /// <param name="siteUrls"></param> /// <param name="auditStatus">审核状态</param> /// <param name="folderId"></param> public static string ChannelManageContentItems(this SiteUrls siteUrls, AuditStatus? auditStatus = null, int? folderId = null) { RouteValueDictionary dic = new RouteValueDictionary(); if (auditStatus.HasValue) { dic.Add("auditStatus", auditStatus); } if (folderId.HasValue && folderId.Value > 0) { dic.Add("folderId", folderId); } return CachedUrlHelper.Action("ManageContentItems", "ChannelCms", CmsAreaName, dic); }
private void SaveArchiveWorkflowInfo(AuditStatus status) { var flow = LayoutRoot.DataContext as ArchiveWorkflow; if (status == AuditStatus.Submitted && flow != null && ArchiveFlow.Files != null) { foreach (var file in ArchiveFlow.Files) { file.DocumentInfo.Status = DocumentStatus.Pending; } } UploadFileAndSaveFlow(status, flow); }
/// <summary> /// 文章管理 /// </summary> /// <param name="auditStatus">审批状态</param> /// <param name="categoryId">文章类别id</param> /// <param name="subjectKeywords">标题关键字</param> /// <param name="isEssential">是否加精</param> /// <param name="userId">作者id</param> /// <param name="pageSize">分页大小</param> /// <param name="pageIndex">页码</param> public ActionResult ManageBlogs(AuditStatus? auditStatus = null, long? categoryId = null, string subjectKeywords = null, bool? isEssential = null, string userId = null, string tenantTypeId = null, int pageSize = 20, int pageIndex = 1) { long? blogUserId = null; if (!string.IsNullOrEmpty(userId)) { userId = userId.Trim(','); if (!string.IsNullOrEmpty(userId)) { blogUserId = long.Parse(userId); } } //获取类别 IEnumerable<Category> categorys = categoryService.GetOwnerCategories(0, TenantTypeIds.Instance().BlogThread()); SelectList categoryList = new SelectList(categorys.Select(n => new { text = n.CategoryName, value = n.CategoryId }), "value", "text", categoryId); ViewData["categoryList"] = categoryList; //组装是否加精 List<SelectListItem> selectListIsEssential = new List<SelectListItem> { new SelectListItem { Text = "是", Value = true.ToString() }, new SelectListItem { Text = "否", Value = false.ToString() } }; ViewData["isEssential"] = new SelectList(selectListIsEssential, "Value", "Text", isEssential); ViewData["userId"] = blogUserId; //获取租户类型 IEnumerable<TenantType> tenantTypes = tenantTypeService.Gets(ApplicationKeys.Instance().Blog()); SelectList tenants = null; tenants = new SelectList(tenantTypes.Select(n => new { text = n.Name, value = n.TenantTypeId }), "value", "text", tenantTypeId); ViewData["tenants"] = tenants; ViewData["tenantscount"] = tenantTypes.Count(); PagingDataSet<BlogThread> blogs = blogService.GetsForAdmin(null, auditStatus, categoryId, isEssential, blogUserId, subjectKeywords, pageSize, pageIndex); pageResourceManager.InsertTitlePart("文章管理"); return View(blogs); }
/// <summary> /// 发送即时通讯提醒 /// </summary> /// <param name="id">主键</param> /// <param name="auditStatus">审核状态</param> /// <param name="auditIdea">审核意见</param> /// <param name="userId">发送给用户主键</param> /// <param name="roleId">发送给角色主键</param> /// <returns>影响行数</returns> public int SendRemindMessage(string id, AuditStatus auditStatus, string auditIdea, string[] userIds, string[] organizeIds, string[] roleIds) { int returnValue = 0; // 发送请求审核的信息 BaseMessageEntity messageEntity = new BaseMessageEntity(); messageEntity.Id = BaseBusinessLogic.NewGuid(); // 这里是回调的类,用反射要回调的 messageEntity.FunctionCode = this.GetType().ToString(); messageEntity.ObjectId = id; // 这里是网页上的显示地址 // messageEntity.Title = this.GetUrl(id); // messageEntity.Content = BaseBusinessLogic.GetAuditStatus(auditStatus) + ":" + this.GetEntity(id).Title + " 请查收" // + Environment.NewLine // + this.GetUrl(id) // + auditIdea; messageEntity.IsNew = 1; messageEntity.ReadCount = 0; messageEntity.Enabled = 1; messageEntity.DeletionStateCode = 0; BaseMessageManager messageManager = new BaseMessageManager(this.UserInfo); returnValue = messageManager.BatchSend(userIds, organizeIds, roleIds, messageEntity, false); return returnValue; }
/// <summary> /// 更新评论的审核状态 /// </summary> public string _UpdateCommentAuditStatus(AuditStatus auditStatus) { return CachedUrlHelper.Action("_UpdateCommentAuditStatus", "ControlPanelContent", CommonAreaName, new RouteValueDictionary() { { "auditStatus", auditStatus } }); }
/// <summary> /// 分页获取群组后台管理列表 /// </summary> /// <param name="auditStatus">审核状态</param> /// <param name="categoryId">类别Id</param> /// <param name="keywords">名称关键字</param> /// <param name="ownerUserId">群主</param> /// <param name="minDateTime">创建时间下限值</param> /// <param name="maxDateTime">创建时间上限值</param> /// <param name="minMemberCount">成员数量下限值</param> /// <param name="maxMemberCount">成员数量上限值</param> /// <param name="pageSize">每页记录数</param> /// <param name="pageIndex">页码</param> /// <returns></returns> public PagingDataSet<GroupEntity> GetsForAdmin(AuditStatus? auditStatus, long? categoryId, string keywords, long? ownerUserId, DateTime? minDateTime, DateTime? maxDateTime, int? minMemberCount, int? maxMemberCount, int pageSize = 20, int pageIndex = 1) { //设计要点 //1、查询categoryId时需要包含后代类别; //2、不用缓存 return groupRepository.GetsForAdmin(auditStatus, categoryId, keywords, ownerUserId, minDateTime, maxDateTime, minMemberCount, maxMemberCount, pageSize, pageIndex); }
/// <summary> /// 管理用户分类 /// </summary> /// <returns></returns> public string ManageUserCategories(string keyword, string tenantTypeId, AuditStatus? auditStatus = null, long ownerId = 0, int pageIndex = 1) { return CachedUrlHelper.Action("ManageUserCategories", "ControlPanelContent", CommonAreaName, new RouteValueDictionary() { { "keyword", keyword }, { "tenantTypeId", tenantTypeId }, { "auditStatus", auditStatus }, { "pageIndex", pageIndex }, { "ownerId", ownerId } }); }
public ActionResult ManageComments(AuditStatus? auditStatus = null, string tenantTypeId = null, string userId = null, DateTime? startDate = null, DateTime? endDate = null, int pageSize = 20, int pageIndex = 1) { pageResourceManager.InsertTitlePart("评论管理"); long? userId2 = null; if (!string.IsNullOrEmpty(userId)) { userId = userId.Trim(','); if (!string.IsNullOrEmpty(userId)) { userId2 = long.Parse(userId); } } if (endDate.HasValue) { endDate = endDate.Value.AddDays(1); } ViewData["tenants"] = GetTenantSelectList(MultiTenantServiceKeys.Instance().Comment(), tenantTypeId); ViewData["userId"] = userId2; PagingDataSet<Comment> comments = commentService.GetComments((PubliclyAuditStatus?)auditStatus, tenantTypeId, userId2, startDate, endDate, pageSize, pageIndex); return View(comments); }
public ActionResult ManageMicroblogs(int pageIndex = 1, string userId = null, string keyword = null, MediaType? mediaType = null, AuditStatus? auditStatus = null, DateTime? startdate = null, DateTime? enddate = null, int pageSize = 20, string tenantTypeId = null, long? ownerId = null) { pageResourceManager.InsertTitlePart("微博管理"); #region 组装搜索条件 MicroblogQuery query = new MicroblogQuery(); long? id = null; if (!string.IsNullOrEmpty(userId)) { userId = userId.TrimStart(',').TrimEnd(','); if (!string.IsNullOrEmpty(userId)) { id = long.Parse(userId); } } query.OwnerId = ownerId; query.Keyword = keyword; query.UserId = id; query.MediaType = mediaType; query.AuditStatus = auditStatus; query.TenantTypeId = tenantTypeId; if (startdate != DateTime.MinValue) query.StartDate = startdate; if (enddate != DateTime.MinValue && enddate.HasValue) query.EndDate = enddate.Value.AddDays(1); #endregion ViewData["userId"] = id; PagingDataSet<MicroblogEntity> microblogs = microblogService.GetMicroblogs(query, pageSize, pageIndex); if (tenantTypeId == null) { tenantTypeId = TenantTypeIds.Instance().User(); } ViewData["tenantTypeId"] = tenantTypeId; return View(microblogs); }
/// <summary> /// 构造函数 /// </summary> /// <param name="oldAuditStatus">变化前的审核状态</param> /// <param name="newAuditStatus">变化后的审核状态</param> public AuditEventArgs(AuditStatus? oldAuditStatus, AuditStatus? newAuditStatus) : base(string.Empty) { this.oldAuditStatus = oldAuditStatus; this.newAuditStatus = newAuditStatus; }
public JsonResult UpdateAuditStatus(string categoryIds, AuditStatus auditStatus) { if (!string.IsNullOrEmpty(categoryIds)) { IEnumerable<long> updatecategoryIds = categoryIds.TrimEnd(',').Split(',').Select(t => Convert.ToInt64(t)); categoryService.UpdateAuditStatus(updatecategoryIds, auditStatus); return Json(new StatusMessageData(StatusMessageType.Success, "更新审核状态成功!"), JsonRequestBehavior.AllowGet); } else { return Json(new StatusMessageData(StatusMessageType.Error, "请选择要更新的项!"), JsonRequestBehavior.AllowGet); } }
public ActionResult ManageUserCategories(string keyword, string tenantTypeId, AuditStatus? auditStatus = null, string ownerId = null, int pageIndex = 1, int pageSize = 20) { pageResourceManager.InsertTitlePart("用户类别管理"); //所属下拉框 SelectList tenants = GetTenantSelectList(MultiTenantServiceKeys.Instance().UserCategory(), tenantTypeId); ViewData["tenants"] = tenants; long userId = 0; if (!string.IsNullOrEmpty(ownerId)) { ownerId = ownerId.Trim(','); if (!string.IsNullOrEmpty(ownerId)) { userId = long.Parse(ownerId); } } PubliclyAuditStatus? publiclyAuditStatus = null; if (auditStatus != null) { publiclyAuditStatus = (PubliclyAuditStatus?)auditStatus; } CategoryService categoryService = new CategoryService(); PagingDataSet<Category> categorys = categoryService.GetOwnerCategories(publiclyAuditStatus, tenantTypeId, keyword, userId, pageSize, pageIndex); ViewData["userId"] = userId; return View(categorys); }
public ActionResult ManageTags(string keyword, string tenantTypeId, bool? isFeatured, AuditStatus? auditStatus = null, int pageIndex = 1, int pageSize = 20) { pageResourceManager.InsertTitlePart("标签管理"); TagService tagService = new TagService(tenantTypeId); PubliclyAuditStatus? publiclyAuditStatus = null; if (auditStatus != null) { publiclyAuditStatus = (PubliclyAuditStatus?)auditStatus; } TagQuery tagQuery = new TagQuery(); tagQuery.PubliclyAuditStatus = publiclyAuditStatus; tagQuery.Keyword = keyword; tagQuery.TenantTypeId = tenantTypeId; if (isFeatured.HasValue) { tagQuery.IsFeatured = isFeatured.Value; } PagingDataSet<Tag> tags = tagService.GetTags(tagQuery, pageIndex, pageSize); AuthorizationService authorizationService = new AuthorizationService(); //所属下拉框 List<TenantType> tenantTypesList = tenantTypeService.Gets(MultiTenantServiceKeys.Instance().Tag()).ToList<TenantType>(); List<TenantType> newTenantTypesList = new List<TenantType>(); if (UserContext.CurrentUser.IsInRoles(RoleNames.Instance().SuperAdministrator(), RoleNames.Instance().ContentAdministrator())) { newTenantTypesList.Insert(0, new TenantType { ApplicationId = 0, Name = "不限", TenantTypeId = "" }); newTenantTypesList.AddRange(tenantTypesList); } else { foreach (var item in tenantTypesList) { if (new AuthorizationService().IsApplicationManager(UserContext.CurrentUser, item.ApplicationId)) { newTenantTypesList.Add(item); } } } SelectList tenants = new SelectList(newTenantTypesList.Select(n => new { text = n.Name, value = n.TenantTypeId }), "value", "text", tenantTypeId); ViewData["tenants"] = tenants; //所属名称 Dictionary<string, string> tenantsDictionary = tenantTypesList.ToDictionary(n => n.TenantTypeId, n => n.Name); ViewData["tenantsDictionary"] = tenantsDictionary; return View(tags); }
/// <summary> /// 发送即时通讯提醒 /// </summary> /// <param name="workFlowCurrentEntity">当前审核流实体信息</param> /// <param name="auditStatus">审核状态</param> /// <param name="auditIdea">审核意见</param> /// <param name="userIds">发送给用户主键</param> /// <param name="roleIds">发送给角色主键</param> /// <returns>影响行数</returns> public virtual int SendRemindMessage(BaseWorkFlowCurrentEntity workFlowCurrentEntity, AuditStatus auditStatus, string[] userIds, string organizeId, string roleId) { // string currentId, string objectId, string objectFullName int returnValue = 0; // 不用给自己发消息了,消息多了也烦恼 userIds = StringUtil.Remove(userIds, this.UserInfo.Id); // BaseUserEntity userEntity = userManager.GetEntity(userId); // 发送请求审核的信息 BaseMessageEntity messageEntity = new BaseMessageEntity(); messageEntity.Id = BaseBusinessLogic.NewGuid(); // 这里是回调的类,用反射要回调的 messageEntity.FunctionCode = MessageFunction.Remind.ToString(); // messageEntity.FunctionCode = this.GetType().ToString(); messageEntity.ObjectId = workFlowCurrentEntity.ObjectId; // 这里是网页上的显示地址 // messageEntity.Title = this.GetUrl(id); string auditIdea = string.Empty; if (!string.IsNullOrEmpty(workFlowCurrentEntity.AuditIdea)) { auditIdea = " 批示: " + workFlowCurrentEntity.AuditIdea; } // messageEntity.Contents = userEntity.DepartmentName + " " + userEntity.RealName messageEntity.Contents = workFlowCurrentEntity.CreateBy + " 发出审批申请: " + "<a title='点击这里,直接查看单据' target='_blank' href='" + this.GetUrl(workFlowCurrentEntity.Id) + "'>" + workFlowCurrentEntity.ObjectFullName + "</a> " + Environment.NewLine + this.UserInfo.RealName + " " + BaseBusinessLogic.GetAuditStatus(auditStatus) + " " + Environment.NewLine + auditIdea; messageEntity.Contents = "有单据" + BaseBusinessLogic.GetAuditStatus(auditStatus); messageEntity.IsNew = 1; messageEntity.ReadCount = 0; messageEntity.Enabled = 1; messageEntity.DeletionStateCode = 0; BaseMessageManager messageManager = new BaseMessageManager(this.UserInfo); returnValue = messageManager.BatchSend(userIds, organizeId, roleId, messageEntity, false); return returnValue; }
public ActionResult ManageContentItems(AuditStatus? auditStatus = null, int? folderId = null, string subjectKeyWord = null, string tagNameKeyword = null, string userId = null, DateTime? minDate = null, DateTime? maxDate = null, int pageSize = 20, int pageIndex = 1) { IUser currentUser = UserContext.CurrentUser; if (currentUser == null) return Redirect(SiteUrls.Instance().Login(true)); long? id = null; if (!string.IsNullOrEmpty(userId)) { userId = userId.TrimStart(',').TrimEnd(','); if (!string.IsNullOrEmpty(userId)) { id = long.Parse(userId); } } ViewData["userId"] = id; var contentFolderService = new ContentFolderService(); if (folderId.HasValue && folderId.Value > 0) { ContentFolder contentFolder = contentFolderService.Get(folderId.Value); if (!authorizer.CMS_ManageContentFolder(contentFolder)) { return Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = string.Format("您没有权限管理 {0} !", contentFolder == null ? "" : contentFolder.FolderName), Title = "没有权限", StatusMessageType = StatusMessageType.Hint })); } } else { //判断用户是否为栏目管理员 if (!authorizer.CMS_ManageContentItemsForChannel()) { return Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = "您没有权限在前台管理资讯", Title = "没有权限", StatusMessageType = StatusMessageType.Hint })); } } var contentTypes = new MetadataService().GetContentTypes(true); ViewData["ContentTypes"] = contentTypes; long? moderatorUserId = null; if (!authorizer.IsAdministrator(CmsConfig.Instance().ApplicationId)) moderatorUserId = currentUser.UserId; PagingDataSet<ContentItem> items = contentItemService.GetContentItemsForAdmin(auditStatus, subjectKeyWord, folderId, true, tagNameKeyword: tagNameKeyword, userId: id, moderatorUserId: moderatorUserId, minDate: minDate, maxDate: maxDate, pageSize: pageSize, pageIndex: pageIndex); pageResourceManager.InsertTitlePart("资讯管理"); RouteData.Values["CurrentNavigationId"] = "10101501"; return View(items); }
/// <summary> /// 管理帖吧 /// </summary> /// <param name="siteUrls"></param> /// <param name="auditStatus">审核状态</param> /// <param name="sectionId">帖吧Id</param> /// <returns>帖吧管理页面</returns> public static string ManageBars(this SiteUrls siteUrls, long? sectionId = null, AuditStatus? auditStatus = null) { RouteValueDictionary dictionary = new RouteValueDictionary(); if (sectionId.HasValue) dictionary.Add("sectionId", sectionId); if (auditStatus.HasValue) dictionary.Add("auditStatus", auditStatus); return CachedUrlHelper.Action("ManageBars", "ControlPanelBar", BarAreaName, dictionary); }
/// <summary> /// 设置用户审核状态 /// </summary> /// <param name="userInfo">用户</param> /// <param name="ids">主键数组</param> /// <param name="auditStates">审核状态</param> /// <returns>影响行数</returns> public int SetUserAuditStates(BaseUserInfo userInfo, string[] ids, AuditStatus auditStates) { // 写入调试信息 #if (DEBUG) int milliStart = BaseBusinessLogic.StartDebug(userInfo, MethodBase.GetCurrentMethod()); #endif // 加强安全验证防止未授权匿名调用 #if (!DEBUG) LogOnService.UserIsLogOn(userInfo); #endif int returnValue = 0; using (IDbHelper dbHelper = DbHelperFactory.GetHelper(BaseSystemInfo.UserCenterDbType)) { try { dbHelper.Open(UserCenterDbConnection); BaseUserManager userManager = new BaseUserManager(dbHelper, userInfo); returnValue = userManager.SetProperty(ids, new KeyValuePair<string, object>(BaseUserEntity.FieldAuditStatus, auditStates.ToString())); // 被审核通过 if (auditStates == AuditStatus.AuditPass) { returnValue = userManager.SetProperty(ids, new KeyValuePair<string, object>(BaseUserEntity.FieldEnabled, 1)); // returnValue = userManager.SetProperty(ids, BaseUserEntity.FieldAuditStatus, StatusCode.UserIsActivate.ToString()); } // 被退回 if (auditStates == AuditStatus.AuditReject) { returnValue = userManager.SetProperty(ids, new KeyValuePair<string, object>(BaseUserEntity.FieldEnabled, 0)); returnValue = userManager.SetProperty(ids, new KeyValuePair<string, object>(BaseUserEntity.FieldAuditStatus, StatusCode.UserLocked.ToString())); } BaseLogManager.Instance.Add(dbHelper, userInfo, this.serviceName, AppMessage.UserService_SetUserAuditStates, MethodBase.GetCurrentMethod()); } catch (Exception ex) { BaseExceptionManager.LogException(dbHelper, userInfo, ex); throw ex; } finally { dbHelper.Close(); } } // 写入调试信息 #if (DEBUG) BaseBusinessLogic.EndDebug(MethodBase.GetCurrentMethod(), milliStart); #endif return returnValue; }
public JsonResult _UpdateCommentAuditStatus(IEnumerable<long> commentIds, AuditStatus auditStatus) { commentService.BatchUpdateAuditStatus(commentIds, auditStatus == AuditStatus.Success); return Json(new StatusMessageData(StatusMessageType.Success, "更新评论审核状态成功!")); }
public ActionResult ManageContentItems(AuditStatus? auditStatus = null, int? folderId = null, string subjectKeyWord = null, string tagNameKeyword = null, string userId = null, DateTime? minDate = null, DateTime? maxDate = null, int pageSize = 20, int pageIndex = 1) { long? id = null; if (!string.IsNullOrEmpty(userId)) { userId = userId.Trim(','); if (!string.IsNullOrEmpty(userId)) { id = long.Parse(userId); } } ViewData["userId"] = id; ContentFolder contentFolder = null; if (folderId.HasValue && folderId.Value > 0) contentFolder = contentFolderService.Get(folderId.Value); ViewData["ContentFolder"] = contentFolder; var contentTypes = new MetadataService().GetContentTypes(true); ViewData["ContentTypes"] = contentTypes; PagingDataSet<ContentItem> items = contentItemService.GetContentItemsForAdmin(auditStatus, subjectKeyWord, folderId, true, tagNameKeyword: tagNameKeyword, userId: id, minDate: minDate, maxDate: maxDate, pageSize: pageSize, pageIndex: pageIndex); pageResourceManager.InsertTitlePart("资讯管理"); return View(items); }
/// <summary> /// 根据审核状态搜索微博 /// </summary> public static string ManageMicroblogs(this SiteUrls siteUrls, AuditStatus? auditStatus = null, DateTime? startdate = null, DateTime? enddate = null, string tenantTypeId = null) { RouteValueDictionary dic = new RouteValueDictionary(); if (auditStatus != null) { dic.Add("auditStatus", auditStatus); } if (!string.IsNullOrEmpty(tenantTypeId)) dic.Add("tenantTypeId", tenantTypeId); if (startdate.HasValue) { dic.Add("startdate", startdate); } if (enddate.HasValue) { dic.Add("enddate", enddate); } return CachedUrlHelper.Action("ManageMicroblogs", "ControlPanelMicroblog", MicroblogAreaName, dic); }
public void AddToAuditStatuses(AuditStatus auditStatus) { base.AddObject("AuditStatuses", auditStatus); }
public static string ManageTopics(this SiteUrls siteUrls, AuditStatus? auditStatus = null) { RouteValueDictionary dictionary = new RouteValueDictionary(); if (auditStatus.HasValue) dictionary.Add("auditStatus", auditStatus); return CachedUrlHelper.Action("ManageTopics", "ControlPanelTopic", TopicAreaName, dictionary); }
public static AuditStatus CreateAuditStatus(int ID, string auditStatusDescription, bool inUse, byte[] rowVersion) { AuditStatus auditStatus = new AuditStatus(); auditStatus.Id = ID; auditStatus.AuditStatusDescription = auditStatusDescription; auditStatus.InUse = inUse; auditStatus.RowVersion = rowVersion; return auditStatus; }
/// <summary> /// 投票管理 /// </summary> /// <param name="auditStatus">审核状态</param> /// <param name="VoteId">投票id</param> /// <param name="subjectKeyword">标题关键字</param> /// <param name="userId">作者id</param> /// <param name="minDate">开始时间</param> /// <param name="maxDate">结合时间</param> /// <param name="pageSize">分页大小</param> /// <param name="pageIndex">页码</param> /// <returns></returns> public ActionResult ManageVote(AuditStatus? auditStatus = null, long? VoteId = null, string subjectKeyword = null, string userId = null, DateTime? minDate = null, DateTime? maxDate = null, int pageSize = 20, int pageIndex = 1) { long? voteUserId = null; if (!string.IsNullOrEmpty(userId)) { userId = userId.Trim(','); if (!string.IsNullOrEmpty(userId)) { voteUserId = long.Parse(userId); } } ViewData["userId"] = voteUserId; PagingDataSet<VoteThread> items = voteService.GetVoteThreads(auditStatus, VoteId, subjectKeyword, voteUserId, minDate, maxDate, pageSize, pageIndex); pageResourceManager.InsertTitlePart("投票管理"); return View(items); }
/// <summary> /// 管理贴子 /// </summary> /// <param name="siteUrls"></param> /// <param name="auditStatus">审核状态</param> /// <param name="tenantTypeId">租户类型Id</param> /// <returns>管理贴子页面</returns> public static string ManageThreads(this SiteUrls siteUrls, AuditStatus? auditStatus = null, string tenantTypeId = null) { RouteValueDictionary dic = new RouteValueDictionary(); if (auditStatus.HasValue) dic.Add("AuditStatus", auditStatus); if (!string.IsNullOrEmpty(tenantTypeId)) dic.Add("tenantTypeId", tenantTypeId); return CachedUrlHelper.Action("ManageThreads", "ControlPanelBar", BarAreaName, dic); }
/// <summary> /// 他的资讯/我的资讯 /// </summary> public ActionResult CmsUser(string spaceKey, int? contentFolderId = null, AuditStatus? auditStatus = null, int pageSize = 50, int pageIndex = 1) { IUser user = null; if (string.IsNullOrEmpty(spaceKey)) { user = UserContext.CurrentUser; if (user == null) { return Redirect(SiteUrls.Instance().Login(true)); } pageResourceManager.InsertTitlePart("我的资讯"); } else { user = userService.GetFullUser(spaceKey); if (user == null) { return HttpNotFound(); } if (!new PrivacyService().Validate(user.UserId, UserContext.CurrentUser != null ? UserContext.CurrentUser.UserId : 0, PrivacyItemKeys.Instance().VisitUserSpace())) { if (UserContext.CurrentUser == null) return Redirect(SiteUrls.Instance().Login(true)); else return Redirect(SiteUrls.Instance().PrivacyHome(user.UserName)); } if (UserContext.CurrentUser != null && user.UserId == UserContext.CurrentUser.UserId) { pageResourceManager.InsertTitlePart("我的资讯"); } else { pageResourceManager.InsertTitlePart(user.DisplayName + "的资讯"); } } ViewData["user"] = user; bool hasManagePermission = UserContext.CurrentUser != null && UserContext.CurrentUser.UserId == user.UserId; if (authorizer.IsAdministrator(CmsConfig.Instance().ApplicationId)) hasManagePermission = true; PubliclyAuditStatus? publiclyAuditStatus = null; if (hasManagePermission) { if (auditStatus.HasValue) switch (auditStatus.Value) { case AuditStatus.Again: publiclyAuditStatus = PubliclyAuditStatus.Again; break; case AuditStatus.Fail: publiclyAuditStatus = PubliclyAuditStatus.Fail; break; case AuditStatus.Success: publiclyAuditStatus = PubliclyAuditStatus.Success; break; case AuditStatus.Pending: default: publiclyAuditStatus = PubliclyAuditStatus.Pending; break; } } else publiclyAuditStatus = new AuditService().GetPubliclyAuditStatus(CmsConfig.Instance().ApplicationId); PagingDataSet<ContentItem> contentItems = contentItemService.GetUserContentItems(user.UserId, contentFolderId, publiclyAuditStatus, pageSize, pageIndex); if (Request.IsAjaxRequest()) return PartialView("_UserContentItems", contentItems); ViewData["hasManagePermission"] = hasManagePermission; OwnerDataService ownerDataService = new OwnerDataService(TenantTypeIds.Instance().User()); ViewData["contributeCount"] = ownerDataService.GetLong(user.UserId, OwnerDataKeys.Instance().ContributeCount()); return View(contentItems); }
public static string GetAuditStatus(AuditStatus auditStatus) { return GetAuditStatus(auditStatus.ToString()); }