diff --git a/public/userarea/apilogic/process_import.php b/public/userarea/apilogic/process_import.php
index 224c5bd..232e183 100644
--- a/public/userarea/apilogic/process_import.php
+++ b/public/userarea/apilogic/process_import.php
@@ -5,7 +5,7 @@ header('Content-Type: application/json');
$host = $servername;
$db = $database;
$user = $username;
-$pass = $password;
+$pass = $password;
try {
$pdo = new PDO("mysql:host=$host;dbname=$db", $user, $pass);
@@ -23,7 +23,8 @@ if (!isset($_POST['method'])) {
else {
$method = $_POST['method'];
if($method == 'intervention'){
- $query = "SELECT * FROM temp_json_queue WHERE processed = 2";
+ $id = $_POST['id'];
+ $query = "SELECT * FROM temp_json_queue WHERE processed = 2 AND id = $id";
$stmt = $pdo->prepare($query);
$stmt->execute();
$jsonEntries = $stmt->fetchAll(PDO::FETCH_ASSOC);
@@ -34,7 +35,7 @@ foreach ($jsonEntries as $entry) {
$data = json_decode($entry['json_data'], true);
$uuid = $entry['uuid'];
$analysisArr = array();
- $compoundsArr = array();
+ $compoundsArr = array();
// check for result_TestName
foreach ($data['product']['reports'] as $report) {
@@ -419,5 +420,5 @@ function markForIntervention($id, $pdo)
$query = "INSERT INTO notifications (`title`,`description`) VALUES ('Intervention Required', 'Intervention required for JSON entry with ID $id')";
$stmt = $pdo->prepare($query);
$stmt->execute();
-
+
}
diff --git a/public/userarea/importify/importjson.php b/public/userarea/importify/importjson.php
index 499fb1f..26918de 100644
--- a/public/userarea/importify/importjson.php
+++ b/public/userarea/importify/importjson.php
@@ -70,6 +70,12 @@ function checkForUnAttachedAnalysis($decoded_json_data,$pdo){
foreach($part['analyses'] as $analysis){
$result_TestName = $analysis['result_TestName'];
$analysisgroupcode = $analysis['analysisgroupcode'];
+
+ // validation for analysisgroupcode
+ if($analysisgroupcode == '' || $analysisgroupcode == null || $analysisgroupcode == 'N/A' || $analysisgroupcode == '-'){
+ $analysisgroupcode = 'NO_ANALYSIS_CODE_PROVIDED';
+ }
+
$analysis_id = checkForAnalysisId($analysisgroupcode, $result_TestName, $pdo);
if(!$analysis_id){
@@ -99,6 +105,12 @@ function checkForUnAttachedCompounds($decoded_json_data, $pdo){
foreach($analysis['results'] as $result){
$cas = $result['cas'];
$result_AnalytsName = $result['result_AnalytsName'];
+
+ // validation for cas
+ if($cas == '' || $cas == null || $cas == 'N/A' || $cas == '-'){
+ $cas = 'NO_CAS_PROVIDED';
+ }
+
$compound_id = checkForCompoundId($cas, $result_AnalytsName, $pdo);
if(!$compound_id){
$arr_compoundkind_refdata = ("SELECT * FROM compundsvocabulary where preferred like 'Y'");
@@ -120,6 +132,12 @@ function checkForUnAttachedCompounds($decoded_json_data, $pdo){
}
function checkForAnalysisId($analysisgroupcode, $result_TestName, $pdo){
+
+ // analysisgroupcode check
+ if($analysisgroupcode == '' || $analysisgroupcode == null || $analysisgroupcode == 'N/A' || $analysisgroupcode == '-'){
+ $analysisgroupcode = 'NO_ANALYSIS_CODE_PROVIDED';
+ }
+
$sql = "SELECT idanalysisvocabulary FROM analysisvocabulary WHERE analysiscode LIKE '$analysisgroupcode'";
$stmt = $pdo->prepare($sql);
$stmt->execute();
@@ -144,6 +162,7 @@ function checkForCompoundId($cas, $result_AnalytsName, $pdo){
if($cas == '' || $cas == null || $cas == 'N/A' || $cas == '-'){
$cas = 'NO_CAS_PROVIDED';
}
+
$sql = "SELECT idcompoundsvocabulary FROM compundsvocabulary WHERE cascompoundvocabulary LIKE '%$cas%'";
$stmt = $pdo->prepare($sql);
$stmt->execute();
diff --git a/public/userarea/importify/interventionlist.php b/public/userarea/importify/interventionlist.php
index f7fc458..e251a4a 100644
--- a/public/userarea/importify/interventionlist.php
+++ b/public/userarea/importify/interventionlist.php
@@ -171,7 +171,7 @@
tmp_str_arr_compunds_kind_option = '';
tmp_str_arr_kind_option = '';
- show_analysis_add_pop();
+ show_analysis_add_pop(id);
} else if (data.indexOf("none_define_column_error") > -1) {
$('#f_csv').val("");
showWarningPopup("The Associate Columns did not define yet!");
@@ -186,9 +186,10 @@
})
}
- function process_import() {
+ function process_import(id) {
formData = new FormData();
formData.append('method', 'intervention');
+ formData.append('id', id);
$.ajax({
url: '../apilogic/process_import.php',
type: 'POST',
@@ -206,7 +207,15 @@
$('#ajax_preloader').fadeOut();
if (data.code == "success") {
showSuccessAlert("Successfully imported!");
- refresh_table();
+ swal.fire({
+ title: 'Successfully imported!',
+ text: 'The record has been imported successfully.',
+ icon: 'success',
+ showCancelButton: false,
+ confirmButtonText: 'OK',
+ }).then(() => {
+ location.reload();
+ });
} else {
showWarningAlert("Server Error.")
}
@@ -215,29 +224,30 @@
})
}
- function show_analysis_add_pop() {
+ function show_analysis_add_pop(id) {
if (tmp_analyvoc_idx < arr_total_analysisvoc.length) {
- show_analysis_add_popup(arr_total_analysisvoc[tmp_analyvoc_idx], function() {
+ show_analysis_add_popup(id,arr_total_analysisvoc[tmp_analyvoc_idx], function() {
tmp_analyvoc_idx++;
- show_analysis_add_pop();
+ show_analysis_add_pop(id);
})
} else {
- show_compunds_add_pop();
+ show_compunds_add_pop(id);
}
}
- function show_compunds_add_pop() {
+ function show_compunds_add_pop(id) {
if (tmp_compundsvoc_idx < arr_total_compundsvoc.length) {
show_compunds_add_popup(arr_total_compundsvoc[tmp_compundsvoc_idx], function() {
tmp_compundsvoc_idx++;
- show_compunds_add_pop();
+ show_compunds_add_pop(id);
})
} else {
+ process_import(id);
showSuccessAlert("Successfully added!");
}
}
- function show_analysis_add_popup(voc_info, callback) {
+ function show_analysis_add_popup(id,voc_info, callback) {
let str_word = voc_info['word'];
let arr_similary = voc_info['arr_similary'];
@@ -315,9 +325,10 @@
tmp_str_arr_kind_option += '';
}
showSuccessAlert("Successfully added!");
- process_import();
if (callback) {
callback();
+ }else{
+ process_import(id);
}
} else {
showWarningAlert("Server Error.")
@@ -408,9 +419,10 @@
tmp_str_arr_compunds_kind_option += '';
}
showSuccessAlert("Successfully added!");
- process_import();
if (callback) {
callback();
+ }else{
+ process_import(id);
}
} else {
showWarningAlert("Server Error.")