コード例 #1
0
        /// <summary>
        /// 检查听评对象用记是否存在,不存在则创建
        /// </summary>
        private bool CreatePConfirmlectureUserID(ResearchInfo infoResearch)
        {
            UserInfo infoUser = null;

            if (infoResearch.lectureUserID > 0)
            {
                infoUser = UserBLL.GetList(a =>
                                           a.ID == infoResearch.lectureUserID &&
                                           a.DepartmentID == infoResearch.ResearchPlanInfo.DepartmentID).FirstOrDefault();
                if (null != infoUser)
                {
                    return(true);
                }
            }

            infoUser = new UserInfo();
            infoUser.DepartmentID     = infoResearch.ResearchPlanInfo.DepartmentID;
            infoUser.Name             = Function.GetRequestString("TxtLectureUserID");
            infoUser.Code             = infoUser.Name;
            infoUser.PassWord         = Guid.NewGuid().ToString().Replace("-", "");
            infoUser.Email            = infoUser.Tel = string.Empty;
            infoUser.CreateDate       = infoUser.LastDate = DateTime.Now;
            infoUser.Enable           = false;
            infoUser.LocationX        = infoUser.LocationY = 0;
            infoUser.WechatOpenID     = infoUser.WechatNameNick = infoUser.WechatHeadImg = infoUser.Sex = string.Empty;
            infoUser.IDCard           = string.Empty;
            infoUser.TypeID           = -1;
            infoUser.DefaultSubjectID = infoResearch.SubjectID;
            if (string.IsNullOrEmpty(infoUser.Name))
            {
                return(false);
            }

            //再根据名称找一,如果就不要加啦
            var ExistItem = UserBLL.GetList(a => a.Name.StartsWith(infoUser.Name + "|外区")).FirstOrDefault();

            if (null != ExistItem)
            {
                infoResearch.lectureUserID = ExistItem.ID;
                return(true);
            }


            //做insert前最后修正
            infoUser.Name = infoUser.Code = infoUser.Name
                                            + "|"
                                            + SysEnum.GetName(typeof(SysEnum.ResearchArea), infoResearch.ResearchPlanInfo.AreaID)
                                            + Guid.NewGuid().ToString().Replace("-", "");
            infoUser.SubjectInfo.Add(infoResearch.SubjectInfo);
            return(UserBLL.Create(infoUser).ID > 0);
        }
コード例 #2
0
        public ActionResult Create(ResearchPlanInfo info)
        {
            #region 计划对象ResearchPlanInfo
            info.Name = string.Format("{0}听评{1}", CurrentUser.Name, SysEnum.GetName(typeof(SysEnum.ResearchArea), info.AreaID));
            if (string.IsNullOrEmpty(info.Memo))
            {
                info.Memo = string.Empty;
            }
            if (info.DateBegin.Date < DateTime.Now.Date)
            {
                return(Json(new APIJson("日期有误")));
            }
            if (info.TemplateID <= 0)
            {
                return(Json(new APIJson("请选择评价模板")));
            }
            info.CategoryID   = PlanCategoryPersonalID;
            info.Address      = string.Empty;
            info.DateEnd      = info.DateBegin;
            info.TypeEnum     = (int)SysEnum.ResearchPlanType.个人听课;
            info.CreateUserID = CurrentUser.ID;
            info.CreateDate   = DateTime.Now;
            info.Status       = (int)SysEnum.ResearchPlanStatus.进行中;

            info.SummaryDetail   = string.Empty;
            info.SummaryUserName = string.Empty;
            #endregion

            #region 听评课对象ResearchInfo
            var infoResearch = new ResearchInfo();
            infoResearch.UserID            = CurrentUser.ID;
            infoResearch.SubjectID         = Function.GetRequestInt("SubjectID");
            infoResearch.lectureUserID     = Function.GetRequestInt("lectureUserID", 0);
            infoResearch.Topic             = Function.GetRequestString("Topic");
            infoResearch.LessionNumber     = Function.GetRequestInt("LessionNumber");
            infoResearch.ClassName         = Function.GetRequestString("ClassName");
            infoResearch.GradeName         = Function.GetRequestString("GradeName");
            infoResearch.SubjectiveOpinion = string.Empty;
            infoResearch.NoteMemo          = string.Empty;
            infoResearch.Status            = (int)SysEnum.ResearchStatus.未评;
            infoResearch.ScoreTotal        = 0;
            infoResearch.ScoreLever        = (int)SysEnum.ResearchScoreLever.合格;
            infoResearch.CreateDate        = DateTime.Now;
            var infoExist = ResearchBLL.GetList(a =>
                                                DbFunctions.DiffDays(a.CreateDate, infoResearch.CreateDate) == 0 &&
                                                a.ResearchPlanID == infoResearch.ResearchPlanID &&
                                                a.UserID == CurrentUser.ID &&
                                                a.ClassName == infoResearch.ClassName &&
                                                a.GradeName == infoResearch.GradeName &&
                                                a.LessionNumber == infoResearch.LessionNumber
                                                ).FirstOrDefault();
            if (null != infoExist)
            {
                return(Json(new APIJson(2, "您还在听评当前课程,将直接进入", new { PlanID = infoExist.ResearchPlanID, ResearchID = infoExist.ID })));
            }
            //infoResearch.ResearchPlanID
            //infoResearch.SubjectID
            if (string.IsNullOrEmpty(infoResearch.Topic))
            {
                return(Json(new APIJson(-1, "请填写课题")));
            }
            if (string.IsNullOrEmpty(infoResearch.ClassName))
            {
                return(Json(new APIJson(-1, "请填写年级")));
            }
            if (string.IsNullOrEmpty(infoResearch.GradeName))
            {
                return(Json(new APIJson(-1, "请填写班级")));
            }
            if (infoResearch.SubjectID <= 0)
            {
                return(Json(new APIJson(-1, "请选择学科")));
            }
            SubjectInfo infoSubject = SubjectBLL.GetList(a => a.ID == infoResearch.SubjectID).FirstOrDefault();
            if (null == infoSubject)
            {
                return(Json(new APIJson(-1, "请选择学科")));
            }
            infoResearch.SubjectInfo       = infoSubject;
            infoResearch.SubjectiveOpinion = string.Empty;
            infoResearch.NoteMemo          = string.Empty;
            infoResearch.Status            = (int)SysEnum.ResearchStatus.未评;
            infoResearch.ScoreTotal        = 0;
            infoResearch.ScoreLever        = (int)SysEnum.ResearchScoreLever.合格;

            infoResearch.ResearchPlanInfo = info;
            info.ResearchInfo.Add(infoResearch);
            #endregion


            if (!CreatePConfirmDepartmentID(info))
            {
                return(Json(new APIJson(-1, "请认真输放学校信息,对于系统未录入的学校,请务必认真输入全名")));
            }
            if (!CreatePConfirmlectureUserID(infoResearch))
            {
                return(Json(new APIJson(-1, "请认真输放听课对象,对于系统未录入的老师,请务必认真填写其姓名")));
            }
            if (ResearchPlanBLL.Create(info).ID > 0)
            {
                return(Json(new APIJson(0, "提交成功", new { PlanID = info.ID, ResearchID = infoResearch.ID })));
            }
            return(Json(new APIJson(-1, "提交失败,请重试")));
        }