/// <summary>
        /// 业务逻辑
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public GridBaseResponsek <List <GetFinancialDataByPagingResponse> > Process(GetFinancialDataByPagingRequest request)
        {
            var result     = new GridBaseResponsek <List <GetFinancialDataByPagingResponse> >();
            var bllRequest = new GetFinancialDataByPagingRequest()
            {
                AccountCode   = request.AccountCode,
                ExcelRecordId = request.ExcelRecordId,
                QiJianTypeId  = request.QiJianTypeId,
                XiangMuItemId = request.XiangMuItemId,
                Limit         = request.Limit,
                Page          = (request.Page - 1) * request.Limit
            };
            var financialDataItems = _financialDataBll.GetFinancialDataItemByExcelRecordId(request.ExcelRecordId);
            var dataItem           = financialDataItems.FirstOrDefault(x => x.ItemId.ToString() == request.XiangMuItemId);

            bllRequest.XiangMuTypeId = dataItem.ItemTypeId;
            if (dataItem.ItemTypeId == (int)FinancialDataItemTypeEnum.XuNiJiTuan)
            {
                var children = financialDataItems.Where(x => x.ParentId == dataItem.ItemId);
                bllRequest.XiangMuItemId = string.Join(",", children.Select(x => x.ItemId).ToList());
            }

            var totalCount = 0;
            var datas      = _financialDataBll.GetFinancialDataByPaging(bllRequest, out totalCount);

            foreach (var data in datas)
            {
                data.DetailData = Math.Round(data.DetailData, 2);
            }
            result.total = totalCount;
            result.rows  = datas;
            return(result);
        }
 /// <summary>
 /// 反查数据
 /// </summary>
 /// <returns></returns>
 public ActionResult PeggingFinancialData(GetFinancialDataByPagingRequest request)
 {
     try
     {
         var action = new PeggingFinancialDataAction(_financialDataBll);
         var result = action.Process(request);
         return(Json(result));
     }
     catch (Exception ex)
     {
         Log.Write("反查数据出错", MessageType.Error, typeof(FinancialDataController), ex);
         return(Json(new SuccessModel()));
     }
 }
示例#3
0
        /// <summary>
        /// GetFinancialDataByPaging
        /// </summary>
        /// <param name="request"></param>
        /// <param name="totalCount"></param>
        /// <returns></returns>
        public List <GetFinancialDataByPagingResponse> GetFinancialDataByPaging(GetFinancialDataByPagingRequest request, out int totalCount)
        {
            var store = CurrentConnectStringContext.StoredProcedure("FinancialData_GetDetailByPaging")
                        .Parameter("v_ExcelRecordId", request.ExcelRecordId)
                        .Parameter("v_AccountCode", request.AccountCode)
                        .Parameter("v_QiJianTypeId", request.QiJianTypeId)
                        .Parameter("v_XiangMuTypeId", request.XiangMuTypeId)
                        .Parameter("v_XiangMuItemId", request.XiangMuItemId)
                        .Parameter("v_PageIndex", request.Page)
                        .Parameter("v_PageSize", request.Limit)
                        .ParameterOut("v_TotalCount", DataTypes.Int32);
            var result = store.QueryMany <GetFinancialDataByPagingResponse>();

            totalCount = store.ParameterValue <int>("v_TotalCount");
            return(result);
        }
示例#4
0
 /// <summary>
 /// GetFinancialDataByPaging
 /// </summary>
 /// <param name="request"></param>
 /// <param name="totalCount"></param>
 /// <returns></returns>
 public List <GetFinancialDataByPagingResponse> GetFinancialDataByPaging(GetFinancialDataByPagingRequest request,
                                                                         out int totalCount)
 {
     return(_financialDataDal.GetFinancialDataByPaging(request, out totalCount));
 }