예제 #1
0
 /// <summary>
 /// 所有配置清空
 /// </summary>
 public void Logout()
 {
     //1.更新会员卡号ID
     CommUtil.UpdateSettingString("memberId", "");
     //3.更新当前登陆用户的训练计划id
     CommUtil.UpdateSettingString("trainingPlanId", "");
     //4.更新当前登陆用户的训练课程id
     CommUtil.UpdateSettingString("trainingCourseId", "");
     //5.更新当前登陆用户的当前课程记录id current_course_count
     CommUtil.UpdateSettingString("currentCourseCount", "");
     //5.更新当前登陆用户的目标课程记录id
     CommUtil.UpdateSettingString("targetCourseCount", "");
     //6.更新当前登陆会员的主键
     CommUtil.UpdateSettingString("memberPrimarykey", "");
     //8.更新教练ID
     CommUtil.UpdateSettingString("coachId", "");
 }
예제 #2
0
        /// <summary>
        /// 自动创建模板训练课程
        /// </summary>
        /// <param name="trainingCourseEntity"></param>
        /// <returns></returns>
        public void AutoSaveNewTemplateCourse(TrainingPlanEntity trainingPlan, PlanTemplate planTemplate)
        {
            //使整个代码块成为事务性代码
            using (TransactionScope ts = new TransactionScope())
            {
                TrainingCourseEntity trainingCourseEntity = new TrainingCourseEntity();

                //主键id
                trainingCourseEntity.Id = KeyGenerator.GetNextKeyValueLong("bdl_training_course");
                //设置外键训练计划id
                trainingCourseEntity.Fk_training_plan_id = trainingPlan.Id;
                //设置会员卡号
                trainingCourseEntity.Member_id = trainingPlan.Member_id;
                //当前创建时间
                trainingCourseEntity.Gmt_create = System.DateTime.Now;
                //6.创建一个默认的训练课程
                //  课程开始时间 = 训练计划的开始时间
                trainingCourseEntity.Start_date = trainingPlan.Start_date;
                //  默认暂停时间是2天
                trainingCourseEntity.Rest_days = 2;
                //  默认课程天数是16天
                trainingCourseEntity.Target_course_count = 16;
                //  当前计数默认0
                trainingCourseEntity.Current_course_count = 0;
                //  默认结束日期 = 开始日期 + (暂停时间*(课程天数 - 1))  减一是因为当天算第一天
                trainingCourseEntity.End_date = trainingCourseEntity.Start_date.Value.AddDays(trainingCourseEntity.Rest_days.Value * (trainingCourseEntity.Target_course_count.Value - 1));
                //  状态未完成
                trainingCourseEntity.Is_complete = false;

                //  保存课程
                //这个插入基类有BUG 明明插入进入了 但是返回的结果为0,所以不要返回值了。反正如果插入失败也报异常,返回值也没啥用
                trainingCourseDAO.Insert(trainingCourseEntity);
                //插入至上传表
                UploadManagementDAO uploadManagementDao = new UploadManagementDAO();
                uploadManagementDao.Insert(new UploadManagement((int)trainingCourseEntity.Id, "bdl_training_course", 0));
                //更新配置中的课程id
                CommUtil.UpdateSettingString("trainingCourseId", (trainingCourseEntity.Id).ToString());
                //训练课程目标天数
                CommUtil.UpdateSettingString("targetCourseCount", (trainingCourseEntity.Target_course_count).ToString());
                //调用创建模板训练活动
                trainingActivityService.AutoSaveActivityTemplate(trainingCourseEntity, trainingPlan.Fk_member_id.Value, planTemplate);
                ts.Complete();
            }
        }
