Skip to content

Commit

Permalink
Merge pull request #77 from renyh1013/master
Browse files Browse the repository at this point in the history
整理通知
  • Loading branch information
DigitalPlatform authored Sep 12, 2016
2 parents e468460 + 3779c17 commit ac0d426
Show file tree
Hide file tree
Showing 35 changed files with 2,948 additions and 1,057 deletions.
4 changes: 3 additions & 1 deletion dp2weixin.service/ManagerThread.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,9 @@ public override void Worker()
// 清理图书馆参于检索数据库
WeixinService.LibDbs.Clear();

// todo 检查有没有不在线的图书馆,给工作人员发通知
// 检查不在线的图书馆,给工作人员发通知
WeixinService.WarnOfflineLib();

}
}
}
19 changes: 8 additions & 11 deletions dp2weixin.service/MsgRouter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,8 @@ void _channels_AddMessage(object sender, AddMessageEventArgs e)
if (this._messageList.Count < 10000)
this._messageList.AddRange(tempList);//e.Records);
}

this.WriteLog("AddMessage得到" + tempList.Count.ToString() + "条消息。", dp2WeiXinService.C_LogLevel_3);
this.Activate();
}

Expand Down Expand Up @@ -172,7 +174,7 @@ void SendMessage(List<MessageRecord> records)
if (this._sendedTable.ContainsKey(record.id))
continue;

this.WriteLog("开始处理:" + record.id);
this.WriteLog("开始处理:" + record.id, dp2WeiXinService.C_LogLevel_3);

// 发送
if (handler != null)
Expand All @@ -182,7 +184,7 @@ void SendMessage(List<MessageRecord> records)
handler(this, e);
}

this.WriteLog("处理结束:" + record.id);
this.WriteLog("处理结束:" + record.id, dp2WeiXinService.C_LogLevel_3);

this._sendedTable[record.id] = DateTime.Now;
}
Expand All @@ -207,14 +209,9 @@ void CleanSendedTable()
}
}

void WriteLog(string strText)
void WriteLog(string strText,int logLevel)
{
dp2WeiXinService.Instance.WriteLog(strText);
//MessageRecord record = new MessageRecord();
//record.data = "*** error *** " + strText;
//SendMessageEventArgs e = new SendMessageEventArgs();
//e.Message = record;
//this.SendMessageEvent(this, e);
dp2WeiXinService.Instance.WriteLog(strText,logLevel);
}

// 从 dp2mserver 获得消息
Expand Down Expand Up @@ -259,7 +256,7 @@ List<MessageRecord> GetMessage()
goto ERROR1;
}
ERROR1:
this.WriteLog("GetMessage() error: " + strError);
this.WriteLog("GetMessage() error: " + strError,dp2WeiXinService.C_LogLevel_1);
return new List<MessageRecord>();
}

Expand Down Expand Up @@ -319,7 +316,7 @@ bool DeleteMessage(List<MessageRecord> records)


ERROR1:
this.WriteLog("DeleteMessage() error : " + strError);
this.WriteLog("DeleteMessage() error : " + strError, dp2WeiXinService.C_LogLevel_1);
return false;
}
}
Expand Down
34 changes: 22 additions & 12 deletions dp2weixin.service/TemplateData.cs
Original file line number Diff line number Diff line change
Expand Up @@ -96,28 +96,38 @@ public class MessageTemplateData:BaseTemplateData
}


//{{first.DATA}}
//图书书名:{{keyword1.DATA}}
//应还日期:{{keyword2.DATA}}
//超期天数:{{keyword3.DATA}}
//{{remark.DATA}}
public class CaoQiTemplateData:BaseTemplateData
//您好,您借出的图书已超期。
//书刊摘要:中国机读目录格式使用手册 / 北京图书馆《中国机读目录格式使用手册》编委会. -- ISBN 7-80039-990-7 : ¥58.00
//册条码号:C0000001
//借书日期:2016-07-01
//应还日期:2016-07-31
//超期情况:已超期30天
//任延华,您借出的图书已超期,请尽快归还。
public class CaoQiTemplateData1 : BaseTemplateData
{
public TemplateDataItem keyword1 { get; set; }
public TemplateDataItem keyword2 { get; set; }
public TemplateDataItem keyword3 { get; set; }
public TemplateDataItem keyword4 { get; set; }
public TemplateDataItem keyword5 { get; set; }
}

//{{first.DATA}}
//图书书名:{{keyword1.DATA}}
//到书日期:{{keyword2.DATA}}
//保留期限:{{keyword3.DATA}}
//{{remark.DATA}}
public class ArrivedTemplateData:BaseTemplateData


//您好,您预约的图书已经到书。
//书刊摘要:中国机读目录格式使用手册 / 北京图书馆《中国机读目录格式使用手册》编委会. -- ISBN 7-80039-990-7 : ¥58.00
//册条码号:C00001
//预约日期:2016-08-15
//到书日期:2016-09-05
//保留期限:2016-09-07(保留2天)
//XXX,您预约的图书到了,请尽快来图书馆办理借书手续,请尽快来图书馆办理借书手续。如果您未能在保留期限内来馆办理借阅手续,图书馆将把优先借阅权转给后面排队等待的预约者,或做归架处理。
public class ArrivedTemplateData1:BaseTemplateData
{
public TemplateDataItem keyword1 { get; set; }
public TemplateDataItem keyword2 { get; set; }
public TemplateDataItem keyword3 { get; set; }
public TemplateDataItem keyword4 { get; set; }
public TemplateDataItem keyword5 { get; set; }
}


