ยินดีต้อนรับ {{ user.name }}

บัญชีของท่านยังไม่ได้รับสิทธิ์เข้าใช้งาน
กรุณาเลือกบทบาทที่ต้องการ แล้วส่งคำขอให้ผู้ดูแลอนุมัติ

ReadCare · ระบบติดตามการอ่าน

เลือกบริบทการแสดงผล

เลือกสถานศึกษาที่ต้องการดูข้อมูล

ทุกสถานศึกษา
ภาพรวมทั้งหมด
{{ s.name_th }}
{{ s.student_count||0 }} นักเรียน

ระบบจะใช้ปีการศึกษาปัจจุบันที่ตั้งไว้ของสถานศึกษาให้อัตโนมัติ (แก้ได้ที่เมนู “จัดการปีการศึกษา”)

Phibun Read Care
{{ activeSchoolName }}
สวัสดีคุณครู {{ user.teacher_name || user.name }} 👋
รหัสครู {{ user.teacher_code }} · ภาพรวมห้องคลินิกรักการอ่านที่คุณดูแล

แดชบอร์ดพัฒนาการการอ่าน

ปีการศึกษา {{ year }} · ภาพรวมจากผลการประเมินครั้งล่าสุด

การพัฒนาการอ่าน · ห้องคลินิกรักการอ่าน

คัดกรอง → พัฒนาในคลินิก → ประเมินซ้ำ · ปีการศึกษา {{ year }} · {{ pipeSchool.school_name }}

{{ o.school_name }}
{{ o.clinic_count }}
ห้องคลินิก
{{ o.member_count }}
นักเรียน
{{ o.teacher_count }}
ครูดูแล
ยังไม่มีข้อมูลกระบวนการพัฒนาการอ่านในปีนี้

ครูคลินิกรักการอ่านที่มีบัญชีแล้ว

ความพร้อมใช้งานระบบของครูผู้ดูแลห้องคลินิก · ปีการศึกษา {{ year }}

{{ tw.summary.pct||0 }}%
{{ tw.summary.with_account||0 }} / {{ tw.summary.total||0 }} คน
ผูกบัญชีเข้าระบบแล้ว
ออนไลน์ {{ tw.summary.online }} ยังไม่เคยเข้าระบบ {{ tw.summary.never }} ยังไม่มีบัญชี {{ tw.summary.without_account }}
ยังไม่มีครูคลินิกที่ผูกบัญชีเข้าระบบ

การกระจายระดับการอ่าน (ล่าสุด)

ผลประเมินครั้งล่าสุดของนักเรียนแต่ละคน · ปีการศึกษา {{ year }}

{{ d.count||0 }}
{{ d.level_name }}
{{ distPct(d.count||0) }}% ของที่ประเมินแล้ว
ยังไม่มีผลการประเมินในปีนี้
{{ stats.total_students||0 }}
นักเรียนทั้งหมด
{{ stats.assessed_students||0 }} / {{ stats.assessed_percent||0 }}%
ประเมินแล้ว
{{ stats.needs_help||0 }}
ต้องช่วยเหลือเร่งด่วน
{{ stats.not_assessed||0 }}
ยังไม่ประเมิน

พัฒนาการก่อน–หลังเข้าคลินิก

เทียบระดับการอ่านเฉลี่ยของนักเรียน ระหว่างรอบคัดกรองก่อนเข้าคลินิก กับรอบวัดผลหลังเข้าคลินิก

{{ r.round_name }} · x̄ {{ r.avg_value!==null?r.avg_value:'-' }}
ยังไม่มีรอบวัดผล — สร้างรอบ “ก่อน/หลังเข้าคลินิก” ที่หน้าโครงการพัฒนาการอ่าน → วัดผลก่อน–หลัง

ระดับการอ่านแยกตามระดับชั้น

จำนวนนักเรียนตามระดับการอ่าน (ผลล่าสุด) ในแต่ละระดับชั้น

ยังไม่มีผลการประเมินในปีนี้
{{ gtip.g.level_name }}
ประเมินแล้ว {{ gtip.g.assessed }} / {{ gtip.g.total }} คน
{{ lv.level_name }} {{ gtip.g.counts[lv.level_key]||0 }} ({{ gtipPct(gtip.g,lv.level_key) }}%)

