public ActionResult GetCostOfPageList(FinanceContributeQuery query)
 {
     IFinanceFacadeAPIService service = ServiceContainer.Instance.Container.Resolve<IFinanceFacadeAPIService>();
     query.JournalID = CurAuthor.JournalID;
     query.AuthorID = CurAuthor.AuthorID;
     query.IsShowAuthor = false;
     query.CurrentPage = Convert.ToInt32(Request.Params["page"]);
     query.PageSize = Convert.ToInt32(Request.Params["pagesize"]);
     Pager<FinanceContributeEntity> pager = service.GetFinanceContributePageList(query);
     return Json(new { Rows = pager.ItemList, Total = pager.TotalRecords });
 }
 /// <summary>
 /// 获取稿件费用分页数据
 /// </summary>
 /// <param name="query"></param>
 /// <returns></returns>
 public Pager<FinanceContributeEntity> GetFinanceContributePageList(FinanceContributeQuery query)
 {
     HttpClientHelper clientHelper = new HttpClientHelper();
     Pager<FinanceContributeEntity> pager = clientHelper.Post<Pager<FinanceContributeEntity>, FinanceContributeQuery>(GetAPIUrl(APIConstant.FINANCECONTRIBUTE_GETPAGELIST), query);
     return pager;
 }
 public Pager<FinanceContributeEntity> GetFinancePageFeeReportPageList(FinanceContributeQuery query)
 {
     IFinanceContributeService service = ServiceContainer.Instance.Container.Resolve<IFinanceContributeService>();
     Pager<FinanceContributeEntity> pager = service.GetFinancePageFeeReportPageList(query);
     return pager;
 }
 public FinanceContributeEntity GetModel(FinanceContributeQuery query)
 {
     IFinanceContributeService service = ServiceContainer.Instance.Container.Resolve<IFinanceContributeService>();
     FinanceContributeEntity model = service.GetFinanceContribute(query.PKID);
     return model;
 }
Example #5
0
        public ActionResult GetFinancePageFeeReportPageList(FinanceContributeQuery query)
        {
            IFinanceFacadeAPIService service = ServiceContainer.Instance.Container.Resolve<IFinanceFacadeAPIService>();
            query.JournalID = CurAuthor.JournalID;
            //query.Status = 1;
            query.CurrentPage = Convert.ToInt32(Request.Params["page"]);
            query.PageSize = Convert.ToInt32(Request.Params["pagesize"]);
            Pager<FinanceContributeEntity> pager = service.GetFinancePageFeeReportPageList(query);

            return Json(new { Rows = pager.ItemList, Total = pager.TotalRecords, PageMoney = pager.PageMoney.ToString("C2") });
        }
Example #6
0
 public ActionResult FContributeDelete(Int64[] PKIDs)
 {
     IFinanceFacadeAPIService service = ServiceContainer.Instance.Container.Resolve<IFinanceFacadeAPIService>();
     FinanceContributeQuery query = new FinanceContributeQuery();
     query.JournalID = CurAuthor.JournalID;
     query.PKIDs = PKIDs;
     ExecResult result = service.DelFinanceContribute(query);
     return Json(new { result = result.result, msg = result.msg });
 }
