/// <summary>
 /// 构造函数。
 /// </summary>
 public WorkThumbnailsService()
 {
     ModuleConfiguration cfg = new ModuleConfiguration();
     this.imageCacheRoot = cfg.WorkTempImageCache;
     this.imageDefaultPath = cfg.WorkTempDefaultImagePath;
     this.workDownloadService = new WorkDownloadService();
 }
        /// <summary>
        /// 验证用户身份。
        /// </summary>
        /// <param name="schoolID">学校ID。</param>
        /// <param name="type">类型。</param>
        /// <param name="account">账号。</param>
        /// <param name="password">密码。</param>
        /// <returns></returns>
        public CallResult VerifyUserIdentity(GUIDEx schoolID, int type, string account, string password)
        {
            try
            {
                IUserAuthentication auth = new ModuleConfiguration().UserAuthentication;
                if (auth != null)
                {
                    string err = null;
                    SFITSchools school = new SFITSchools();
                    school.SchoolID = schoolID;
                    if (!this.schoolsEntity.LoadRecord(ref school))
                    {
                        throw new Exception("学校ID不存在或被修改删除!");
                    }

                    GUIDEx userCode = auth.VerifyUser(type, account, password, out err);
                    if (!userCode.IsValid)
                        throw new Exception(string.IsNullOrEmpty(err) ? "未知错误" : err);
                    string employeeID = null, employeeCode = null, employeeName = null;
                    if (this.localUserInfo.GetUserInfo(type, userCode, out employeeID, out employeeCode, out employeeName))
                    {
                        if (type == 1)
                        {
                            //是否为任课教师。
                            if (!this.teaClassEntity.VerifyInstructor(schoolID, employeeID))
                            {
                                throw new Exception(string.Format("教师[{0},{1}]不属于学校[{2},{3}]的任课教师!", employeeCode, employeeName,
                                    school.SchoolCode, school.SchoolName));
                            }
                        }
                    }
                    else
                        throw new Exception(string.Format("账号[{0}]对应的信息不存在!", account));
                    return new CallResult(0, string.Join(",", new string[] { employeeID, employeeCode, employeeName }));
                }
                return new CallResult(-1, "未接入城域网。");
            }
            catch (Exception e)
            {
                return new CallResult(-1, e.Message);
            }
        }