Ejemplo n.º 1
0
        //private List<PostCateInfo> ConvertToPostCate(List<PostInfo> PostList, bool ChildList)
        //{
        //    List<PostCateInfo> PostCateList = new List<PostCateInfo>();
        //    if (PostList != null)
        //    {
        //        foreach (PostInfo Info in PostList)
        //        {
        //            PostCateInfo PostCateModel = new PostCateInfo();
        //            PostCateModel.EncryptFcateID = Info.PostId.ToString();
        //            PostCateModel.Title = Info.PostName;
        //            if (ChildList) PostCateModel.ChildCourseFCateView = ConvertToPostCate(PostBLL.ReadPostList(Info.PostId), false);
        //            PostCateList.Add(PostCateModel);
        //        }
        //    }
        //    return PostCateList;
        //}

        private List <MCourseInfo> GetCourseList()
        {
            int postID   = RequestHelper.GetForm <int>("postID");
            int page     = RequestHelper.GetForm <int>("pageIndex");
            int pageSize = RequestHelper.GetForm <int>("pageSize");
            int classID  = RequestHelper.GetForm <int>("classID");

            if (pageSize <= 0)
            {
                pageSize = base.PageSize;
            }
            List <MCourseInfo> CourseList = new List <MCourseInfo>();
            int    userID          = base.UserID;
            string prepaidCourseId = BLLMTestCate.ReadPrepaidTestCate(userID);

            if (postID < 0)
            {
                postID = int.Parse(CookiesHelper.ReadCookieValue("UserStudyPostId"));
            }

            List <ProductInfo> productList      = new List <ProductInfo>();
            string             inProductID      = PostBLL.ReadPostCourseID(base.UserCompanyID, postID);
            string             passPostCourseID = string.IsNullOrEmpty(inProductID) ? "" : TestPaperBLL.ReadCourseIDStr(TestPaperBLL.ReadList(base.UserID, inProductID, 1));

            inProductID = StringHelper.SubString(inProductID, passPostCourseID);
            ProductSearchInfo productSearch = new ProductSearchInfo();

            if (!string.IsNullOrEmpty(inProductID))
            {
                productSearch.InProductID = inProductID;
                productSearch.IsSale      = 1;
                if (classID > 0)
                {
                    productSearch.ClassID = "|" + classID + "|";
                }
                productSearch.OrderField = "[IsTop],[ClassID],[Sort],[ID]";
                productList = ProductBLL.SearchProductList(page, pageSize, productSearch, ref base.Count);
            }

            int pageCount = (int)Math.Ceiling((double)base.Count / pageSize);

            //加载选修课程(岗位课程罗列完成后,再加载选修)
            if ((classID < 0 || classID == 6) && (page == pageCount) && StringHelper.CompareSingleString("4,5,64", UserBLL.ReadUser(base.UserID).StudyPostID.ToString()))
            {
                productSearch.InProductID = string.Empty;
                productSearch.ClassID     = "|6|";
                productSearch.InBrandID   = base.CompanyBrandID;
                productSearch.NotLikeName = "必修";
                productSearch.IsSale      = 1;
                productList.AddRange(ProductBLL.SearchProductList(productSearch));
            }

            //加载认证考试
            if ((classID < 0 && page == 1) || classID == 4387)
            {
                PostPassInfo passpost = new PostPassInfo();
                passpost.UserId = base.UserID;
                passpost.IsRZ   = 0;

                RenZhengCateInfo rzCate = new RenZhengCateInfo();
                rzCate.InPostID = PostPassBLL.PassPostString(passpost);
                string rzProductID = RenZhengCateBLL.ReadTestCateID(rzCate);
                if (!string.IsNullOrEmpty(rzProductID))
                {
                    productSearch.InProductID = rzProductID;
                    productSearch.ClassID     = string.Empty;
                    productSearch.InBrandID   = base.CompanyBrandID;
                    productSearch.NotLikeName = string.Empty;
                    productSearch.IsSale      = 1;
                    productList.InsertRange(0, ProductBLL.SearchProductList(productSearch));
                }
            }

            //加载大课件
            if ((classID < 0 && page == 1) || classID == 5298)
            {
                productSearch.InProductID = string.Empty;
                productSearch.InBrandID   = string.Empty;
                productSearch.NotLikeName = string.Empty;
                productSearch.IsSale      = 1;
                productSearch.ClassID     = "|5298|";
                productList.InsertRange(0, ProductBLL.SearchProductList(productSearch));
            }

            //加载指定时间考试
            if (classID < 0 && page == 1)
            {
                string parentCompanyID = base.ParentCompanyID;
                if (string.IsNullOrEmpty(parentCompanyID))
                {
                    parentCompanyID = base.UserCompanyID.ToString();
                }
                else
                {
                    parentCompanyID += "," + base.UserCompanyID.ToString();
                }
                List <TestSettingInfo> specialTestList = TestSettingBLL.ReadSpecialTestList(parentCompanyID);
                if (specialTestList.Count > 0)
                {
                    string specialCourseID = TestSettingBLL.ReadSpecialTestCourseID(specialTestList);
                    if (!string.IsNullOrEmpty(specialCourseID))
                    {
                        productSearch.InProductID = specialCourseID;
                        productSearch.ClassID     = string.Empty;
                        productSearch.InBrandID   = base.CompanyBrandID;
                        productSearch.NotLikeName = string.Empty;
                        productSearch.IsSale      = 1;
                        List <ProductInfo> specialProductList = ProductBLL.SearchProductList(productSearch);
                        productList.InsertRange(0, specialProductList);
                    }
                }
            }

            //重新获取产品ID串
            inProductID      = ProductBLL.ReadProductIdStr(productList);
            passPostCourseID = string.IsNullOrEmpty(inProductID) ? "" : TestPaperBLL.ReadCourseIDStr(TestPaperBLL.ReadList(base.UserID, inProductID, 1));

            //获取未通过的最新记录
            string noPassCourseID = StringHelper.SubString(inProductID, passPostCourseID);
            List <TestPaperReportInfo> noPassTestPaperList = string.IsNullOrEmpty(noPassCourseID) ? new List <TestPaperReportInfo>() : TestPaperBLL.ReadThelatestList(base.UserID, noPassCourseID);

            List <AttributeRecordInfo> attributeRecordList = AttributeRecordBLL.ReadList("5", noPassCourseID);

            foreach (ProductInfo Info in productList)
            {
                //通过的课程不用显示
                //if (!StringHelper.CompareSingleString(passPostCourseID, Info.ID.ToString()))
                {
                    TestSettingInfo testSetting = TestSettingBLL.ReadTestSetting(base.UserCompanyID, Info.ID);

                    MCourseInfo CourseModel = new MCourseInfo();
                    CourseModel.ClassID   = Info.ID.ToString();
                    CourseModel.Title     = Info.Name;
                    CourseModel.IsPass    = false;
                    CourseModel.PageCount = pageCount;
                    TestPaperReportInfo currentPaper = noPassTestPaperList.Find(delegate(TestPaperReportInfo tempPaper) { return(tempPaper.CourseID == Info.ID); });
                    if (currentPaper != null)
                    {
                        //剩余时间
                        int remainingTime = (testSetting.TestInterval - (int)(DateTime.Now - currentPaper.TestDate).TotalHours);
                        CourseModel.ValidDateShow = remainingTime > 0 ? remainingTime.ToString() : "";
                    }
                    CourseModel.OriginalPrice = Info.MarketPrice.ToString();
                    if (!string.IsNullOrEmpty(Info.ProductNumber))
                    {
                        CourseModel.IsVideo = true;
                    }

                    if (!string.IsNullOrEmpty(Info.Accessory))
                    {
                        CourseModel.IsTest = true;

                        //通过的课程不用再考
                        if (StringHelper.CompareSingleString(passPostCourseID, Info.ID.ToString()))
                        {
                            CourseModel.IsTest = false;
                        }

                        if (testSetting != null && (testSetting.TestStartTime != null || testSetting.TestEndTime != null))
                        {
                            //指定时间考试考过了就不要再考了
                            if (!string.IsNullOrEmpty(CourseModel.ValidDateShow))
                            {
                                CourseModel.IsTest = false;
                            }
                            if (DateTime.Now < testSetting.TestStartTime || DateTime.Now > testSetting.TestEndTime)
                            {
                                CourseModel.IsTest = false;
                            }
                        }
                    }
                    CourseModel.IsPostCourse    = true;
                    CourseModel.IsPrepaidCourse = StringHelper.CompareSingleString(prepaidCourseId, Info.ID.ToString());

                    //产品知识 练车剧本地址
                    {
                        CourseModel.RCUrl = AttributeRecordBLL.ReadAttributeRecord(attributeRecordList, 5, Info.ID).Value;
                        if (!string.IsNullOrEmpty(CourseModel.RCUrl))
                        {
                            CourseModel.IsRC = true;
                        }
                    }
                    CourseList.Add(CourseModel);
                }
            }
            return(CourseList);
        }