Expand Down
3 changes: 3 additions & 0 deletions dp2weixin.service/TraceOnUser.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,8 @@ public class TracingOnUser
{
public string WeixinId { get; set; }
public bool IsAdmin = false; // 是否是数字平台管理员

// 是否mark
public bool IsMask = true;
}
}
39 changes: 33 additions & 6 deletions dp2weixin.service/dp2MessageHandler/dp2weixinMessageHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -182,20 +182,32 @@ private IResponseMessageBase DoSet(string strParam)
if (workerList == null || workerList.Count == 0)
{
return this.CreateTextResponseMessage("您尚未绑定图书馆工作人员账户,不能使用tracing功能。"
+ "\n点击 <a href='" + dp2WeiXinService.C_Url_AccountIndex + "'>绑定账户</a>。");
+ "\n点击 <a href='" + dp2WeiXinService.Instance.Auth2Url_AccountIndex + "'>绑定账户</a>。");
}

if (parameter == "off")
string paramLeft = parameter;
string paramRight = "";
nIndex = parameter.IndexOf(' ');
if (nIndex > 0)
{
paramLeft = parameter.Substring(0, nIndex);
paramRight = parameter.Substring(nIndex + 1);
}

if (paramLeft == "off")
{
dp2WeiXinService.Instance.TracingOnUsers.Remove(this.WeixinOpenId);
string text = "set tracing off 成功,您将不再收到非本人的微信通知。";
return this.CreateTextResponseMessage(text);
}
else if (parameter == "on")
else if (paramLeft == "on")
{
TracingOnUser tracingOnUser = new TracingOnUser();
tracingOnUser.WeixinId = this.WeixinOpenId;

if (paramRight == "-mask")
tracingOnUser.IsMask = false;

// 检查有没有绑 数字平台,绑了的话,设为公司管理员
foreach (WxUserItem user in workerList)
{
Expand All @@ -213,11 +225,16 @@ private IResponseMessageBase DoSet(string strParam)
// 设到hashtable里
dp2WeiXinService.Instance.TracingOnUsers[this.WeixinOpenId] = tracingOnUser;

string text = "set tracing on 成功,您将会收到本馆的全部微信通知";
string text = "set " + strParam + " 成功,您将会收到本馆的全部微信通知";
if (tracingOnUser.IsAdmin == true)
{
text = "set tracing on 成功,您是数字平台工作人员,您将会收到全部图书馆的微信通知";
text = "set "+strParam+" 成功,您是数字平台工作人员,您将会收到全部图书馆的微信通知";
}
if (tracingOnUser.IsMask == false)
text += ",且指定对读者敏感信息不做马赛克处理。";
else
text += ",系统默认对读者敏感信息做马赛克处理。";

return this.CreateTextResponseMessage(text);
}
else
Expand All @@ -228,7 +245,17 @@ private IResponseMessageBase DoSet(string strParam)
}
else
{
return this.CreateTextResponseMessage("您当前是 tracing on 状态。");
string text = "您当前是 tracing on 状态";
TracingOnUser user = (TracingOnUser)dp2WeiXinService.Instance.TracingOnUsers[this.WeixinOpenId];
if (user.IsAdmin)
text += ",且是数据平台管理员";

if (user.IsMask == true)
text += ",系统默认对读者敏感信息做马赛克处理。";
else
text += ",且指定了对读者敏感信息不做马赛克处理。";

return this.CreateTextResponseMessage("text");
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ public override IResponseMessageBase OnEvent_SubscribeRequest(RequestMessageEven
{
string strMessage = "☀您好,欢迎关注我爱图书馆公众号。一般情况下,绑定读者账户的流程如下:"
+ "\r\n1) 去图书馆出纳台,找工作人员在图书馆系统中登记存储您的手机号码;"
+ "\r\n2) 点击 <a href='" + dp2WeiXinService.C_Url_AccountResetPassword + "'>找回密码</a>,获得您的图书馆读者证密码(密码将自动通过短信发送到您的手机);"
+ "\r\n3) 点击 <a href='" + dp2WeiXinService.C_Url_AccountIndex + "'>绑定账户</a>,完成绑定。";
+ "\r\n2) 点击 <a href='" + dp2WeiXinService.Instance.Auth2Url_AccountResetPassword + "'>找回密码</a>,获得您的图书馆读者证密码(密码将自动通过短信发送到您的手机);"
+ "\r\n3) 点击 <a href='" + dp2WeiXinService.Instance.Auth2Url_AccountIndex + "'>绑定账户</a>,完成绑定。";
return this.CreateTextResponseMessage(strMessage,false);
}

Expand Down
Loading

0 comments on commit ac0d426

Please sign in to comment.