예제 #3
0
        /// <summary>
        /// 添加训练课程
        /// </summary>
        /// <param name="trainingCourseEntity"></param>
        /// <returns></returns>
        public void SaveTrainingCourse(DateTime?startDate)
        {
            TrainingCourseEntity trainingCourseEntity = new TrainingCourseEntity();

            //主键id
            trainingCourseEntity.Id = KeyGenerator.GetNextKeyValueLong("bdl_training_course");
            //设置外键训练计划id
            trainingCourseEntity.Fk_training_plan_id = ParseIntegerUtil.ParseInt(CommUtil.GetSettingString("trainingPlanId"));
            //设置会员卡号
            trainingCourseEntity.Member_id = CommUtil.GetSettingString("memberId");
            //当前创建时间
            trainingCourseEntity.Gmt_create = System.DateTime.Now;
            //6.创建一个默认的训练课程
            //  课程开始时间 = 训练计划的开始时间
            trainingCourseEntity.Start_date = startDate;
            //  默认暂停时间是4天
            trainingCourseEntity.Rest_days = 2;
            //  默认课程天数是16天
            trainingCourseEntity.Target_course_count = 16;
            //  默认结束日期 = 开始日期 + (暂停时间*(课程天数 - 1))  减一是因为当天算第一天
            trainingCourseEntity.End_date = trainingCourseEntity.Start_date.Value.AddDays(trainingCourseEntity.Rest_days.Value * (trainingCourseEntity.Target_course_count.Value - 1));
            //  状态未完成
            trainingCourseEntity.Is_complete = false;
            //  当前计数默认0
            trainingCourseEntity.Current_course_count = 0;
            //  保存课程


            //这个插入基类有BUG 明明插入进入了 但是返回的结果为0,所以不要返回值了。反正如果插入失败也报异常,返回值也没啥用
            trainingCourseDAO.Insert(trainingCourseEntity);
            //插入至上传表
            UploadManagementDAO uploadManagementDao = new UploadManagementDAO();

            uploadManagementDao.Insert(new UploadManagement(trainingCourseEntity.Id, "bdl_training_course", 0));
            //更新配置中的课程id
            CommUtil.UpdateSettingString("trainingCourseId", (trainingCourseEntity.Id).ToString());
            //训练课程目标天数
            CommUtil.UpdateSettingString("targetCourseCount", (trainingCourseEntity.Target_course_count).ToString());
        }
예제 #4
0
        //登录操作
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            /*if ("true" == ConfigurationManager.AppSettings["Debug"])
             * {
             *  //Debug模式直接进系统 方便开发
             *  MainPage mainpage1 = new MainPage();
             *  this.Content = mainpage1;
             *  return;
             * }*/
            //获取用户名
            String name = this.User_Name.Text;
            //获取密码
            String password = this.User_Password.Password;

            UserConstant.USERNAME = name;
            UserConstant.PASSWORD = password;
            ///登录逻辑
            AuthService authService = new AuthService();
            string      loginResult = authService.Login(name, password);

            Console.WriteLine("loginResult:" + loginResult);

            if (string.IsNullOrEmpty(name) || string.IsNullOrEmpty(password))
            {
                loginResult = LanguageUtils.ConvertLanguage("用户名或者密码不能为空", "User name or password cannot be empty");
            }
            //U盾监测,无误后登录
            if (loginResult.Equals("check_U"))
            {
                //admin不能记住密码  很危险
                //验证U盾后跳转
                //暂时不验证U盾
                MainPage mainpage = new MainPage();
                this.Content = mainpage;
                if (timerNotice != null)
                {
                    timerNotice.Stop();
                }
            }
            else if (loginResult.Equals("success"))
            {
                //普通用户,点击记住密码,登陆成功后,登录用户与密码加入缓存
                bool?checkRemind     = isRemind.IsChecked;
                bool?checkRemindName = isRemindName.IsChecked;
                if (checkRemind == true)
                {
                    //加密后存储在config中
                    name     = ConfigUtil.Encrypt(name);
                    password = ConfigUtil.Encrypt(password);
                    CommUtil.UpdateSettingString("isRemind", "true");
                    CommUtil.UpdateSettingString("isRemindName", "true");
                    CommUtil.UpdateSettingString("userName", name);
                    CommUtil.UpdateSettingString("password", password);
                }
                else if (checkRemindName == true)
                {
                    name = ConfigUtil.Encrypt(name);
                    CommUtil.UpdateSettingString("isRemind", "false");
                    CommUtil.UpdateSettingString("isRemindName", "true");
                    CommUtil.UpdateSettingString("userName", name);
                }
                else
                {
                    //都不选中就不记住,清空缓存的密码
                    CommUtil.UpdateSettingString("isRemind", "false");
                    CommUtil.UpdateSettingString("isRemindName", "false");
                    CommUtil.UpdateSettingString("userName", "");
                    CommUtil.UpdateSettingString("password", "");
                }

                //成功登陆,跳转
                MainPage mainpage = new MainPage();
                this.Content = mainpage;

                if (timerNotice != null)
                {
                    timerNotice.Stop();
                }
            }
            else
            {
                //问题登录  在登录提示框内显示信息
                bubble.IsOpen = true;
                //Error_Info.Content = loginResult;

                Error_Info.Content = LanguageUtils.ConvertLanguage(loginResult, "login exist question!");
            }
        }
