Beispiel #1
0
        /// <summary>
        /// 查询作业
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static T_Zy GetZy(int id)
        {
            T_Zy model = null;

            using (MySqlDataReader dr = MySqlHelper.ExecuteReader(Util.GetConnectString(ZyConnString),
                                                                  "select Id, UserId, ZyName, CourseId, SubjectId, CreateDate, Ip, IMEI, MobileBrand, SystemType, Browser, OpenDate, DueDate, Type, Status from T_Zy where Id = @Id",
                                                                  "@Id".ToInt32InPara(id)))
            {
                if (dr != null && dr.HasRows)
                {
                    model = MySqlDBHelper.ConvertDataReaderToEntitySingle <T_Zy>(dr);
                }
            }
            return(model);
        }
Beispiel #2
0
        /// <summary>
        /// 获取作业信息
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static dto_Zy GetZy(int id)
        {
            dto_Zy tempresult = null;
            string key        = RedisHelper.GetEasyZyRedisKey(CacheCatalog.Zy, id.ToString());

            using (var client = RedisHelper.Instance.GetRedisClient(CacheCatalog.Zy.ToString()))
            {
                if (client != null)
                {
                    tempresult = client.Get <dto_Zy>(key);
                    if (tempresult == null)
                    {
                        T_Zy   z       = B_Zy.GetZy(id);
                        string subName = "";
                        Subjects.TryGetValue(z.SubjectId, out subName);
                        tempresult = new dto_Zy()
                        {
                            Id          = z.Id,
                            UserId      = z.UserId,
                            ZyName      = z.ZyName,
                            Type        = z.Type,
                            CourseId    = z.CourseId,
                            SubjectId   = z.SubjectId,
                            CreateDate  = z.CreateDate,
                            OpenDate    = z.OpenDate,
                            DueDate     = z.DueDate,
                            OpenDateStr = z.OpenDate.ToString("yyyy-MM-dd HH:mm:ss"),
                            DueDateStr  = z.DueDate.ToString("yyyy-MM-dd HH:mm:ss"),
                            SubjectName = subName,
                            TypeName    = z.Type == 0 ? "题库" : "自传",
                            Status      = z.Status
                        };

                        if (tempresult != null)
                        {
                            client.Set(key, tempresult, ts);
                        }
                    }
                }
            }

            return(tempresult);
        }
Beispiel #3
0
        /// <summary>
        /// 新建作业
        /// </summary>
        /// <param name="zy"></param>
        /// <returns></returns>
        public static int Create(T_Zy zy)
        {
            object o = MySqlHelper.ExecuteScalar(Util.GetConnectString(ZyConnString),
                                                 "insert into T_Zy(UserId, ZyName, CourseId, SubjectId, CreateDate, Ip, IMEI, MobileBrand, SystemType, Browser, OpenDate, DueDate, Type, Status) values (@UserId, @ZyName, @CourseId, @SubjectId, @CreateDate, @Ip, @IMEI, @MobileBrand, @SystemType, @Browser, @OpenDate, @DueDate, @Type, @Status); select last_insert_id();",
                                                 "@UserId".ToInt32InPara(zy.UserId),
                                                 "@ZyName".ToVarCharInPara(zy.ZyName),
                                                 "@CourseId".ToInt32InPara(zy.CourseId),
                                                 "@SubjectId".ToInt32InPara(zy.SubjectId),
                                                 "@CreateDate".ToDateTimeInPara(zy.CreateDate),
                                                 "@Ip".ToVarCharInPara(zy.Ip),
                                                 "@IMEI".ToVarCharInPara(zy.IMEI),
                                                 "@MobileBrand".ToVarCharInPara(zy.MobileBrand),
                                                 "@SystemType".ToVarCharInPara(zy.SystemType),
                                                 "@Browser".ToVarCharInPara(zy.Browser),
                                                 "@OpenDate".ToDateTimeInPara(zy.OpenDate),
                                                 "@DueDate".ToDateTimeInPara(zy.DueDate),
                                                 "@Type".ToInt32InPara(zy.Type),
                                                 "@Status".ToInt32InPara(zy.Status)
                                                 );

            return(o == null ? 0 : int.Parse(o.ToString()));
        }
        /// <summary>
        /// 保存作业
        /// </summary>
        /// <param name="zyName"></param>
        /// <param name="startDate"></param>
        /// <param name="endDate"></param>
        /// <param name="questions"></param>
        /// <returns></returns>
        public JsonResult SaveZy(int courseId, string zyName, string startDate, string endDate, string questions)
        {
            #region 参数验证
            dto_AjaxJsonResult <string> result = new dto_AjaxJsonResult <string>();
            if (zyName.Length > 30)
            {
                result.code    = AjaxResultCodeEnum.Error;
                result.message = "作业名称不能超过30个字!";
                return(Json(result));
            }
            DateTime OpenDate, DueDate;
            if (!DateTime.TryParse(startDate, out OpenDate) || !DateTime.TryParse(endDate, out DueDate))
            {
                result.code    = AjaxResultCodeEnum.Error;
                result.message = "开始时间和结束时间都要设置!";
                return(Json(result));
            }

            if (OpenDate > DueDate)
            {
                result.code    = AjaxResultCodeEnum.Error;
                result.message = "开始时间不能大于结束时间!";
                return(Json(result));
            }

            if (string.IsNullOrEmpty(questions))
            {
                result.code    = AjaxResultCodeEnum.Error;
                result.message = "试题不能为空!";
                return(Json(result));
            }

            #endregion
            int subjectId = 0;
            Const.CourseSubjectMapping.TryGetValue(courseId, out subjectId);
            //保存作业信息
            T_Zy zy = new T_Zy()
            {
                UserId      = UserId,
                ZyName      = zyName,
                OpenDate    = OpenDate,
                DueDate     = DueDate,
                Type        = 0,
                CourseId    = courseId,
                SubjectId   = subjectId,
                CreateDate  = DateTime.Now,
                Ip          = ClientUtil.Ip,
                IMEI        = ClientUtil.IMEI,
                MobileBrand = ClientUtil.MobileBrand,
                SystemType  = Request.Browser.Platform.ToString(),
                Browser     = Request.Browser.Browser.ToString(),
                Status      = 0
            };
            int id = B_Zy.Create(zy);

            //保存作业试题信息
            string[] qs = questions.Split(',');
            if (id > 0)
            {
                SaveZyQuestions(courseId, id, qs);
            }

            //修改试题使用次数
            IncreaseQuesUsageTimes(courseId, qs);

            result.code    = AjaxResultCodeEnum.Success;
            result.message = "";
            return(Json(result));
        }