📄 complainmanage.cs
字号:
namespace PowerEasy.WebSite.Admin.Crm
{
using PowerEasy.Common;
using PowerEasy.Components;
using PowerEasy.Controls;
using PowerEasy.Crm;
using PowerEasy.ExtendedControls;
using PowerEasy.Model.Crm;
using PowerEasy.Web.UI;
using System;
using System.Collections.Generic;
using System.Text;
using System.Web.UI.WebControls;
public class ComplainManage : AdminPage
{
protected ExtendedButton BtnDelete;
protected Button BtnExport;
protected ExtendedGridView EgvComplain;
protected bool m_ComplainModifyOwn = RolePermissions.AccessCheck(OperateCode.ComplainModifyOwn);
protected ObjectDataSource OdsComplain;
protected ExtendedSiteMapPath SmpNavigator;
protected void BtnDelete_Click(object sender, EventArgs e)
{
StringBuilder selectList = new StringBuilder("");
selectList = this.EgvComplain.SelectList;
if (selectList.Length == 0)
{
AdminPage.WriteErrMsg("<li>对不起,您还没选择要删除的投诉记录!</li>");
}
else if (Complain.Delete(selectList.ToString()))
{
AdminPage.WriteSuccessMsg("删除投诉记录成功", "ComplainManage.aspx");
}
else
{
AdminPage.WriteErrMsg("删除失败");
}
}
protected void BtnExport_Click(object sender, EventArgs e)
{
if (this.EgvComplain.Rows.Count > 0)
{
IList<ComplainItemInfo> list = Complain.GetList(0, 0, BasePage.RequestInt32("SearchType"), BasePage.RequestInt32("Field"), BasePage.RequestString("Keyword"));
StringBuilder sb = new StringBuilder();
base.Response.Clear();
base.Response.AppendHeader("content-disposition", "attachment;filename=Complain.xls");
base.Response.ContentEncoding = Encoding.GetEncoding("UTF-8");
base.Response.ContentType = "application/vnd.xls";
sb.Append("<table border='1' cellspacing='1' style='border-collapse: collapse;table-layout:fixed' id='AutoNumber1' height='32'>");
this.CreateTd(sb, true, new string[] {
"序号", "投诉时间", "客户名称", "主题", "投诉内容", "投诉类型", "紧急程度", "记录状态", "当前责任人", "首问接待人", "处理过程", "处理人", "处理结果", "处理结束时间", "客户反馈", "回访时间",
"回访人", "客户评定服务星级", "备注"
});
foreach (ComplainItemInfo info in list)
{
this.CreateTd(sb, false, new string[] {
info.ItemId.ToString(), info.DateAndTime.ToString(), info.ShortedForm, info.Title, info.Content, Complain.GetFiledNameById("ComplainType", info.ComplainType), Complain.GetFiledNameById("MagnitudeOfExigence", info.MagnitudeOfExigence), Complain.GetStatus(info.Status), info.CurrentOwner, info.FirstReceiver, info.Process, info.Processor, info.Result, info.EndTime.ToString(), info.ConfirmFeedback, info.ConfirmTime.ToString(),
info.ConfirmCaller, Complain.GetFiledNameById("ConfirmScore", info.ConfirmScore), info.Remark
});
}
base.Response.Write(sb.ToString());
base.Response.End();
}
}
private void CreateTd(StringBuilder sb, bool isHead, params string[] tdlist)
{
sb.Append("<tr>");
if (isHead)
{
foreach (string str in tdlist)
{
sb.Append("<td align='center'><b>").Append(str).Append("</b></td>");
}
}
else
{
foreach (string str2 in tdlist)
{
sb.Append("<td align='center'>").Append(str2).Append("</td>");
}
}
sb.Append("</tr>");
}
protected void EgvComplain_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
ComplainItemInfo dataItem = e.Row.DataItem as ComplainItemInfo;
e.Row.Cells[3].Text = Complain.GetFiledNameById("ComplainType", dataItem.ComplainType);
e.Row.Cells[5].Text = Complain.GetFiledNameById("MagnitudeOfExigence", dataItem.MagnitudeOfExigence);
e.Row.Cells[6].Text = Complain.GetStatus(dataItem.Status);
if (this.m_ComplainModifyOwn && (dataItem.FirstReceiver == PEContext.Current.Admin.AdminName))
{
((ExtendedAnchor) e.Row.FindControl("ModifyOwn")).Disabled = false;
}
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!base.IsPostBack && (base.PreviousPage != null))
{
ComplainSearch previousPage = base.PreviousPage as ComplainSearch;
if (previousPage != null)
{
ComplainItemInfo t = previousPage.Info;
if (!t.IsNull)
{
this.OdsComplain.SelectParameters["field"].DefaultValue = "99";
this.OdsComplain.SelectParameters["keyword"].DefaultValue = new Serialize<ComplainItemInfo>().SerializeField(t);
}
}
}
this.SetNavigator();
}
private void SetNavigator()
{
string str = BasePage.RequestString("Keyword");
if (!string.IsNullOrEmpty(str))
{
switch (BasePage.RequestString("Field"))
{
case "0":
if (DataValidator.IsNumber(str))
{
this.SmpNavigator.AdditionalNode = "客户ID等于 <span style='Color:#F00'> " + str + " </span> 的投诉记录";
return;
}
AdminPage.WriteErrMsg("客户ID必须是整数");
return;
case "1":
this.SmpNavigator.AdditionalNode = "名称中含有“ <span style='Color:#F00'> " + str + "</span> ”的投诉记录";
return;
case "2":
{
DateTime result = new DateTime();
if (DateTime.TryParse(str, out result))
{
this.SmpNavigator.AdditionalNode = "<span style='Color:#F00'>" + result.ToString("yyyy-MM-dd") + "</span> 投诉的记录";
return;
}
AdminPage.WriteErrMsg("查询的投诉时间格式不正确!");
return;
}
case "99":
this.SmpNavigator.AdditionalNode = "<span style='Color:#F00'>复杂查询得到的</span> 投诉的记录";
return;
}
}
else
{
switch (BasePage.RequestString("SearchType"))
{
case "1":
this.SmpNavigator.AdditionalNode = "10天内的记录";
return;
case "2":
this.SmpNavigator.AdditionalNode = "1个月内的记录";
return;
case "3":
this.SmpNavigator.AdditionalNode = "我接待的记录";
return;
}
this.SmpNavigator.AdditionalNode = "所有记录";
return;
}
this.SmpNavigator.AdditionalNode = "所有记录";
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -