/// <summary> /// 確認身分 /// </summary> private Actor() { this._units = new List <DAO.UnitRoleInfo>(); this.allUnits = new List <DAO.UnitRoleInfo>(); //1. 判斷是否是系統管理者 checkIsAdmin(); //2. 判斷在各單位的角色 findUnits(); //3. 取得所有管理單位資料 AccessHelper access = new AccessHelper(); List <UDT.MeetingRoomUnit> listUnit = access.Select <UDT.MeetingRoomUnit>(); foreach (UDT.MeetingRoomUnit unit in listUnit) { DAO.UnitRoleInfo unitRole = new DAO.UnitRoleInfo(unit.UID, unit.Name, false, ""); allUnits.Add(unitRole); } }
private void findUnits() { QueryHelper qh = new QueryHelper(); string sql = string.Format(@" SELECT unit.name AS unit_name , unit_admin.* FROM $ischool.booking.meetingroom_unit_admin AS unit_admin LEFT OUTER JOIN $ischool.booking.meetingroom_unit AS unit ON unit_admin.ref_unit_id = unit.uid WHERE unit_admin.account = '{0}' ", Actor.Account); DataTable dt = qh.Select(sql); foreach (DataRow row in dt.Rows) { string unitID = "" + row["ref_unit_id"]; string unitName = "" + row["unit_name"]; bool isBoss = ("" + row["is_boss"]) == "true" ? true : false; string teacherID = "" + row["ref_teacher_id"]; DAO.UnitRoleInfo unitRole = new DAO.UnitRoleInfo(unitID, unitName, isBoss, teacherID); if (unitRole.IsBoss) { this._isUnitBoss = true; } else { this._isUnitAdmin = true; } this._units.Add(unitRole); } }