コード例 #1
0
        /// <summary>
        /// 根据过滤条件,返回检索件数的Sql文
        /// </summary>
        /// <param name="baseFilter"></param>
        /// <returns></returns>
        protected override string GetCountSql(BaseFilter baseFilter)
        {
            CancelRefundFilter filter = baseFilter as CancelRefundFilter;

            if (filter == null)
            {
                return("");
            }

            StringBuilder sb = new StringBuilder();

            sb.Append(@" SELECT COUNT(1) 
                        FROM finance.CancelRefund c
                        INNER JOIN dbo.Business b 
                        ON c.BusinessID = b.BusinessID
                        INNER JOIN customer.CustomerInfo r
                        ON b.CustomerID = r.CustId
                        INNER JOIN customer.Person pe 
                        ON r.PersonId = pe.PersonId");

            string condition = CombineCondition(filter);

            if (!string.IsNullOrEmpty(condition))
            {
                sb.Append(condition);
            }

            return(sb.ToString());
        }
コード例 #2
0
        /// <summary>
        /// 服务执行
        /// </summary>
        /// <param name="requestEntity">请求数据</param>
        /// <param name="responseEntity">返回数据</param>
        protected override void DoExecute(RequestEntity requestEntity, ResponseEntity responseEntity)
        {
            IDictionary <string, string> paraDict = requestEntity.Parameters;
            CancelRefundFilter           filter   = ServiceUtility.ConvertToFilterFromDict <CancelRefundFilter>(paraDict);

            // 更新数据
            Singleton <BaseUpdateBLL <CancelRefundUpdateDal> > .Instance.UpdateData(filter, responseEntity);
        }
コード例 #3
0
        /// <summary>
        /// 服务执行
        /// </summary>
        /// <param name="requestEntity">请求数据</param>
        /// <param name="responseEntity">返回数据</param>
        protected override void DoExecute(RequestEntity requestEntity, ResponseEntity responseEntity)
        {
            IDictionary <string, string> paraDict         = requestEntity.Parameters;
            CancelRefundFilter           filter           = ServiceUtility.ConvertToFilterFromDict <CancelRefundFilter>(paraDict);
            List <CancelRefundViewData>  cancelRefundList = Singleton <CancelRefundDal> .Instance.GetCancelRefund(filter);

            ResponseListResult <CancelRefundViewData> result = new ResponseListResult <CancelRefundViewData>();

            result.TotalCount             = filter.RecordCount;
            result.LstResult              = cancelRefundList;
            responseEntity.ResponseStatus = (int)EnumResponseState.Success;
            responseEntity.Results        = result;
        }
コード例 #4
0
        /// <summary>
        /// 根据过滤条件,返回检索数据的Sql文
        /// </summary>
        /// <param name="baseFilter"></param>
        /// <returns></returns>
        protected override string GetSearchSql(BaseFilter baseFilter)
        {
            CancelRefundFilter filter = baseFilter as CancelRefundFilter;

            if (filter == null)
            {
                return("");
            }

            StringBuilder sb = new StringBuilder();

            sb.Append(@" SELECT * FROM 
                        (SELECT b.BusinessID ,
                                b.ContractNo ,
                                pe.PersonName AS CustomerName ,
                                b.LoanCapital - ISNULL(b.ProceduresAmout, 0) AS RealLoanCapital ,
                                ISNULL(c.RefundAmt, b.LoanCapital - ISNULL(b.ProceduresAmout, 0)) AS RefundAmt ,
                                c.PayDate ,
                                c.ReceivedDate ,
                                c.PayType ,
                                c.CancelTime ,
                                ROW_NUMBER() OVER ( ORDER BY c.CancelTime ) AS num
                          FROM  finance.CancelRefund c
                    INNER JOIN dbo.Business b ON c.BusinessID = b.BusinessID
                    INNER JOIN customer.CustomerInfo r ON b.CustomerID = r.CustId
                    INNER JOIN customer.Person pe ON r.PersonId = pe.PersonId ");

            string condition = CombineCondition(filter);

            if (!string.IsNullOrEmpty(condition))
            {
                sb.Append(condition);
            }
            sb.Append(" ) t");
            sb.AppendFormat(" WHERE t.num > {0} AND t.num <= {1}", filter.FromIndex, filter.ToIndex);
            sb.Append(" ORDER BY t.num");

            return(sb.ToString());
        }
コード例 #5
0
        /// <summary>
        /// Author:shwang
        /// Date:20140617
        /// Desc:得到解约退款分页数据
        /// </summary>
        /// <param name="filter">过滤条件</param>
        /// <param name="pageOption">分页信息</param>
        /// <returns>解约退款数据</returns>
        public List <CancelRefundViewData> GetCancelRefund(CancelRefundFilter filter)
        {
            string payDate = string.Empty;

            if (filter.HasPayDate)
            {
                payDate = " c.PayDate IS NOT NULL ";
            }
            else
            {
                payDate = " c.PayDate IS NULL ";
            }

            StringBuilder conditionSbl = new StringBuilder();

            if (!filter.LendingSideKey.IsNullString())
            {
                conditionSbl.AppendFormat(" AND b.LendingSideKey ='{0}'", filter.LendingSideKey);
            }

            if (filter.BusinessID.HasValue)
            {
                conditionSbl.AppendFormat(" AND c.BusinessID ={0}", filter.BusinessID.Value);
            }

            if (!string.IsNullOrEmpty(filter.ContractNo))
            {
                conditionSbl.AppendFormat(" AND b.ContractNo ='{0}'", filter.ContractNo);
            }

            if (!string.IsNullOrEmpty(filter.CustomerName))
            {
                conditionSbl.AppendFormat(" AND pe.PersonName ='{0}'", filter.CustomerName);
            }

            if (filter.CancelBeginTime.HasValue)
            {
                conditionSbl.AppendFormat(" AND c.CancelTime >='{0}'", filter.CancelBeginTime.Value.ToDateTimeString());
            }

            if (filter.CancelEndTime.HasValue)
            {
                conditionSbl.AppendFormat(" AND c.CancelTime <'{0}'", filter.CancelEndTime.Value.ToDateTimeString());
            }

            string regionJoin = string.Empty;

            if (!string.IsNullOrEmpty(filter.Region))
            {
                regionJoin = @"LEFT JOIN dbo.ConstSysEnum s ON s.super=2619 AND 
                                ((LEN(b.ContractNo)=7 AND s.VALUE='02') OR
                                 (LEN(b.ContractNo)=15 AND SUBSTRING(b.ContractNo,3,2)=s.VALUE) OR 
                                 (LEN(b.ContractNo)=18 AND SUBSTRING(b.ContractNo,6,2)=s.VALUE)
                                )";
                conditionSbl.AppendFormat(" AND s.fullkey in({0})", filter.Region);
            }
            if (filter.PayBeginTime.HasValue)
            {
                conditionSbl.AppendFormat(" AND c.PayDate >='{0}'", filter.PayBeginTime.Value.ToDateTimeString());
            }

            if (filter.PayEndTime.HasValue)
            {
                conditionSbl.AppendFormat(" AND c.PayDate <'{0}'", filter.PayEndTime.Value.ToDateTimeString());
            }

            string pageStr = string.Empty;

            if (filter.PageNo > 0)
            {
                int startNo = (filter.PageNo - 1) * filter.PageSize + 1;
                int endNo   = startNo + filter.PageSize - 1;
                pageStr = string.Format("WHERE t.num BETWEEN {0} AND {1} ", startNo, endNo);
            }

            string sqlStr = "SQL\\DwjmPayConfirm\\Select_CancelRefund.sql".ToFileContent(false, payDate, conditionSbl.ToString(), pageStr, regionJoin);

            return(DataAccessUtility.GetSearchDataByPageNo <CancelRefundViewData>(filter, sqlStr));
        }
コード例 #6
0
        /// <summary>
        /// 生成检索条件
        /// </summary>
        /// <param name="filter"></param>
        /// <returns></returns>
        private string CombineCondition(CancelRefundFilter filter)
        {
            StringBuilder sb = new StringBuilder();

            if (!string.IsNullOrEmpty(filter.Region))
            {
                sb.AppendFormat(@" LEFT JOIN dbo.ConstSysEnum s ON s.super=2619 AND 
                                ((LEN(b.ContractNo)=7 AND s.VALUE='02') OR
                                 (LEN(b.ContractNo)=15 AND SUBSTRING(b.ContractNo,3,2)=s.VALUE) OR 
                                 (LEN(b.ContractNo)=18 AND SUBSTRING(b.ContractNo,6,2)=s.VALUE)
                                )");
            }

            if (filter.HasPayDate)
            {
                sb.AppendFormat(" WHERE c.PayDate IS NOT NULL ");
            }
            else
            {
                sb.AppendFormat(" WHERE c.PayDate IS NULL ");
            }

            if (!filter.LendingSideKey.IsNullString())
            {
                sb.AppendFormat(" AND b.LendingSideKey ='{0}'", filter.LendingSideKey);
            }

            if (filter.BusinessID.HasValue)
            {
                sb.AppendFormat(" AND c.BusinessID ={0}", filter.BusinessID.Value);
            }

            if (!string.IsNullOrEmpty(filter.ContractNo))
            {
                sb.AppendFormat(" AND b.ContractNo ='{0}'", filter.ContractNo);
            }

            if (!string.IsNullOrEmpty(filter.CustomerName))
            {
                sb.AppendFormat(" AND pe.PersonName ='{0}'", filter.CustomerName);
            }

            if (filter.CancelBeginTime.HasValue)
            {
                sb.AppendFormat(" AND c.CancelTime >='{0}'", filter.CancelBeginTime.Value.ToDateTimeString());
            }

            if (!string.IsNullOrEmpty(filter.Region))
            {
                sb.AppendFormat(" AND s.fullkey in('{0}')", filter.Region);
            }

            if (filter.CancelEndTime.HasValue)
            {
                sb.AppendFormat(" AND c.CancelTime <'{0}'", filter.CancelEndTime.Value.ToDateTimeString());
            }

            if (filter.PayBeginTime.HasValue)
            {
                sb.AppendFormat(" AND c.PayDate >='{0}'", filter.PayBeginTime.Value.ToDateTimeString());
            }

            if (filter.PayEndTime.HasValue)
            {
                sb.AppendFormat(" AND c.PayDate <'{0}'", filter.PayEndTime.Value.ToDateTimeString());
            }

            return(sb.ToString());
        }