예제 #5
0
        /// <summary>
        /// 自动创建模板训练计划 2019.3.27
        /// </summary>
        /// <param name="memberId"></param>
        public void AutoSaveNewPlan(MemberEntity memberEntity, PlanTemplate planTemplate)
        {
            //插入至上传表
            UploadManagementDAO uploadManagementDao = new UploadManagementDAO();

            //使整个代码块成为事务性代码
            using (TransactionScope ts = new TransactionScope())
            {
                TrainingPlanEntity trainingPlan = new TrainingPlanEntity();

                //会员卡号ID
                string memberId = memberEntity.Member_id;

                //1.删除旧的训练计划
                trainingPlanDAO.DeletePlanByMemberId(memberId);
                //2.完成旧的训练课程
                trainingCourseDAO.UpdateCompleteState(memberId, true);
                List <long> listId1 = new List <long>();
                listId1 = trainingCourseDAO.ListIdByMemeberId(memberId);
                foreach (var id in listId1)
                {
                    //数据上传
                    uploadManagementDao.Insert(new UploadManagement(id, "bdl_training_course", 1));
                }

                //3.完成旧的训练活动
                activityDAO.UpdateCompleteState(memberId, true);

                List <long> listId = new List <long>();
                //通过memberId获取主键id
                listId = activityDAO.ListIdByMemeberId(memberId);
                foreach (var id in listId)
                {
                    //数据上传
                    uploadManagementDao.Insert(new UploadManagement(id, "bdl_activity", 1));
                }
                //4.新增训练计划
                trainingPlan.Id = KeyGenerator.GetNextKeyValueLong("bdl_training_plan");
                //外键用户主键id
                trainingPlan.Fk_member_id = memberEntity.Id;
                //  设置会员卡号
                trainingPlan.Member_id = memberEntity.Member_id;
                // 开始时间
                trainingPlan.Start_date = System.DateTime.Now;
                //  设置状态为未删除
                trainingPlan.Is_deleted = false;
                //  创建时间
                trainingPlan.Gmt_create = System.DateTime.Now;
                //训练计划标题
                switch (planTemplate)
                {
                case PlanTemplate.StrengthCycle:
                    trainingPlan.Title = "力量循环";
                    break;

                case PlanTemplate.EnduranceCycle:
                    trainingPlan.Title = "力量耐力循环";
                    break;

                case PlanTemplate.StrengthEnduranceCycle:
                    trainingPlan.Title = "力量循环与力量耐力循环";
                    break;

                default:
                    break;
                }

                trainingPlan.Training_target = "塑形";
                //  插入新训练计划
                trainingPlanDAO.Insert(trainingPlan);
                uploadManagementDao.Insert(new UploadManagement(trainingPlan.Id, "bdl_training_plan", 0));
                //5.更新App.config中训练计划id
                CommUtil.UpdateSettingString("trainingPlanId", (trainingPlan.Id).ToString());
                //自动创建模板课程
                trainingCourseService.AutoSaveNewTemplateCourse(trainingPlan, planTemplate);
                ts.Complete();
            }
        }