นักเรียนที่ต้องช่วยเหลือ

นักเรียนที่ผลประเมินล่าสุดอยู่ในระดับที่ต้องช่วยเหลือเร่งด่วน

ดูทั้งหมด
ชื่อ-สกุลห้องระดับล่าสุดประเมินเมื่อ
{{ s.full_name }} ({{ s.nickname }}) {{ s.room_name||'-' }} {{ s.latest_level_name||'-' }} {{ thai(s.latest_assessed_on) }}
{{ s.full_name }} ({{ s.nickname }})
{{ s.room_name||'ยังไม่จัดห้อง' }} {{ thai(s.latest_assessed_on) }}
{{ s.latest_level_name||'-' }}
ไม่มีนักเรียนที่ต้องช่วยเหลือ 🎉

บรรยากาศการพัฒนาผู้เรียน

ภาพและวิดีโอจากบันทึกการสอนของห้องคลินิกรักการอ่าน

{{ gal.sum.records||0 }} บันทึก {{ gal.sum.photos||0 }} ภาพ {{ gal.sum.videos }} คลิป {{ gal.sum.clinics||0 }} ห้องคลินิก
ยังไม่มีภาพบรรยากาศ — ครูแนบภาพ/วิดีโอได้ที่ “บันทึกการสอน” ของแผนในห้องคลินิกรักการอ่าน

โครงการพัฒนาการอ่าน

โครงการพัฒนาคุณภาพการศึกษา

{{ curDocTab.noun }} {{ projectDocs.length }} รายการ
{{ curDocTab.emptyText }}
{{ d.sort_order }}
{{ d.title }}
{{ d.file_name }}
เลือกเอกสารทางซ้ายเพื่อแสดงตัวอย่าง
แบบประเมินการอ่าน {{ assessments.length }} รายการ
ยังไม่มีแบบประเมินการอ่าน
{{ a.name }}
{{ a.set_count }}ชุดข้อสอบ
{{ a.part_count }}ตอน
{{ a.total_max }}คะแนนเต็ม
ผ่าน ≥ {{ a.pass_score }} ครูตัดสินเอง สอบ {{ a.attempt_count }} ครั้ง
{{ asDetail.name }}
ชุดข้อสอบ (ความยากเท่ากัน · ใช้สลับกันเวลาสอบซ้ำเพื่อกันเด็กจำคำตอบ)
ยังไม่มีชุดข้อสอบ

ตารางการให้คะแนน · {{ asDetail.name }}

เกณฑ์ผ่าน: รวม ≥ {{ asDetail.pass_score }}

ทุกชุด (A/B/C…) ใช้โครงสร้างตอนและคะแนนชุดเดียวกันนี้ · ผ่าน = ได้ทุกตอนที่กำหนด “คะแนนผ่าน” ≥ เกณฑ์ของตอน และ คะแนนรวม ≥ เกณฑ์รวม

ตอนที่ชื่อตอนคะแนนเต็มคะแนนผ่าน
{{ p.part_no }} {{ p.part_name||'-' }} {{ p.max_score }} {{ (p.pass_score==null||p.pass_score==='')?'—':p.pass_score }}
รวมคะแนนเต็ม{{ partsFormTotal }}
เฉพาะผู้ดูแลเท่านั้นที่แก้ไขตารางคะแนนได้
ผลการสอบของนักเรียน (รองรับสอบซ้ำหลายครั้ง · บันทึกย้อนหลังได้)
กรุณาตั้งค่าตารางคะแนน (แท็บ เกณฑ์/คะแนน) ก่อนบันทึกผลสอบ
ยังไม่มีผลการสอบ
นักเรียนครั้งที่วันที่สอบชุดตอน {{ p.part_no }}รวมผล
{{ grp.name }} · {{ grp.code }}
ครั้งที่ {{ at.attempt_no }} ชุด {{ at.set_code }} {{ passLabel(at.is_passed) }}
{{ at.total_score }}/{{ at.max_score }}
วันที่สอบ {{ thai(at.tested_on)||'-' }}
ตอน {{ p.part_no }}: {{ scoreOf(at,p.part_id) }}

ประเมินการอ่าน

