25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
1.8 KiB

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using StuMgmLib.MyNameSpace;
  5. namespace StuMgmClient
  6. {
  7. class SystemData
  8. {
  9. static Dictionary<short, CourseInfo> allCourseInfo;
  10. static Dictionary<short,CourseStatusEnum> allCourseStatus;
  11. internal static ErrCode InitSystemData()
  12. {
  13. ErrCode err;
  14. err = InitCourseInfo();
  15. if (err != ErrCode.Success)
  16. return err;
  17. return ErrCode.Success;
  18. }
  19. static ErrCode InitCourseInfo()
  20. {
  21. ErrCode err;
  22. List<CourseInfo> courseInfo;
  23. err = SystemCtrl.GetCourseInfo(out courseInfo);
  24. if (err != ErrCode.Success)
  25. return err;
  26. //将List<CourseInfo>转为Dictionary<short, CourseInfo>
  27. //allCourseInfo = courseInfo.ToDictionary(key => key.Id, value => value);
  28. return ErrCode.Success;
  29. }
  30. internal static ErrCode RefreshUserCourseInfo(UserCourseInfo info)
  31. {
  32. //将UserCourseInfo转为Dictionary<short,CourseStatusEnum>
  33. int num = 0;
  34. short oldTem = 0;
  35. //切割字符串
  36. string[] sArray = info.Details.Split(new char[2] { ':', ';' });
  37. foreach (string i in sArray)
  38. {
  39. if (i.Equals("")) { break; }
  40. short tem = Convert.ToInt16(i);
  41. num++;
  42. if (num % 2 != 0)
  43. {
  44. allCourseStatus.Add(tem, CourseStatusEnum.NoStart);
  45. oldTem = tem;
  46. }
  47. else
  48. {
  49. allCourseStatus[oldTem] = (CourseStatusEnum)tem;
  50. }
  51. }
  52. return ErrCode.Success;
  53. }
  54. }
  55. }