예제 #6
0
        /// <summary>
        /// 添加新的训练计划,需要先删除旧的训练计划
        /// </summary>
        /// <param name="trainingPlan"></param>
        /// <returns></returns>
        public void SaveNewTrainingPlan(TrainingPlanEntity trainingPlan)
        {
            //使整个代码块成为事务性代码
            using (TransactionScope ts = new TransactionScope())
            {
                UploadManagementDAO uploadManagementDao = new UploadManagementDAO();
                //会员卡号ID
                string memberId = CommUtil.GetSettingString("memberId");
                //1.删除旧的训练计划
                trainingPlanDAO.DeletePlanByMemberId(memberId);
                //2.完成旧的训练课程
                trainingCourseDAO.UpdateCompleteState(memberId, true);
                List <long> listId1 = new List <long>();
                listId1 = trainingCourseDAO.ListIdByMemeberId(memberId);
                foreach (var id in listId1)
                {
                    //数据上传
                    uploadManagementDao.Insert(new UploadManagement(id, "bdl_training_course", 1));
                }
                //3.完成旧的训练活动
                activityDAO.UpdateCompleteState(memberId, true);
                List <long> listId = new List <long>();
                //通过memberId获取主键id
                listId = activityDAO.ListIdByMemeberId(memberId);
                foreach (var id in listId)
                {
                    //数据上传
                    uploadManagementDao.Insert(new UploadManagement(id, "bdl_activity", 1));
                }
                //4.新增训练计划
                trainingPlan.Id = KeyGenerator.GetNextKeyValueLong("bdl_training_plan");

                //判断登陆用户,是教练自己锻炼。还是教练为用户进行设置。决定传哪个主键设置
                string currentMemberPK = CommUtil.GetSettingString("memberPrimarykey");
                string currentCoachId  = CommUtil.GetSettingString("coachId");
                if ((currentMemberPK == null || currentMemberPK == "") && (currentCoachId != null && currentCoachId != ""))
                {
                    //无用户登陆。教练单独登陆时
                    //  从app.config中取id,转成int赋值
                    trainingPlan.Fk_member_id = ParseIntegerUtil.ParseInt(currentCoachId);
                }
                else
                {
                    //只要用户登录,就是为用户进行设置
                    //  从app.config中取id,转成int赋值
                    trainingPlan.Fk_member_id = ParseIntegerUtil.ParseInt(currentMemberPK);
                }


                //  设置会员卡号
                trainingPlan.Member_id = CommUtil.GetSettingString("memberId");
                //  设置状态为未删除
                trainingPlan.Is_deleted = false;
                //  创建时间
                trainingPlan.Gmt_create = System.DateTime.Now;
                //  插入新训练计划
                trainingPlanDAO.Insert(trainingPlan);
                //插入至上传表
                uploadManagementDao.Insert(new UploadManagement(trainingPlan.Id, "bdl_training_plan", 0));
                //5.更新App.config中训练计划id
                CommUtil.UpdateSettingString("trainingPlanId", (trainingPlan.Id).ToString());

                //插入默认训练课程 课程开始时间 = 训练计划开始时间
                trainingCourseService.SaveTrainingCourse(trainingPlan.Start_date);
                ts.Complete();
            }
        }
