protected string ShowReply(object feedbackId, object ticketId, object WaitClientFeedback, object WaitPMFeedback) { FeedBacksEntity entity = fbApp.GetFeedBacksEntity((int)feedbackId); if (((entity.CreatedBy == UserInfo.UserID) || (UserInfo.UserType == "SUNNET" || ticketEntity(ticketId).CompanyID == UserInfo.CompanyID)) && ticketEntity(ticketId).Status != TicketsState.Completed && ticketEntity(ticketId).Status != TicketsState.Cancelled) { if (UserInfo.Role == RolesEnum.CLIENT && (int)WaitClientFeedback == 1) { return(string.Format("<a href=\"###\" onclick=\"OpenReplyFeedBackDialog({0},{1})\" title=\"Need FeedBack\"><img src=\"/icons/needReply.gif\" alt=\"Need FeedBack\" /></a>" , feedbackId, ticketId)); } else if (UserInfo.Role == RolesEnum.PM && (int)WaitPMFeedback == 1) { return(string.Format("<a href=\"###\" onclick=\"OpenReplyFeedBackDialog({0},{1})\" title=\"Need FeedBack\"><img src=\"/icons/needReply.gif\" alt=\"Need FeedBack\" /></a>" , feedbackId, ticketId)); } else if ((int)WaitClientFeedback != 1 && (int)WaitPMFeedback != 1) { return(string.Format("<a href=\"###\" onclick=\"OpenReplyFeedBackDialog({0},{1})\" title=\"Reply FeedBack\"><img src=\"/icons/reply.gif\" alt=\"Reply FeedBack\" /></a>" , feedbackId, ticketId)); } } return(""); }
protected void Page_Load(object sender, EventArgs e) { int tid = QS("tid", 0); int feedbackId = QS("feedbackId", 0); if (tid == 0 && feedbackId == 0) { this.ShowArgumentErrorMessageToClient(); return; } #region role FeedBacksEntity entity = new FeedBacksEntity(); if (feedbackId > 0) { entity = fbAPP.GetFeedBacksEntity(feedbackId); if (!CheckSecurity(entity.TicketID)) { this.ShowArgumentErrorMessageToClient(); return; } entity.Title = string.Format("<strong>Re:{0}</strong>", entity.Title.Replace("<strong>", "").Replace("</strong>", "")); AddFeedBack1.IsReply = true; Page.Title = "Reply Feedback"; } else { if (!CheckSecurity(tid)) { this.ShowArgumentErrorMessageToClient(); return; } if (UserInfo.Role == RolesEnum.PM || UserInfo.Role == RolesEnum.ADMIN || UserInfo.Role == RolesEnum.CLIENT) { entity.IsPublic = true; } else { entity.IsPublic = false; } entity.TicketID = tid; Page.Title = "Add FeedBacks"; } ProjectIDResponse = ticketsApp.GetProjectIdAndUserID(entity.TicketID); if (null != ProjectIDResponse) { this.AddFeedBack1.ProjectID = ProjectIDResponse.ProjectId; } this.AddFeedBack1.FeedBacksEntityInfo = entity; #endregion }
public string DeleteFeedback(int userID, int feedbackID, int ticketID) { if (userID != UserID) { return(ResponseMessage.GetResponse(false, "Unauthorized operation.", 0)); } if (feedbackID == 0) { return(ResponseMessage.GetResponse(false, "Arguments error.", 0)); } FeedBackApplication feedBackApplication = new FeedBackApplication(); //先判定feedback是不是public然后判断是不是wait client==1或waitpm ==1如果是并且ticket状态不为normal则改为normal FeedBacksEntity feedBacksEntity = feedBackApplication.GetFeedBacksEntity(feedbackID); if (feedBacksEntity.WaitClientFeedback == FeedbackReplyStatus.Requested) { ticketApp.ClearWaitingByType(ticketID, TicketUsersType.Create, TicketUsersType.Client, TicketUsersType.PM); ticketApp.DeleteUserFromTicket(ticketID, TicketUsersType.Client); } if (feedBacksEntity.WaitPMFeedback == FeedbackReplyStatus.Requested) { var ticketEntity = ticketApp.GetTickets(ticketID); var projectEntity = projectApp.Get(ticketEntity.ProjectID); if (ticketApp.UpdateTicketStatus(ticketID, UserTicketStatus.Normal, TicketUsersType.PM, TicketUsersType.Create, TicketUsersType.Client)) { ticketEntity.ResponsibleUser = PmReplyClient(projectEntity, ticketEntity); ticketApp.UpdateTickets(ticketEntity, false); } } //再删除feedbackmessage,并且feedback状态不为normal则改为normal bool result = feedBackApplication.DeleteFeedback(feedbackID); if (result) { return(ResponseMessage.GetResponse(true)); } else { var tmpMessage = feedBackApplication.BrokenRuleMessages != null && feedBackApplication.BrokenRuleMessages.Count > 0 ? feedBackApplication.BrokenRuleMessages[0].Message : ""; return(ResponseMessage.GetResponse(false, tmpMessage)); } }
protected void Page_Load(object sender, EventArgs e) { int tid = QS("tid", 0); int feedbackId = QS("feedbackId", 0); if (tid == 0 && feedbackId == 0) { this.ShowArgumentErrorMessageToClient(); return; } GetProjectIdAndUserIDResponse projectidanduseridResponse = new GetProjectIdAndUserIDResponse(); if (!IsPostBack) { #region role if (feedbackId > 0) //回复 { FeedBacksEntity entity = fbAPP.GetFeedBacksEntity(feedbackId); projectidanduseridResponse = ticketsApp.GetProjectIdAndUserID(entity.TicketID); if (!CheckSecurity(projectidanduseridResponse)) { this.ShowArgumentErrorMessageToClient(); return; } txtTitle.Value = string.Format("Re:{0}", entity.Title); Page.Title = "Reply Note"; bannerTitle.Text = "Reply Note"; trOthers.Visible = false; trOriDesc.Visible = true; trOriFile.Visible = true; trOriDate.Visible = true; lblDate.InnerText = entity.CreatedOn.ToString("MM/dd/yyyy"); txtOriginalContent.Attributes["readonly"] = "readonly"; this.txtOriginalContent.Value = entity.Description; this.lblFiles.InnerHtml = ShowImageList(entity.FeedBackID); hdTicketID.Value = entity.TicketID.ToString(); } else //添加 { hdTicketID.Value = QS("tid"); if (UserInfo.Role == RolesEnum.CLIENT) { if (!string.IsNullOrEmpty(QS("deny"))) { Page.Title = "Add Reason"; bannerTitle.Text = "Add Reason"; txtTitle.Value = "Deny Reason"; } trOthers.Visible = false; } else { trOthers.Visible = true; this.ckIsPublic.Visible = true; this.ckIsPublic.Checked = true; this.chkIsWaitClientFeedback.Visible = true; } projectidanduseridResponse = ticketsApp.GetProjectIdAndUserID(tid); } hdProjectID.Value = projectidanduseridResponse.ProjectId.ToString(); } #endregion }