Example #7
0
 public ActionResult FinancePageFeeRenderToExcel(FinanceContributeQuery query)
 {
     IFinanceFacadeAPIService service = ServiceContainer.Instance.Container.Resolve<IFinanceFacadeAPIService>();
     query.JournalID = CurAuthor.JournalID;
     //query.Status = 1;
     query.IsReport = true;
     IList<FinanceContributeEntity> list = service.GetFinancePageFeeReportPageList(query).ItemList;
     string[] titleFiles = new string[] { "稿件编号", "稿件标题", "版面费","备注","通讯作者", "联系电话","手机", "Email", "工作单位", "发票单位", "联系地址","邮编","投稿日期" };
     int[] titleWidth = new int[] { 80, 200, 40, 100, 80, 100, 80, 80, 150,150,150,80,100 };
     string[] dataFiles = new string[] { "CNumber", "Title", "PageMoney", "Note", "AuthorName", "Tel", "Mobile", "Email", "WorkUnit", "InvoiceUnit","Address","ZipCode","AddDate" };
     string[] fomateFiles = new string[] { "", "", "", "", "", "", "", "", "", "", "", "", "{0:yyyy-MM-dd}" };
     string strTempPath = "/UploadFile/TempFile/" + "FinanceContribute.xls";
     ExcelHelperEx.CreateExcel<FinanceContributeEntity>("作者版面费报表", titleFiles, titleWidth, dataFiles, fomateFiles, list, strTempPath);
     return Json(new { flag = 1, ExcelPath = strTempPath });
 }
        private string GetFinancePageFeeReportFilter(FinanceContributeQuery query)
        {
            StringBuilder strFilter = new StringBuilder(" a.JournalID=" + query.JournalID);
            if (query.AuthorID != null)
                strFilter.Append(" and a.AuthorID=").Append(query.AuthorID.Value);
            if (query.FeeType != null)
                strFilter.Append(" and c.FeeType=").Append(query.FeeType.Value);
            if (query.Status != null)
                strFilter.Append(" and c.Status=").Append(query.Status.Value);
            if (query.CID != null)
                strFilter.Append(" and a.CID=").Append(query.CID.Value);
            query.Title = SecurityUtils.SafeSqlString(query.Title);
            if (!string.IsNullOrWhiteSpace(query.Title))
                strFilter.Append(" and a.Title like '%").Append(query.Title).Append("%'");
            query.CNumber = SecurityUtils.SafeSqlString(query.CNumber);
            if (!string.IsNullOrWhiteSpace(query.CNumber))
                strFilter.Append(" and a.CNumber like '%").Append(query.CNumber).Append("%'");
            query.Keyword = SecurityUtils.SafeSqlString(query.Keyword);
            if (!string.IsNullOrWhiteSpace(query.Keyword))
                strFilter.Append(" and a.Keyword like '%").Append(query.Keyword).Append("%'");
            query.FirstAuthor = SecurityUtils.SafeSqlString(query.FirstAuthor);
            if (!string.IsNullOrWhiteSpace(query.FirstAuthor))
                strFilter.Append(" and d.AuthorName='").Append(query.FirstAuthor).Append("'");
            if (query.Year != null)
                strFilter.Append(" and a.Year='").Append(query.Year.Value).Append("'");
            if (query.Issue != null)
                strFilter.Append(" and a.Issue='").Append(query.Issue.Value).Append("'");

            if (query.StartDate != null)
                strFilter.Append(" and c.InComeDate>='").Append(query.StartDate.Value.Date).Append("'");
            if (query.EndDate != null)
                strFilter.Append(" and c.InComeDate<'").Append(query.EndDate.Value.AddDays(1).Date).Append("'");
            return strFilter.ToString();
        }
 /// <summary>
 /// 缴费通知是否存在
 /// </summary>
 /// <param name="query"></param>
 /// <returns></returns>
 public bool FinanceContributeIsExists(FinanceContributeQuery query)
 {
     string strSql = "SELECT 1 FROM dbo.FinanceContribute WHERE JournalID=@JournalID and CID=@CID and FeeType=@FeeType";
     DbCommand cmd = db.GetSqlStringCommand(strSql);
     db.AddInParameter(cmd, "@JournalID", DbType.Int64, query.JournalID);
     db.AddInParameter(cmd, "@CID", DbType.Int64, query.CID);
     db.AddInParameter(cmd, "@FeeType", DbType.Byte, query.FeeType);
     return db.ExecuteScalar(cmd).TryParse<Int32>() == 1;
 }
 /// <summary>
 /// 获取版面费报表分页数据
 /// </summary>
 /// <param name="query"></param>
 /// <returns></returns>
 public Pager<FinanceContributeEntity> GetFinancePageFeeReportPageList(FinanceContributeQuery query)
 {
     Pager<FinanceContributeEntity> pager = FinanceContributeBusProvider.GetFinancePageFeeReportPageList(query);
     if (pager == null) return pager;
     IList<FinanceContributeEntity> list = pager.ItemList;
     if (list == null || list.Count == 0)
         return pager;
     AuthorInfoService service = new AuthorInfoService();
     AuthorInfoQuery aQuery = new AuthorInfoQuery();
     aQuery.JournalID = query.JournalID;
     var dict = service.AuthorInfoBusProvider.GetAuthorDict(aQuery);
     foreach (var mode in list)
     {
         mode.InUserName = dict.GetValue(mode.InUser, mode.InUser.ToString());
     }
     pager.ItemList = list;
     return pager;
 }
 /// <summary>
 /// 保存稿件费用信息
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public ExecResult Save(FinanceContributeEntity model)
 {
     ExecResult execResult = new ExecResult();
     bool result = false;
     model.RemitBillNo = model.RemitBillNo.TextFilter();
     model.InvoiceNo = model.InvoiceNo.TextFilter();
     model.PostNo = model.PostNo.TextFilter();
     model.Note = model.Note.TextFilter();
     if (model.IsSystem)
     {
         model.InComeDate = DateTime.Now;
         model.Status = 1;
     }
     if (model.PKID == 0)
     {
         FinanceContributeQuery fQuery = new FinanceContributeQuery();
         fQuery.JournalID = model.JournalID;
         fQuery.CID = model.CID;
         fQuery.FeeType = model.FeeType;
         if (FinanceContributeBusProvider.FinanceContributeIsExists(fQuery))
         {
             execResult.result = EnumJsonResult.failure.ToString();
             execResult.msg = "该费用已经存在!";
             return execResult;
         }
         result = AddFinanceContribute(model);
         if (result)
         {
             execResult.result = EnumJsonResult.success.ToString();
             execResult.msg = "新增稿件费用成功!";
         }
         else
         {
             execResult.result = EnumJsonResult.failure.ToString();
             execResult.msg = "新增稿件费用失败!";
         }
     }
     else
     {
         result = UpdateFinanceContribute(model);
         if (result)
         {
             execResult.result = EnumJsonResult.success.ToString();
             execResult.msg = "修改稿件费用成功!";
         }
         else
         {
             execResult.result = EnumJsonResult.failure.ToString();
             execResult.msg = "修改稿件费用失败!";
         }
     }
     if (result)
     {
         //更新缴费通知记录
         if (model.NoticeID > 0)
         {
             PayNoticeQuery query = new PayNoticeQuery();
             query.NoticeID = model.NoticeID;
             query.Status = (Byte)(model.IsSystem ? 1 : 2);
             PayNoticeBusiness business = new PayNoticeBusiness();
             business.ChangeStatus(query);
         }
     }
     return execResult;
 }
 /// <summary>
 /// 分页获取符合查询条件的数据
 /// </summary>
 /// <param name="financeContributeQuery">FinanceContributeQuery查询实体对象</param>
 /// <returns>Pager<FinanceContributeEntity></returns>
 public Pager<FinanceContributeEntity> GetFinanceContributePageList(FinanceContributeQuery financeContributeQuery)
 {
     return FinanceContributeBusProvider.GetFinanceContributePageList(financeContributeQuery);
 }
 /// <summary>
 /// 删除稿件费用
 /// </summary>
 /// <param name="query"></param>
 /// <returns></returns>
 public ExecResult DelFinanceContribute(FinanceContributeQuery query)
 {
     HttpClientHelper clientHelper = new HttpClientHelper();
     ExecResult result = clientHelper.Post<ExecResult, FinanceContributeQuery>(GetAPIUrl(APIConstant.FINANCECONTRIBUTE_DEL), query);
     return result;
 }
 /// <summary>
 /// 获取版面费报表分页数据
 /// </summary>
 /// <param name="query"></param>
 /// <returns></returns>
 public Pager<FinanceContributeEntity> GetFinancePageFeeReportPageList(FinanceContributeQuery query)
 {
     HttpClientHelper clientHelper = new HttpClientHelper();
     Pager<FinanceContributeEntity> pager = clientHelper.PostAuth<Pager<FinanceContributeEntity>, FinanceContributeQuery>(GetAPIUrl(APIConstant.FINANCEGLANCE_GETPAGEFEEREPORTPAGELIST), query);
     return pager;
 }
 /// <summary>
 /// 缴费通知是否存在
 /// </summary>
 /// <param name="query"></param>
 /// <returns></returns>
 public bool FinanceContributeIsExists(FinanceContributeQuery query)
 {
     return FinanceContributeDataAccess.Instance.FinanceContributeIsExists(query);
 }
 /// <summary>
 /// 将查询实体转换为Order语句
 /// <param name="query">查询实体</param>
 /// <returns>获取Order语句,不包含Order</returns>
 /// </summary>
 public string FinanceContributeQueryToSQLOrder(FinanceContributeQuery query)
 {
     return " PKID DESC";
 }
 /// <summary>
 /// 获取所有符合查询条件的数据
 /// </summary>
 /// <param name="financeContributeQuery">FinanceContributeQuery查询实体对象</param>
 /// <returns>List<FinanceContributeEntity></returns>
 public List<FinanceContributeEntity> GetFinanceContributeList(FinanceContributeQuery financeContributeQuery)
 {
     return FinanceContributeDataAccess.Instance.GetFinanceContributeList(financeContributeQuery);
 }
 /// <summary>
 /// 将查询实体转换为Where语句
 /// <param name="query">查询实体</param>
 /// <returns>获取Where语句,不包含Where</returns>
 /// </summary>
 public string FinanceContributeQueryToSQLWhere(FinanceContributeQuery query)
 {
     StringBuilder strFilter = new StringBuilder(" a.JournalID=" + query.JournalID);
     if (query.AuthorID != null)
         strFilter.Append(" AND b.AuthorID = ").Append(query.AuthorID.Value);
     if (query.FeeType != null)
         strFilter.Append(" AND a.FeeType=").Append(query.FeeType.Value);
     if (query.Status != null)
         strFilter.Append(" AND a.Status=").Append(query.Status.Value);
     if (query.CID != null)
         strFilter.Append(" AND a.CID=").Append(query.CID.Value);
     return strFilter.ToString();
 }