예제 #7
0
        /// <summary>
        /// 新增保存会员信息
        /// </summary>
        /// <param name="memberEntity"></param>
        /// <returns></returns>
        public long InsertMember(MemberEntity memberEntity)
        {
            //使整个代码块成为事务性代码
            using (TransactionScope ts = new TransactionScope())
            {
                //计算最大心率 = 220 - 年龄
                //memberEntity.Max_heart_rate = 220 - memberEntity.Age;
                //计算最宜心率 = (最大心率 * 76.5%)然后四舍五入为整数
                memberEntity.Suitable_heart_rate = (int?)Math.Round(memberEntity.Max_heart_rate.Value * 0.765);
                //设置主键id
                memberEntity.Id = KeyGenerator.GetNextKeyValueLong("bdl_member");
                //设置创建时间
                memberEntity.Gmt_create = System.DateTime.Now;
                //默认不开启减脂模式
                memberEntity.Is_open_fat_reduction = false;

                //设置会员ID
                StringBuilder stringBuilder = new StringBuilder();
                stringBuilder.Append(memberEntity.Member_familyName);
                stringBuilder.Append(memberEntity.Member_firstName);
                //用户名3个字符以内 写入时UTF-8编码每个汉字占3个字节
                if (stringBuilder.ToString().Length > 3)
                {
                    string subMemberId = stringBuilder.ToString().Substring(0, 3);
                    stringBuilder.Clear();
                    stringBuilder.Append(subMemberId);
                }
                //手机号不为空则拼接手机号后四位
                if (memberEntity.Mobile_phone != null && memberEntity.Mobile_phone != "")
                {
                    stringBuilder.Append(memberEntity.Mobile_phone.Substring(memberEntity.Mobile_phone.Length - 4));
                }
                else
                {
                    logger.Warn("拼接用户id时,用户手机号为空。用户名:" + memberEntity.Member_familyName + memberEntity.Member_firstName);
                }
                Console.WriteLine("用户名+手机号码后4位:" + stringBuilder.ToString());
                //添加CRC校验
                //string fullName = memberEntity.Member_familyName + memberEntity.Member_firstName;
                //string phone = memberEntity.Mobile_phone.Substring(memberEntity.Mobile_phone.Length - 2);
                //byte[] dataCRC = new byte[12];
                //Encoding.GetEncoding("GBK").GetBytes(fullName, 0, fullName.Length, dataCRC, 0);
                //Encoding.GetEncoding("ASCII").GetBytes(phone, 0, phone.Length, dataCRC, 10);
                //string lowStrCRC = SerialPortUtil.CRC16(dataCRC)[0].ToString();
                //string highStrCRC = SerialPortUtil.CRC16(dataCRC)[1].ToString();
                //string fullCRC = lowStrCRC + highStrCRC;
                //stringBuilder.Append(fullCRC);
                //设置用户id
                memberEntity.Member_id = stringBuilder.ToString();

                if (memberEntity.Role_id == 1)//只有添加的角色是用户才设置教练外键
                {
                    //当前登陆的教练Id
                    memberEntity.Fk_coach_id = ParseIntegerUtil.ParseInt(CommUtil.GetSettingString("coachId"));
                }

                //使用基类插入新会员
                long resultCode = memberDAO.Insert(memberEntity);


                //更新APP中会员设置,让新增的该会员登陆 强制更新配置类,将当前登陆用户踢出

                //1.更新会员卡号ID
                CommUtil.UpdateSettingString("memberId", memberEntity.Member_id);
                //3.更新当前登陆用户的训练计划id
                CommUtil.UpdateSettingString("trainingPlanId", "");
                //4.更新当前登陆用户的训练课程id
                CommUtil.UpdateSettingString("trainingCourseId", "");
                //5.更新当前登陆用户的当前课程记录id current_course_count
                CommUtil.UpdateSettingString("currentCourseCount", "");
                //5.更新当前登陆用户的目标课程记录id
                CommUtil.UpdateSettingString("targetCourseCount", "");
                //6.更新当前登陆会员的主键
                CommUtil.UpdateSettingString("memberPrimarykey", memberEntity.Id.ToString());

                ts.Complete();
                //使用基类插入新会员
                return(resultCode);
            }
        }