Ejemplo n.º 2
0
        protected override void PageLoad()
        {
            if (StringHelper.CompareSingleString(base.ParentCompanyID, "667"))
            {
                Response.Redirect("/");
            }
            base.PageLoad();
            base.CheckUserPower("PostStudy", PowerCheckType.Single);

            ProductSearchInfo product = new ProductSearchInfo();

            product.IsNew = 1;
            //product.IsTop = 1;
            product.IsSale = 1;
            int count = 0;

            this.newProductList = ProductBLL.SearchProductList(1, 10, product, ref count);
            this.newProductAttributeRecordList = AttributeRecordBLL.ReadList("3", ProductBLL.ReadProductIdStr(this.newProductList));

            //默认加载视图模式
            if (string.IsNullOrEmpty(view))
            {
                view = "Grid";
            }

            int studyPostID = int.Parse(CookiesHelper.ReadCookieValue("UserStudyPostId"));

            this.studyPost        = PostBLL.ReadPost(studyPostID);
            this.productClassList = ProductClassBLL.ReadProductClassRootList();
            string postCourseID = PostBLL.ReadPostCourseID(base.UserCompanyID, studyPostID);

            postCourseNum = string.IsNullOrEmpty(postCourseID) ? 0 : postCourseID.Split(',').Length;
            string passPostCourseID = string.IsNullOrEmpty(postCourseID) ? "" : TestPaperBLL.ReadCourseIDStr(TestPaperBLL.ReadList(base.UserID, postCourseID, 1));

            passCourseNum = string.IsNullOrEmpty(passPostCourseID) ? 0 : passPostCourseID.Split(',').Length;
            //isTestAgain = TestSettingBLL.IsTestAgain(base.UserID, int.Parse(CookiesHelper.ReadCookieValue("UserStudyPostId")));

            switch (studyPostID)
            {
            case 5:
            case 37:
            case 64:
            case 87:
            case 693:
                postImageName = "post1.jpg";
                break;

            case 8:
            case 86:
            case 4:
            case 85:
            case 276:
            case 286:
                postImageName = "post2.jpg";
                break;

            case 82:
            case 220:
            case 166:
            case 168:
            case 88:
            case 251:
            case 258:
            case 302:
            case 308:
            case 341:
                postImageName = "post3.jpg";
                break;

            case 83:
            case 89:
            case 158:
            case 265:
            case 312:
            case 318:
                postImageName = "post4.jpg";
                break;

            case 11:
            case 327:
                postImageName = "post5.jpg";
                break;

            default:
                postImageName = "post1.jpg";
                break;
            }

            //视图模式时加载分类目录
            if (view == "Grid")
            {
                //公共课程
                if (pc == 1)
                {
                    ProductSearchInfo productSearch = new ProductSearchInfo();
                    productSearch.ClassID = "|5298|";
                    productSearch.IsSale  = 1;
                    postCourseID          = ProductBLL.ReadProductIdStr(ProductBLL.SearchProductList(productSearch));
                }
                //获取认证课程ID
                else if (rz == 1)
                {
                    PostPassInfo passpost = new PostPassInfo();
                    passpost.UserId = base.UserID;
                    passpost.IsRZ   = int.MinValue;

                    RenZhengCateInfo rzCate = new RenZhengCateInfo();
                    rzCate.InPostID = PostPassBLL.PassPostString(passpost);
                    postCourseID    = RenZhengCateBLL.ReadTestCateID(rzCate);
                }
                else
                {
                    //默认加载未通过的课程
                    if (passType <= 0)
                    {
                        passType = 0;
                    }

                    if (passType == 1 || passType == 0)
                    {
                        if (passType == 1)
                        {
                            postCourseID = passPostCourseID;//StringHelper.EqualString(postCourseID, filterCourseID);
                        }
                        else if (passType == 0)
                        {
                            postCourseID = StringHelper.SubString(postCourseID, passPostCourseID);
                        }
                    }
                }

                if (!string.IsNullOrEmpty(postCourseID))
                {
                    this.postProductClassList = ProductClassBLL.ReadProductClassListByProductID(postCourseID, 1);
                }
                if (postProductClassList.Count > 1)
                {
                    this.postProductClassList = productClassSort(this.postProductClassList);
                }

                //特定时间考试
                if (pc != 1 && rz != 1)
                {
                    string parentCompanyID = CookiesHelper.ReadCookieValue("UserCompanyParentCompanyID");
                    //if (string.IsNullOrEmpty(parentCompanyID)) parentCompanyID = base.UserCompanyID.ToString();
                    //else parentCompanyID += "," + base.UserCompanyID.ToString();
                    List <TestSettingInfo> specialTestList = TestSettingBLL.ReadSpecialTestList(parentCompanyID);
                    if (specialTestList.Count > 0)
                    {
                        string specialCourseID = TestSettingBLL.ReadSpecialTestCourseID(specialTestList);
                        if (!string.IsNullOrEmpty(specialCourseID))
                        {
                            ProductSearchInfo productSearch = new ProductSearchInfo();
                            productSearch.InProductID = specialCourseID;
                            productSearch.InBrandID   = CookiesHelper.ReadCookieValue("UserCompanyBrandID");
                            productSearch.IsSale      = 1;
                            specialCourseID           = ProductBLL.ReadProductIdStr(ProductBLL.SearchProductList(productSearch));
                            string passSpecialCourseID = TestPaperBLL.ReadCourseIDStr(TestPaperBLL.ReadList(base.UserID, specialCourseID, 1));
                            if (passType == 1)
                            {
                                specialCourseID = passSpecialCourseID;
                            }
                            else if (passType == 0)
                            {
                                specialCourseID = StringHelper.SubString(specialCourseID, passSpecialCourseID);
                            }

                            if (!string.IsNullOrEmpty(specialCourseID))
                            {
                                hasSpecialTest = true;
                            }
                        }
                    }
                }

                //三个岗位加载 竞品选修
                if (passType >= 0 && StringHelper.CompareSingleString("4,5,64", studyPostID.ToString()))
                {
                    ProductSearchInfo productSearch = new ProductSearchInfo();
                    productSearch.ClassID     = "|6|";
                    productSearch.InBrandID   = CookiesHelper.ReadCookieValue("UserCompanyBrandID");
                    productSearch.IsSale      = 1;
                    productSearch.NotLikeName = "必修";
                    string xxCourseID     = ProductBLL.ReadProductIdStr(ProductBLL.SearchProductList(productSearch));
                    string passXXCourseID = TestPaperBLL.ReadCourseIDStr(TestPaperBLL.ReadList(base.UserID, xxCourseID, 1));
                    if (passType == 1)
                    {
                        xxCourseID = passXXCourseID;
                    }
                    else if (passType == 0)
                    {
                        xxCourseID = StringHelper.SubString(xxCourseID, passXXCourseID);
                    }
                    if (!string.IsNullOrEmpty(xxCourseID))
                    {
                        this.xxProductClassList = ProductClassBLL.ReadProductClassListByProductID(xxCourseID, 1);
                    }
                }
            }
        }