update new patient endpoint for adding patatt
This commit is contained in:
parent
adccdcfd73
commit
532cde9ca0
@ -138,7 +138,7 @@ class Patient extends Controller {
|
||||
public function create() {
|
||||
try {
|
||||
$input = $this->request->getJSON(true);
|
||||
|
||||
$now = date('Y-m-d H:i:s');
|
||||
$LinkTo = null;
|
||||
if (!empty($input['LinkTo'])) {
|
||||
$ids = []; // Temporary
|
||||
@ -218,7 +218,7 @@ class Patient extends Controller {
|
||||
"DeathIndicator" => ($input['DeathIndicator'] ?? '') !== '' ? (int)$input['DeathIndicator'] : null,
|
||||
"DeathDateTime" => ($input['DeathDateTime'] ?? '') !== '' ? $input['DeathDateTime'] : null,
|
||||
"Custodian" => ($input['Custodian'] ?? '') !== '' ? (int)$input['Custodian'] : null,
|
||||
"CreateDate" => date('Y-m-d H:i:s'),
|
||||
"CreateDate" => $now,
|
||||
"DelDate" => null,
|
||||
"LinkTo" => $LinkTo
|
||||
];
|
||||
@ -235,12 +235,24 @@ class Patient extends Controller {
|
||||
$dataPatidt = [
|
||||
"IdentifierType" => $input['Identity']['IdentifierType'] === '' ? null : ($input['Identity']['IdentifierType'] ?? null),
|
||||
"Identifier" => $input['Identity']['Identifier'] === '' ? null : ($input['Identity']['Identifier'] ?? null),
|
||||
"CreateDate" => date('Y-m-d H:i:s'),
|
||||
"CreateDate" => $now,
|
||||
];
|
||||
$rulesDataPatidt = [
|
||||
'Identifier' => 'required|is_unique[patidt.Identifier]',
|
||||
];
|
||||
|
||||
|
||||
foreach($input['Attachments'] as $attachment) {
|
||||
$dataPatatt[] = [
|
||||
"Address" => $attachment['Address'],
|
||||
"CreateDate" => $now
|
||||
];
|
||||
}
|
||||
|
||||
$rulesDataPatatt = [
|
||||
'Address' => 'required|is_unique[patatt.Address]',
|
||||
];
|
||||
|
||||
// =========================
|
||||
// Validasi semua sebelum insert
|
||||
// =========================
|
||||
@ -268,15 +280,22 @@ class Patient extends Controller {
|
||||
$this->db->table('patient')->insert($dataPatient);
|
||||
$newInternalPatientId = $this->db->insertID();
|
||||
|
||||
$dataPatidt['InternalPID'] = $newInternalPatientId;
|
||||
$this->db->table('patidt')->insert($dataPatidt);
|
||||
|
||||
if(isset($dataPatatt)) {
|
||||
for($i=0;$i<count($dataPatatt);$i++) {
|
||||
$dataPatatt[$i]['InternalPID'] = $newInternalPatientId;
|
||||
}
|
||||
$this->db->table('patatt')->insertBatch($dataPatatt);
|
||||
}
|
||||
|
||||
$dbError = $this->db->error();
|
||||
if (!empty($dbError['message'])) {
|
||||
$this->db->transRollback();
|
||||
return $this->failServerError('Insert patient failed: ' . $dbError['message']);
|
||||
}
|
||||
|
||||
$dataPatidt['InternalPID'] = $newInternalPatientId;
|
||||
$this->db->table('patidt')->insert($dataPatidt);
|
||||
|
||||
$this->db->transComplete();
|
||||
|
||||
if ($this->db->transStatus() === false) {
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
-- Adminer 5.2.1 MariaDB 10.4.32-MariaDB dump
|
||||
-- Adminer 5.3.0 MariaDB 11.8.2-MariaDB-1 from Debian dump
|
||||
|
||||
SET NAMES utf8;
|
||||
SET time_zone = '+00:00';
|
||||
@ -7,8 +7,7 @@ SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
|
||||
DROP DATABASE IF EXISTS `clqms01`;
|
||||
CREATE DATABASE `clqms01` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci */;
|
||||
CREATE DATABASE `clqms01`;
|
||||
USE `clqms01`;
|
||||
|
||||
DROP TABLE IF EXISTS `country`;
|
||||
@ -347,6 +346,32 @@ CREATE TABLE `patidt` (
|
||||
PRIMARY KEY (`PatIdtID`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
|
||||
INSERT INTO `patidt` (`PatIdtID`, `InternalPID`, `IdentifierType`, `Identifier`, `EffectiveDate`, `ExpirationDate`, `CreateDate`, `DelDate`) VALUES
|
||||
(11, 26, 'KTP', '3174011505900001', NULL, NULL, NULL, NULL),
|
||||
(12, 28, 'KTP', '3174011505900000', NULL, NULL, NULL, NULL),
|
||||
(13, 29, 'KTP', '32132132', NULL, NULL, NULL, NULL),
|
||||
(14, 30, 'KTP', 'Q0026', NULL, NULL, NULL, NULL),
|
||||
(15, 31, 'KTP', 'Q0027', NULL, NULL, NULL, NULL),
|
||||
(16, 32, 'KTP', 'Q0028', NULL, NULL, '2025-08-09 02:30:29', NULL),
|
||||
(17, 33, 'KTP', 'Q0029', NULL, NULL, '2025-08-09 05:12:16', NULL),
|
||||
(18, 34, 'KTP', 'Q0030', NULL, NULL, '2025-08-11 02:31:45', NULL),
|
||||
(19, 35, 'KTAS', '32232327474', NULL, NULL, '2025-08-11 03:53:04', NULL),
|
||||
(20, 35, 'KTP', '21321312', NULL, NULL, NULL, NULL),
|
||||
(22, 36, 'SIM', '23131131', NULL, NULL, '2025-08-11 06:12:13', NULL),
|
||||
(23, 37, 'KTP', '122121312', NULL, NULL, '2025-08-11 07:14:28', NULL),
|
||||
(24, 38, 'KTP', 'Q0001', NULL, NULL, '2025-08-12 02:04:16', NULL),
|
||||
(25, 39, 'KTP', 'Q0002', NULL, NULL, '2025-08-12 02:26:42', NULL),
|
||||
(26, 40, 'KTP', 'Q0003', NULL, NULL, '2025-08-12 04:00:16', NULL),
|
||||
(27, 41, 'KTP', 'Q0004', NULL, NULL, '2025-08-12 04:03:37', NULL),
|
||||
(28, 42, 'PASS', 'Q0005', NULL, NULL, '2025-08-12 04:11:26', NULL),
|
||||
(29, 43, 'SIM', 'Q0006', NULL, NULL, '2025-08-12 06:11:09', NULL),
|
||||
(30, 44, 'SSN', 'Q0007', NULL, NULL, '2025-08-12 06:40:15', NULL),
|
||||
(31, 45, 'KTP', 'Q0008', NULL, NULL, '2025-08-25 02:26:26', NULL),
|
||||
(32, 46, 'KTP', 'Q0009', NULL, NULL, '2025-08-25 03:02:29', NULL),
|
||||
(33, 47, 'KTP', 'Q0010', NULL, NULL, '2025-08-25 03:08:34', NULL),
|
||||
(34, 48, 'KTP', 'Q0011', NULL, NULL, '2025-08-25 03:11:58', NULL),
|
||||
(35, 49, 'KTP', 'Q0012', NULL, NULL, '2025-08-25 03:28:26', NULL),
|
||||
(36, 50, 'KTP', 'Q0013', NULL, NULL, '2025-08-25 03:32:41', NULL);
|
||||
|
||||
DROP TABLE IF EXISTS `patient`;
|
||||
CREATE TABLE `patient` (
|
||||
@ -362,19 +387,19 @@ CREATE TABLE `patient` (
|
||||
`NameAlias` varchar(255) DEFAULT NULL,
|
||||
`Gender` int(11) DEFAULT NULL,
|
||||
`PlaceOfBirth` varchar(255) DEFAULT NULL,
|
||||
`BirthDate` datetime DEFAULT NULL,
|
||||
`Birthdate` datetime DEFAULT NULL,
|
||||
`Street_1` varchar(255) DEFAULT NULL,
|
||||
`Street_2` varchar(255) DEFAULT NULL,
|
||||
`Street_3` varchar(255) DEFAULT NULL,
|
||||
`City` varchar(255) DEFAULT NULL,
|
||||
`Province` varchar(255) DEFAULT NULL,
|
||||
`ZIP` varchar(255) DEFAULT NULL,
|
||||
`CountryID` int(11) DEFAULT NULL,
|
||||
`Emailaddress1` varchar(255) DEFAULT NULL,
|
||||
`Emailaddress2` varchar(255) DEFAULT NULL,
|
||||
`IntCountryID` int(11) DEFAULT NULL,
|
||||
`EmailAddress1` varchar(255) DEFAULT NULL,
|
||||
`EmailAddress2` varchar(255) DEFAULT NULL,
|
||||
`Phone` varchar(255) DEFAULT NULL,
|
||||
`Mobilephone` varchar(255) DEFAULT NULL,
|
||||
`Mother` int(11) DEFAULT NULL,
|
||||
`MobilePhone` varchar(255) DEFAULT NULL,
|
||||
`Custodian` int(11) DEFAULT NULL,
|
||||
`AccountNumber` int(11) DEFAULT NULL,
|
||||
`RaceID` int(11) DEFAULT NULL,
|
||||
`MaritalStatus` varchar(1) DEFAULT NULL,
|
||||
@ -389,9 +414,24 @@ CREATE TABLE `patient` (
|
||||
PRIMARY KEY (`InternalPID`),
|
||||
UNIQUE KEY `PatientID` (`PatientID`),
|
||||
UNIQUE KEY `AlternatePID` (`AlternatePID`),
|
||||
UNIQUE KEY `Emailaddress1` (`Emailaddress1`)
|
||||
UNIQUE KEY `Emailaddress1` (`EmailAddress1`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
|
||||
INSERT INTO `patient` (`InternalPID`, `PatientID`, `AlternatePID`, `Prefix`, `NameFirst`, `NameMiddle`, `NameMaiden`, `NameLast`, `Suffix`, `NameAlias`, `Gender`, `PlaceOfBirth`, `Birthdate`, `Street_1`, `Street_2`, `Street_3`, `City`, `Province`, `ZIP`, `IntCountryID`, `EmailAddress1`, `EmailAddress2`, `Phone`, `MobilePhone`, `Custodian`, `AccountNumber`, `RaceID`, `MaritalStatus`, `ReligionID`, `EthnicID`, `Citizenship`, `DeathIndicator`, `DeathDateTime`, `LinkTo`, `CreateDate`, `DelDate`) VALUES
|
||||
(37, 'Q0050', '0050', 'Kyai', 'Kyai', 'Kyai', 'Kyai', 'Kyai', 'Kyai', 'Kyai', 2, 'Kyai', '2025-08-01 00:00:00', 'Kyai', 'Kyai', 'Kyai', 'jakarta', 'dki', '', 36, 'Kyai@gmail.com', 'Kyai@gmail.comq', '231312312', '143242312', NULL, NULL, 18, 'A', 1, 1, 'Kyai', CONVERT(b'0', UNSIGNED), NULL, '40', '2025-08-11 07:14:28', NULL),
|
||||
(38, 'Q0001', 'Q0001', 'mr', 'Q0001', 'mid', 'maidn', '', '', '', 2, '', '2025-08-01 00:00:00', '', '', '', '', '', '', 0, 'Q0001@gmail.com', '', '', NULL, NULL, NULL, 0, 'S', 1, 0, '', CONVERT(b'0', UNSIGNED), NULL, NULL, '2025-08-12 02:04:16', NULL),
|
||||
(39, 'Q0002', 'Q0002', 'mr', 'Q0002', 'mid', 'mad', 'asat', 'ffx', 'boy', 1, 'rere', '2025-08-10 00:00:00', 'st1', 'st2', 'st4', NULL, NULL, NULL, 136, 'Q0002@gmail.com', 'Q0002@gmail.com', '6232324231', '62372837823', NULL, NULL, 17, 'D', 6, 7, 'wna', CONVERT(b'1', UNSIGNED), '2025-08-01 00:12:00', NULL, '2025-08-12 02:26:42', NULL),
|
||||
(40, 'Q0003', 'Q0003', NULL, 'Q0003', NULL, NULL, NULL, NULL, NULL, 2, NULL, '2025-08-02 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, 0, 'Q0003@gmail.com', NULL, '6232132132166', '6232132132166', NULL, NULL, NULL, NULL, NULL, NULL, NULL, CONVERT(b'0', UNSIGNED), NULL, NULL, '2025-08-12 04:00:16', NULL),
|
||||
(41, 'Q0004', 'Q0004', '', 'Q0004', '', '', '', '', '', 1, '', '2025-08-01 00:00:00', '', '', '', '', '', '', 0, 'Q0004@gmail.com', '', '623909090', NULL, NULL, NULL, 0, '', 0, 0, '', CONVERT(b'0', UNSIGNED), NULL, NULL, '2025-08-12 04:03:37', NULL),
|
||||
(42, 'Q0005', 'Q0005', NULL, 'Q0005', NULL, NULL, NULL, NULL, NULL, 1, NULL, '2025-08-01 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, 0, 'Q0005@gmail.com', NULL, '62389238298', '664324324343', 50, NULL, NULL, NULL, NULL, NULL, NULL, CONVERT(b'0', UNSIGNED), NULL, NULL, '2025-08-12 04:11:26', NULL),
|
||||
(43, 'Q0006', 'Q0006', 'mr', 'Q0006', NULL, NULL, 'boi', NULL, 'Baboy', 2, 'Semarang', '2025-08-01 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, 105, 'Q0006@gmail.com', NULL, '62327837283', NULL, NULL, NULL, NULL, 'M', 2, NULL, 'indon', CONVERT(b'1', UNSIGNED), '2025-08-11 00:13:00', '37,38', '2025-08-12 06:11:09', NULL),
|
||||
(44, 'Q0007', 'Q0007', 'mr', 'Q0007', 'midone', 'maidun', 'Q0007 mwehehe', NULL, 'babouy', 2, 'Sini', '2025-08-01 00:00:00', 'jl1', NULL, NULL, NULL, NULL, NULL, 19, 'Q0007@gmail.com', NULL, '6237823782', NULL, 43, NULL, 19, 'D', 1, 1, 'ara ara', CONVERT(b'1', UNSIGNED), '2025-08-12 00:13:00', '38,39,40,42', '2025-08-12 06:40:15', '2025-08-12 09:02:59'),
|
||||
(45, 'Q0008', 'Q0008', NULL, 'Mie', 'Sedaap', NULL, 'Cup', NULL, NULL, 2, NULL, '2025-08-01 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'Q0008@gmail.com', NULL, '627382737823', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, CONVERT(b'1', UNSIGNED), '2025-08-19 00:16:00', NULL, '2025-08-25 02:26:26', NULL),
|
||||
(46, 'Q0009', 'Q0009', NULL, 'Pet', NULL, NULL, 'Food', NULL, NULL, 1, NULL, '2025-08-01 00:00:00', 'st1', NULL, NULL, NULL, NULL, NULL, NULL, 'Q0009@gmail.com', NULL, '623232733', NULL, 43, NULL, NULL, NULL, NULL, NULL, NULL, CONVERT(b'1', UNSIGNED), '2025-08-14 10:12:00', '45', '2025-08-25 03:02:29', NULL),
|
||||
(47, 'Q0010', 'Q0010', NULL, 'Berat', NULL, NULL, 'Bersih', NULL, NULL, 2, NULL, '2025-08-01 00:00:00', 'st1', NULL, NULL, NULL, NULL, NULL, NULL, 'Q0010@gmail.com', NULL, '62783928933', NULL, 44, NULL, NULL, NULL, NULL, NULL, NULL, CONVERT(b'0', UNSIGNED), NULL, NULL, '2025-08-25 03:08:34', NULL),
|
||||
(48, 'Q0011', 'Q0011', 'mr', 'Pangeran', NULL, NULL, 'Nipunegoro', NULL, NULL, 1, NULL, '2025-08-01 00:00:00', 'st1', NULL, NULL, NULL, NULL, NULL, NULL, 'Q0011@gmail.com', NULL, '62473434343', NULL, 45, NULL, NULL, NULL, NULL, NULL, NULL, CONVERT(b'0', UNSIGNED), NULL, NULL, '2025-08-25 03:11:58', NULL),
|
||||
(49, 'Q0012', 'Q0012', 'mr', 'Pangeran', NULL, NULL, 'Nipunegoro', NULL, NULL, 1, NULL, '2025-08-01 00:00:00', 'st1', NULL, NULL, NULL, NULL, NULL, NULL, 'Q0011@gmail1.com', NULL, '62473434343', NULL, 45, NULL, NULL, NULL, NULL, NULL, NULL, CONVERT(b'0', UNSIGNED), NULL, NULL, '2025-08-25 03:28:26', NULL),
|
||||
(50, 'Q0013', 'Q0013', 'mr', 'Pangeran', NULL, NULL, 'Nipunegoro', NULL, NULL, 1, NULL, '2025-08-01 00:00:00', 'st1', NULL, NULL, NULL, NULL, NULL, NULL, 'Q001211@gmail1.com', NULL, '62473434343', NULL, 45, NULL, NULL, NULL, NULL, NULL, NULL, CONVERT(b'0', UNSIGNED), NULL, NULL, '2025-08-25 03:32:41', NULL);
|
||||
|
||||
DROP TABLE IF EXISTS `patreglog`;
|
||||
CREATE TABLE `patreglog` (
|
||||
@ -547,8 +587,8 @@ INSERT INTO `religion` (`SiteID`, `CodingSysID`, `ReligionID`, `Religion`, `Crea
|
||||
(NULL, NULL, 2, 'Kristen', NULL, NULL),
|
||||
(NULL, NULL, 3, 'Katolik', NULL, NULL),
|
||||
(NULL, NULL, 4, 'Hindu', NULL, NULL),
|
||||
(NULL, NULL, 5, 'Budha', NULL, NULL),
|
||||
(NULL, NULL, 6, 'Khong Hu Cu', NULL, NULL),
|
||||
(NULL, NULL, 5, 'Buddha', NULL, NULL),
|
||||
(NULL, NULL, 6, 'Konghucu', NULL, NULL),
|
||||
(NULL, NULL, 7, 'Lainnya', NULL, NULL);
|
||||
|
||||
-- 2025-07-31 22:24:07 UTC
|
||||
-- 2025-09-02 05:55:52 UTC
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user