diff --git a/app/Controllers/ValueSet.php b/app/Controllers/ValueSet.php index 95ad32d..6fca919 100644 --- a/app/Controllers/ValueSet.php +++ b/app/Controllers/ValueSet.php @@ -18,7 +18,7 @@ class ValueSet extends Controller { } public function index() { - $rows = $this->db->table('codedtxt') + $rows = $this->db->table('valueset') ->select("*") ->get()->getResultArray(); @@ -154,7 +154,7 @@ class ValueSet extends Controller { return $this->failNotFound("VID with {$VID} not found."); } - $this->db->table('codedtxt')->where('VID', $VID)->update(['EndDate' => $this->now ]); + $this->db->table('valueset')->where('VID', $VID)->update(['EndDate' => $this->now ]); return $this->respondDeleted([ 'status' => 'success', diff --git a/app/Database/Migrations/2025-09-12-100001_Orders.php b/app/Database/Migrations/2025-09-12-100001_Orders.php index ff671a4..a94b01f 100644 --- a/app/Database/Migrations/2025-09-12-100001_Orders.php +++ b/app/Database/Migrations/2025-09-12-100001_Orders.php @@ -8,12 +8,12 @@ class CreateOrdersTable extends Migration { public function up() { $this->forge->addField([ 'InternalOID' => ['type' => 'INT', 'auto_increment' => true, 'unsigned' => true], - 'OrderID' => ['type' => 'VARCHAR', 'contstraint'=> 22, 'null' => false], - 'PlacerID' => ['type' => 'VARCHAR', 'contstraint'=> 22, 'null' => true], + 'OrderID' => ['type' => 'VARCHAR', 'constraint'=> 22, 'null' => false], + 'PlacerID' => ['type' => 'VARCHAR', 'constraint'=> 22, 'null' => true], 'InternalPID' => ['type' => 'INT', 'null' => false], - 'SiteID' => ['type' => 'VARCHAR', 'contstraint'=> 15, 'null' => false], + 'SiteID' => ['type' => 'VARCHAR', 'constraint'=> 15, 'null' => false], 'PVADTID' => ['type' => 'INT', 'null' => false], - 'ReqApp' => ['type' => 'VARCHAR', 'contstraint'=> 15, 'null' => true], + 'ReqApp' => ['type' => 'VARCHAR', 'constraint'=> 15, 'null' => true], 'LocationID' => ['type' => 'INT', 'null' => false], 'Priority' => ['type' => 'VARCHAR', 'constraint' => 50, 'null' => true], 'TrnDate' => ['type' => 'Datetime', 'null' => true], @@ -24,7 +24,7 @@ class CreateOrdersTable extends Migration { 'DelDate' => ['type' => 'Datetime', 'null' => true] ]); $this->forge->addKey('InternalOID', true); - $this->forge->addUniqueKey('OrderID', true); + $this->forge->addUniqueKey('OrderID'); $this->forge->createTable('ordertest'); $this->forge->addField([ diff --git a/app/Database/Migrations/2025-09-15-130122_ValueSet.php b/app/Database/Migrations/2025-09-15-130122_ValueSet.php index 6c8d50b..8153844 100644 --- a/app/Database/Migrations/2025-09-15-130122_ValueSet.php +++ b/app/Database/Migrations/2025-09-15-130122_ValueSet.php @@ -4,7 +4,7 @@ namespace App\Database\Migrations; use CodeIgniter\Database\Migration; -class CreateCodedTextTable extends Migration { +class CreateValueSetTable extends Migration { public function up() { $this->forge->addField([ @@ -12,7 +12,7 @@ class CreateCodedTextTable extends Migration { 'SiteID' => ['type' => 'INT', 'null' => true], 'VSet' => ['type' => 'INT', 'null' => true], 'VOrder' => ['type' => 'INT', 'null' => true], - 'VValue' => ['type' => 'varchar', ''], + 'VValue' => ['type' => 'varchar', 'constraint' => 10], 'VDesc' => ['type' => 'varchar', 'constraint' => 255, 'null' => true], 'VCategory' => ['type' => 'int', 'null' => true], 'CreateDate' => ['type' => 'DATETIME', 'null' => true], diff --git a/app/Database/Seeds/DBSeeder.php b/app/Database/Seeds/DBSeeder.php index e9173a1..2f14fff 100644 --- a/app/Database/Seeds/DBSeeder.php +++ b/app/Database/Seeds/DBSeeder.php @@ -6,9 +6,8 @@ use CodeIgniter\Database\Seeder; class DBSeeder extends Seeder { public function run() { - $this->call('CountrySeeder'); - $this->call('EthnicSeeder'); - $this->call('RaceSeeder'); - $this->call('ReligionSeeder'); + $this->call('MainSeeder'); + $this->call('ValueSetSeeder'); + $this->call('DummySeeder'); } } diff --git a/app/Database/Seeds/DummySeeder.php b/app/Database/Seeds/DummySeeder.php index 0074ea0..1e4621a 100644 --- a/app/Database/Seeds/DummySeeder.php +++ b/app/Database/Seeds/DummySeeder.php @@ -17,5 +17,21 @@ class DummySeeder extends Seeder { ['LocationID'=>1, 'Street1'=>'Jalan Nginden', 'Street2'=>'Intan Raya', 'City'=>'Surabaya', 'Province'=>'East Java', 'PostCode'=>'60222'] ]; $this->db->table('locationaddress')->insertBatch($data); + + // patient + $data = [ + [ 'InternalPID'=>1, 'PatientID'=>'SMAJ1', 'NameFirst'=>'Dummy', 'NameLast' => 'Patient M', 'Gender'=>'1', 'BirthDate'=>'1991-09-09', 'Street_1'=>'Makati', 'IntCountryID'=>'105', 'EmailAddress1'=>'smaj1@5panda.id', + 'RaceID'=>'1', 'ReligionID'=>'1', 'EthnicID'=>'1', 'DeathIndicator' => '0'], + [ 'InternalPID'=>2, 'PatientID'=>'SMAJ2', 'NameFirst'=>'Dummy', 'NameLast' => 'Patient F', 'Gender'=>'2', 'BirthDate'=>'1997-02-02', 'Street_1'=>'Manila', 'IntCountryID'=>'105', 'EmailAddress1'=>'smaj2@5panda.id', + 'RaceID'=>'1', 'ReligionID'=>'1', 'EthnicID'=>'1', 'DeathIndicator' => '0'] + ]; + $this->db->table('patient')->insertBatch($data); + + // patidt + $data = [ + [ 'InternalPID'=>1, 'IdentifierType'=>'KTP', 'Identifier'=>'9901' ], + [ 'InternalPID'=>2, 'IdentifierType'=>'KTP', 'Identifier'=>'9902' ] + ]; + $this->db->table('patidt')->insertBatch($data); } } \ No newline at end of file diff --git a/app/Database/Seeds/ValueSetSeeder.php b/app/Database/Seeds/ValueSetSeeder.php new file mode 100644 index 0000000..2cedad6 --- /dev/null +++ b/app/Database/Seeds/ValueSetSeeder.php @@ -0,0 +1,201 @@ + 1,'VOrder' => 1, 'VValue' =>'0', 'VDesc' => 'Primary', 'VCategory' => '1'], + ['VSet' => 1,'VOrder' => 2, 'VValue' =>'1', 'VDesc' => 'Secondary', 'VCategory' => '1'], + ['VSet' => 2,'VOrder' => 1, 'VValue' =>'0', 'VDesc' => 'Disabled', 'VCategory' => '1'], + ['VSet' => 2,'VOrder' => 2, 'VValue' =>'1', 'VDesc' => 'Enabled', 'VCategory' => '1'], + ['VSet' => 3,'VOrder' => 1, 'VValue' =>'1', 'VDesc' => 'Female', 'VCategory' => '1'], + ['VSet' => 3,'VOrder' => 2, 'VValue' =>'2', 'VDesc' => 'Male', 'VCategory' => '1'], + ['VSet' => 3,'VOrder' => 3, 'VValue' =>'3', 'VDesc' => 'Unknown', 'VCategory' => '1'], + ['VSet' => 4,'VOrder' => 1, 'VValue' =>'A', 'VDesc' => 'Separated', 'VCategory' => '1'], + ['VSet' => 4,'VOrder' => 2, 'VValue' =>'D', 'VDesc' => 'Divorced', 'VCategory' => '1'], + ['VSet' => 4,'VOrder' => 3, 'VValue' =>'M', 'VDesc' => 'Married', 'VCategory' => '1'], + ['VSet' => 4,'VOrder' => 4, 'VValue' =>'S', 'VDesc' => 'Single', 'VCategory' => '1'], + ['VSet' => 4,'VOrder' => 5, 'VValue' =>'W', 'VDesc' => 'Widowed', 'VCategory' => '1'], + ['VSet' => 4,'VOrder' => 6, 'VValue' =>'B', 'VDesc' => 'Unmarried', 'VCategory' => '1'], + ['VSet' => 4,'VOrder' => 7, 'VValue' =>'U', 'VDesc' => 'Unknown', 'VCategory' => '1'], + ['VSet' => 4,'VOrder' => 8, 'VValue' =>'O', 'VDesc' => 'Other', 'VCategory' => '1'], + ['VSet' => 5,'VOrder' => 1, 'VValue' =>'Y', 'VDesc' => 'Death', 'VCategory' => '1'], + ['VSet' => 5,'VOrder' => 2, 'VValue' =>'N', 'VDesc' => 'Life', 'VCategory' => '1'], + ['VSet' => 6,'VOrder' => 1, 'VValue' =>'KTP', 'VDesc' => 'Kartu Tanda Penduduk', 'VCategory' => '1'], + ['VSet' => 6,'VOrder' => 2, 'VValue' =>'PASS', 'VDesc' => 'Passport', 'VCategory' => '1'], + ['VSet' => 6,'VOrder' => 3, 'VValue' =>'SSN', 'VDesc' => 'Social Security Number', 'VCategory' => '1'], + ['VSet' => 6,'VOrder' => 4, 'VValue' =>'SIM', 'VDesc' => 'Surat Izin Mengemudi', 'VCategory' => '1'], + ['VSet' => 6,'VOrder' => 5, 'VValue' =>'KTAS', 'VDesc' => 'Kartu Izin Tinggal Terbatas', 'VCategory' => '1'], + ['VSet' => 7,'VOrder' => 1, 'VValue' =>'Create', 'VDesc' => 'create record', 'VCategory' => '1'], + ['VSet' => 7,'VOrder' => 2, 'VValue' =>'Read', 'VDesc' => 'read record/field', 'VCategory' => '1'], + ['VSet' => 7,'VOrder' => 3, 'VValue' =>'Update', 'VDesc' => 'update record/field', 'VCategory' => '1'], + ['VSet' => 7,'VOrder' => 4, 'VValue' =>'Delete', 'VDesc' => 'delete record/field', 'VCategory' => '1'], + ['VSet' => 8,'VOrder' => 1, 'VValue' =>'WDID', 'VDesc' => 'Windows Device ID', 'VCategory' => '1'], + ['VSet' => 8,'VOrder' => 2, 'VValue' =>'AAID', 'VDesc' => 'Android AAID', 'VCategory' => '1'], + ['VSet' => 8,'VOrder' => 3, 'VValue' =>'IDFA', 'VDesc' => 'IOS IDFA', 'VCategory' => '1'], + ['VSet' => 9,'VOrder' => 1, 'VValue' =>'PAT', 'VDesc' => 'Patient', 'VCategory' => '1'], + ['VSet' => 9,'VOrder' => 2, 'VValue' =>'ISN', 'VDesc' => 'Insurance', 'VCategory' => '1'], + ['VSet' => 9,'VOrder' => 3, 'VValue' =>'ACC', 'VDesc' => 'Account', 'VCategory' => '1'], + ['VSet' => 9,'VOrder' => 4, 'VValue' =>'DOC', 'VDesc' => 'Doctor', 'VCategory' => '1'], + ['VSet' => 10,'VOrder' => 1, 'VValue' =>'S', 'VDesc' => 'Stat', 'VCategory' => '1'], + ['VSet' => 10,'VOrder' => 2, 'VValue' =>'A', 'VDesc' => 'ASAP', 'VCategory' => '1'], + ['VSet' => 10,'VOrder' => 3, 'VValue' =>'R', 'VDesc' => 'Routine', 'VCategory' => '1'], + ['VSet' => 10,'VOrder' => 4, 'VValue' =>'P', 'VDesc' => 'Preop', 'VCategory' => '1'], + ['VSet' => 10,'VOrder' => 5, 'VValue' =>'C', 'VDesc' => 'Callback', 'VCategory' => '1'], + ['VSet' => 10,'VOrder' => 6, 'VValue' =>'T', 'VDesc' => 'Timing critical', 'VCategory' => '1'], + ['VSet' => 10,'VOrder' => 7, 'VValue' =>'PRN', 'VDesc' => 'As needed', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 1, 'VValue' =>'A', 'VDesc' => 'Some, not all results available', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 2, 'VValue' =>'CA', 'VDesc' => 'Order is cancelled', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 3, 'VValue' =>'CM', 'VDesc' => 'Order is completed', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 4, 'VValue' =>'DC', 'VDesc' => 'Order was discontinued', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 5, 'VValue' =>'ER', 'VDesc' => 'Error, order not found', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 6, 'VValue' =>'HD', 'VDesc' => 'Order “on hold”', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 7, 'VValue' =>'IP', 'VDesc' => 'In process, unspecified', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 8, 'VValue' =>'RP', 'VDesc' => 'Order has been replaced', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 9, 'VValue' =>'SC', 'VDesc' => 'In process, scheduled', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 10, 'VValue' =>'CL', 'VDesc' => 'Closed', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 11, 'VValue' =>'AC', 'VDesc' => 'Archived', 'VCategory' => '1'], + ['VSet' => 11,'VOrder' => 12, 'VValue' =>'DL', 'VDesc' => 'Deleted', 'VCategory' => '1'], + ['VSet' => 12,'VOrder' => 1, 'VValue' =>'FCLT', 'VDesc' => 'Facility. Organisasi atau lembaga tempat layanan disediakan, atau gedung tertentu dalam organisasi', 'VCategory' => '1'], + ['VSet' => 12,'VOrder' => 2, 'VValue' =>'BLDG', 'VDesc' => 'Building. Gedung', 'VCategory' => '1'], + ['VSet' => 12,'VOrder' => 3, 'VValue' =>'FLOR', 'VDesc' => 'Floor. Lantai dari gedung', 'VCategory' => '1'], + ['VSet' => 12,'VOrder' => 4, 'VValue' =>'POC', 'VDesc' => 'Point of Care', 'VCategory' => '1'], + ['VSet' => 12,'VOrder' => 5, 'VValue' =>'ROOM', 'VDesc' => 'Room. Ruangan dalam Gedung-lantai', 'VCategory' => '1'], + ['VSet' => 12,'VOrder' => 6, 'VValue' =>'BED', 'VDesc' => 'Bed. Tempat tidur pasien', 'VCategory' => '1'], + ['VSet' => 12,'VOrder' => 7, 'VValue' =>'MOBL', 'VDesc' => 'Mobile. Lokasi bergerak, ditandai dengan koordinat GPS, lokasi sementara, atau deskripsi lokasi unit bergerak saat ini.', 'VCategory' => '1'], + ['VSet' => 12,'VOrder' => 8, 'VValue' =>'REMT', 'VDesc' => 'Remote. Lokasi di luar lokasi utama', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 1, 'VValue' =>'Hep', 'VDesc' => 'Heparin ammonium', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 2, 'VValue' =>'Apro', 'VDesc' => 'Aprotinin (substance)', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 3, 'VValue' =>'HepCa', 'VDesc' => 'Heparin calcium', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 4, 'VValue' =>'H3BO3', 'VDesc' => 'Boric acid', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 5, 'VValue' =>'CaOxa', 'VDesc' => 'Calcium oxalate', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 6, 'VValue' =>'EDTA', 'VDesc' => 'EDTA', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 7, 'VValue' =>'Ede', 'VDesc' => 'Edetate (substance)', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 8, 'VValue' =>'HCl', 'VDesc' => 'Hydrochloric acid', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 9, 'VValue' =>'Hrdn', 'VDesc' => 'Hirudin (substance)', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 10, 'VValue' =>'EdeK', 'VDesc' => 'Edetate dipotassium', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 11, 'VValue' =>'EdeTri', 'VDesc' => 'Tripotassium edetate', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 12, 'VValue' =>'LiHep', 'VDesc' => 'Heparin lithium (substance)', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 13, 'VValue' =>'EdeNa', 'VDesc' => 'Edetate disodium (substance)', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 14, 'VValue' =>'NaCtrt', 'VDesc' => 'Sodium citrate (substance)', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 15, 'VValue' =>'NaHep', 'VDesc' => 'Heparin sodium', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 16, 'VValue' =>'NaF', 'VDesc' => 'Sodium fluoride', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 17, 'VValue' =>'Borax', 'VDesc' => 'Sodium tetraborate', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 18, 'VValue' =>'Mntl', 'VDesc' => 'Mannitol (substance)', 'VCategory' => '1'], + ['VSet' => 13,'VOrder' => 19, 'VValue' =>'NaFrm', 'VDesc' => 'Sodium formate', 'VCategory' => '1'], + ['VSet' => 14,'VOrder' => 1, 'VValue' =>'Pri', 'VDesc' => 'primary, kontak langsung dengan spesimen', 'VCategory' => '1'], + ['VSet' => 14,'VOrder' => 2, 'VValue' =>'Sec', 'VDesc' => 'secondary, wadah primary container', 'VCategory' => '1'], + ['VSet' => 14,'VOrder' => 3, 'VValue' =>'Ter', 'VDesc' => 'tertiary, wadah secondary container.', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 1, 'VValue' =>'BLD', 'VDesc' => 'Whole blood', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 2, 'VValue' =>'BLDA', 'VDesc' => 'Blood arterial', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 3, 'VValue' =>'BLDCO', 'VDesc' => 'Cord blood', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 4, 'VValue' =>'FBLOOD', 'VDesc' => 'Blood, Fetal', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 5, 'VValue' =>'FBLOOD', 'VDesc' => 'Blood, Fetal', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 6, 'VValue' =>'WB', 'VDesc' => 'Blood, Whole', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 7, 'VValue' =>'BBL', 'VDesc' => 'Blood bag', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 8, 'VValue' =>'SER', 'VDesc' => 'Serum', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 9, 'VValue' =>'PLAS', 'VDesc' => 'Plasma', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 10, 'VValue' =>'PLB', 'VDesc' => 'Plasma bag', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 11, 'VValue' =>'MUCOS', 'VDesc' => 'Mucosa', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 12, 'VValue' =>'MUCUS', 'VDesc' => 'Mucus', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 13, 'VValue' =>'UR', 'VDesc' => 'Urine', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 14, 'VValue' =>'RANDU', 'VDesc' => 'Urine, Random', 'VCategory' => '1'], + ['VSet' => 15,'VOrder' => 15, 'VValue' =>'URINM', 'VDesc' => 'Urine, Midstream', 'VCategory' => '1'], + ['VSet' => 16,'VOrder' => 1, 'VValue' =>'L', 'VDesc' => 'Liter', 'VCategory' => '1'], + ['VSet' => 16,'VOrder' => 2, 'VValue' =>'mL', 'VDesc' => 'Mili Liter', 'VCategory' => '1'], + ['VSet' => 16,'VOrder' => 3, 'VValue' =>'mL', 'VDesc' => 'Micro Liter', 'VCategory' => '1'], + ['VSet' => 16,'VOrder' => 4, 'VValue' =>'Pcs', 'VDesc' => 'Pieces', 'VCategory' => '1'], + ['VSet' => 17,'VOrder' => 1, 'VValue' =>'SColl', 'VDesc' => 'Collection', 'VCategory' => '1'], + ['VSet' => 17,'VOrder' => 2, 'VValue' =>'STran', 'VDesc' => 'Transport', 'VCategory' => '1'], + ['VSet' => 17,'VOrder' => 3, 'VValue' =>'SRec', 'VDesc' => 'Reception', 'VCategory' => '1'], + ['VSet' => 17,'VOrder' => 4, 'VValue' =>'SPrep', 'VDesc' => 'Preparation', 'VCategory' => '1'], + ['VSet' => 17,'VOrder' => 5, 'VValue' =>'SAlqt', 'VDesc' => 'Aliquot', 'VCategory' => '1'], + ['VSet' => 17,'VOrder' => 6, 'VValue' =>'SDisp', 'VDesc' => 'Dispatching', 'VCategory' => '1'], + ['VSet' => 17,'VOrder' => 7, 'VValue' =>'SDest', 'VDesc' => 'Destruction', 'VCategory' => '1'], + ['VSet' => 18,'VOrder' => 1, 'VValue' =>'0', 'VDesc' => 'Failed', 'VCategory' => '1'], + ['VSet' => 18,'VOrder' => 2, 'VValue' =>'1', 'VDesc' => 'Success with note', 'VCategory' => '1'], + ['VSet' => 18,'VOrder' => 3, 'VValue' =>'2', 'VDesc' => 'Success', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 1, 'VValue' =>'STC', 'VDesc' => 'To be collected', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 2, 'VValue' =>'SCFld', 'VDesc' => 'Collection failed', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 3, 'VValue' =>'SCtd', 'VDesc' => 'Collected', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 4, 'VValue' =>'STran', 'VDesc' => 'In-transport', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 5, 'VValue' =>'STFld', 'VDesc' => 'Transport failed', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 6, 'VValue' =>'SArrv', 'VDesc' => 'Arrived', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 7, 'VValue' =>'SRejc', 'VDesc' => 'Rejected', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 8, 'VValue' =>'SRcvd', 'VDesc' => 'Received', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 9, 'VValue' =>'SPAna', 'VDesc' => 'Pre-analytical', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 10, 'VValue' =>'SPAF', 'VDesc' => 'Pre-analytical failed', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 11, 'VValue' =>'STA', 'VDesc' => 'To be analyze', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 12, 'VValue' =>'SAFld', 'VDesc' => 'Analytical failed', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 13, 'VValue' =>'SAna', 'VDesc' => 'Analytical', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 14, 'VValue' =>'STS', 'VDesc' => 'To be stored', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 15, 'VValue' =>'SSFld', 'VDesc' => 'Store failed', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 16, 'VValue' =>'SStrd', 'VDesc' => 'Stored', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 17, 'VValue' =>'SExp', 'VDesc' => 'Expired', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 18, 'VValue' =>'STD', 'VDesc' => 'To be destroyed', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 19, 'VValue' =>'SDFld', 'VDesc' => 'Failed to destroy', 'VCategory' => '1'], + ['VSet' => 19,'VOrder' => 20, 'VValue' =>'SDstd', 'VDesc' => 'Destroyed', 'VCategory' => '1'], + ['VSet' => 20,'VOrder' => 1, 'VValue' =>'HEM', 'VDesc' => 'Hemolyzed', 'VCategory' => '1'], + ['VSet' => 20,'VOrder' => 2, 'VValue' =>'ITC', 'VDesc' => 'Icteric', 'VCategory' => '1'], + ['VSet' => 20,'VOrder' => 3, 'VValue' =>'LIP', 'VDesc' => 'Lipemic', 'VCategory' => '1'], + ['VSet' => 20,'VOrder' => 4, 'VValue' =>'CFU', 'VDesc' => 'Centrifuged', 'VCategory' => '1'], + ['VSet' => 20,'VOrder' => 5, 'VValue' =>'ROOM', 'VDesc' => 'Room temperature', 'VCategory' => '1'], + ['VSet' => 20,'VOrder' => 6, 'VValue' =>'COOL', 'VDesc' => 'Cool', 'VCategory' => '1'], + ['VSet' => 20,'VOrder' => 7, 'VValue' =>'FROZ', 'VDesc' => 'Frozen', 'VCategory' => '1'], + ['VSet' => 20,'VOrder' => 8, 'VValue' =>'CLOT', 'VDesc' => 'Clotted', 'VCategory' => '1'], + ['VSet' => 20,'VOrder' => 9, 'VValue' =>'AUT', 'VDesc' => 'Autolyzed', 'VCategory' => '1'], + ['VSet' => 20,'VOrder' => 10, 'VValue' =>'CON', 'VDesc' => 'Contaminated', 'VCategory' => '1'], + ['VSet' => 20,'VOrder' => 11, 'VValue' =>'LIVE', 'VDesc' => 'Live', 'VCategory' => '1'], + ['VSet' => 21,'VOrder' => 1, 'VValue' =>'B', 'VDesc' => 'Blind Sample', 'VCategory' => '1'], + ['VSet' => 21,'VOrder' => 2, 'VValue' =>'C', 'VDesc' => 'Calibrator', 'VCategory' => '1'], + ['VSet' => 21,'VOrder' => 3, 'VValue' =>'E', 'VDesc' => 'Electronic QC. Used with manufactured reference providing signals that simulate QC results', 'VCategory' => '1'], + ['VSet' => 21,'VOrder' => 4, 'VValue' =>'F', 'VDesc' => 'Filler Organization Proficiency. Specimen used for testing proficiency of the organization performing the testing (Filler) à PME', 'VCategory' => '1'], + ['VSet' => 21,'VOrder' => 5, 'VValue' =>'O', 'VDesc' => 'Operator Proficiency. Specimen used for testing Operator Proficiency.', 'VCategory' => '1'], + ['VSet' => 21,'VOrder' => 6, 'VValue' =>'P', 'VDesc' => 'Patient (default if blank component value)', 'VCategory' => '1'], + ['VSet' => 21,'VOrder' => 7, 'VValue' =>'Q', 'VDesc' => 'Control specimen', 'VCategory' => '1'], + ['VSet' => 21,'VOrder' => 8, 'VValue' =>'R', 'VDesc' => 'Replicate (of patient sample as a control). Used when a patient sample is re-run as a control for a repeat test', 'VCategory' => '1'], + ['VSet' => 21,'VOrder' => 9, 'VValue' =>'V', 'VDesc' => 'Verifying Calibrator. Used for periodic calibration checks.', 'VCategory' => '1'], + ['VSet' => 26,'VOrder' => 1, 'VValue' =>'F', 'VDesc' => 'Fasting. Pasien puasa', 'VCategory' => '1'], + ['VSet' => 26,'VOrder' => 2, 'VValue' =>'NF', 'VDesc' => 'Not Fasting. Pasien tidak puasa', 'VCategory' => '1'], + ['VSet' => 26,'VOrder' => 3, 'VValue' =>'NG', 'VDesc' => 'Not Given. Pasien tidak ditanyakan status puasanya.', 'VCategory' => '1'] + ]; + $this->db->table('valueset')->insertBatch($data); + + $data = [ + ['VSName' => 'WSType','VSDesc' =>'workstation.Type', 'VSet' => '1'], + ['VSName' => 'WSEnable','VSDesc' =>'workstation.Enable', 'VSet' => '2'], + ['VSName' => 'Gender','VSDesc' =>'patient.Gender', 'VSet' => '3'], + ['VSName' => 'Marital Status','VSDesc' =>'patient.MaritalStatus', 'VSet' => '4'], + ['VSName' => 'Death Indicator','VSDesc' =>'patient.DeathIndicator', 'VSet' => '5'], + ['VSName' => 'Identifier Type','VSDesc' =>'patidt.IdentifierType', 'VSet' => '6'], + ['VSName' => 'Operation','VSDesc' =>'patreglog.Operation', 'VSet' => '7'], + ['VSName' => 'DID Type','VSDesc' =>'patreglog.DIDType', 'VSet' => '8'], + ['VSName' => 'Operation','VSDesc' =>'patvisitlog.Operation', 'VSet' => '7'], + ['VSName' => 'DID Type','VSDesc' =>'patvisitlog.DIDType', 'VSet' => '8'], + ['VSName' => 'Requested Entity','VSDesc' =>'order.ReqEntity', 'VSet' => '9'], + ['VSName' => 'Order Priority','VSDesc' =>'order.Priority', 'VSet' => '10'], + ['VSName' => 'Order Status','VSDesc' =>'orderststatus.OrderStatus', 'VSet' => '11'], + ['VSName' => '','VSDesc' =>'orderlog.Operation', 'VSet' => '7'], + ['VSName' => 'Location Type','VSDesc' =>'location.LocationType', 'VSet' => '12'], + ['VSName' => 'Additive','VSDesc' =>'containertype.Additive', 'VSet' => '13'], + ['VSName' => 'Container Class','VSDesc' =>'containertype.ConClass', 'VSet' => '14'], + ['VSName' => 'Specimen Type','VSDesc' =>'spcdef.SpcType', 'VSet' => '15'], + ['VSName' => 'Unit','VSDesc' =>'spcdef.Unit', 'VSet' => '16'], + ['VSName' => 'Unit','VSDesc' =>'specimens.Unit', 'VSet' => '16'], + ['VSName' => 'Activity','VSDesc' =>'specimenstatus.SpcAct', 'VSet' => '17'], + ['VSName' => 'Activity Result','VSDesc' =>'specimenstatus.ActRes', 'VSet' => '18'], + ['VSName' => 'Specimen Status','VSDesc' =>'specimenstatus.SpcStatus', 'VSet' => '19'], + ['VSName' => 'Specimen Condition','VSDesc' =>'specimenstatus.SpcCon', 'VSet' => '20'], + ['VSName' => 'Unit','VSDesc' =>'specimenstatus.Unit', 'VSet' => '16'], + ['VSName' => 'Specimen Role','VSDesc' =>'specimencollection.SpcRole', 'VSet' => '21'], + ['VSName' => 'Collection Method','VSDesc' =>'specimencollection.ColMethod', 'VSet' => '23'], + ['VSName' => 'Body Site','VSDesc' =>'specimencollection.BodySite', 'VSet' => '24'], + ['VSName' => 'Container Size','VSDesc' =>'specimencollection.CntSize', 'VSet' => '25'], + ['VSName' => 'Fasting Status','VSDesc' =>'specimencollection.Fasting', 'VSet' => '26'] + ]; + $this->db->table('valuesetfld')->insertBatch($data); + } +}