Exemple #1
0
        //TODO 也许该与GetTrainingLog整合
        internal static List <TTrainingLogInfo> LoadTrainingLog(Guid gTrainingID)
        {
            var lst = new List <TTrainingLogInfo>();

            using (var context = new TrainingSign_Entities())
            {
                var qry = from p in context.tbl_trainee
                          from t in context.tbl_training
                          from c in context.tbl_course
                          where t.id == gTrainingID &&
                          p.ref_training_id == t.id &&
                          t.ref_course_id == c.id
                          select new
                {
                    id              = p.id,
                    workid          = p.workid,
                    cn_name         = p.name,
                    dept_name       = p.department,
                    organ_name      = p.organizer,
                    course_no       = c.course_no,
                    course_context  = c.course_context,
                    plan_start_time = t.plan_start_time,
                    plan_end_time   = t.plan_end_time,
                    signinTime      = p.signinTime
                };
                var its = from x in qry.AsEnumerable()
                          select new TTrainingLogInfo
                {
                    id             = x.id,
                    workid         = x.workid,
                    cn_name        = x.cn_name,
                    dept_name      = x.dept_name,
                    organ_name     = x.organ_name,
                    course_no      = x.course_no,
                    course_context = x.course_context,
                    training_time  = LocalFormatStr.GetLocalTimeStrHHMM(x.plan_start_time.Value)
                                     + (x.plan_end_time.HasValue ? "~" + LocalFormatStr.GetLocalTimeStrHHMM(x.plan_end_time.Value) : ""),
                    signin_time = x.signinTime.HasValue ? LocalFormatStr.GetLocalTimeStr(x.signinTime.Value) : ""
                };

                return(its.Any() ? its.ToList() : lst);
            }
        }
Exemple #2
0
        internal static List <TTrainingByTime> LoadTrainingDateByCourseID(string sCourID, string sMonth)
        {
            var  lst = new List <TTrainingByTime>();
            Guid gid = Guid.Empty;

            if (!Guid.TryParse(sCourID, out gid))
            {
                return(lst);
            }

            int nYear = 0;
            int nMon  = 0;
            int iPos  = sMonth.IndexOf('-');

            if (iPos > 0)
            {
                var str = sMonth.Substring(0, iPos);
                nYear = int.Parse(str);
                str   = sMonth.Substring(iPos + 1);
                nMon  = int.Parse(str);
            }

            using (var context = new TrainingSign_Entities())
            {
                var its = from t in context.tbl_training.AsEnumerable()
                          where t.ref_course_id == gid &&
                          t.plan_start_time.HasValue &&
                          (t.plan_end_time.Value.Year == nYear && t.plan_start_time.Value.Month == nMon)
                          orderby t.plan_start_time descending
                          select new TTrainingByTime {
                    id   = t.id,
                    text = LocalFormatStr.GetLocalTimeStrHHMM(t.plan_start_time.Value)
                           + (t.plan_end_time.HasValue ? "~" + LocalFormatStr.GetLocalTimeStrHHMM(t.plan_end_time.Value) : "")
                };
                return(its.Any() ? its.ToList() : lst);
            }
        }