コード例 #1
0
        /// <summary>
        /// 获取商品评价
        /// </summary>
        /// <param name="productSysNo">商品系统编号</param>
        /// <param name="pager">分页参数</param>
        /// <param name="isShare">是否是晒单</param>
        /// <param name="socreRange">操作数据类型</param>
        /// <returns></returns>
        /// <remarks>2013-08-12 邵斌 创建</remarks>
        public void GetProductComment(int productSysNo, ref Pager <CBFeProductComment> pager, bool isShare, int[] socreRange)
        {
            var filter = new ParaFeProductCommentFilter {
                ProductSysNo = productSysNo
            };

            //是否是查找晒单数据,如果不是将对查找的分值范围进行限定
            if (!isShare)
            {
                filter.IsShare    = -1;
                filter.StartSocre = socreRange[0];
                filter.EndSocre   = socreRange[1];
            }
            else
            {
                filter.IsShare    = (int)ForeStatus.是否晒单.是;
                filter.StartSocre = 0;                //评分开始区间
                filter.EndSocre   = 5;                //评分结束区间
            }

            Hyt.DataAccess.Web.IFeProductCommentDao.Instance.GetProductComment(filter, ref pager);
        }
コード例 #2
0
 /// <summary>
 /// 获取商品评价
 /// </summary>
 /// <param name="filter">商品系统编号</param>
 /// <param name="pager">分页参数</param>
 /// <returns></returns>
 /// <remarks>2013-08-12 邵斌 创建</remarks>
 public abstract void GetProductComment(ParaFeProductCommentFilter filter, ref Pager <CBFeProductComment> pager);
コード例 #3
0
        /// <summary>
        /// 获取商品评价
        /// </summary>
        /// <param name="filter">商品系统编号</param>
        /// <param name="pager">分页参数</param>
        /// <returns></returns>
        /// <remarks>2013-08-12 邵斌 创建</remarks>
        public override void GetProductComment(ParaFeProductCommentFilter filter, ref Pager <CBFeProductComment> pager)
        {
            #region 测试SQL  获取商品评论

            /*
             * select
             *  fc.*,cr.account  as Account,cr.nickname as Name,cr.mobilephonenumber as MobilePhoneNumber,crl.sysno as levelSysno,crl.levelname as levelname
             * from
             *  FeProductComment fc
             *  left join CrCustomer cr on cr.sysno = fc.customersysno
             *  inner join Crcustomerlevel crl on cr.levelsysno = crl.sysno
             * where
             *  fc.productsysno=1 and fc.commentstatus = 20
             */

            #endregion

            using (var context = Context.UseSharedConnection(true))
            {
                IList <CBFeProductComment> list = context.Select <CBFeProductComment>("fc.*,cr.account  as Account,cr.nickname as Name,cr.mobilephonenumber as MobilePhoneNumber,cr.headimage as HeadImage,crl.sysno as levelSysno,crl.levelname as levelname")
                                                  .From("FeProductComment fc left join CrCustomer cr on cr.sysno = fc.customersysno inner join Crcustomerlevel crl on cr.levelsysno = crl.sysno")
                                                  .Where("fc.productsysno=@0 and (fc.commentstatus = @1 or (@IsShare>-1 and sharestatus = @sharestatus)) and (@2 = -1 or fc.IsShare = @3) and (fc.score > (@4-1) and fc.score <(@5+1))")
                                                  .OrderBy("istop desc, fc.CommentTime desc")
                                                  .Parameter("0", filter.ProductSysNo)
                                                  .Parameter("1", (int)ForeStatus.商品评论状态.已审)
                                                  .Parameter("IsShare", filter.IsShare)
                                                  .Parameter("sharestatus", (int)ForeStatus.商品晒单状态.已审)
                                                  .Parameter("2", filter.IsShare)
                                                  .Parameter("3", filter.IsShare)
                                                  .Parameter("4", filter.StartSocre)
                                                  .Parameter("5", filter.EndSocre)
                                                  .Paging(pager.CurrentPage, pager.PageSize)
                                                  .QueryMany();

                foreach (var cbFeProductComment in list)
                {
                    #region 测试SQL 获取评论回复

                    /*
                     * select
                     *      fcr.*,cr.account  as Account,cr.nickname as Name,cr.mobilephonenumber as MobilePhoneNumber,cr.headimage as HeadImage,
                     * from
                     *      FeProductCommentReply fcr
                     *      left join CrCustomer cr on cr.sysno = fcr.customersysno
                     * where
                     *      fcr.commentsysno = 1 and fcr.Status=20
                     */
                    #endregion

                    //评论回复
                    cbFeProductComment.Reply = context.Sql(@"
                            select 
                                  fcr.*,cr.account  as Account,cr.nickname as Name,cr.mobilephonenumber as MobilePhoneNumber,cr.headimage as HeadImage 
                            from
                                  FeProductCommentReply fcr
                                  left join CrCustomer cr on cr.sysno = fcr.customersysno
                            where
                                  fcr.commentsysno = @0 and fcr.Status = @1
                        ", cbFeProductComment.SysNo, (int)ForeStatus.商品评论回复状态.已审).QueryMany <CBFeProductCommentReply>();

                    #region 测试SQL 获取评论晒单图片

                    /*
                     * select
                     *  fci.*
                     * from
                     *  FeProductCommentImage fci
                     * where
                     *  fci.commentsysno = 1  and and fci.Status=  20
                     */

                    #endregion

                    //商品晒单
                    cbFeProductComment.ShowMyProductImage = context.Sql(@"
                            select
                                fci.* 
                            from 
                                FeProductCommentImage fci
                            where
                                fci.commentsysno = @0 and fci.Status = @1
                        ", cbFeProductComment.SysNo, (int)ForeStatus.晒单图片状态.已审).QueryMany <FeProductCommentImage>();
                }

                pager.Rows = list;

                //统计记录数
                pager.TotalRows =
                    context.Sql(@"select 
                                        count(fc.sysno) as countRow 
                                  from 
                                        FeProductComment fc  
                                        left join CrCustomer cr on cr.sysno = fc.customersysno 
                                        inner join Crcustomerlevel crl on cr.levelsysno = crl.sysno
                                  where
                                        fc.productsysno=@0 and (fc.commentstatus = @1 or (@IsShare>-1 and sharestatus = @sharestatus)) and fc.IsShare>@2 and (@3<0 or fc.score between @4 and @5)
                                  order by fc.CommentTime desc")
                    .Parameter("0", filter.ProductSysNo)
                    .Parameter("1", (int)ForeStatus.商品评论状态.已审)
                    .Parameter("IsShare", filter.IsShare)
                    .Parameter("sharestatus", (int)ForeStatus.商品晒单状态.已审)
                    .Parameter("2", filter.IsShare - 1)
                    .Parameter("3", filter.IsShare)
                    .Parameter("4", filter.StartSocre)
                    .Parameter("5", filter.EndSocre)
                    .QuerySingle <int>();
            }
        }