public ActionResult SendSms(MessageRecodeEntity model, bool IsAuthor, string ReciveUserStr) { ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve <ISiteConfigFacadeService>(); ExecResult result = new ExecResult(); model.JournalID = CurAuthor.JournalID; model.SendUser = CurAuthor.AuthorID; model.MsgType = 2; model.SendDate = DateTime.Now; model.SendType = 0; model.SMServices = 1; if (ReciveUserStr.EndsWith(",")) { ReciveUserStr = ReciveUserStr.Substring(0, ReciveUserStr.Length - 1); } ReciveUserStr = ReciveUserStr.Replace(",", ","); if (!ReciveUserStr.Contains(",") && !IsAuthor) { model.ReciveAddress = ReciveUserStr; result = service.SendEmailOrSms(model); } else { var strList = ReciveUserStr.Split(',').Where(p => !string.IsNullOrWhiteSpace(p)).ToList(); if (IsAuthor) { result = service.SendEmailOrSms(strList.Select(p => TypeParse.ToLong(p)).ToList(), model); } else { result = service.SendEmailOrSms(strList, model); } } return(Json(new { result = result.result, msg = result.msg })); }
public bool AddMessageRecodeAndTemplate(MessageRecodeEntity messageRecodeEntity) { bool flag = false; StringBuilder sqlCommandText = new StringBuilder(); sqlCommandText.Append(" @JournalID"); sqlCommandText.Append(", @TemplateID"); sqlCommandText.Append(", @RecodeID"); DbCommand cmd = db.GetSqlStringCommand(String.Format("INSERT INTO dbo.MessageRecodeAndTemplate ({0},AddTime) VALUES ({1},getdate())", sqlCommandText.ToString().Replace("@", ""), sqlCommandText.ToString())); db.AddInParameter(cmd, "@JournalID", DbType.Int64, messageRecodeEntity.JournalID); db.AddInParameter(cmd, "@TemplateID", DbType.Int64, messageRecodeEntity.TemplateID); db.AddInParameter(cmd, "@RecodeID", DbType.Int64, messageRecodeEntity.RecodeID); try { db.ExecuteNonQuery(cmd); flag = true; } catch (SqlException sqlEx) { throw sqlEx; } return(flag); }
public List <MessageRecodeEntity> MakeMessageRecodeList(IDataReader dr) { List <MessageRecodeEntity> list = new List <MessageRecodeEntity>(); while (dr.Read()) { MessageRecodeEntity messageRecodeEntity = new MessageRecodeEntity(); messageRecodeEntity.RecodeID = (Int64)dr["RecodeID"]; messageRecodeEntity.JournalID = (Int64)dr["JournalID"]; messageRecodeEntity.CID = (Int64)dr["CID"]; messageRecodeEntity.SendUser = (Int64)dr["SendUser"]; messageRecodeEntity.ReciveUser = (Int64)dr["ReciveUser"]; messageRecodeEntity.ReciveAddress = (String)dr["ReciveAddress"]; messageRecodeEntity.SendDate = (DateTime)dr["SendDate"]; messageRecodeEntity.MsgType = (Byte)dr["MsgType"]; messageRecodeEntity.SendType = Convert.IsDBNull(dr["SendType"]) ? null : (Int32?)dr["SendType"]; messageRecodeEntity.MsgTitle = (String)dr["MsgTitle"]; messageRecodeEntity.MsgContent = (String)dr["MsgContent"]; messageRecodeEntity.AddDate = (DateTime)dr["AddDate"]; list.Add(messageRecodeEntity); } dr.Close(); return(list); }
public ActionResult AuthorSendEmail(Int64 CID, Int32 Status, MessageRecodeEntity model) { var user = GetAuthorInfo(CID, Status); if (user == null) { return(Json(new { result = EnumJsonResult.failure.ToString(), msg = "获取接收人失败,发送邮件失败!" })); } ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve <ISiteConfigFacadeService>(); ExecResult result = new ExecResult(); model.JournalID = CurAuthor.JournalID; model.SendUser = CurAuthor.AuthorID; model.MsgType = 1; model.MsgContent = Server.UrlDecode(model.MsgContent); model.SendDate = DateTime.Now; model.SendType = 0; model.sendMailName = CurAuthor.LoginName; //通过稿件编号获取接收人、接受地址 model.ReciveUser = user.AuthorID; model.ReciveAddress = user.LoginName; result = service.SendEmailOrSms(model); return(Json(new { result = result.result, msg = result.msg })); }
public MessageRecodeEntity GetMsgRecodeModel(MessageRecodeQuery query) { IMessageRecodeService service = ServiceContainer.Instance.Container.Resolve <IMessageRecodeService>(); MessageRecodeEntity model = service.GetMessageRecode(query); return(model); }
public ActionResult SendEmail(MessageRecodeEntity model, bool IsAuthor, string ReciveUserStr, string file) { ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve <ISiteConfigFacadeService>(); ExecResult result = new ExecResult(); model.JournalID = CurAuthor.JournalID; model.SendUser = CurAuthor.AuthorID; model.MsgType = 1; model.MsgContent = Server.UrlDecode(model.MsgContent); model.SendDate = DateTime.Now; model.SendType = 0; model.sendMailName = CurAuthor.LoginName; if (ReciveUserStr.EndsWith(",")) { ReciveUserStr = ReciveUserStr.Substring(0, ReciveUserStr.Length - 1); } ReciveUserStr = ReciveUserStr.Replace(",", ","); if (!string.IsNullOrWhiteSpace(file)) //附件处理 { string folder = SiteConfig.UploadPath; var arry = file.Split(','); for (int i = 0; i < arry.Length; i++) { if (!string.IsNullOrWhiteSpace(folder)) { arry[i] = folder + arry[i]; } else { arry[i] = Server.MapPath(arry[i]); } } model.FilePath = arry; } if (!ReciveUserStr.Contains(",") && !IsAuthor) { model.ReciveAddress = ReciveUserStr; result = service.SendEmailOrSms(model); } else { var strList = ReciveUserStr.Split(',').Where(p => !string.IsNullOrWhiteSpace(p)).ToList(); if (IsAuthor) { result = service.SendEmailOrSms(strList.Select(p => TypeParse.ToLong(p)).ToList(), model); } else { result = service.SendEmailOrSms(strList, model); } } return(Json(new { result = result.result, msg = result.msg })); }
/// <summary> /// 批量保存缴费通知数据 /// </summary> /// <param name="model"></param> /// <returns></returns> public ExecResult BatchSavePayNotice(IList <PayNoticeEntity> list) { ExecResult result = new ExecResult(); if (list != null && list.Count > 0) { HttpClientHelper clientHelper = new HttpClientHelper(); result = clientHelper.Post <ExecResult, IList <PayNoticeEntity> >(GetAPIUrl(APIConstant.PAYNOTICE_BATCHSAVE), list); if (result.result == EnumJsonResult.success.ToString()) { int index = 0; string returnData = string.Empty; foreach (var model in list) { SiteConfigFacadeAPIService service = new SiteConfigFacadeAPIService(); MessageRecodeEntity logModel = new MessageRecodeEntity(); logModel.MsgType = 1; logModel.JournalID = model.JournalID; logModel.SendUser = model.SendUser; logModel.MsgTitle = model.Title; logModel.MsgContent = model.Body; logModel.CID = model.CID; if (model.PayType == 1) { logModel.SendType = -3; } else if (model.PayType == 2) { logModel.SendType = -4; } IList <Int64> userList = new List <Int64>() { model.AuthorID }; var emailResult = service.SendEmailOrSms(userList, logModel); index++; returnData = emailResult.msg; if (model.IsSms && !string.IsNullOrWhiteSpace(model.SmsContent)) { logModel.MsgType = 2; logModel.MsgContent = model.SmsContent; var smsResult = service.SendEmailOrSms(userList, logModel); result.msg += smsResult.msg; } } result.msg += returnData + "共计通知 " + index + " 人"; } } return(result); }
public List <MessageRecodeEntity> MakeMessageRecodeList(DataTable dt) { List <MessageRecodeEntity> list = new List <MessageRecodeEntity>(); if (dt != null) { for (int i = 0; i < dt.Rows.Count; i++) { MessageRecodeEntity messageRecodeEntity = MakeMessageRecode(dt.Rows[i]); list.Add(messageRecodeEntity); } } return(list); }
public bool AddMessageRecode(MessageRecodeEntity messageRecodeEntity) { bool flag = false; StringBuilder sqlCommandText = new StringBuilder(); sqlCommandText.Append(" @JournalID"); sqlCommandText.Append(", @CID"); sqlCommandText.Append(", @SendUser"); sqlCommandText.Append(", @ReciveUser"); sqlCommandText.Append(", @ReciveAddress"); sqlCommandText.Append(", @SendDate"); sqlCommandText.Append(", @MsgType"); sqlCommandText.Append(", @SendType"); sqlCommandText.Append(", @MsgTitle"); sqlCommandText.Append(", @MsgContent"); DbCommand cmd = db.GetSqlStringCommand(String.Format("INSERT INTO dbo.MessageRecode ({0},AddDate) VALUES ({1},getdate()) SELECT @@IDENTITY as RecodeID", sqlCommandText.ToString().Replace("@", ""), sqlCommandText.ToString())); db.AddInParameter(cmd, "@JournalID", DbType.Int64, messageRecodeEntity.JournalID); db.AddInParameter(cmd, "@CID", DbType.Int64, messageRecodeEntity.CID); db.AddInParameter(cmd, "@SendUser", DbType.Int64, messageRecodeEntity.SendUser); db.AddInParameter(cmd, "@ReciveUser", DbType.Int64, messageRecodeEntity.ReciveUser); db.AddInParameter(cmd, "@ReciveAddress", DbType.AnsiString, messageRecodeEntity.ReciveAddress); db.AddInParameter(cmd, "@SendDate", DbType.DateTime, messageRecodeEntity.SendDate); db.AddInParameter(cmd, "@MsgType", DbType.Byte, messageRecodeEntity.MsgType); db.AddInParameter(cmd, "@SendType", DbType.Int32, messageRecodeEntity.SendType); db.AddInParameter(cmd, "@MsgTitle", DbType.AnsiString, messageRecodeEntity.MsgTitle); db.AddInParameter(cmd, "@MsgContent", DbType.AnsiString, messageRecodeEntity.MsgContent); try { IDataReader dr = db.ExecuteReader(cmd); if (dr.Read()) { long recodeID = Convert.ToInt64(dr["RecodeID"]); MessageRecodeEntity currentEntity = new MessageRecodeEntity() { RecodeID = recodeID, JournalID = messageRecodeEntity.JournalID, TemplateID = messageRecodeEntity.TemplateID }; AddMessageRecodeAndTemplate(currentEntity); flag = true; } } catch (SqlException sqlEx) { throw sqlEx; } return(flag); }
private MessageRecodeEntity GetMsgModel(Int64 RecodeID) { MessageRecodeEntity model = null; if (RecodeID > 0) { ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve <ISiteConfigFacadeService>(); MessageRecodeQuery query = new MessageRecodeQuery(); query.JournalID = CurAuthor.JournalID; query.RecodeID = RecodeID; model = service.GetMsgRecodeModel(query); } if (model == null) { model = new MessageRecodeEntity(); } return(model); }
public MessageRecodeEntity GetMessageRecode(MessageRecodeQuery query) { MessageRecodeEntity messageRecodeEntity = null; StringBuilder sqlCommandText = new StringBuilder(); sqlCommandText.Append("SELECT TOP 1 * FROM dbo.MessageRecode WITH(NOLOCK)"); sqlCommandText.Append(" WHERE RecodeID=@RecodeID AND JournalID=@JournalID"); DbCommand cmd = db.GetSqlStringCommand(sqlCommandText.ToString()); db.AddInParameter(cmd, "@RecodeID", DbType.Int64, query.RecodeID); db.AddInParameter(cmd, "@JournalID", DbType.Int64, query.JournalID); using (IDataReader dr = db.ExecuteReader(cmd)) { messageRecodeEntity = MakeMessageRecode(dr); } return(messageRecodeEntity); }
public ActionResult SendIssueListSelectAuthor(string RecEmail, string Content) { ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve <ISiteConfigFacadeService>(); MessageRecodeEntity model = new MessageRecodeEntity(); model.ReciveAddress = RecEmail; model.JournalID = CurAuthor.JournalID; model.MsgType = 1; model.MsgTitle = "《" + SiteConfig.SiteName + "》期刊目录推送"; model.MsgContent = Content; ExecResult result = new ExecResult(); var strList = RecEmail.Split(',').Where(p => !string.IsNullOrWhiteSpace(p)).ToList(); IAuthorPlatformFacadeService AuthorService = ServiceContainer.Instance.Container.Resolve <IAuthorPlatformFacadeService>(); AuthorDetailQuery query = new AuthorDetailQuery(); query.JournalID = CurAuthor.JournalID; query.CurrentPage = 1; query.PageSize = 1; for (int i = 0; i < strList.Count; i++) { query.LoginName = strList[i]; Pager <AuthorDetailEntity> pager = AuthorService.GetAuthorDetailPageList(query); if (i == 0) { Content = Content.Replace("%Name%", pager.ItemList[0].AuthorName); } else { query.LoginName = strList[i - 1]; Pager <AuthorDetailEntity> pagerTemp = AuthorService.GetAuthorDetailPageList(query); Content = Content.Replace(pagerTemp.ItemList[0].AuthorName, pager.ItemList[0].AuthorName); } service.SendEmail("《" + SiteConfig.SiteName + "》期刊目录推送", Content, strList[i], SiteConfig.SiteName, CurAuthor.JournalID); } return(Json(new { flag = 1 })); }
public bool UpdateMessageRecode(MessageRecodeEntity messageRecodeEntity) { bool flag = false; StringBuilder whereCommandText = new StringBuilder(); whereCommandText.Append(" RecodeID=@RecodeID"); StringBuilder sqlCommandText = new StringBuilder(); sqlCommandText.Append(", SendUser=@SendUser"); sqlCommandText.Append(", ReciveUser=@ReciveUser"); sqlCommandText.Append(", ReciveAddress=@ReciveAddress"); sqlCommandText.Append(", SendDate=@SendDate"); sqlCommandText.Append(", MsgType=@MsgType"); sqlCommandText.Append(", SendType=@SendType"); sqlCommandText.Append(", MsgTitle=@MsgTitle"); sqlCommandText.Append(", MsgContent=@MsgContent"); DbCommand cmd = db.GetSqlStringCommand(String.Format("UPDATE dbo.MessageRecode SET {0} WHERE {1}", sqlCommandText.ToString(), whereCommandText.ToString())); db.AddInParameter(cmd, "@RecodeID", DbType.Int64, messageRecodeEntity.RecodeID); db.AddInParameter(cmd, "@SendUser", DbType.Int64, messageRecodeEntity.SendUser); db.AddInParameter(cmd, "@ReciveUser", DbType.Int64, messageRecodeEntity.ReciveUser); db.AddInParameter(cmd, "@ReciveAddress", DbType.AnsiString, messageRecodeEntity.ReciveAddress); db.AddInParameter(cmd, "@SendDate", DbType.DateTime, messageRecodeEntity.SendDate); db.AddInParameter(cmd, "@MsgType", DbType.Byte, messageRecodeEntity.MsgType); db.AddInParameter(cmd, "@SendType", DbType.Int32, messageRecodeEntity.SendType); db.AddInParameter(cmd, "@MsgTitle", DbType.AnsiString, messageRecodeEntity.MsgTitle); db.AddInParameter(cmd, "@MsgContent", DbType.AnsiString, messageRecodeEntity.MsgContent); try { db.ExecuteNonQuery(cmd); flag = true; } catch (SqlException sqlEx) { throw sqlEx; } return(flag); }
public MessageRecodeEntity MakeMessageRecode(DataRow dr) { MessageRecodeEntity messageRecodeEntity = null; if (dr != null) { messageRecodeEntity = new MessageRecodeEntity(); messageRecodeEntity.RecodeID = (Int64)dr["RecodeID"]; messageRecodeEntity.JournalID = (Int64)dr["JournalID"]; messageRecodeEntity.CID = (Int64)dr["CID"]; messageRecodeEntity.SendUser = (Int64)dr["SendUser"]; messageRecodeEntity.ReciveUser = (Int64)dr["ReciveUser"]; messageRecodeEntity.ReciveAddress = (String)dr["ReciveAddress"]; messageRecodeEntity.SendDate = (DateTime)dr["SendDate"]; messageRecodeEntity.MsgType = (Byte)dr["MsgType"]; messageRecodeEntity.SendType = Convert.IsDBNull(dr["SendType"]) ? null : (Int32?)dr["SendType"]; messageRecodeEntity.MsgTitle = (String)dr["MsgTitle"]; messageRecodeEntity.MsgContent = (String)dr["MsgContent"]; messageRecodeEntity.AddDate = (DateTime)dr["AddDate"]; } return(messageRecodeEntity); }
/// <summary> /// 保存缴费通知数据 /// </summary> /// <param name="model"></param> /// <returns></returns> public ExecResult SavePayNotice(PayNoticeEntity model) { HttpClientHelper clientHelper = new HttpClientHelper(); ExecResult result = clientHelper.Post <ExecResult, PayNoticeEntity>(GetAPIUrl(APIConstant.PAYNOTICE_SAVE), model); if (result.result == EnumJsonResult.success.ToString()) { SiteConfigFacadeAPIService service = new SiteConfigFacadeAPIService(); MessageRecodeEntity logModel = new MessageRecodeEntity(); logModel.MsgType = 1; logModel.JournalID = model.JournalID; logModel.SendUser = model.SendUser; logModel.MsgTitle = model.Title; logModel.MsgContent = model.Body; logModel.CID = model.CID; if (model.PayType == 1) { logModel.SendType = -3; } else if (model.PayType == 2) { logModel.SendType = -4; } IList <Int64> userList = new List <Int64>() { model.AuthorID }; var emailResult = service.SendEmailOrSms(userList, logModel); result.msg += emailResult.msg; if (model.IsSms && !string.IsNullOrWhiteSpace(model.SmsContent)) { logModel.MsgType = 2; logModel.MsgContent = model.SmsContent; var smsResult = service.SendEmailOrSms(userList, logModel); result.msg += smsResult.msg; } } return(result); }
public bool DeleteMessageRecode(MessageRecodeEntity messageRecodeEntity) { bool flag = false; StringBuilder sqlCommandText = new StringBuilder(); sqlCommandText.Append("DELETE FROM dbo.MessageRecode"); sqlCommandText.Append(" WHERE RecodeID=@RecodeID"); DbCommand cmd = db.GetSqlStringCommand(sqlCommandText.ToString()); db.AddInParameter(cmd, "@RecodeID", DbType.Int64, messageRecodeEntity.RecodeID); try { db.ExecuteNonQuery(cmd); flag = true; } catch (SqlException sqlEx) { throw sqlEx; } return(flag); }
/// <summary> /// 投稿 /// </summary> /// <param name="model"></param> /// <returns></returns> public ExecResult SaveContributionInfo(ContributionInfoEntity model) { HttpClientHelper clientHelper = new HttpClientHelper(); ExecResult result = clientHelper.Post <ExecResult, ContributionInfoEntity>(GetAPIUrl(APIConstant.CONTRIBUTIONINFO_SAVE), model); if (result.result.Equals(EnumJsonResult.success.ToString()) && model.CID == 0 && model.Status != -1)//新投稿,不是草稿 { #region 投稿回执 Action action = () => { try { SiteConfigFacadeAPIService service = new SiteConfigFacadeAPIService(); MessageTemplateQuery queryTemp = new MessageTemplateQuery(); queryTemp.JournalID = model.JournalID; queryTemp.TCategory = -5; //回执 var tempList = service.GetMessageTempList(queryTemp).ToList(); if (tempList == null) { return; } var EmailModel = tempList.Find(p => p.TType == 1); var SmsModel = tempList.Find(p => p.TType == 2); if (EmailModel == null && SmsModel == null) { return; } MessageRecodeEntity LogModel = new MessageRecodeEntity(); LogModel.JournalID = model.JournalID; LogModel.SendType = -5; LogModel.SendUser = model.AuthorID; IDictionary <string, string> dict = service.GetEmailVariable(); var user = new AuthorFacadeAPIService().GetAuthorInfo(new AuthorInfoQuery() { JournalID = model.JournalID, AuthorID = model.AuthorID }); dict["${接收人}$"] = user.RealName; dict["${邮箱}$"] = user.LoginName; dict["${手机}$"] = user.Mobile; dict["${稿件编号}$"] = result.resultStr; dict["${稿件标题}$"] = model.Title; dict["$稿件主键$"] = result.resultID.ToString(); ExecResult execResult = new ExecResult(); if (EmailModel != null) { LogModel.MsgType = 1; execResult = service.SendEmailOrSms(new Dictionary <Int64, IDictionary <string, string> >() { { model.AuthorID, dict } }, LogModel); } if (SmsModel != null) { LogModel.MsgType = 2; execResult = service.SendEmailOrSms(new Dictionary <Int64, IDictionary <string, string> >() { { model.AuthorID, dict } }, LogModel); } if (!execResult.result.Equals(EnumJsonResult.success.ToString())) { throw new Exception(execResult.msg); } } catch (Exception ex) { LogProvider.Instance.Error("发送投稿回执失败,稿件编码【" + result.resultStr + "】:" + ex.ToString()); } }; action.BeginInvoke(null, null); #endregion } return(result); }
/// <summary> /// 将实体数据存入存储媒介(持久化一个对象) /// </summary> /// <param name="messageRecode">MessageRecodeEntity实体对象</param> /// <returns>true:存储成功 false:存储失败</returns> public bool AddMessageRecode(MessageRecodeEntity messageRecode) { return(MessageRecodeDataAccess.Instance.AddMessageRecode(messageRecode)); }
/// <summary> /// 从存储媒介删除实体数据 /// </summary> /// <param name="messageRecode">MessageRecodeEntity实体对象</param> /// <returns>true:删除成功 false:删除失败</returns> public bool DeleteMessageRecode(MessageRecodeEntity messageRecode) { return(MessageRecodeDataAccess.Instance.DeleteMessageRecode(messageRecode)); }
/// <summary> /// 将实体数据存入存储媒介(持久化一个对象) /// </summary> /// <param name="messageRecode">MessageRecodeEntity实体对象</param> /// <returns>true:存储成功 false:存储失败</returns> public bool AddMessageRecode(MessageRecodeEntity messageRecode) { return(MessageRecodeBusProvider.AddMessageRecode(messageRecode)); }
/// <summary> /// 更新存储媒介中的实体数据 /// </summary> /// <param name="messageRecode">MessageRecodeEntity实体对象</param> /// <returns>true:更新成功 false:更新失败</returns> public bool UpdateMessageRecode(MessageRecodeEntity messageRecode) { return(MessageRecodeBusProvider.UpdateMessageRecode(messageRecode)); }
/// <summary> /// 从存储媒介删除实体数据 /// </summary> /// <param name="messageRecode">MessageRecodeEntity实体对象</param> /// <returns>true:删除成功 false:删除失败</returns> public bool DeleteMessageRecode(MessageRecodeEntity messageRecode) { return(MessageRecodeBusProvider.DeleteMessageRecode(messageRecode)); }