예제 #8
0
        /// <summary>
        /// 1.该方法可用于登陆后,根据传入卡号更新App.config。
        /// 2.允许教练单独登陆,那么这些设置都是教练的,可以和普通用户一样查看图表。教练、用户同时登陆则保留用户的信息,两个主键位都有值
        /// 3.参roleId 1代表用户 0代表教练
        /// 4.登陆成功的情况更新数据库最近登陆时间
        /// </summary>
        /// <param name="memberId"></param>
        /// <param name="roleId"></param>
        private Enum UpdateSetting(string memberId, string roleId)
        {
            try
            {
                //系统允许至多一位教练和一位用户同时登录,存一个用户主键和一系列ID,存一个教练id
                string currentMemberPK = CommUtil.GetSettingString("memberPrimarykey");
                string currentCoachId  = CommUtil.GetSettingString("coachId");
                if ((currentMemberPK == null || currentMemberPK == "") && (currentCoachId == null || currentCoachId == ""))
                {
                    //同时为空 无人登陆
                    //判断登陆者角色
                    if ("1".Equals(roleId))//用户
                    {
                        //1.更新会员卡号ID
                        CommUtil.UpdateSettingString("memberId", memberId);
                        //3.更新当前登陆用户的训练计划id
                        TrainingPlanEntity trainingPlanEntity = trainingPlanDAO.GetTrainingPlanByMumberId(memberId);
                        if (trainingPlanEntity != null)
                        {
                            CommUtil.UpdateSettingString("trainingPlanId", (trainingPlanEntity.Id).ToString());
                        }
                        //4.更新当前登陆用户的训练课程id
                        TrainingCourseEntity trainingCourseEntity = trainingCourseDAO.GetCourseByMemberId(memberId);
                        if (trainingCourseEntity != null)
                        {
                            CommUtil.UpdateSettingString("trainingCourseId", (trainingCourseEntity.Id).ToString());
                            //5.更新当前登陆用户的当前课程记录id current_course_count
                            CommUtil.UpdateSettingString("currentCourseCount", (trainingCourseEntity.Current_course_count).ToString());
                            //5.更新当前登陆用户的目标课程记录id
                            CommUtil.UpdateSettingString("targetCourseCount", (trainingCourseEntity.Target_course_count).ToString());
                        }

                        //6.更新当前登陆会员的主键
                        //根据卡号查询会员
                        MemberEntity member = memberDAO.GetMember(memberId);
                        if (member != null)
                        {
                            CommUtil.UpdateSettingString("memberPrimarykey", (member.Id).ToString());
                            //7.更新会员最近登录时间
                            member.Last_login_date = System.DateTime.Now;
                            UpdateLastLoginDate(member);
                        }

                        logger.Debug("状态:无教练无用户登录。用户登录,返回用户页 ID:" + memberId);
                        //需要返回的页面类型
                        return(LoginPageStatus.UserPage);
                    }
                    else if ("0".Equals(roleId))//教练登陆
                    {
                        //1.更新会员卡号ID
                        CommUtil.UpdateSettingString("memberId", memberId);
                        //3.更新当前登陆用户的训练计划id
                        TrainingPlanEntity trainingPlanEntity = trainingPlanDAO.GetTrainingPlanByMumberId(memberId);
                        if (trainingPlanEntity != null)
                        {
                            CommUtil.UpdateSettingString("trainingPlanId", (trainingPlanEntity.Id).ToString());
                        }
                        //4.更新当前登陆用户的训练课程id
                        TrainingCourseEntity trainingCourseEntity = trainingCourseDAO.GetCourseByMemberId(memberId);
                        if (trainingCourseEntity != null)
                        {
                            CommUtil.UpdateSettingString("trainingCourseId", (trainingCourseEntity.Id).ToString());
                            //5.更新当前登陆用户的当前课程记录id current_course_count
                            CommUtil.UpdateSettingString("currentCourseCount", (trainingCourseEntity.Current_course_count).ToString());
                            //5.更新当前登陆用户的目标课程记录id
                            CommUtil.UpdateSettingString("targetCourseCount", (trainingCourseEntity.Target_course_count).ToString());
                        }
                        //6.更新当前登陆用户的主键
                        //根据卡号查询用户
                        MemberEntity member = memberDAO.GetMember(memberId);
                        if (member != null)
                        {
                            //7.更新教练最近登录时间
                            member.Last_login_date = System.DateTime.Now;
                            UpdateLastLoginDate(member);
                            //8.更新教练ID
                            CommUtil.UpdateSettingString("coachId", (member.Id).ToString());
                        }


                        logger.Debug("状态:无教练无用户登录。教练登录,返回教练页面。ID:" + memberId);
                        //需要返回的页面类型
                        return(LoginPageStatus.CoachPage);
                    }
                }
                else if ((currentMemberPK == null || currentMemberPK == "") && (currentCoachId != null && currentCoachId != ""))
                {
                    //教练已经登陆 会员未登陆
                    //判断登陆者角色
                    if ("1".Equals(roleId))//此时用户登陆还是在教练页面
                    {
                        //1.更新会员卡号ID
                        CommUtil.UpdateSettingString("memberId", memberId);
                        //3.更新当前登陆用户的训练计划id
                        TrainingPlanEntity trainingPlanEntity = trainingPlanDAO.GetTrainingPlanByMumberId(memberId);
                        if (trainingPlanEntity != null)
                        {
                            CommUtil.UpdateSettingString("trainingPlanId", (trainingPlanEntity.Id).ToString());
                        }
                        //4.更新当前登陆用户的训练课程id
                        TrainingCourseEntity trainingCourseEntity = trainingCourseDAO.GetCourseByMemberId(memberId);
                        if (trainingCourseEntity != null)
                        {
                            CommUtil.UpdateSettingString("trainingCourseId", (trainingCourseEntity.Id).ToString());
                            //5.更新当前登陆用户的当前课程记录id current_course_count
                            CommUtil.UpdateSettingString("currentCourseCount", (trainingCourseEntity.Current_course_count).ToString());
                            //5.更新当前登陆用户的目标课程记录id
                            CommUtil.UpdateSettingString("targetCourseCount", (trainingCourseEntity.Target_course_count).ToString());
                        }

                        //6.更新当前登陆会员的主键
                        //根据卡号查询会员
                        MemberEntity member = memberDAO.GetMember(memberId);
                        if (member != null)
                        {
                            CommUtil.UpdateSettingString("memberPrimarykey", (member.Id).ToString());
                            //7.更新会员最近登录时间
                            member.Last_login_date = System.DateTime.Now;
                            UpdateLastLoginDate(member);
                        }

                        logger.Debug("状态:教练已经登陆 会员未登陆。用户登录,返回教练页面。ID:" + memberId);
                        return(LoginPageStatus.CoachPage);
                    }
                    else if ("0".Equals(roleId))//教练重复登陆
                    {
                        logger.Debug("状态:教练已经登陆 会员未登陆。其他教练重复登录,已拦截,ID:" + memberId);
                        return(LoginPageStatus.RepeatLogins);
                    }
                }
                else if ((currentMemberPK != null && currentMemberPK != "") && (currentCoachId == null || currentCoachId == ""))
                {
                    //会员已登陆 教练未登录
                    //判断登陆者角色
                    if ("1".Equals(roleId))//用户
                    {
                        logger.Debug("状态:会员已登陆 教练未登录。其他用户重复登录,已拦截,ID:" + memberId);
                        return(LoginPageStatus.RepeatLogins);
                    }
                    else if ("0".Equals(roleId))//教练登陆 原用户的设置不动 只增加教练ID
                    {
                        //8.更新教练ID
                        MemberEntity member = memberDAO.GetMember(memberId);
                        if (member != null)
                        {
                            CommUtil.UpdateSettingString("coachId", (member.Id).ToString());
                            //更新教练最近登录时间
                            member.Last_login_date = System.DateTime.Now;
                            UpdateLastLoginDate(member);
                        }

                        logger.Debug("状态:会员已登陆 教练未登录。教练登录,ID:" + memberId);
                        //需要返回的页面类型
                        return(LoginPageStatus.CoachPage);
                    }
                }
                else if ((currentMemberPK != null && currentMemberPK != "") && (currentCoachId != null && currentCoachId != ""))
                {
                    //会员已登录 教练已登录
                    logger.Debug("状态:会员已登录 教练已登录。已有登陆会员和教练。重复登录,ID:" + memberId);

                    return(LoginPageStatus.RepeatLogins);
                }
                else
                {
                    return(LoginPageStatus.UnknownID);
                }
            }
            catch (Exception ex)
            {
                logger.Warn("用户登录更新配置类出现异常");
                throw new Exception("用户登录更新配置类出现异常", ex);
            }

            return(LoginPageStatus.UnknownID);
        }