public bool activateNotice(int index, GMUser account) { if (account == null) { return(false); } CSystemAnnounce pa = null; bool res = _activateNotice(index, ref pa, account.getDbServerID()); if (res) { if (pa != null) { // OpLogMgr.getInstance().addLog(LogType.ACTIVATE_NOTICE, new ParamActivateNotice(pa.mTitle, pa.mContent, pa.mDayAmount), account); } } return(res); }
// 增加一条公告 // 标题,内容,显示天数 private bool _addNotice(string title, string content, int dayamount, int serverid) { Dictionary <string, object> data = null; // DBMgr.getInstance().getTableData("Config", "_key", "SystemAnnounceList", serverid, DbName.DB_FISH_LORD); if (data == null) { LOGW.Info("不存在Config, dbkey: SystemAnnounceList"); return(false); } List <CSystemAnnounce> tlist = getList(data); CSystemAnnounce a = new CSystemAnnounce(); a.mTitle = title; a.mContent = content; a.mGenTime = DateTime.Now.ToString(); a.mDayAmount = dayamount; a.mIsVisible = true; a.mId = Guid.NewGuid().ToString(); // 先前没有公告 if (tlist == null || tlist.Count == 0) { tlist = new List <CSystemAnnounce>(); } else // 已存在公告 { // 新增一条公告时,其他的公告设置为不显示 foreach (CSystemAnnounce sa in tlist) { sa.mIsVisible = false; } } tlist.Add(a); //data["_value"] = DBMgr.getInstance().getUserDefValueAsString(tlist); return(true); // DBMgr.getInstance().save("Config", data, "_key", "SystemAnnounceList", serverid, DbName.DB_FISH_LORD); }
// 激活第index个公告 private bool _activateNotice(int index, ref CSystemAnnounce out_an, int serverid) { Dictionary <string, object> data = null; // DBMgr.getInstance().getTableData("Config", "_key", "SystemAnnounceList", serverid, DbName.DB_FISH_LORD); if (data == null) { LOGW.Info("不存在dbkey: SystemAnnounceList"); return(false); } List <CSystemAnnounce> tlist = getList(data); if (tlist == null || tlist.Count == 0) { return(false); } if (index < 0 || index >= tlist.Count) { return(false); } for (int i = 0; i < tlist.Count; i++) { if (i == index) { tlist[i].mIsVisible = true; out_an = tlist[i]; } else { tlist[i].mIsVisible = false; } } // 保存内容 // data["_value"] = DBMgr.getInstance().getUserDefValueAsString(tlist); return(true); // DBMgr.getInstance().save("Config", data, "_key", "SystemAnnounceList", serverid, DbName.DB_FISH_LORD); }