ประเมินระดับการอ่านรายคน (แนว สพฐ. อ่านออกเขียนได้) — เลือกรอบวัดผล ก่อน หรือ หลัง เข้าคลินิก แล้วเลือกห้องเรียน

สร้างรอบก่อน
ความคืบหน้าของรอบนี้ ประเมินครบ {{ rpx.summary.rooms_done||0 }}/{{ rpx.summary.rooms||0 }} ห้อง นักเรียน {{ rpx.summary.students_done||0 }}/{{ rpx.summary.students||0 }} คน
{{ rpx.summary.pct||0 }}% ของนักเรียนทั้งหมดในปีการศึกษานี้
{{ rosterMeta.room }} · {{ rosterMeta.round }} ({{ roster.length }} คน)
ตั้งทั้งห้อง ({{ rosterFiltered.length }} คนที่แสดงอยู่):
#ชื่อ-สกุลระดับการอ่าน (ผลรวม)จัดการ
{{ s.student_no||idx+1 }}. ()

จัดการข้อมูล

ทะเบียนนักเรียน

{{ filteredStudents.length }} คน
เลขที่รหัสชื่อ-สกุลห้องระดับล่าสุด
{{ s.student_no||'-' }} () {{ s.room_name }} ยังไม่จัดห้อง {{ s.latest_level_name }}ยังไม่ประเมิน
()
เลขที่ {{ s.student_no }} · · {{ s.room_name }} · ยังไม่จัดห้อง
{{ s.latest_level_name }}ยังไม่ประเมิน
ยังไม่มีนักเรียน
{{ stuRangeText }}
หน้า {{ stuPage }} / {{ stuPageCount }}
เลื่อนเพื่อดูเพิ่ม…

โครงสร้างชั้นเรียน

ปีการศึกษา {{ year }} → ช่วงชั้น → ระดับชั้น → ห้องเรียน

ไม่พบช่วงชั้น
{{ b.band_name }}
{{ lv.level_name }}
{{ c.room_name }} {{ c.student_count }} คน
{{ c.advisors.map(a=>a.name).join(', ') }}
— ยังไม่มีห้อง —

จัดห้องเรียน

ปีการศึกษา {{ year }} · เลือกห้องเพื่อจัดทะเบียน

{{ enrollView.list.length }} คน
เลือกห้องเรียนเพื่อจัดการทะเบียนนักเรียน
เลขที่รหัสชื่อ-สกุล
{{ s.student_no||'-' }} {{ s.student_code||'-' }} {{ s.full_name }} ({{ s.nickname }})
ยังไม่มีนักเรียนในห้องนี้ — กด “ดึงนักเรียนเข้าห้อง”

ครู

รหัสชื่อ-สกุลตำแหน่งห้องที่เป็นที่ปรึกษา
{{ t.teacher_code||'-' }} {{ t.full_name }} {{ t.position||'-' }} {{ r.room_name }} -
ยังไม่มีข้อมูลครู

รอบการประเมิน · ก่อน–หลัง เข้าคลินิกรักการอ่าน

วัดผลโครงการด้วยการประเมิน ระดับการอ่าน (3 ทักษะ × 4 ระดับ) เพียง 2 ครั้งต่อปีการศึกษา — ก่อน เพื่อคัดกรองว่านักเรียนคนใดควรเข้าคลินิก และ หลัง เพื่อวัดพัฒนาการ · ส่วนการประเมินรายหน่วยระหว่างเรียนใช้ “แผนการสอบ” ในห้องคลินิกตามปกติ

{{ t.label }}
{{ t.hint }}
สร้างแล้ว
รอบอื่น ๆ ที่สร้างไว้ก่อนหน้า (ไม่ได้ระบุประเภท)
{{ r.round_name }} · ปี {{ r.academic_year }} ภาค {{ r.term }}
{{ r.assessment_count }} คน

จัดการปีการศึกษา

กำหนดปีการศึกษาปัจจุบันของสถานศึกษา — ใช้เป็นค่าเริ่มต้นของระบบ แดชบอร์ด และรายงาน

กรุณาเลือกสถานศึกษาก่อน (เลือกจากมุมขวาบน) เพื่อกำหนดปีการศึกษา
สถานศึกษา
{{ yearTabSchoolName }}
ปีปัจจุบัน
{{ yearTabCurrent || '—' }}
เมื่อบันทึก ระบบจะใช้ปีนี้เป็นค่าเริ่มต้นเมื่อเข้าใช้งานครั้งถัดไป และสลับมุมมองปีบนแถบด้านบนให้ทันที
ปีการศึกษาที่มีข้อมูล