Example #19
0
 public ActionResult FinanceGlanceToExcel(FinanceContributeQuery query)
 {
     try
     {
         IFinanceFacadeAPIService service = ServiceContainer.Instance.Container.Resolve<IFinanceFacadeAPIService>();
         query.JournalID = CurAuthor.JournalID;
         query.Status = 1;
         query.IsReport = true;
         IList<FinanceContributeEntity> list = service.GetFinanceGlancePageList(query).ItemList;
         if (list == null || list.Count <= 0)
         {
             return Content("没有数据不能导出,请先进行查询!");
         }
         string[] titleFiles = new string[] { "稿件编号", "稿件标题", "通讯作者", "第一作者", "单位", "费用类型", "交费金额", "备注", "入款人", "入款日期", "发票抬头", "发票号码", "挂号号码", "寄出日期" };
         int[] titleWidth = new int[] { 80, 200, 40, 40, 100, 40, 60, 100, 40, 80, 120, 100, 80, 100 };
         string[] dataFiles = new string[] { "CNumber", "Title", "CommunicationAuthorName", "FirstAuthorName", "WorkUnit", "FeeTypeName", "Amount", "Note", "InUserName", "InComeDate", "InvoiceUnit", "InvoiceNo", "PostNo", "SendDate" };
         string[] fomateFiles = new string[] { "", "", "", "", "", "", "", "", "", "{0:yyyy-MM-dd}", "", "", "", "{0:yyyy-MM-dd}" };
         string strTempPath = "/UploadFile/TempFile/" + "FinanceGlance.xls";
         ExcelHelperEx.CreateExcel<FinanceContributeEntity>("财务统计一览表", titleFiles, titleWidth, dataFiles, fomateFiles, list, strTempPath);
         return Json(new { flag = 1, ExcelPath = strTempPath });
     }
     catch (Exception ex)
     {
         LogProvider.Instance.Error("导出稿件费用信息出现异常:" + ex.Message);
         return Content("导出稿件费用信息异常!");
     }
 }
 public List<FinanceContributeEntity> GetFinanceContributeList(FinanceContributeQuery query)
 {
     string strSql = @"SELECT a.*,b.Title,b.AuthorID,b.CNumber FROM dbo.FinanceContribute a with(nolock)
                       INNER JOIN dbo.ContributionInfo b with(nolock) ON a.JournalID=b.JournalID and a.CID=b.CID";
     string where = FinanceContributeQueryToSQLWhere(query);
     if (!string.IsNullOrWhiteSpace(where))
         strSql += " WHERE " + where;
     strSql += " ORDER BY " + FinanceContributeQueryToSQLOrder(query);
     return db.GetList<FinanceContributeEntity>(strSql, MakeFinanceContributeList);
 }
