From dadb27771d8a1c8a35c64c74e975d9bf899f13c8 Mon Sep 17 00:00:00 2001 From: seaHi Date: Sat, 28 Mar 2026 17:26:04 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E6=A0=B9=E6=8D=AE?= =?UTF-8?q?=E8=AF=BE=E8=A1=A8=E5=92=8C=E8=A1=8C=E6=94=BF=E5=8E=86=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E7=94=9F=E6=88=90ICS=E6=97=A5=E5=8E=86=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- generate_ics.py | 201 ++++++++ schedule.ics | 1239 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 1440 insertions(+) create mode 100644 generate_ics.py create mode 100644 schedule.ics diff --git a/generate_ics.py b/generate_ics.py new file mode 100644 index 0000000..1cfeab1 --- /dev/null +++ b/generate_ics.py @@ -0,0 +1,201 @@ +import sys +import re +import argparse +from datetime import datetime, timedelta +import pandas as pd + +def get_start_date_and_row(df_admin): + """ + 在行政历中找到代表第一周的那一行,并解析出“第一周星期一”的日期。 + """ + start_row = -1 + for i in range(len(df_admin)): + val = str(df_admin.iloc[i, 0]).strip() + if val == '一': + start_row = i + break + + if start_row == -1: + raise Exception("无法在行政历中找到 '周次' 为 '一' 的行") + + # 在第一周这一行,从第1列(星期一)到第7列(星期日),找到第一个带有完整日期的单元格 + for j in range(1, 8): + cell = df_admin.iloc[start_row, j] + if pd.notna(cell): + if hasattr(cell, 'date'): + # 如果pandas解析为了datetime对象 + date_val = cell.date() + return date_val - timedelta(days=j-1), start_row + elif isinstance(cell, str) and len(str(cell)) >= 10 and '-' in cell: + # 可能是形如 '2026-03-09' 的字符串 + date_val = pd.to_datetime(cell[:10]).date() + return date_val - timedelta(days=j-1), start_row + + raise Exception("在行政历的第一周中未找到明确的开学日期(带年月日格式的单元格)") + +def is_holiday(df_admin, start_row, week_num, weekday_idx): + """ + 检查某周某天是否为节假日(行政历的单元格内包含中文字符,如'4清明') + """ + row_idx = start_row + (week_num - 1) + if row_idx >= len(df_admin): + return False + + col_idx = weekday_idx + 1 # 星期一从第1列开始 + cell = df_admin.iloc[row_idx, col_idx] + + if pd.isna(cell): + return False + + cell_str = str(cell) + # 只要包含任意中文字符,就认为是节假日调休等特殊情况,跳过该日课程 + if re.search(r'[\u4e00-\u9fa5]', cell_str): + return True + + return False + +def parse_schedule(df_schedule): + """ + 解析课表,返回数组格式,每个元素表示一节课的基础信息 + """ + col_names = list(df_schedule.columns) + schedule_data = [] + + for i in range(len(df_schedule)): + period_str = str(df_schedule.iloc[i, 0]) + # 用正则提取例如 8:30~10:00 的时间段 + match = re.search(r'(\d{1,2}:\d{2})\s*(?:~|-)\s*(\d{1,2}:\d{2})', period_str) + if not match: + continue + + start_time_str = match.group(1).zfill(5) + end_time_str = match.group(2).zfill(5) + + # 遍历星期一到星期五查找课程 + for day_idx, day_name in enumerate(['星期一', '星期二', '星期三', '星期四', '星期五']): + # 动态获取星期的列索引 + c_idx = -1 + for idx, c in enumerate(col_names): + if day_name in str(c): + c_idx = idx + break + if c_idx == -1: + # 兼容处理:兜底默认索引 + c_idx = day_idx + 1 + + cell = df_schedule.iloc[i, c_idx] + if pd.isna(cell): + continue + + text = str(cell).strip() + if not text: + continue + + # 以换行符切割 课程名称、班级、教室 + lines = [l.strip() for l in text.split('\n') if l.strip()] + if not lines: + continue + + title = lines[0] + # 中间的是描述(班级等),最后一行是地点 + desc = " ".join(lines[1:-1]) if len(lines) >= 3 else "" + location = lines[-1] if len(lines) >= 2 else "" + + schedule_data.append({ + 'weekday': day_idx, + 'start_time': start_time_str, + 'end_time': end_time_str, + 'title': title, + 'description': desc, + 'location': location + }) + + return schedule_data + +def generate_ics(start_date, start_row, df_admin, schedule_data, output_file, total_weeks=18): + """ + 根据课表模板,生成1-18周的日历事件,跳过节假日 + """ + ics_lines = [ + "BEGIN:VCALENDAR", + "VERSION:2.0", + "PRODID:-//Schedule Generator//CN", + "CALSCALE:GREGORIAN", + "X-WR-TIMEZONE:Asia/Shanghai" # 设置全局国内时区 + ] + + # 转换为 ICS 所需的时间格式: 20260309T083000 + def fmt_dt(d, time_str): + return d.strftime("%Y%m%d") + "T" + time_str.replace(":", "") + "00" + + uid_counter = 1 + + for week in range(1, total_weeks + 1): + for course in schedule_data: + wd = course['weekday'] + # 计算该周该天上课的具体日期 + event_date = start_date + timedelta(weeks=week-1, days=wd) + + # 若这天在行政历里有中文(比如 “清明”),则表明是节假日,跳过 + if is_holiday(df_admin, start_row, week, wd): + continue + + dtstart = fmt_dt(event_date, course['start_time']) + dtend = fmt_dt(event_date, course['end_time']) + now_dt = datetime.now().strftime("%Y%m%dT%H%M%SZ") + + ics_lines.extend([ + "BEGIN:VEVENT", + f"UID:schevt_{week}_{wd}_{uid_counter}@schedule", + f"DTSTAMP:{now_dt}", + f"DTSTART;TZID=Asia/Shanghai:{dtstart}", + f"DTEND;TZID=Asia/Shanghai:{dtend}", + f"SUMMARY:{course['title']}", + f"LOCATION:{course['location']}", + f"DESCRIPTION:{course['description']}", + "END:VEVENT" + ]) + uid_counter += 1 + + ics_lines.append("END:VCALENDAR") + + with open(output_file, 'w', encoding='utf-8') as f: + # ICS格式规范要求每行以 \r\n 结束 + f.write("\r\n".join(ics_lines) + "\r\n") + + print(f"==> 成功生成日历文件: {output_file}") + print(f"==> 共生成了 {uid_counter - 1} 节日历事件(已自动跳过行政历上标注的节假日)。") + +def main(): + parser = argparse.ArgumentParser(description="根据课表和行政历生成 .ics 日历文件") + parser.add_argument('schedule_file', help="课表Excel文件路径 (如 课表.xlsx)") + parser.add_argument('admin_cal_file', help="行政历Excel文件路径 (如 行政历.xls)") + parser.add_argument('-o', '--output', default="schedule.ics", help="输出的日历文件名,默认为 schedule.ics") + parser.add_argument('-w', '--weeks', type=int, default=18, help="默认生成前18周,可通过本参数调整(如 16)") + + args = parser.parse_args() + + try: + # 1. 读取行政历和课表 + print(f"读取行政历:{args.admin_cal_file}") + df_admin = pd.read_excel(args.admin_cal_file) + print(f"读取课表:{args.schedule_file}") + df_schedule = pd.read_excel(args.schedule_file) + + # 2. 找到开学日期 + start_date, start_row = get_start_date_and_row(df_admin) + print(f"解析到 第 {args.weeks} 周的开课周期:第1周星期一为 {start_date}") + + # 3. 提取基础课表模板 + schedule_data = parse_schedule(df_schedule) + print(f"成功萃取 {len(schedule_data)} 条基础周课表数据") + + # 4. 生成 ICS 日历 + generate_ics(start_date, start_row, df_admin, schedule_data, args.output, total_weeks=args.weeks) + + except Exception as e: + print(f"发生错误: {e}") + sys.exit(1) + +if __name__ == "__main__": + main() diff --git a/schedule.ics b/schedule.ics new file mode 100644 index 0000000..b45622f --- /dev/null +++ b/schedule.ics @@ -0,0 +1,1239 @@ +BEGIN:VCALENDAR +VERSION:2.0 +PRODID:-//Schedule Generator//CN +CALSCALE:GREGORIAN +X-WR-TIMEZONE:Asia/Shanghai +BEGIN:VEVENT +UID:schevt_1_2_1@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260311T083000 +DTEND;TZID=Asia/Shanghai:20260311T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_1_4_2@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260313T083000 +DTEND;TZID=Asia/Shanghai:20260313T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_1_0_3@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260309T103000 +DTEND;TZID=Asia/Shanghai:20260309T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_1_4_4@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260313T103000 +DTEND;TZID=Asia/Shanghai:20260313T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_1_1_5@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260310T131000 +DTEND;TZID=Asia/Shanghai:20260310T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_1_0_6@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260309T150000 +DTEND;TZID=Asia/Shanghai:20260309T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_1_2_7@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260311T150000 +DTEND;TZID=Asia/Shanghai:20260311T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_1_3_8@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260312T150000 +DTEND;TZID=Asia/Shanghai:20260312T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_2_2_9@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260318T083000 +DTEND;TZID=Asia/Shanghai:20260318T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_2_4_10@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260320T083000 +DTEND;TZID=Asia/Shanghai:20260320T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_2_0_11@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260316T103000 +DTEND;TZID=Asia/Shanghai:20260316T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_2_4_12@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260320T103000 +DTEND;TZID=Asia/Shanghai:20260320T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_2_1_13@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260317T131000 +DTEND;TZID=Asia/Shanghai:20260317T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_2_0_14@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260316T150000 +DTEND;TZID=Asia/Shanghai:20260316T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_2_2_15@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260318T150000 +DTEND;TZID=Asia/Shanghai:20260318T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_2_3_16@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260319T150000 +DTEND;TZID=Asia/Shanghai:20260319T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_3_2_17@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260325T083000 +DTEND;TZID=Asia/Shanghai:20260325T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_3_4_18@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260327T083000 +DTEND;TZID=Asia/Shanghai:20260327T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_3_0_19@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260323T103000 +DTEND;TZID=Asia/Shanghai:20260323T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_3_4_20@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260327T103000 +DTEND;TZID=Asia/Shanghai:20260327T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_3_1_21@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260324T131000 +DTEND;TZID=Asia/Shanghai:20260324T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_3_0_22@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260323T150000 +DTEND;TZID=Asia/Shanghai:20260323T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_3_2_23@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260325T150000 +DTEND;TZID=Asia/Shanghai:20260325T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_3_3_24@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260326T150000 +DTEND;TZID=Asia/Shanghai:20260326T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_4_2_25@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260401T083000 +DTEND;TZID=Asia/Shanghai:20260401T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_4_4_26@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260403T083000 +DTEND;TZID=Asia/Shanghai:20260403T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_4_0_27@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260330T103000 +DTEND;TZID=Asia/Shanghai:20260330T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_4_4_28@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260403T103000 +DTEND;TZID=Asia/Shanghai:20260403T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_4_1_29@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260331T131000 +DTEND;TZID=Asia/Shanghai:20260331T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_4_0_30@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260330T150000 +DTEND;TZID=Asia/Shanghai:20260330T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_4_2_31@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260401T150000 +DTEND;TZID=Asia/Shanghai:20260401T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_4_3_32@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260402T150000 +DTEND;TZID=Asia/Shanghai:20260402T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_5_2_33@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260408T083000 +DTEND;TZID=Asia/Shanghai:20260408T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_5_4_34@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260410T083000 +DTEND;TZID=Asia/Shanghai:20260410T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_5_4_35@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260410T103000 +DTEND;TZID=Asia/Shanghai:20260410T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_5_1_36@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260407T131000 +DTEND;TZID=Asia/Shanghai:20260407T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_5_2_37@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260408T150000 +DTEND;TZID=Asia/Shanghai:20260408T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_5_3_38@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260409T150000 +DTEND;TZID=Asia/Shanghai:20260409T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_6_2_39@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260415T083000 +DTEND;TZID=Asia/Shanghai:20260415T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_6_4_40@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260417T083000 +DTEND;TZID=Asia/Shanghai:20260417T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_6_0_41@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260413T103000 +DTEND;TZID=Asia/Shanghai:20260413T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_6_4_42@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260417T103000 +DTEND;TZID=Asia/Shanghai:20260417T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_6_1_43@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260414T131000 +DTEND;TZID=Asia/Shanghai:20260414T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_6_0_44@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260413T150000 +DTEND;TZID=Asia/Shanghai:20260413T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_6_2_45@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260415T150000 +DTEND;TZID=Asia/Shanghai:20260415T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_6_3_46@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260416T150000 +DTEND;TZID=Asia/Shanghai:20260416T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_7_2_47@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260422T083000 +DTEND;TZID=Asia/Shanghai:20260422T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_7_4_48@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260424T083000 +DTEND;TZID=Asia/Shanghai:20260424T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_7_0_49@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260420T103000 +DTEND;TZID=Asia/Shanghai:20260420T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_7_4_50@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260424T103000 +DTEND;TZID=Asia/Shanghai:20260424T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_7_1_51@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260421T131000 +DTEND;TZID=Asia/Shanghai:20260421T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_7_0_52@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260420T150000 +DTEND;TZID=Asia/Shanghai:20260420T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_7_2_53@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260422T150000 +DTEND;TZID=Asia/Shanghai:20260422T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_7_3_54@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260423T150000 +DTEND;TZID=Asia/Shanghai:20260423T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_8_2_55@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260429T083000 +DTEND;TZID=Asia/Shanghai:20260429T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_8_4_56@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260501T083000 +DTEND;TZID=Asia/Shanghai:20260501T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_8_0_57@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260427T103000 +DTEND;TZID=Asia/Shanghai:20260427T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_8_4_58@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260501T103000 +DTEND;TZID=Asia/Shanghai:20260501T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_8_1_59@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260428T131000 +DTEND;TZID=Asia/Shanghai:20260428T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_8_0_60@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260427T150000 +DTEND;TZID=Asia/Shanghai:20260427T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_8_2_61@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260429T150000 +DTEND;TZID=Asia/Shanghai:20260429T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_8_3_62@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260430T150000 +DTEND;TZID=Asia/Shanghai:20260430T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_9_2_63@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260506T083000 +DTEND;TZID=Asia/Shanghai:20260506T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_9_4_64@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260508T083000 +DTEND;TZID=Asia/Shanghai:20260508T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_9_4_65@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260508T103000 +DTEND;TZID=Asia/Shanghai:20260508T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_9_2_66@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260506T150000 +DTEND;TZID=Asia/Shanghai:20260506T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_9_3_67@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260507T150000 +DTEND;TZID=Asia/Shanghai:20260507T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_10_2_68@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260513T083000 +DTEND;TZID=Asia/Shanghai:20260513T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_10_4_69@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260515T083000 +DTEND;TZID=Asia/Shanghai:20260515T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_10_0_70@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260511T103000 +DTEND;TZID=Asia/Shanghai:20260511T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_10_4_71@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260515T103000 +DTEND;TZID=Asia/Shanghai:20260515T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_10_1_72@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260512T131000 +DTEND;TZID=Asia/Shanghai:20260512T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_10_0_73@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260511T150000 +DTEND;TZID=Asia/Shanghai:20260511T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_10_2_74@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260513T150000 +DTEND;TZID=Asia/Shanghai:20260513T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_10_3_75@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260514T150000 +DTEND;TZID=Asia/Shanghai:20260514T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_11_2_76@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260520T083000 +DTEND;TZID=Asia/Shanghai:20260520T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_11_4_77@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260522T083000 +DTEND;TZID=Asia/Shanghai:20260522T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_11_0_78@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260518T103000 +DTEND;TZID=Asia/Shanghai:20260518T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_11_4_79@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260522T103000 +DTEND;TZID=Asia/Shanghai:20260522T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_11_1_80@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260519T131000 +DTEND;TZID=Asia/Shanghai:20260519T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_11_0_81@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260518T150000 +DTEND;TZID=Asia/Shanghai:20260518T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_11_2_82@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260520T150000 +DTEND;TZID=Asia/Shanghai:20260520T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_11_3_83@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260521T150000 +DTEND;TZID=Asia/Shanghai:20260521T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_12_2_84@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260527T083000 +DTEND;TZID=Asia/Shanghai:20260527T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_12_4_85@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260529T083000 +DTEND;TZID=Asia/Shanghai:20260529T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_12_0_86@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260525T103000 +DTEND;TZID=Asia/Shanghai:20260525T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_12_4_87@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260529T103000 +DTEND;TZID=Asia/Shanghai:20260529T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_12_1_88@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260526T131000 +DTEND;TZID=Asia/Shanghai:20260526T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_12_0_89@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260525T150000 +DTEND;TZID=Asia/Shanghai:20260525T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_12_2_90@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260527T150000 +DTEND;TZID=Asia/Shanghai:20260527T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_12_3_91@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260528T150000 +DTEND;TZID=Asia/Shanghai:20260528T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_13_2_92@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260603T083000 +DTEND;TZID=Asia/Shanghai:20260603T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_13_4_93@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260605T083000 +DTEND;TZID=Asia/Shanghai:20260605T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_13_0_94@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260601T103000 +DTEND;TZID=Asia/Shanghai:20260601T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_13_4_95@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260605T103000 +DTEND;TZID=Asia/Shanghai:20260605T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_13_1_96@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260602T131000 +DTEND;TZID=Asia/Shanghai:20260602T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_13_0_97@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260601T150000 +DTEND;TZID=Asia/Shanghai:20260601T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_13_2_98@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260603T150000 +DTEND;TZID=Asia/Shanghai:20260603T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_13_3_99@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260604T150000 +DTEND;TZID=Asia/Shanghai:20260604T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_14_2_100@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260610T083000 +DTEND;TZID=Asia/Shanghai:20260610T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_14_4_101@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260612T083000 +DTEND;TZID=Asia/Shanghai:20260612T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_14_0_102@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260608T103000 +DTEND;TZID=Asia/Shanghai:20260608T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_14_4_103@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260612T103000 +DTEND;TZID=Asia/Shanghai:20260612T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_14_1_104@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260609T131000 +DTEND;TZID=Asia/Shanghai:20260609T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_14_0_105@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260608T150000 +DTEND;TZID=Asia/Shanghai:20260608T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_14_2_106@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260610T150000 +DTEND;TZID=Asia/Shanghai:20260610T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_14_3_107@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260611T150000 +DTEND;TZID=Asia/Shanghai:20260611T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_15_2_108@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260617T083000 +DTEND;TZID=Asia/Shanghai:20260617T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_15_0_109@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260615T103000 +DTEND;TZID=Asia/Shanghai:20260615T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_15_1_110@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260616T131000 +DTEND;TZID=Asia/Shanghai:20260616T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_15_0_111@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260615T150000 +DTEND;TZID=Asia/Shanghai:20260615T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_15_2_112@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260617T150000 +DTEND;TZID=Asia/Shanghai:20260617T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_15_3_113@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260618T150000 +DTEND;TZID=Asia/Shanghai:20260618T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_16_2_114@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260624T083000 +DTEND;TZID=Asia/Shanghai:20260624T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_16_4_115@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260626T083000 +DTEND;TZID=Asia/Shanghai:20260626T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_16_0_116@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260622T103000 +DTEND;TZID=Asia/Shanghai:20260622T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_16_4_117@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260626T103000 +DTEND;TZID=Asia/Shanghai:20260626T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_16_1_118@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260623T131000 +DTEND;TZID=Asia/Shanghai:20260623T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_16_0_119@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260622T150000 +DTEND;TZID=Asia/Shanghai:20260622T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_16_2_120@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260624T150000 +DTEND;TZID=Asia/Shanghai:20260624T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_16_3_121@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260625T150000 +DTEND;TZID=Asia/Shanghai:20260625T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_17_2_122@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260701T083000 +DTEND;TZID=Asia/Shanghai:20260701T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_17_4_123@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260703T083000 +DTEND;TZID=Asia/Shanghai:20260703T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_17_0_124@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260629T103000 +DTEND;TZID=Asia/Shanghai:20260629T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_17_4_125@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260703T103000 +DTEND;TZID=Asia/Shanghai:20260703T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_17_1_126@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260630T131000 +DTEND;TZID=Asia/Shanghai:20260630T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_17_0_127@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260629T150000 +DTEND;TZID=Asia/Shanghai:20260629T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_17_2_128@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260701T150000 +DTEND;TZID=Asia/Shanghai:20260701T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_17_3_129@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260702T150000 +DTEND;TZID=Asia/Shanghai:20260702T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_18_2_130@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260708T083000 +DTEND;TZID=Asia/Shanghai:20260708T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_18_4_131@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260710T083000 +DTEND;TZID=Asia/Shanghai:20260710T100000 +SUMMARY:计算机网络技术 +LOCATION:XXA2304 +DESCRIPTION:软件G24-3 +END:VEVENT +BEGIN:VEVENT +UID:schevt_18_0_132@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260706T103000 +DTEND;TZID=Asia/Shanghai:20260706T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_18_4_133@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260710T103000 +DTEND;TZID=Asia/Shanghai:20260710T120000 +SUMMARY:计算机网络技术 +LOCATION:XXA2502 +DESCRIPTION:人工智能G25-2 +END:VEVENT +BEGIN:VEVENT +UID:schevt_18_1_134@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260707T131000 +DTEND;TZID=Asia/Shanghai:20260707T144000 +SUMMARY:计算机网络技术 +LOCATION:XXA2403 +DESCRIPTION:人工智能G25-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_18_0_135@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260706T150000 +DTEND;TZID=Asia/Shanghai:20260706T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_18_2_136@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260708T150000 +DTEND;TZID=Asia/Shanghai:20260708T163000 +SUMMARY:私有云基础架构与运维 +LOCATION:XXGY3402 +DESCRIPTION:云计算G24-1 +END:VEVENT +BEGIN:VEVENT +UID:schevt_18_3_137@schedule +DTSTAMP:20260328T171946Z +DTSTART;TZID=Asia/Shanghai:20260709T150000 +DTEND;TZID=Asia/Shanghai:20260709T163000 +SUMMARY:计算机网络技术 +LOCATION:XXA2503 +DESCRIPTION:人工智能G25-1 +END:VEVENT +END:VCALENDAR