ลบปีที่ไม่ต้องการ — จะลบ ห้องเรียน · ทะเบียนนักเรียน · รอบ/ผลการประเมิน ของปีนั้นทั้งหมด (เฉพาะสถานศึกษานี้) · ย้อนกลับไม่ได้ · ลบปีปัจจุบันไม่ได้

ยังไม่มีปีที่มีข้อมูล
{{ y.academic_year }} ปีปัจจุบัน ห้อง {{ y.rooms }} · นักเรียน {{ y.students }} · รอบ {{ y.rounds }} — ลบไม่ได้ —

จัดการผู้ใช้

ดูอย่างเดียว — แสดงเฉพาะผู้ใช้ในสถานศึกษาของท่าน (เช่น บัญชีครู) · การเพิ่ม/แก้ไข/ลบบัญชี ต้องติดต่อผู้ดูแลระบบส่วนกลาง
ไม่พบผู้ใช้

คำขอสิทธิ์เข้าใช้งาน

อนุมัติเพื่อกำหนดบทบาท + สถานศึกษาให้ผู้ใช้ (ผู้ใช้เข้าสู่ระบบใหม่หลังได้รับอนุมัติ)

{{ (r.display_name||'?').trim().charAt(0).toUpperCase() }}
{{ r.display_name }} LINE
{{ r.email||r.username||'-' }}
ขอบทบาท: {{ r.role_name }} {{ r.school_name }} ครู: {{ r.teacher_name }}
“{{ r.note }}”
ไม่มีคำขอที่รออนุมัติ

สถิติการเข้าใช้งาน

ผู้ใช้ออนไลน์ขณะนี้

{{ activity.online_count }} ใช้งานภายใน {{ activity.online_window }} นาที
ระบบติดตามสถานะออนไลน์ (Redis) ไม่พร้อมใช้งานชั่วคราว
ยังไม่มีผู้ใช้ออนไลน์
{{ (o.display_name||o.username||'U').charAt(0).toUpperCase() }}
{{ o.display_name||o.username }} (คุณ)
{{ o.school_name||'ส่วนกลาง' }} · {{ onlineAgo(o.secs_ago) }}
{{ activity.summary.today }}
วันนี้
{{ activity.summary.week }}
7 วันล่าสุด
{{ activity.summary.month }}
เดือนนี้
{{ activity.summary.year }}
ปีนี้
{{ activity.summary.total }}
ทั้งหมด

จำนวนการเข้าใช้งาน

{{ b.count||'' }}
{{ b.label }}

นับจากการเข้าสู่ระบบสำเร็จ (รวมบัญชีท้องถิ่นและ LINE) · ชี้ที่แท่งเพื่อดูรายละเอียด

สถานศึกษา

จัดการสถานศึกษาในสังกัด — ข้อมูลนักเรียน/ครู/การประเมินถูกแยกตามสถานศึกษา

{{ s.name_th }} (ปิด)
{{ s.code||'-' }} · {{ s.affiliation||'' }}
{{ s.student_count }} นักเรียน {{ s.teacher_count }} ครู
ยังไม่มีสถานศึกษา

ตั้งค่าหน่วยงาน

ข้อมูลหน่วยงานต้นสังกัดที่ดูแลระบบ — ใช้แสดงเป็นชื่อและโลโก้บนหัวพอร์ทัล/แอป (คนละส่วนกับ “สถานศึกษา” ในสังกัด)

ใช้แสดงเป็นโลโก้บนหัวพอร์ทัล/แอป · อัปโหลดเข้า MinIO (bucket pb-school) · PNG/JPG/WEBP ≤ 2 MB

โปรไฟล์

ข้อมูลส่วนตัว

{{ initials }}
PNG / JPG / WEBP ≤ 8 MB · กว้างเกิน 1024px ระบบย่อให้อัตโนมัติ
รูปโปรไฟล์จากบัญชี LINE — แก้ไขได้ในแอป LINE
{{ user.name }}
{{ roleLabel }}
บัญชีนี้เข้าสู่ระบบด้วย LINE จึงไม่มีรหัสผ่านในระบบ — จัดการความปลอดภัยได้ที่แอป LINE
ไม่พบผู้ใช้ หรือไม่มีสิทธิ์ดูโปรไฟล์นี้

