diff --git a/common/models/AutopsyDiagnosis.php b/common/models/AutopsyDiagnosis.php index b54557a5..2d1edf71 100755 --- a/common/models/AutopsyDiagnosis.php +++ b/common/models/AutopsyDiagnosis.php @@ -77,7 +77,9 @@ class AutopsyDiagnosis extends PathologyActiveRecord [['report_type', 'id_case', 'rev_date'], 'string', 'max' => 50], [['rev'], 'string', 'max' => 100], [['microscopic_img'], 'file', 'extensions' => 'jpg,jpeg,png,gif,tif,tiff', 'skipOnEmpty' => true, 'maxFiles' => 20], - [['microscopic_img_caption', 'icdos'], 'safe'] + [['outlab_report'], 'file', 'extensions' => 'pdf'], + [['consult_outlab_report'], 'file', 'extensions' => 'pdf'], + [['microscopic_img_caption', 'icdos', 'outlab_report', 'consult_outlab_report'], 'safe'] ]; } @@ -293,4 +295,16 @@ class AutopsyDiagnosis extends PathologyActiveRecord } return false; } + + /** + * @return array|false|string[] + */ + public function getReport() + { + if (empty($this->outlab_report) || !isset($this->outlab_report)) { + return []; + } else { + return !is_array($this->outlab_report) ? explode(',', $this->outlab_report) : []; + } + } } diff --git a/common/models/FrozenDiagnosis.php b/common/models/FrozenDiagnosis.php index 52a6d8d9..95f60bc6 100755 --- a/common/models/FrozenDiagnosis.php +++ b/common/models/FrozenDiagnosis.php @@ -76,8 +76,10 @@ class FrozenDiagnosis extends PathologyActiveRecord [['reason', 'diagnosis_comment'], 'string'], [['report_type', 'id_case', 'rev_date'], 'string', 'max' => 50], [['rev'], 'string', 'max' => 100], + [['outlab_report'], 'file', 'extensions' => 'pdf'], + [['consult_outlab_report'], 'file', 'extensions' => 'pdf'], [['microscopic_img'], 'file', 'extensions' => 'jpg,jpeg,png,gif,tif,tiff', 'skipOnEmpty' => true, 'maxFiles' => 20], - [['microscopic_img_caption', 'icdos'], 'safe'] + [['microscopic_img_caption', 'icdos', 'outlab_report', 'consult_outlab_report'], 'safe'] ]; } diff --git a/common/models/HospitalImport.php b/common/models/HospitalImport.php index f78786e4..2b3851ec 100755 --- a/common/models/HospitalImport.php +++ b/common/models/HospitalImport.php @@ -82,7 +82,7 @@ class HospitalImport extends ActiveRecord public function rules() { return [ - [['req_no', 'id_case', 'hn', 'reg_flag', 'title', 'firstName', 'lastName', 'CardID', 'payTypeCode', 'payTypeDes', 'deptCode', 'deptDesc', 'ward_id', 'ward_name', 'req_date', 'lab_type', 'lab_code', 'lab_name', 'import_at', 'import_by', 'created_at', 'updated_at', 'created_by', 'updated_by'], 'string'], + [['req_no', 'id_case', 'hn', 'reg_flag', 'title', 'firstName', 'lastName', 'CardID', 'payTypeCode', 'payTypeDes', 'deptCode', 'deptDesc', 'ward_id', 'ward_name', 'req_date', 'lab_type', 'lab_code', 'lab_name'], 'string'], [['import_by', 'created_at', 'updated_at', 'created_by', 'updated_by'], 'integer'], [['order_point_code', 'order_by_code', 'hospital_code'], 'string', 'max' => 50], [['doctor_code', 'doctor_name', 'order_point_name', 'order_by_name'], 'string', 'max' => 200], diff --git a/frontend/modules/pathologist/controllers/DoController.php b/frontend/modules/pathologist/controllers/DoController.php index 4cdb23b7..68323fd3 100755 --- a/frontend/modules/pathologist/controllers/DoController.php +++ b/frontend/modules/pathologist/controllers/DoController.php @@ -2531,7 +2531,7 @@ class DoController extends \yii\web\Controller * @return string|\yii\web\Response * @throws NotFoundHttpException */ - /* + function actionFrozenOutlab($id_case, $type = 'outlab') { $case_frozen = CaseFrozen::findOne(['id_case' => $id_case]); @@ -2570,7 +2570,7 @@ class DoController extends \yii\web\Controller $case_frozen->status_id = 17; if ($case_frozen->save() && $model->save()) { - @Yii::$app->runAction('/pathologist/hl7/result', ['id_case' => $model->id_case, 'report_type' => $model->report_type, 'diagnosis_id' => $model->id]); + //@Yii::$app->runAction('/pathologist/hl7/result', ['id_case' => $model->id_case, 'report_type' => $model->report_type, 'diagnosis_id' => $model->id]); Yii::$app->session->setFlash('success', 'บันทึกข้อมูลผล Outlab Report เรียบร้อยแล้ว'); @@ -2601,7 +2601,7 @@ class DoController extends \yii\web\Controller 'case_frozen' => $case_frozen, 'dataProviderReport' => $dataProviderReport, ]); - }*/ + } /** * @param $id_case diff --git a/frontend/modules/pathologist/views/do/autopsy-outlab.php b/frontend/modules/pathologist/views/do/autopsy-outlab.php index f4108c3a..ae0510e2 100644 --- a/frontend/modules/pathologist/views/do/autopsy-outlab.php +++ b/frontend/modules/pathologist/views/do/autopsy-outlab.php @@ -1,8 +1,9 @@ title = Html::encode('Autopsy Outlab Report : ' . $model->id_case . ' - ' . isset($model->autopsy) ? $model->autopsy->getFullname() : ''); $this->params['breadcrumbs'][] = ['label' => Html::encode($model->id_case), 'url' => ['autopsy', 'id_case' => $model->id_case]]; @@ -46,49 +47,35 @@ $this->params['breadcrumbs'][] = $this->title;
-
-
-

Preview Outlab Report

-
-
- is_outlab) && $case_autopsy->is_outlab == 1) { - ?> - getReport() as $key => $value) { ?> - - - isNewRecord) { - if (Yii::$app->request->hostInfo == 'http://ppk.moph.go.th' || Yii::$app->request->hostInfo == 'https://ppk.moph.go.th') { - $url = Yii::$app->params['urlOnline']; - } else { - $url = Yii::$app->params['urlOffline']; - } - //var_dump($url); +
+
+
+
Preview Outlab Report
+
+
+ isNewRecord && AutopsyDiagnosis::findOne([ + 'id_case' => $case_autopsy->id_case, + 'report_type' => 'outlab', + 'id' => $model->id, + ])) { ?> + is_outlab) && $case_autopsy->is_outlab == 1) { ?> - - + getReport() as $key => $value) { ?> + + + + +
+ ผลการตรวจวินิจฉัยนี้ยังไม่ได้ถูกบันทึกในระบบ
+ + หากต้องการออกผล Outlab + Report ให้แจ้งเจ้าหน้าที่ เพื่อนำผลการตรวจวินิจฉัยเข้าสู่ระบบ +
+ - - pathology->getCaseType($model->id_case); - - if ($autopsy_diagnosis) { - $ref_case = $autopsy_diagnosis->id; - } - //$url = '/report/case/' . $case_surgical_type . '-pdf'; - ?> - - is_outlab) && $case_autopsy->is_outlab == 1) { ?> - getReport() as $key => $value) { ?> - - - +
diff --git a/frontend/modules/pathologist/views/do/frozen.php b/frontend/modules/pathologist/views/do/frozen.php index 62abb569..05bde2e1 100644 --- a/frontend/modules/pathologist/views/do/frozen.php +++ b/frontend/modules/pathologist/views/do/frozen.php @@ -101,9 +101,9 @@ $this->params['breadcrumbs'][] = $this->title; --> - where(['id_case' => $case_frozen->id_case])->andWhere(['in', 'report_type', ['outlab']])->one())) { ?> + where(['id_case' => $case_frozen->id_case])->andWhere(['in', 'report_type', ['outlab']])->one())) { ?> Outlab Report', ['/pathologist/do/frozen-outlab', 'id_case' => $case_frozen->id_case, 'type' => 'outlab'], ['class' => 'btn btn-block btn-warning']) ?> - + session->setFlash('success', 'บันทึก Outlab เรียบร้อย'); } else { - var_dump($surgical_diagnosis->getFirstErrors()); - die(); + //var_dump($surgical_diagnosis->getFirstErrors()); + //die(); } } @@ -1212,8 +1212,8 @@ class CaseController extends \yii\web\Controller Yii::$app->session->setFlash('success', 'บันทึก Outlab เรียบร้อย'); } else { - var_dump($autopsy_diagnosis->getFirstErrors()); - die(); + //var_dump($autopsy_diagnosis->getFirstErrors()); + //die(); } } @@ -1374,8 +1374,8 @@ class CaseController extends \yii\web\Controller Yii::$app->pathology->setLog('Upload', 'อัพโหลดไฟล์ Cyto Non-Gyn Outlab: ' . $model->id_case, Yii::$app->user->getId(), CytoNonGynDiagnosis::tableName()); Yii::$app->session->setFlash('success', 'บันทึก Outlab เรียบร้อย'); } else { - var_dump($non_gyn_diagnosis->getFirstErrors()); - die(); + //var_dump($non_gyn_diagnosis->getFirstErrors()); + //die(); } } @@ -1535,8 +1535,8 @@ class CaseController extends \yii\web\Controller Yii::$app->session->setFlash('success', 'บันทึก Outlab เรียบร้อย'); } else { - var_dump($pap_diagnosis->getFirstErrors()); - die(); + //var_dump($pap_diagnosis->getFirstErrors()); + //die(); } } @@ -1729,8 +1729,8 @@ class CaseController extends \yii\web\Controller Yii::$app->session->setFlash('success', 'บันทึก Outlab เรียบร้อย'); } else { - var_dump($surgical_diagnosis->getFirstErrors()); - die(); + //var_dump($surgical_diagnosis->getFirstErrors()); + //die(); } } @@ -2883,4 +2883,4 @@ class CaseController extends \yii\web\Controller $subdistrict = ConstLookupAddressName::findOne(['province' => $province, 'amphur' => $amphur, 'tambon' => $tambon]); return isset($subdistrict) ? $subdistrict->zipcode : ''; } -} \ No newline at end of file +} diff --git a/frontend/modules/register/controllers/CaseUpdateController.php b/frontend/modules/register/controllers/CaseUpdateController.php index 34a7f304..7bab4567 100755 --- a/frontend/modules/register/controllers/CaseUpdateController.php +++ b/frontend/modules/register/controllers/CaseUpdateController.php @@ -2219,13 +2219,13 @@ class CaseUpdateController extends \yii\web\Controller if ($case_type == 'frozen') { //ลบไฟล์ frozen $model = CaseFrozen::findOne(['id_case' => $id_case]); - $files = explode(',', $model->specimen_img); + $files = explode(',', $model->specimen_container_img); $files = array_diff($files, array($img)); - @unlink(Yii::getAlias('@webroot') . '/uploads/frozen/specimen/' . $img); + @unlink(Yii::getAlias('@webroot') . '/uploads/frozen/specimen-container-img/' . $img); $files = implode(',', $files); - $model->specimen_img = $files; + $model->specimen_container_img = $files; $model->save(); Yii::$app->session->setFlash('success', 'ลบไฟล์เรียบร้อยแล้ว'); @@ -2391,6 +2391,7 @@ class CaseUpdateController extends \yii\web\Controller return $this->redirect(['pap', 'id_case' => $id_case]); } + /* if ($case_type === 'frozen') { //ลบไฟล์ frozen $model = CaseFrozen::findOne(['id_case' => $id_case]); $files = explode(',', $model->files); @@ -2402,6 +2403,32 @@ class CaseUpdateController extends \yii\web\Controller $model->save(); Yii::$app->session->setFlash('success', 'ลบไฟล์เรียบร้อยแล้ว'); + return $this->redirect(['frozen', 'id_case' => $id_case]); + }*/ + + if ($case_type === 'frozen') { //ลบไฟล์ Surgical + + $model = CaseFrozen::findOne(['id_case' => $id_case]); + + $files = explode(',', $model->outlab_report); + + $files = array_diff($files, array($file)); + + + @unlink(Yii::getAlias('@webroot') . '/uploads/frozen/report/' . $file); + + + $files = implode(',', $files); + + + $model->outlab_report = $files; + + + $model->save(); + + + Yii::$app->session->setFlash('success', 'ลบไฟล์เรียบร้อยแล้ว'); + return $this->redirect(['frozen', 'id_case' => $id_case]); } diff --git a/frontend/modules/register/controllers/HospitalImportController.php b/frontend/modules/register/controllers/HospitalImportController.php index 709f2d3e..ba1b4e45 100755 --- a/frontend/modules/register/controllers/HospitalImportController.php +++ b/frontend/modules/register/controllers/HospitalImportController.php @@ -151,12 +151,19 @@ class HospitalImportController extends Controller continue; // ถ้าไม่ได้ข้อมูลที่ถูกต้อง ข้ามไป } - // สร้างโมเดลใหม่จากข้อมูลที่ได้ - $his_import = new HospitalImport(); + $his_import = HospitalImport::findOne(['req_no' => $selection['req_no']]); // ค้นหาข้อมูลที่มีอยู่แล้ว + + if (!$his_import) { + // สร้างโมเดลใหม่จากข้อมูลที่ได้ + $his_import = new HospitalImport(); + } $his_import->attributes = $selection; if ($his_import->save()) { $imported_count++; + }else{ + var_dump($his_import->getFirstErrors()); + die(); } } diff --git a/frontend/modules/register/views/case/_form_frozen.php b/frontend/modules/register/views/case/_form_frozen.php index e37f9a8f..961cf372 100644 --- a/frontend/modules/register/views/case/_form_frozen.php +++ b/frontend/modules/register/views/case/_form_frozen.php @@ -631,7 +631,7 @@ use yii\helpers\Url; getFiles() as $file => $val) { ?> -
  • '_blank']); ?> +
  • '_blank']); ?> ', [ 'file-del', @@ -667,14 +667,14 @@ use yii\helpers\Url;