<%@ WebHandler Language="C#" Class="GwAuditCacheHandler" %>
|
using Common;
|
using Dao;
|
using Model;
|
using Newtonsoft.Json;
|
using System;
|
using System.Collections.Generic;
|
using System.Data;
|
using System.Linq;
|
using System.Text;
|
|
public class GwAuditCacheHandler : PageHandler<SysUser>
|
{
|
private GwSpDao _Dao = new GwSpDao();
|
public override JsonPageResult ProcessRequestInternal(PageContext<SysUser> context)
|
{
|
string @string = context.GetString("action");
|
switch (@string)
|
{
|
case "auditAll":
|
return this.AuditAll(context);
|
case "approveAll":
|
return this.ApproveAll(context);
|
case "saveAudit":
|
return this.SaveAudit(context);
|
case "loadDetail":
|
return this.loadDetail(context);
|
case "load":
|
return this.Load(context);
|
case "editContent":
|
return this.EditContent(context);
|
default:
|
throw new Exception("Invalid Action=" + @string);
|
}
|
}
|
|
private JsonPageResult loadDetail(PageContext<SysUser> context)
|
{
|
string @string = context.GetString("hashCode");
|
DateTime dateTime1 = context.GetDateTime("startTime");
|
DateTime dateTime2 = context.GetDateTime("endTime");
|
using (GwAuditCacheDao gwAuditCacheDao = new GwAuditCacheDao())
|
return new JsonPageResult(true, (object)gwAuditCacheDao.LoadDetail(dateTime1, dateTime2, @string));
|
}
|
|
private JsonPageResult Load(PageContext<SysUser> context)
|
{
|
DateTime startTime = context.GetDateTime("StartTime");
|
DateTime endTime = context.GetDateTime("EndTime");
|
int auditingStatus = context.GetInt("auditingStatus");
|
string content = context.GetString("content");
|
string spids = context.GetString("spids");
|
int recordCount = 0;
|
int pageSize = context.GetInt("pageSize", 20);
|
int pageIndex = context.GetInt("pageIndex", 1);
|
string opname = context.GetString("opname");
|
using (GwAuditCacheDao gwAuditCacheDao = new GwAuditCacheDao())
|
{
|
StringBuilder stringBuilder = new StringBuilder();
|
DataTable dataTable = gwAuditCacheDao.LoadCache(startTime, endTime, auditingStatus, content, spids, out recordCount, pageSize, pageIndex, opname);
|
if (dataTable.Rows.Count > 0)
|
{
|
foreach (DataRow row in (InternalDataCollectionBase)dataTable.Rows)
|
{
|
DataRowReader dataRowReader = new DataRowReader(row);
|
stringBuilder.Append("<tr>");
|
stringBuilder.AppendFormat("<td><input type=\"checkbox\" name=\"hashCode\" checked value=\"{0}\" /></td>", (object)dataRowReader.GetString("HASH_CODE"));
|
stringBuilder.Append("<td>" + dataRowReader.GetString("SP_ID") + "</td>");
|
stringBuilder.Append("<td>" + dataRowReader.GetString("CLIENT_ID")+"</td>");
|
stringBuilder.Append("<td>" + (object)dataRowReader.GetString("OP_NAME") + "</td>");
|
stringBuilder.Append("<td>" + dataRowReader.GetString("MSG_CONTENT") + "</td>");
|
stringBuilder.Append("<td>" + dataRowReader.GetString("KEYWORD") + "</td>");
|
int int4 = dataRowReader.GetInt("CNT");
|
if (int4 > 1)
|
stringBuilder.Append("<td>" + (object)int4 + string.Format(" <a href=\"javascript:;\" class=\"btn btn-xs btn-primary action-load-detail\" data-id=\"{0}\"> <i class=\"fa fa-plus\"></i></a></td>", (object)dataRowReader.GetString("HASH_CODE")));
|
else
|
stringBuilder.Append("<td>" + (object)int4 + "</td>");
|
stringBuilder.Append("<td>");
|
stringBuilder.AppendFormat("<a class=\"btn btn-primary btn-xs action-audit\" href=\"javascript:;\" data-id=\"{0}\" data-status=\"4\">直接通过</a> \r\n <a class=\"action-audit btn btn-danger btn-xs\" href=\"javascript:;\" data-id=\"{0}\" data-status=\"5\">直接拒绝</a> \r\n <a class=\"action-audit btn btn-warning btn-xs\" href=\"javascript:;\" data-status=\"10\" data-id=\"{0}\">待鉴定</a>", (object)dataRowReader.GetString("HASH_CODE"));
|
stringBuilder.AppendFormat("</a>");
|
stringBuilder.AppendFormat("</td>");
|
stringBuilder.AppendFormat("</tr>");
|
}
|
}
|
else
|
stringBuilder.AppendFormat("<tr><td colspan=\"10\" style=\"padding-left:5px;\">暂无信息</td></tr>");
|
return new JsonPageResult(true, (object)new
|
{
|
Table = stringBuilder.ToString(),
|
TotalCount = recordCount
|
});
|
}
|
}
|
|
//内容编辑
|
public JsonPageResult EditContent(PageContext<SysUser> context)
|
{
|
string sms = context.GetString("newSms");
|
if (string.IsNullOrEmpty(sms))
|
{
|
throw new ArgumentException("请输入修改内容,不允许为空!!");
|
}
|
|
using (GwAuditCacheDao gwAuditCacheDao = new GwAuditCacheDao())
|
{
|
string[] strArray = JsonConvert.DeserializeObject<string[]>(context.GetString("hashCodes"));
|
IEnumerable<string> enumerable = Enumerable.Distinct<string>((IEnumerable<string>)strArray);
|
StringBuilder stringBuilder = new StringBuilder();
|
foreach (string hashCode in enumerable)
|
{
|
if (!gwAuditCacheDao.UpdateCacheContent(hashCode, sms))
|
stringBuilder.AppendFormat("修改内容过程发生错误,{0}:修改失败!", hashCode);
|
}
|
stringBuilder.AppendLine();
|
stringBuilder.AppendFormat("内容调整完成,共" + (object)strArray.Length + "个内容!");
|
return new JsonPageResult(true, (object)stringBuilder.ToString());
|
}
|
}
|
|
|
/// <summary>
|
/// 批准(带通道)
|
/// </summary>
|
/// <param name="context"></param>
|
/// <returns></returns>
|
private JsonPageResult ApproveAll(PageContext<SysUser> context)
|
{
|
AuditingStatus status = AuditingStatus.ManualApproved;
|
int @int = context.GetInt("opid");
|
if (@int == 0)
|
throw new ArgumentException("请选择正确的通道!");
|
using (GwAuditCacheDao gwAuditCacheDao = new GwAuditCacheDao())
|
{
|
string[] strArray = JsonConvert.DeserializeObject<string[]>(context.GetString("hashCodes"));
|
IEnumerable<string> enumerable = Enumerable.Distinct<string>((IEnumerable<string>)strArray);
|
StringBuilder stringBuilder = new StringBuilder();
|
foreach (string hashCode in enumerable)
|
{
|
if (!gwAuditCacheDao.UpdateCacheStatus(hashCode, status, @int))
|
stringBuilder.AppendFormat("批量审核过程发生错误,{0}:审核失败!审核状态:{1}.", (object)hashCode, (object)status);
|
}
|
stringBuilder.AppendLine();
|
stringBuilder.AppendFormat("批量" + (object)this.GetStatusText(status) + "完成,共" + (object)strArray.Length + "个内容!");
|
return new JsonPageResult(true, (object)stringBuilder.ToString());
|
}
|
}
|
|
private JsonPageResult SaveAudit(PageContext<SysUser> context)
|
{
|
AuditingStatus status = (AuditingStatus)context.GetInt("status");
|
string hashCode = context.GetString("hashCode");
|
using (GwAuditCacheDao gwAuditCacheDao = new GwAuditCacheDao())
|
{
|
GwSpPrePatternDao gwSpPrePatternDao = new GwSpPrePatternDao();
|
//================[审核通过后自动添加模板.wzp.2021.6.4]===========================
|
//判断是否审核通过
|
//if (status == AuditingStatus.ManualApproved)
|
//{
|
// //通过hashcode读取内容
|
// Model.GwAuditCache gwAudit = gwAuditCacheDao.GetAuditCache(hashCode);
|
// if (gwAudit != null || gwAudit.Content != "" || !string.IsNullOrEmpty(gwAudit.Content))
|
// {
|
// bool flag = false;
|
// string _template = GenerateTemplate.Instance.GenerateTemplates(gwAudit.Content);
|
// if (!string.IsNullOrEmpty(_template))
|
// {
|
// Dao.GwSpPrePattern pattern = new Dao.GwSpPrePattern();
|
// pattern.PatternContent = _template;
|
// pattern.SpID = gwAudit.SpID;
|
// pattern.ClientID = gwAudit.ClientID;
|
// pattern.OperateAccount = "system";
|
// pattern.AuditStatus = 1;
|
// pattern.AuditRemark = "自动备案";
|
// pattern.CreateTime = DateTime.Now;
|
// pattern.AuditTime = DateTime.Now;
|
// flag = gwSpPrePatternDao.AddAutoCheck(pattern);//入库
|
// }
|
// if (flag)
|
// {
|
// SpCTPatternInfo pattern = this._Dao.GetPattern(gwAudit.SpID);
|
// this._Dao.UpdatePattern(pattern.SpID, pattern.Enabled, pattern.Pattern + "\r\n" + _template, context.OperatorID);
|
// }
|
|
// }
|
//}
|
|
//==============[end]====================
|
|
StringBuilder stringBuilder = new StringBuilder();
|
if (!gwAuditCacheDao.UpdateCacheStatus(hashCode, status))
|
throw new Exception("审核过程发生错误!" + hashCode);
|
return new JsonPageResult(true, (object)"短信审核完成!");
|
}
|
}
|
|
/// <summary>
|
/// 批量状态
|
/// </summary>
|
/// <param name="context"></param>
|
/// <returns></returns>
|
private JsonPageResult AuditAll(PageContext<SysUser> context)
|
{
|
AuditingStatus status = (AuditingStatus)context.GetInt("status");
|
GwSpPrePatternDao gwSpPrePatternDao = new GwSpPrePatternDao();
|
using (GwAuditCacheDao gwAuditCacheDao = new GwAuditCacheDao())
|
{
|
string[] strArray = JsonConvert.DeserializeObject<string[]>(context.GetString("hashCodes"));
|
IEnumerable<string> enumerable = Enumerable.Distinct<string>((IEnumerable<string>)strArray);
|
StringBuilder stringBuilder = new StringBuilder();
|
foreach (string hashCode in enumerable)
|
{
|
//================[审核通过后自动添加模板.wzp.2021.6.4]===========================
|
//判断是否审核通过
|
//if (status == AuditingStatus.ManualApproved)
|
//{
|
// //通过hashcode读取内容
|
// Model.GwAuditCache gwAudit = gwAuditCacheDao.GetAuditCache(hashCode);
|
// if (gwAudit != null || gwAudit.Content != "" || !string.IsNullOrEmpty(gwAudit.Content))
|
// {
|
// bool flag = false;
|
// string _template = GenerateTemplate.Instance.GenerateTemplates(gwAudit.Content);
|
// if (!string.IsNullOrEmpty(_template))
|
// {
|
// Dao.GwSpPrePattern pattern = new Dao.GwSpPrePattern();
|
// pattern.PatternContent = _template;
|
// pattern.SpID = gwAudit.SpID;
|
// pattern.ClientID = gwAudit.ClientID;
|
// pattern.OperateAccount = "system";
|
// pattern.AuditStatus = 1;
|
// pattern.AuditRemark = "自动备案";
|
// pattern.CreateTime = DateTime.Now;
|
// pattern.AuditTime = DateTime.Now;
|
// flag = gwSpPrePatternDao.AddAutoCheck(pattern);//入库
|
// }
|
// if (flag)
|
// {
|
// SpCTPatternInfo pattern = this._Dao.GetPattern(gwAudit.SpID);
|
// this._Dao.UpdatePattern(pattern.SpID, pattern.Enabled, pattern.Pattern + "\r\n" + _template, context.OperatorID);
|
// }
|
|
// }
|
//}
|
|
//==============[end]====================
|
|
if (!gwAuditCacheDao.UpdateCacheStatus(hashCode, status))//更新状态
|
stringBuilder.AppendFormat("批量审核过程发生错误,{0}:审核失败!审核状态:{1}.", (object)hashCode, (object)status);
|
|
}
|
stringBuilder.AppendLine();
|
stringBuilder.AppendFormat("批量" + (object)this.GetStatusText(status) + "完成,共" + (object)strArray.Length + "个内容!");
|
return new JsonPageResult(true, (object)stringBuilder.ToString());
|
}
|
}
|
|
private string GetStatusText(AuditingStatus status)
|
{
|
if (status == AuditingStatus.ManualApproved)
|
return "通过";
|
if (status == AuditingStatus.ManualRejected)
|
return "拒绝";
|
if (status == AuditingStatus.Manual10)
|
return "待审核";
|
return status.ToString();
|
}
|
}
|