/// <summary> /// 获取缴费通知实体 /// </summary> /// <param name="query"></param> /// <returns></returns> public PayNoticeEntity GetPayNoticeModel(PayNoticeQuery query) { PayNoticeEntity model = null; try { if (query.NoticeID > 0) { HttpClientHelper clientHelper = new HttpClientHelper(); model = clientHelper.Post<PayNoticeEntity, PayNoticeQuery>(GetAPIUrl(APIConstant.PAYNOTICE_GETMODEL), query); } if (model == null) { model = new PayNoticeEntity(); model.JournalID = query.JournalID; model.PayType = query.PayType.Value; model.CID = query.CID.Value; SiteConfigFacadeAPIService service = new SiteConfigFacadeAPIService(); MessageTemplateEntity temp = null; if (model.PayType == 1) temp = service.GetMessageTemplate(model.JournalID, -3, 1); else if (model.PayType == 2) temp = service.GetMessageTemplate(model.JournalID, -4, 1); if (temp != null) model.Body = temp.TContent; if (!string.IsNullOrWhiteSpace(model.Body)) { AuthorPlatformFacadeAPIService authorService = new AuthorPlatformFacadeAPIService(); ContributionInfoQuery authorQuery = new ContributionInfoQuery(); authorQuery.JournalID = model.JournalID; authorQuery.CID = model.CID; authorQuery.IsAuxiliary = false; var contribution = authorService.GetContributionInfoModel(authorQuery); if (contribution != null) { IDictionary<string, string> dict = service.GetEmailVariable(); var user = new AuthorFacadeAPIService().GetAuthorInfo(new AuthorInfoQuery() { JournalID = model.JournalID, AuthorID = contribution.AuthorID }); if (!query.IsBatch) { dict["${接收人}$"] = user.RealName; dict["${邮箱}$"] = user.LoginName; dict["${手机}$"] = user.Mobile; dict["${稿件编号}$"] = contribution.CNumber; dict["${稿件标题}$"] = contribution.Title; model.Body = service.GetEmailOrSmsContent(dict, service.GetSiteConfig(model.JournalID), model.Body); } else { query.AuthorName = user.RealName; query.LoginName = user.LoginName; query.Mobile = user.Mobile; query.CNumber = contribution.CNumber; query.Title = contribution.Title; } } } } } catch (Exception ex) { LogProvider.Instance.Error("获取通知单失败:" + ex.ToString()); model = new PayNoticeEntity(); model.JournalID = query.JournalID; model.PayType = query.PayType.Value; model.CID = query.CID.Value; } return model; }