{"_id":"@aegisx/claim-validator","name":"@aegisx/claim-validator","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@aegisx/claim-validator","version":"1.0.0","description":"NHSO 16 Files Claim Validation Rules for Thai Healthcare","type":"commonjs","main":"./src/index.js","types":"./src/index.d.ts","scripts":{"build":"tsc","build:rules":"node scripts/build-rules.js","validate:yaml":"node scripts/validate-yaml.js","validate:schema":"node scripts/validate-schema.js"},"keywords":["nhso","thailand","healthcare","claim","validation","16-files","สปสช","e-claim"],"author":{"name":"Khon Kaen Hospital - Digital Health Group"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/aegisx-platform/nhso-claim-validator.git"},"dependencies":{"js-yaml":"^4.1.0","tslib":"^2.3.0"},"devDependencies":{"@types/js-yaml":"^4.0.9","ajv":"^8.12.0","glob":"^10.3.0"},"engines":{"node":">=18.0.0"},"gitHead":"63a6f0299215bebb31506b81703c7ba03da56fae","_id":"@aegisx/claim-validator@1.0.0","bugs":{"url":"https://github.com/aegisx-platform/nhso-claim-validator/issues"},"homepage":"https://github.com/aegisx-platform/nhso-claim-validator#readme","_nodeVersion":"25.2.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-7IPFYQekZD9a16CgkOr/5fMG4rMO/BpP+Pegf33iaVvKKmryLadxi4Ieo0/L0LrNtHDxAS/AkQzwldrLNIrNRQ==","shasum":"a6e566f8edd76dc4af98595d1102837567aa8083","tarball":"https://registry.npmjs.org/@aegisx/claim-validator/-/claim-validator-1.0.0.tgz","fileCount":5,"unpackedSize":72911,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCXOorqLXQU0ZgKpwdTET61ljy//p0E1GJ2vbSv/6cqsgIhAPcc42kT19BYW1GgZfU1pKqSKXNXmX0XEtxARjQbR0aW"}]},"_npmUser":{"name":"dixonsatit","email":"dixonsatit@gmail.com"},"directories":{},"maintainers":[{"name":"dixonsatit","email":"dixonsatit@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/claim-validator_1.0.0_1767516483805_0.11735946999602631"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-04T08:48:03.738Z","1.0.0":"2026-01-04T08:48:03.945Z","modified":"2026-01-04T08:48:04.203Z"},"maintainers":[{"name":"dixonsatit","email":"dixonsatit@gmail.com"}],"description":"NHSO 16 Files Claim Validation Rules for Thai Healthcare","homepage":"https://github.com/aegisx-platform/nhso-claim-validator#readme","keywords":["nhso","thailand","healthcare","claim","validation","16-files","สปสช","e-claim"],"repository":{"type":"git","url":"git+https://github.com/aegisx-platform/nhso-claim-validator.git"},"author":{"name":"Khon Kaen Hospital - Digital Health Group"},"bugs":{"url":"https://github.com/aegisx-platform/nhso-claim-validator/issues"},"license":"MIT","readme":"# 📋 NHSO Claim Rules\n\nระบบ Rules สำหรับตรวจสอบข้อมูล 16 แฟ้ม และเงื่อนไขการเบิก สปสช.\n\n## 📌 Overview\n\nโปรเจคนี้รวบรวมเงื่อนไขการเบิกจ่ายของ สปสช. ในรูปแบบ YAML/JSON ที่สามารถนำไปใช้งานได้ทันที รวมถึง Validator ที่พร้อมใช้งานใน TypeScript\n\n### ✅ Features\n\n- **16 Files Structure Validation** - ตรวจสอบโครงสร้างข้อมูล 16 แฟ้ม\n- **C Error Codes** - รหัสข้อผิดพลาดทั้งหมดของระบบ e-Claim\n- **Drug J2 Rules** - เงื่อนไขยาบัญชี จ(2) ครบทุกรายการ\n- **TypeScript Validator** - พร้อมใช้งานทันที\n\n## 🚀 Quick Start\n\n### Installation\n\n```bash\n# Clone repository\ngit clone https://github.com/your-org/nhso-claim-rules.git\ncd nhso-claim-rules\n\n# Install dependencies\nnpm install\n\n# Build\nnpm run build\n```\n\n### Usage\n\n```typescript\nimport { NhsoValidator } from './validator/src';\n\n// Initialize validator\nconst validator = new NhsoValidator();\n\n// Load rules\nawait validator.loadRules('./rules');\n\n// Validate claim data\nconst results = validator.validate(claimData);\n\n// Generate report\nconst report = validator.generateReport(results);\nconsole.log(report);\n```\n\n## 📁 Project Structure\n\n```\nnhso-claim-rules/\n├── rules/\n│   ├── structure/\n│   │   └── 16-files-validation.yaml    # โครงสร้าง 16 แฟ้ม\n│   ├── c-error/\n│   │   └── c-error-codes.yaml          # C Error codes\n│   └── drug-j2/\n│       └── drug-j2-rules.yaml          # ยาบัญชี จ(2)\n├── validator/\n│   └── src/\n│       └── index.ts                     # TypeScript Validator\n├── dist/\n│   ├── all-rules.json                   # Compiled rules (auto-generated)\n│   └── all-rules.min.json\n├── package.json\n└── README.md\n```\n\n## 📋 Rules Format\n\n### Drug J2 Rule Example\n\n```yaml\nid: J2-SOFVEL-001\nname:\n  th: 'Sofosbuvir/Velpatasvir'\n  en: 'Sofosbuvir/Velpatasvir'\ngenericName: 'Sofosbuvir + Velpatasvir'\n\nindications:\n  - id: IND-001\n    description: 'รักษาตับอักเสบซีเรื้อรัง (Chronic Hepatitis C)'\n    icd10: ['B18.2']\n\nconditions:\n  - id: COND-001\n    type: diagnosis\n    description: 'ต้องมี ICD B18.2'\n    field: DIAGCODE\n    operator: equals\n    values: ['B182']\n    severity: error\n    message: 'ต้องมีการวินิจฉัย Chronic Hepatitis C (B18.2)'\n\n  - id: COND-002\n    type: specialist\n    description: 'ต้องสั่งใช้โดยอายุรแพทย์ระบบทางเดินอาหาร'\n    field: PROVIDER_SPECIALTY\n    operator: in\n    values: ['0600', '0601']\n    severity: error\n```\n\n### C Error Code Example\n\n```yaml\n- code: 'C201'\n  description: 'ไม่มีรหัสการวินิจฉัยโรคหลัก'\n  field: 'DIAGCODE'\n  validation: 'has_principal_diagnosis'\n  solution: 'บันทึกรหัสโรคหลัก แล้วส่งข้อมูลเข้ามาใหม่'\n  severity: error\n```\n\n## 🔧 Validation Layers\n\n| Layer              | Description                    | Examples                              |\n| ------------------ | ------------------------------ | ------------------------------------- |\n| **L1: Structure**  | ตรวจสอบโครงสร้างข้อมูล         | CID checksum, required fields, format |\n| **L2: Cross-file** | ตรวจสอบความสัมพันธ์ระหว่างแฟ้ม | PDX required, date consistency        |\n| **L3: Business**   | ตรวจสอบ business rules         | Discharge status, newborn weight      |\n| **L4: Drug/J2**    | ตรวจสอบเงื่อนไขยา              | ICD match, specialist required        |\n\n## 📊 Coverage\n\n### C Error Codes\n\n| Category               | Count | Coverage    |\n| ---------------------- | ----- | ----------- |\n| Patient Data (101-150) | 50+   | ✅ Complete |\n| Diagnosis (201-250)    | 30+   | ✅ Complete |\n| Charge/Cost (301-400)  | 20+   | ✅ Complete |\n| COVID-19 (310-350)     | 40+   | ✅ Complete |\n\n### Drug J2 Categories\n\n| Category     | Count | Status |\n| ------------ | ----- | ------ |\n| Antifungal   | 3     | ✅     |\n| Antibiotics  | 2     | ✅     |\n| Hepatitis C  | 1     | ✅     |\n| Cancer       | 4     | ✅     |\n| HIV          | 1     | ✅     |\n| Neurological | 1     | ✅     |\n| Endocrine    | 1     | ✅     |\n\n## 🤝 Contributing\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/new-rule`)\n3. Add/modify rules in YAML format\n4. Run tests (`npm test`)\n5. Submit Pull Request\n\n### Adding New Rules\n\n1. สร้างไฟล์ YAML ใน directory ที่เหมาะสม\n2. ใส่ข้อมูลตาม schema ที่กำหนด\n3. ระบุ `source` และ `effectiveDate`\n4. Run validation: `npm run validate:yaml`\n\n## ⚠️ Disclaimer\n\n```\nข้อมูลในโปรเจคนี้รวบรวมจากแหล่งข้อมูลสาธารณะของ สปสช. และบัญชียาหลักแห่งชาติ\nกรุณาตรวจสอบความถูกต้องกับประกาศล่าสุดก่อนนำไปใช้งานจริง\n\nผู้พัฒนาไม่รับผิดชอบต่อความเสียหายที่อาจเกิดขึ้นจากการใช้งานข้อมูลเหล่านี้\n```\n\n## 📚 References\n\n- [สปสช. - ระบบ e-Claim](https://eclaim.nhso.go.th)\n- [บัญชียาหลักแห่งชาติ](https://ndi.fda.moph.go.th)\n- [กองนโยบายแห่งชาติด้านยา](https://ndp.fda.moph.go.th)\n\n## 📄 License\n\nMIT License - see [LICENSE](LICENSE) file\n\n## 👥 Contributors\n\n- รพ.ขอนแก่น - กลุ่มงานสุขภาพดิจิทัล\n\n---\n\nMade with ❤️ for Thai Healthcare\n","readmeFilename":"README.md","_rev":"1-6c236faa7f9d374234b8d4236d93144b"}