Skip to content

3 · Feature/module list

(branch: uat) รายชื่อฟีเจอร์และ module ของ vtrc-backoffice-new ตรงกับ vtrc-backoffice/03-features-map ทุกกลุ่มธุรกิจsrc/pages/ มี 41 โฟลเดอร์ชื่อเดียวกันทุกตัวอักษรกับ vtrc-backoffice (ยืนยันด้วย ls src/pages | sort ที่ให้ผลลัพธ์เหมือนกันทั้งสอง repo) บทนี้จึงเน้นเฉพาะความต่างที่ตรวจพบใน routes.js แทนการซ้ำรายชื่อ module ทั้งหมด


กลุ่มธุรกิจ — เหมือน vtrc-backoffice ทั้ง 8 กลุ่ม

  1. การลา (Leave, LeaveHR, LeaveName)
  2. การลาศึกษาต่อ/ทุน (LeaveStudies*, LeaveStudiesScholar*, LeaveStudiesPayments*)
  3. สวัสดิการรักษาพยาบาล (Hospital*, SicknessName)
  4. การเงิน/กองทุน (Fund, DocFound, BookBankVTRC, BankBranches, BankExportCode, Delegate)
  5. บุคลากร/กำลังคน (WorkForce)
  6. จัดการผู้ใช้/สิทธิ์ (ManageUser, ManageHR, MasterApprovers, MasterData)
  7. เนื้อหา/ประกาศ/ระเบียบ (News, Notification, Policy, Act, Rule, Regulations*, Guideline, Organization, AboutUS, ContactUS, Career, Course, Orientation, StrategyHR)
  8. อื่น ๆ (Dashboard, Attendance, WorkHistory, Login, NotFound)

รายละเอียด path เต็มของแต่ละ module ดูที่ vtrc-backoffice/03-features-map — path เกือบทั้งหมดตรงกัน (ตรวจด้วย diff ของ routes.js ทั้งไฟล์)


ความต่างที่ตรวจพบจริงใน routes.js — 2 menu item ถูก comment ปิดใน vtrc-backoffice-new

diff เต็มของ routes.js ระหว่างสอง repo (1,706 บรรทัดใน vtrc-backoffice, 1,707 บรรทัดใน vtrc-backoffice-new) พบความต่างจริงเพียง 2 บล็อก — ทั้งคู่เป็นเมนูที่เปิดอยู่ใน vtrc-backoffice แต่ถูก comment ปิดใน vtrc-backoffice-new:

1. WorkForce — ข้อมูลองค์กร/หน่วยงาน (ปิดใน -new)

vtrc-backoffice/src/config/routes.js:271-294

javascript
{
	key: 'org',
	label: 'ข้อมูลองค์กร',
	icon: '',
	path: '/workforce/org',
	isShow: true,
	component: Org,
},
{
	key: 'orgUnitType',
	label: 'ข้อมูลประเภทหน่วยงาน',
	icon: '',
	path: '/workforce/orgUnitType',
	isShow: true,
	component: OrgUnitType,
},
{
	key: 'orgUnit',
	label: 'ข้อมูลหน่วยงาน',
	icon: '',
	path: '/workforce/orgUnit',
	isShow: true,
	component: OrgUnit,
},

ใน vtrc-backoffice-new/src/config/routes.js:272-295 (branch: uat) ทั้ง 3 entry นี้ถูก comment ปิดทั้งหมด (// { ... // },)

2. Attendance — ยกเว้นการลงเวลา (ปิดใน -new)

vtrc-backoffice/src/config/routes.js:717-742

javascript
{
	key: 'abstainTime',
	keyArray: ['abstainTime'],
	label: 'ยกเว้นการลงเวลา',
	icon: 'appstore',
	path: '',
	isShow: true,
	children: [
		{
			key: 'abstainTimeList',
			label: 'รายการยกเว้นการลงเวลา',
			icon: '',
			path: '/abstainTime/List',
			isShow: true,
			component: AbstainTimeList,
		},
		{
			key: 'abstainTimeInfo',
			label: 'สร้างเอกสารยกเว้นการลงเวลาทำงาน',
			icon: '',
			path: '/abstainTime/Info',
			isShow: true,
			component: AbstainTimeInfo,
		},
	]
},

ใน vtrc-backoffice-new/src/config/routes.js:718-743 (branch: uat) ทั้งบล็อกถูก comment ปิด (รวม child ทั้งสอง abstainTimeList/abstainTimeInfo)

ความหมาย

ทั้งสองกรณีเป็นการปิดเมนู ไม่ใช่ลบโค้ด — component (Org, OrgUnitType, OrgUnit, AbstainTimeList, AbstainTimeInfo) ยังถูก import อยู่ใน routes.js เหมือนเดิม เพียงแต่ entry ใน array เมนูถูก comment ปิดจึงไม่แสดงในหน้า UI ของ vtrc-backoffice-new ทำเครื่องหมาย UNVERIFIED สำหรับเหตุผลทางธุรกิจว่าทำไมสอง feature นี้ถูกปิดเฉพาะใน -new (อาจเป็นเพราะ backend ยังไม่พร้อมสำหรับ user segment ที่ใช้ -new, หรือเป็นความไม่ตั้งใจตอน merge) — ไม่ควรเดาเจตนา


GraphQL เพิ่มเติมที่ไม่มีใน vtrc-backoffice

queryหลักฐานบทบาท
checkEmployeeCUvtrc-backoffice-new/src/graphql/queries.js:36-46 (branch: uat)ใช้ตัดสินใจว่าจะให้ผู้ใช้อยู่ใน vtrc-backoffice-new หรือ redirect ไป vtrc-rc-backoffice — ดู 02-core-pipeline

ไม่พบ query/mutation อื่นที่เพิ่มมาใหม่นอกจากนี้ในรอบตรวจนี้ (ความต่างของจำนวนบรรทัดใน queries.js/mutations.js ส่วนใหญ่มาจาก query นี้ตัวเดียวรวมกับ whitespace formatting เล็กน้อย)


ขั้นตอนถัดไป

ไป 4 · Scorecard + debt register