public ExecResult Del(MessageTemplateQuery query) { ExecResult execResult = new ExecResult(); IMessageTemplateService service = ServiceContainer.Instance.Container.Resolve<IMessageTemplateService>(); Int64[] TemplateIDs = query.TemplateIDs; if (TemplateIDs == null) { execResult.result = EnumJsonResult.failure.ToString(); execResult.msg = "没有删除任何数据!"; return execResult; } string msg = query.TType == 2 ? "短信模版" : "邮件模版"; bool result = service.BatchDeleteMessageTemplate(TemplateIDs); if (result) { execResult.result = EnumJsonResult.success.ToString(); execResult.msg = "删除" + msg + "成功!"; } else { execResult.result = EnumJsonResult.failure.ToString(); execResult.msg = "删除" + msg + "失败!"; } return execResult; }
public ActionResult GetList(MessageTemplateQuery query) { ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve<ISiteConfigFacadeService>(); query.JournalID = CurAuthor.JournalID; query.TType = 2; IList<MessageTemplateEntity> list = service.GetMessageTempList(query); return Json(new { list }); }
public ActionResult Delete(Int64[] TemplateIDs) { ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve<ISiteConfigFacadeService>(); MessageTemplateQuery query = new MessageTemplateQuery(); query.JournalID = CurAuthor.JournalID; query.TType = 2; query.TemplateIDs = TemplateIDs; ExecResult result = service.DelMessageTemp(query); return Json(new { result = result.result, msg = result.msg }); }
public ActionResult GetPageList(MessageTemplateQuery query) { ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve<ISiteConfigFacadeService>(); query.JournalID = CurAuthor.JournalID; query.TType = 2; query.CurrentPage = Convert.ToInt32(Request.Params["page"]); query.PageSize = Convert.ToInt32(Request.Params["pagesize"]); Pager<MessageTemplateEntity> pager = service.GetMessageTempPageList(query); return Json(new { Rows = pager.ItemList, Total = pager.TotalRecords }); }
public MessageTemplateEntity GetModel(MessageTemplateQuery query) { IMessageTemplateService service = ServiceContainer.Instance.Container.Resolve<IMessageTemplateService>(); MessageTemplateEntity model = null; if (query.ModelType == 1) model = service.GetMessageTemplate(query.JournalID, query.TCategory.Value, query.TType.Value); else model = service.GetMessageTemplate(query.TemplateID.Value); return model; }
/// <summary> /// 获取邮件短信模版实体 /// </summary> /// <param name="query"></param> /// <returns></returns> public MessageTemplateEntity GetMessageTempModel(MessageTemplateQuery query) { HttpClientHelper clientHelper = new HttpClientHelper(); MessageTemplateEntity model = clientHelper.Post<MessageTemplateEntity, MessageTemplateQuery>(GetAPIUrl(APIConstant.MESSAGETEMP_GETMODEL), query); return model; }
public IList<MessageTemplateEntity> GetList(MessageTemplateQuery query) { IMessageTemplateService service = ServiceContainer.Instance.Container.Resolve<IMessageTemplateService>(); IList<MessageTemplateEntity> list = service.GetMessageTemplateList(query); return list; }
public Pager<MessageTemplateEntity> GetPageList(MessageTemplateQuery query) { IMessageTemplateService service = ServiceContainer.Instance.Container.Resolve<IMessageTemplateService>(); Pager<MessageTemplateEntity> pager = service.GetMessageTemplatePageList(query); return pager; }
public IDictionary<int, string> GetTCategoryDictChecked(MessageTemplateQuery query) { IMessageTemplateService service = ServiceContainer.Instance.Container.Resolve<IMessageTemplateService>(); return service.GetTCategoryDcit(query.JournalID, query.TType.Value, true); }
/// <summary> /// 删除邮件短信模版 /// </summary> /// <param name="query"></param> /// <returns></returns> public ExecResult DelMessageTemp(MessageTemplateQuery query) { HttpClientHelper clientHelper = new HttpClientHelper(); ExecResult result = clientHelper.Post<ExecResult, MessageTemplateQuery>(GetAPIUrl(APIConstant.MESSAGETEMP_DEL), query); return result; }
/// <summary> /// 审稿单 /// </summary> /// <param name="ActionID">当前所做操作ID</param> /// <param name="StatusID">当前状态</param> /// <param name="CIDS">稿件ID,多个稿件ID用逗号分隔</param> /// <returns></returns> public ActionResult AuditBill(long ActionID, long StatusID, string CIDS) { //继续送交 int IsContinueSubmit = 0; int ActionType = 0;//操作类型:标识继续送交/继续送专家复审 if (ActionID == 0) { ActionType = 0; ISiteConfigFacadeService facadeService = ServiceContainer.Instance.Container.Resolve<ISiteConfigFacadeService>(); DictEntity dicteEntity = facadeService.GetDictModelByKey(new DictQuery() { JournalID = CurAuthor.JournalID, DictKey = "MoreSubmit" }); if (dicteEntity != null) { IsContinueSubmit = 1; ISiteConfigFacadeService currentService = ServiceContainer.Instance.Container.Resolve<ISiteConfigFacadeService>(); IList<DictValueEntity> list = currentService.GetDictValueList(new DictValueQuery() { JournalID = CurAuthor.JournalID, DictKey = dicteEntity.DictKey }); if (list != null && list.Count > 0) { DictValueEntity entity = list.Single<DictValueEntity>(); if (entity != null) { ActionID = entity.ValueID; } } } else { IsContinueSubmit = -1; } } //继续送复审 int IsContinueReSubmit = 0; if (ActionID == -1) { ActionType = -1; ISiteConfigFacadeService facadeService = ServiceContainer.Instance.Container.Resolve<ISiteConfigFacadeService>(); DictEntity dicteEntity = facadeService.GetDictModelByKey(new DictQuery() { JournalID = CurAuthor.JournalID, DictKey = "MoreReSubmit" }); if (dicteEntity != null) { IsContinueReSubmit = 1; ISiteConfigFacadeService currentService = ServiceContainer.Instance.Container.Resolve<ISiteConfigFacadeService>(); IList<DictValueEntity> list = currentService.GetDictValueList(new DictValueQuery() { JournalID = CurAuthor.JournalID, DictKey = dicteEntity.DictKey }); if (list != null && list.Count > 0) { DictValueEntity entity = list.Single<DictValueEntity>(); if (entity != null) { ActionID = entity.ValueID; } } } else { IsContinueReSubmit = -1; } } //新加实体 SiteConfigQuery SiteConfigQuery = new SiteConfigQuery(); SiteConfigQuery.JournalID = CurAuthor.JournalID; ISiteConfigFacadeService SiteConfigService = ServiceContainer.Instance.Container.Resolve<ISiteConfigFacadeService>(); SiteConfigEntity model = SiteConfigService.GetSiteConfigModel(SiteConfigQuery); if (model == null) model = new SiteConfigEntity(); CirculationEntity cirEntity = new CirculationEntity(); cirEntity.ActionID = ActionID; cirEntity.JournalID = JournalID; cirEntity.StatusID = StatusID; IDictionary<long, long> dictCIDMap = new Dictionary<long, long>(); string[] CIDArray = CIDS.Split(','); long CID = 0; long FlowLogID = 0; foreach (string CIDLogID in CIDArray) { if (!string.IsNullOrEmpty(CIDLogID)) { string[] CIDANDLogID = CIDLogID.Split(':'); CID = TypeParse.ToLong(CIDANDLogID[0]); FlowLogID = TypeParse.ToLong(CIDANDLogID[1]); if (!dictCIDMap.ContainsKey(CID) && CID > 0) { dictCIDMap.Add(CID, FlowLogID); } } } cirEntity.CIDS = string.Join(",", dictCIDMap.Keys); cirEntity.DictLogID = dictCIDMap; IFlowFacadeService flowService = ServiceContainer.Instance.Container.Resolve<IFlowFacadeService>(); FlowStep flowStepInfo = flowService.GetNextFlowStep(cirEntity); # region 让当前用户排第一个 if (flowStepInfo.FlowAuthorList != null) { WKT.Model.AuthorInfoEntity curEditor = null; foreach (WKT.Model.AuthorInfoEntity item in flowStepInfo.FlowAuthorList) { if (item.AuthorID == CurAuthor.AuthorID) { curEditor = item; break; } } if (curEditor != null) { flowStepInfo.FlowAuthorList.Remove(curEditor); flowStepInfo.FlowAuthorList.Insert(0, curEditor); } } # endregion flowStepInfo.DictLogID = dictCIDMap; ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve<ISiteConfigFacadeService>(); MessageTemplateQuery query = new MessageTemplateQuery(); query.JournalID = CurAuthor.JournalID; query.TType = 1; if (flowStepInfo.FlowAction != null) { if (flowStepInfo.FlowAction.EmailTemplate > 0) { query.TemplateID = flowStepInfo.FlowAction.EmailTemplate; flowStepInfo.EmailTemplate = service.GetMessageTempModel(query); if (CIDArray.Length == 1)//仅选择一篇稿件处理时,替换其中的稿件编号/标题变量为具体内容 flowStepInfo.EmailTemplate.TContent = ReplaceContent(CID,flowStepInfo.EmailTemplate.TContent); } if (flowStepInfo.FlowAction.SMSTemplate > 0) { query.TType = 2; query.TemplateID = flowStepInfo.FlowAction.SMSTemplate; flowStepInfo.SMSTemplate = service.GetMessageTempModel(query); if (CIDArray.Length == 1) flowStepInfo.SMSTemplate.TContent = ReplaceContent(CID, flowStepInfo.SMSTemplate.TContent); } } else { flowStepInfo.FlowAction = new FlowActionEntity { ActionID = -1, ActionType = 1, ActionRoleID = 0 }; flowStepInfo.FlowConfig = new FlowConfigEntity(); } ViewBag.StatusID = StatusID; ViewBag.ActionType = ActionType; ViewBag.IsContinueSubmit = IsContinueSubmit; ViewBag.IsContinueReSubmit = IsContinueReSubmit; return View(flowStepInfo); }
/// <summary> /// 获取邮件短信模版分页数据 /// </summary> /// <param name="query"></param> /// <returns></returns> public Pager<MessageTemplateEntity> GetMessageTempPageList(MessageTemplateQuery query) { HttpClientHelper clientHelper = new HttpClientHelper(); Pager<MessageTemplateEntity> pager = clientHelper.Post<Pager<MessageTemplateEntity>, MessageTemplateQuery>(GetAPIUrl(APIConstant.MESSAGETEMP_GETPAGELIST), query); return pager; }
/// <summary> /// 获取邮件短信模版数据 /// </summary> /// <param name="query"></param> /// <returns></returns> public IList<MessageTemplateEntity> GetMessageTempList(MessageTemplateQuery query) { HttpClientHelper clientHelper = new HttpClientHelper(); IList<MessageTemplateEntity> list = clientHelper.Post<IList<MessageTemplateEntity>, MessageTemplateQuery>(GetAPIUrl(APIConstant.MESSAGETEMP_GETLIST), query); return list; }
/// <summary> /// 将查询实体转换为Where语句 /// <param name="query">查询实体</param> /// <returns>获取Where语句,不包含Where</returns> /// </summary> public string MessageTemplateQueryToSQLWhere(MessageTemplateQuery query) { StringBuilder strFilter = new StringBuilder(" JournalID=" + query.JournalID); if (query.TType != null) strFilter.AppendFormat(" and TType={0}", query.TType.Value); if (query.TCategory != null) strFilter.AppendFormat(" and TCategory={0}", query.TCategory); query.Title = query.Title.TextFilter(); if (string.IsNullOrWhiteSpace(query.Title)) { strFilter.AppendFormat(" and Title like '%{0}%'", query.Title); } return strFilter.ToString(); }
/// <summary> /// 分页获取符合查询条件的数据 /// </summary> /// <param name="messageTemplateQuery">MessageTemplateQuery查询实体对象</param> /// <returns>Pager<MessageTemplateEntity></returns> public Pager<MessageTemplateEntity> GetMessageTemplatePageList(MessageTemplateQuery messageTemplateQuery) { return MessageTemplateBusProvider.GetMessageTemplatePageList(messageTemplateQuery); }
/// <summary> /// 将查询实体转换为Order语句 /// <param name="query">查询实体</param> /// <returns>获取Order语句,不包含Order</returns> /// </summary> public string MessageTemplateQueryToSQLOrder(MessageTemplateQuery query) { return " TemplateID DESC"; }
public Pager<MessageTemplateEntity> GetMessageTemplatePageList(MessageTemplateQuery query) { string strSql = "SELECT *,ROW_NUMBER() OVER(ORDER BY TemplateID DESC) AS ROW_ID FROM dbo.MessageTemplate with(nolock)", sumStr = "SELECT RecordCount=COUNT(1) FROM dbo.MessageTemplate with(nolock)"; string whereSQL = MessageTemplateQueryToSQLWhere(query); if (!string.IsNullOrWhiteSpace(whereSQL)) { strSql += " WHERE " + whereSQL; sumStr += " WHERE " + whereSQL; } return db.GetPageList<MessageTemplateEntity>(string.Format(SQL_Page_Select, strSql, query.StartIndex, query.EndIndex) , sumStr , query.CurrentPage, query.PageSize , (dr, pager) => { pager.TotalRecords = TypeParse.ToLong(dr["RecordCount"]); } , MakeMessageTemplateList); }
public List<MessageTemplateEntity> GetMessageTemplateList(MessageTemplateQuery query) { string strSql = "SELECT * FROM dbo.MessageTemplate with(nolock)"; string whereSQL = MessageTemplateQueryToSQLWhere(query); if (!string.IsNullOrWhiteSpace(whereSQL)) { strSql += " WHERE " + whereSQL; } strSql += " order by TemplateID"; return db.GetList<MessageTemplateEntity>(strSql, MakeMessageTemplateList); }
private MessageTemplateEntity GetModel(Int64 TemplateID) { MessageTemplateEntity model = null; if (TemplateID > 0) { MessageTemplateQuery query = new MessageTemplateQuery(); query.JournalID = CurAuthor.JournalID; query.TType = 2; query.TemplateID = TemplateID; ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve<ISiteConfigFacadeService>(); model = service.GetMessageTempModel(query); } if (model == null) model = new MessageTemplateEntity(); return model; }
/// <summary> /// 消息通知 /// </summary> /// <param name="ActionID">操作ID</param> /// <param name="StatusID">当前审稿状态</param> /// <param name="CIDS">稿件ID,多个稿件ID用逗号分隔</param> /// <returns></returns> public ActionResult SendMessage(long ActionID, long StatusID, string CIDS) { CirculationEntity cirEntity = new CirculationEntity(); cirEntity.ActionID = ActionID; cirEntity.JournalID = JournalID; cirEntity.StatusID = StatusID; IDictionary<long, long> dictCIDMap = new Dictionary<long, long>(); string[] CIDArray = CIDS.Split(','); long CID = 0; long FlowLogID = 0; foreach (string CIDLogID in CIDArray) { if (!string.IsNullOrEmpty(CIDLogID)) { string[] CIDANDLogID = CIDLogID.Split(':'); CID = TypeParse.ToLong(CIDANDLogID[0]); FlowLogID = TypeParse.ToLong(CIDANDLogID[1]); if (!dictCIDMap.ContainsKey(CID) && CID > 0) { dictCIDMap.Add(CID, FlowLogID); } } } cirEntity.CIDS = string.Join(",", dictCIDMap.Keys); cirEntity.DictLogID = dictCIDMap; IFlowFacadeService flowService = ServiceContainer.Instance.Container.Resolve<IFlowFacadeService>(); FlowStep flowStepInfo = flowService.GetNextFlowStep(cirEntity); flowStepInfo.DictLogID = dictCIDMap; if (flowStepInfo.FlowAction != null) { MessageTemplateQuery query = new MessageTemplateQuery(); query.JournalID = CurAuthor.JournalID; query.TType = 1; ISiteConfigFacadeService service = ServiceContainer.Instance.Container.Resolve<ISiteConfigFacadeService>(); if (flowStepInfo.FlowAction.EmailTemplate > 0) { query.TemplateID = flowStepInfo.FlowAction.EmailTemplate; flowStepInfo.EmailTemplate = service.GetMessageTempModel(query); } if (flowStepInfo.FlowAction.SMSTemplate > 0) { query.TType = 2; query.TemplateID = flowStepInfo.FlowAction.SMSTemplate; flowStepInfo.SMSTemplate = service.GetMessageTempModel(query); } } ViewBag.StatusID = StatusID; return View(flowStepInfo); }
/// <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="query"></param> /// <returns></returns> public IDictionary<int, string> GetTCategoryDictChecked(MessageTemplateQuery query) { HttpClientHelper clientHelper = new HttpClientHelper(); IDictionary<int, string> dict = clientHelper.Post<IDictionary<int, string>, MessageTemplateQuery>(GetAPIUrl(APIConstant.MESSAGETEMP_TCATEGORYDICTCHECKED), query); return dict; }
/// <summary> /// 获取所有符合查询条件的数据 /// </summary> /// <param name="messageTemplateQuery">MessageTemplateQuery查询实体对象</param> /// <returns>List<MessageTemplateEntity></returns> public List<MessageTemplateEntity> GetMessageTemplateList(MessageTemplateQuery messageTemplateQuery) { return MessageTemplateDataAccess.Instance.GetMessageTemplateList(messageTemplateQuery); }
/// <summary> /// 获取邮件短信模版实体 /// </summary> /// <param name="JournalID"></param> /// <param name="TCategory"></param> /// <returns></returns> public MessageTemplateEntity GetMessageTemplate(Int64 JournalID, Int32 TCategory, Byte TType) { MessageTemplateQuery query = new MessageTemplateQuery(); query.JournalID = JournalID; query.TCategory = TCategory; query.TType = TType; query.ModelType = 1; return GetMessageTempModel(query); }