Example #21
0
 public ActionResult GetFContributeList(FinanceContributeQuery query)
 {
     IFinanceFacadeAPIService service = ServiceContainer.Instance.Container.Resolve<IFinanceFacadeAPIService>();
     query.JournalID = CurAuthor.JournalID;
     IList<FinanceContributeEntity> list = service.GetFinanceContributeList(query);
     return Json(new { list });
 }
 public Pager<FinanceContributeEntity> GetFinanceContributePageList(FinanceContributeQuery query)
 {
     string tableSql = @"SELECT {0} FROM dbo.FinanceContribute a with(nolock)
                       INNER JOIN dbo.ContributionInfo b with(nolock) ON a.JournalID=b.JournalID and a.CID=b.CID";
     string where = FinanceContributeQueryToSQLWhere(query);
     if (!string.IsNullOrWhiteSpace(where))
         tableSql += " WHERE " + where;
     string strSql = string.Format(tableSql, "a.*,b.Title,b.AuthorID,b.CNumber,ROW_NUMBER() OVER(ORDER BY " + FinanceContributeQueryToSQLOrder(query) + ") AS ROW_ID")
         , sumStr = string.Format(tableSql, "RecordCount=COUNT(1)");
     return db.GetPageList<FinanceContributeEntity>(string.Format(SQL_Page_Select, strSql, query.StartIndex, query.EndIndex)
         , sumStr
         , query.CurrentPage, query.PageSize
         , (dr, pager) =>
         {
             pager.TotalRecords = TypeParse.ToLong(dr["RecordCount"]);
         }
         , MakeFinanceContributeList);
 }