ห้องคลินิกรักการอ่าน

{{ crView.name || 'สถานศึกษา' }} · ปีการศึกษา {{ year }}

กำลังโหลด…

ห้องคลินิกรักการอ่านของฉัน

ห้องกิจกรรมพิเศษ — ดึงนักเรียนจากทุกห้องในโรงเรียนมาพัฒนาทักษะการอ่าน (แยกจากห้องเรียนปกติ)

ยังไม่มีห้องคลินิก — กด "สร้างห้องคลินิก" เพื่อเริ่ม
{{ c.is_deleted?'ถูกลบแล้ว':'คลินิก' }}
{{ c.clinic_name }}
{{ c.owner_name || 'ยังไม่ระบุครู' }} {{ c.owner_code }} +{{ c.teacher_count-1 }}
ปีการศึกษา {{ c.academic_year }} จัดเก็บแล้ว
{{ c.description || 'ห้องคลินิกรักการอ่าน' }}
{{ c.member_count }} คน ปี {{ c.academic_year }} {{ !c.lead_has_account?'ครูยังไม่มีบัญชี':(c.lead_last_login?('เข้าระบบ '+loginShort(c.lead_last_login)):'ยังไม่เคยเข้าระบบ') }}
แผนการสอน สอนเสร็จ {{ c.plans_done }}/{{ c.plans_total }} แผน ยังไม่มีแผน

{{ clinicSelObj.clinic_name }}

ปีการศึกษา {{ clinicSelObj.academic_year }} · สมาชิก {{ clinicMembers.length }} คน

ครูผู้รับผิดชอบ: {{ clinicSelObj.owner_name }} ({{ clinicSelObj.owner_code }})

ยังไม่มีสมาชิก — กด "เพิ่มนักเรียน" เพื่อดึงนักเรียนจากทุกห้องเข้าห้องนี้
{{ s.full_name }} ({{ s.nickname }})
{{ s.student_code }} · {{ s.cur_room }}
ผ่าน {{ s.passed_count||0 }}/{{ assessmentTotal }} มา {{ s.present_count||0 }}/{{ customPlans.length }}
ยังไม่มีแผนการสอบ — กด "สร้างแผนการสอบ" เพื่อกำหนดกิจกรรม/วันสอบ/เนื้อหา
ไม่มีแผนในหมวด "{{ {overdue:'เลยกำหนด',upcoming:'กำลังจะถึง',done:'เสร็จแล้ว',all:'ทั้งหมด'}[planFilter] }}" — ดูทั้งหมด
{{ g.mon }}
{{ g.day }}
{{ g.year }}
{{ p.plan_name }} {{ planStatus(p).label }} เลยกำหนด {{ planOverdue(p) }} วัน
{{ p.exam_date ? thaiDate(p.exam_date) : 'ยังไม่กำหนดวันสอบ' }} · ประเมินแล้ว {{ p.assessed_count||0 }}/{{ p.member_count!=null?p.member_count:clinicMembers.length }} คน · เช็คชื่อแล้ว (มา {{ p.present_count }}/{{ p.checked_count }})
ผ่าน {{ p.passed_count||0 }} ไม่ผ่าน {{ p.failed_count||0 }} ยังไม่ประเมิน {{ (p.member_count||clinicMembers.length)-p.assessed_count }} ผ่าน {{ Math.round((p.passed_count||0)/p.assessed_count*100) }}%
{{ p.content }}
+{{ p.record_images.length-5 }}
ยังไม่มีแผนกิจกรรมสำหรับเช็คชื่อ — สร้างแผนในแท็บ "แผนการสอบ" ก่อน (แผนแบบประเมินการอ่านไม่ต้องเช็คชื่อ)
ยังไม่มีแผนประเมินการอ่าน — สร้างแผนด้วยปุ่ม "ประเมินการอ่าน" ในแท็บ "แผนการสอบ" ก่อน
{{ lightbox.title }}
{{ lightbox.idx+1 }} / {{ lightbox.images.length }}