Example #23
0
 private FinanceContributeEntity GetFinanceArticleModel(Int64 PKID)
 {
     FinanceContributeEntity model = null;
     if (PKID > 0)
     {
         FinanceContributeQuery query = new FinanceContributeQuery();
         query.JournalID = CurAuthor.JournalID;
         query.PKID = PKID;
         IFinanceFacadeAPIService service = ServiceContainer.Instance.Container.Resolve<IFinanceFacadeAPIService>();
         model = service.GetFinanceContributeModel(query);
     }
     if (model == null)
         model = new FinanceContributeEntity();
     return model;
 }
 /// <summary>
 /// 获取财务统计一览表分页数据
 /// </summary>
 /// <param name="query"></param>
 /// <returns></returns>
 public Pager<FinanceContributeEntity> GetFinanceGlancePageList(FinanceContributeQuery query)
 {
     string tableSql = @"SELECT {0}
                     FROM dbo.ContributionInfo a with(nolock)
                     LEFT JOIN  (select distinct (AuthorID),JournalID,AuthorName,Address,InvoiceUnit,Tel,Mobile  from  dbo.AuthorDetail  ) as  ad ON a.AuthorID=ad.AuthorID AND a.JournalID=ad.JournalID
                     INNER JOIN dbo.FinanceContribute b  ON a.JournalID=b.JournalID and a.CID=b.CID and b.FeeType!=4
                     LEFT JOIN dbo.PayNotice c with(nolock) ON b.JournalID=c.JournalID and b.CID=c.CID and b.FeeType=c.PayType
                     LEFT JOIN dbo.ContributionAuthor d with(nolock) ON d.JouranalID=a.JournalID and d.CID=a.CID and d.IsFirst=1
                     LEFT JOIN dbo.ContributionAuthor e with(nolock) ON e.JouranalID=a.JournalID and e.CID=a.CID and e.IsCommunication=1
                     WHERE " + GetFinanceGlanceFilter(query);
     string strSql = string.Format(tableSql, @"b.PKID
                                              ,a.CID
                                              ,a.CNumber
                                              ,a.Title
                                              ,a.AuthorID
                                              ,ad.AuthorName
                                              ,ad.Address
                                              ,ad.InvoiceUnit
                                              ,ad.Tel
                                              ,ad.Mobile
                                              ,d.CAuthorID as FirstAuthorID
                                              ,d.AuthorName as FirstAuthorName
                                              ,d.WorkUnit
                                              ,e.CAuthorID as CommunicationAuthorID
                                              ,e.AuthorName as CommunicationAuthorName
                                              ,b.FeeType
                                              ,c.Amount as ShouldMoney
                                              ,b.Amount as SolidMoney
                                              ,b.InUser
                                              ,b.InComeDate
                                              ,b.InvoiceNo
                                              ,b.RemitBillNo
                                              ,b.PostNo
                                              ,b.SendDate
                                              ,b.Note
                                              ,ROW_NUMBER() OVER(ORDER BY a.AddDate desc) AS ROW_ID"), sumStr = string.Empty;
     if (!query.IsReport)
     {
         strSql = string.Format(SQL_Page_Select, strSql, query.StartIndex, query.EndIndex);
         sumStr = string.Format(tableSql, "RecordCount=COUNT(1),Money=SUM(b.Amount)");
     }
     return db.GetPageList<FinanceContributeEntity>(strSql
         , sumStr
         , query.CurrentPage, query.PageSize
         , (dr, pager) =>
         {
             pager.TotalRecords = TypeParse.ToLong(dr["RecordCount"]);
             pager.Money = dr.GetDrValue<Decimal>("Money");
         }
         , (dr) =>
         {
             List<FinanceContributeEntity> list = new List<FinanceContributeEntity>();
             FinanceContributeEntity model = null;
             while (dr.Read())
             {
                 model = new FinanceContributeEntity();
                 model.PKID = dr.GetDrValue<Int64>("PKID");
                 model.CID = dr.GetDrValue<Int64>("CID");
                 model.CNumber = dr.GetDrValue<String>("CNumber");
                 model.Title = dr.GetDrValue<String>("Title");
                 model.UserID = dr.GetDrValue<Int64>("AuthorID");
                 model.Address = dr.GetDrValue<String>("Address");
                 model.Tel = dr.GetDrValue<String>("Tel");
                 model.Mobile = dr.GetDrValue<String>("Mobile");
                 model.InvoiceUnit = dr.GetDrValue<String>("InvoiceUnit");
                 model.AuthorID = dr.GetDrValue<Int64>("AuthorID");
                 model.AuthorName = dr.GetDrValue<String>("AuthorName");
                 model.FirstAuthorID = dr.GetDrValue<Int64>("FirstAuthorID");
                 model.FirstAuthorName = dr.GetDrValue<String>("FirstAuthorName");
                 model.CommunicationAuthorID = dr.GetDrValue<Int64>("CommunicationAuthorID");
                 model.CommunicationAuthorName = dr.GetDrValue<String>("CommunicationAuthorName");
                 model.WorkUnit = dr.GetDrValue<String>("WorkUnit");
                 model.FeeType = dr.GetDrValue<Byte>("FeeType");
                 model.ShouldMoney = dr.GetDrValue<Decimal>("ShouldMoney");
                 model.Amount = dr.GetDrValue<Decimal>("SolidMoney");
                 model.InUser = dr.GetDrValue<Int64>("InUser");
                 model.InComeDate = dr.GetDrValue<DateTime?>("InComeDate");
                 model.InvoiceNo = dr.GetDrValue<String>("InvoiceNo");
                 model.RemitBillNo = dr.GetDrValue<String>("RemitBillNo");
                 model.PostNo = dr.GetDrValue<String>("PostNo");
                 model.SendDate = dr.GetDrValue<DateTime?>("SendDate");
                 model.Note = dr.GetDrValue<String>("Note");
                 list.Add(model);
             }
             return list;
         });
 }
 public IList<FinanceContributeEntity> GetList(FinanceContributeQuery query)
 {
     IFinanceContributeService service = ServiceContainer.Instance.Container.Resolve<IFinanceContributeService>();
     IList<FinanceContributeEntity> list = service.GetFinanceContributeList(query);
     return list;
 }
 /// <summary>
 /// 获取版面费报表分页数据
 /// </summary>
 /// <param name="query"></param>
 /// <returns></returns>
 public Pager<FinanceContributeEntity> GetFinancePageFeeReportPageList(FinanceContributeQuery query)
 {
     string tableSql = @"SELECT {0}
                     FROM dbo.ContributionInfo a with(nolock)
                     LEFT JOIN  (select distinct (AuthorID),JournalID, Address,InvoiceUnit,Tel,Mobile  from  dbo.AuthorDetail  ) as  ad ON a.AuthorID=ad.AuthorID AND a.JournalID=ad.JournalID
                     LEFT JOIN dbo.PayNotice b with(nolock) ON b.JournalID=a.JournalID and b.CID=a.CID and b.PayType=2
                     LEFT JOIN dbo.FinanceContribute c  ON c.JournalID=b.JournalID and c.CID=b.CID and c.FeeType=2 and c.Status=1
                     INNER JOIN dbo.ContributionAuthor d with(nolock) ON a.JournalID=d.JouranalID and a.CID=d.CID and d.IsCommunication=1
                     WHERE " + GetFinancePageFeeReportFilter(query);
     string strSql = string.Format(tableSql, @"c.PKID,a.CID,a.CNumber,a.Title,a.AuthorID as UserID,a.Year,a.Issue,a.AddDate,dbo.fn_GetContributionCurrentEditor(a.JournalID,a.CID) as EditAuthorID,ad.Address,ad.InvoiceUnit,ad.Tel,ad.Mobile,d.CAuthorID as AuthorID,d.AuthorName,d.WorkUnit,
                      b.Amount as NoticeMoney,c.Amount as PageMoney,c.FeeType,c.InUser,c.InComeDate,c.InvoiceNo,c.RemitBillNo,c.PostNo,c.SendDate,c.Note,b.NoticeID as PageNoticeID,d.Email,d.ZipCode,ROW_NUMBER() OVER(ORDER BY a.AddDate desc) AS ROW_ID")
          , sumStr = string.Empty;
     if (!query.IsReport)
     {
         strSql = string.Format(SQL_Page_Select, strSql, query.StartIndex, query.EndIndex);
         sumStr = string.Format(tableSql, "RecordCount=COUNT(1),PageMoneyTotal=SUM(c.Amount)");
     }
     return db.GetPageList<FinanceContributeEntity>(strSql
         , sumStr
         , query.CurrentPage, query.PageSize
         , (dr, pager) =>
         {
             pager.TotalRecords = TypeParse.ToLong(dr["RecordCount"]);
             pager.PageMoney = dr.GetDrValue<Decimal>("PageMoneyTotal");
         }
         , (dr) =>
         {
             List<FinanceContributeEntity> list = new List<FinanceContributeEntity>();
             FinanceContributeEntity model = null;
             while (dr.Read())
             {
                 model = new FinanceContributeEntity();
                 model.PKID = dr.GetDrValue<Int64>("PKID");
                 model.CID = dr.GetDrValue<Int64>("CID");
                 model.CNumber = dr.GetDrValue<String>("CNumber");
                 model.Title = dr.GetDrValue<String>("Title");
                 model.UserID = dr.GetDrValue<Int64>("UserID");
                 model.EditAuthorID = dr.GetDrValue<Int64>("EditAuthorID");
                 model.Address = dr.GetDrValue<String>("Address");
                 model.ZipCode = dr.GetDrValue<String>("ZipCode");
                 model.Tel = dr.GetDrValue<String>("Tel");
                 model.Mobile = dr.GetDrValue<String>("Mobile");
                 model.InvoiceUnit = dr.GetDrValue<String>("InvoiceUnit");
                 model.AuthorID = dr.GetDrValue<Int64>("AuthorID");
                 model.AuthorName = dr.GetDrValue<String>("AuthorName");
                 model.Email = dr.GetDrValue<String>("Email");
                 model.WorkUnit = dr.GetDrValue<String>("WorkUnit");
                 model.PageMoney = dr.GetDrValue<Decimal>("PageMoney");
                 model.PageMoneyNotice = dr.GetDrValue<Decimal>("NoticeMoney");
                 model.FeeType = dr.GetDrValue<Byte>("FeeType");
                 model.InUser = dr.GetDrValue<Int64>("InUser");
                 model.InComeDate = dr.GetDrValue<DateTime?>("InComeDate");
                 model.InvoiceNo = dr.GetDrValue<String>("InvoiceNo");
                 model.RemitBillNo = dr.GetDrValue<String>("RemitBillNo");
                 model.PostNo = dr.GetDrValue<String>("PostNo");
                 model.SendDate = dr.GetDrValue<DateTime?>("SendDate");
                 model.Note = dr.GetDrValue<String>("Note") == null ? "" : dr.GetDrValue<String>("Note");
                 model.PageNoticeID = dr.GetDrValue<Int64>("PageNoticeID");
                 list.Add(model);
             }
             return list;
         });
 }
 public ExecResult Del(FinanceContributeQuery query)
 {
     IFinanceContributeService service = ServiceContainer.Instance.Container.Resolve<IFinanceContributeService>();
     return service.Del(query.PKIDs);
 }
 /// <summary>
 /// 获取版面费报表分页数据
 /// </summary>
 /// <param name="query"></param>
 /// <returns></returns>
 public Pager<FinanceContributeEntity> GetFinancePageFeeReportPageList(FinanceContributeQuery query)
 {
     return FinanceContributeDataAccess.Instance.GetFinancePageFeeReportPageList(query);
 }
 /// <summary>
 /// 获取稿件费用记录
 /// </summary>
 /// <param name="CID"></param>
 /// <param name="AuthorID"></param>
 /// <returns></returns>
 private IList<FinanceContributeEntity> GetFinanceList(Int64 CID, Int64 AuthorID, Byte GroupID)
 {
     if (CID == 0)
         return new List<FinanceContributeEntity>();
     IFinanceFacadeAPIService service = ServiceContainer.Instance.Container.Resolve<IFinanceFacadeAPIService>();
     FinanceContributeQuery query = new FinanceContributeQuery();
     query.JournalID = CurAuthor.JournalID;
     if (GroupID != 1)
     {
         query.AuthorID = AuthorID;
     }
     query.CID = CID;
     IList<FinanceContributeEntity> list = service.GetFinanceContributeList(query);
     return list;
 }
 /// <summary>
 /// 获取稿件费用实体
 /// </summary>
 /// <param name="query"></param>
 /// <returns></returns>
 public FinanceContributeEntity GetFinanceContributeModel(FinanceContributeQuery query)
 {
     HttpClientHelper clientHelper = new HttpClientHelper();
     FinanceContributeEntity model = clientHelper.Post<FinanceContributeEntity, FinanceContributeQuery>(GetAPIUrl(APIConstant.FINANCECONTRIBUTE_GETMODEL), query);
     return model;
 }