add dict_mapping tubeid
This commit is contained in:
parent
187f5191fb
commit
da40324dee
@ -57,6 +57,7 @@ $routes->get('api/dictTubes/index', 'API_DictTubes::index');
|
|||||||
$routes->get('api/dictTubes/detail/(:any)', 'API_DictTubes::detail/$1');
|
$routes->get('api/dictTubes/detail/(:any)', 'API_DictTubes::detail/$1');
|
||||||
|
|
||||||
// API - DictMappings
|
// API - DictMappings
|
||||||
|
$routes->POST('api/dictMappings/search', 'API_DictMappings::search');
|
||||||
$routes->get('api/dictMappings/index', 'API_DictMappings::index');
|
$routes->get('api/dictMappings/index', 'API_DictMappings::index');
|
||||||
$routes->POST('api/dictMappings/saveSingle', 'API_DictMappings::saveSingle');
|
$routes->POST('api/dictMappings/saveSingle', 'API_DictMappings::saveSingle');
|
||||||
$routes->POST('api/dictMappings/saveProfile', 'API_DictMappings::saveProfile');
|
$routes->POST('api/dictMappings/saveProfile', 'API_DictMappings::saveProfile');
|
||||||
|
|||||||
@ -8,7 +8,38 @@ class API_DictMappings extends ResourceController {
|
|||||||
|
|
||||||
public function index() {
|
public function index() {
|
||||||
$db = \Config\Database::connect();
|
$db = \Config\Database::connect();
|
||||||
$sql = "select * from cmod.dbo.CM_DICT_MAPPINGS";
|
$sql = "select m.*, t.TUBECODE, t.TUBENAME from cmod.dbo.CM_DICT_MAPPINGS m
|
||||||
|
left join cmod.dbo.CM_DICT_TUBES t on m.TUBEID=t.TUBEID";
|
||||||
|
$query = $db->query($sql);
|
||||||
|
$results = $query->getResultArray();
|
||||||
|
$data['dictMappings'] = $results;
|
||||||
|
|
||||||
|
return $this->respond($data, 200);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function search(){
|
||||||
|
$db = \Config\Database::connect();
|
||||||
|
$liscode = $this->request->getPost('liscode');
|
||||||
|
$hiscode = $this->request->getPost('hiscode');
|
||||||
|
$descs = $this->request->getPost('maptext');
|
||||||
|
$sql = "select m.*, t.TUBECODE, t.TUBENAME from cmod.dbo.CM_DICT_MAPPINGS m
|
||||||
|
left join cmod.dbo.CM_DICT_TUBES t on m.TUBEID=t.TUBEID";
|
||||||
|
$where = "";
|
||||||
|
if (!empty($liscode) || !empty($hiscode) || !empty($maptext) ) {
|
||||||
|
$where = ' WHERE ';
|
||||||
|
$x = 0;
|
||||||
|
if (!empty($liscode)) { $where .= "m.LISCODE like '%$liscode%'"; $x = 1; }
|
||||||
|
if (!empty($hiscode)) {
|
||||||
|
if ($x == 1) { $where .= ' OR '; }
|
||||||
|
$where .= "m.HISCODE LIKE '%$hiscode%'"; $x = 1;
|
||||||
|
}
|
||||||
|
if (!empty($maptext)) {
|
||||||
|
if ($x == 1) { $where .= ' OR '; }
|
||||||
|
$where .= "LOWER(m.DESCS) LIKE '%$maptext%'";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$sql .= $where;
|
||||||
|
|
||||||
$query = $db->query($sql);
|
$query = $db->query($sql);
|
||||||
$results = $query->getResultArray();
|
$results = $query->getResultArray();
|
||||||
$data['dictMappings'] = $results;
|
$data['dictMappings'] = $results;
|
||||||
@ -39,6 +70,7 @@ class API_DictMappings extends ResourceController {
|
|||||||
$liscode = $this->request->getPost('liscode');
|
$liscode = $this->request->getPost('liscode');
|
||||||
$hiscode = $this->request->getPost('hiscode');
|
$hiscode = $this->request->getPost('hiscode');
|
||||||
$descs = $this->request->getPost('descs');
|
$descs = $this->request->getPost('descs');
|
||||||
|
$tubeid = $this->request->getPost('tubeid');
|
||||||
|
|
||||||
// check if hiscode is exists
|
// check if hiscode is exists
|
||||||
$db = \Config\Database::connect();
|
$db = \Config\Database::connect();
|
||||||
@ -54,8 +86,8 @@ class API_DictMappings extends ResourceController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if($update == '0') { $sql = "INSERT INTO cmod.dbo.CM_DICT_MAPPINGS (MAPTYPE, HISCODE, LISCODE, DESCS ) VALUES ('S', '$hiscode', '$liscode', '$descs')"; }
|
if($update == '0') { $sql = "INSERT INTO cmod.dbo.CM_DICT_MAPPINGS (MAPTYPE, HISCODE, LISCODE, DESCS, TUBEID ) VALUES ('S', '$hiscode', '$liscode', '$descs', '$tubeid')"; }
|
||||||
else { $sql = "UPDATE cmod.dbo.CM_DICT_MAPPINGS set HISCODE='$hiscode', LISCODE='$liscode', DESCS='$descs' where MAPID='$update'"; }
|
else { $sql = "UPDATE cmod.dbo.CM_DICT_MAPPINGS set HISCODE='$hiscode', LISCODE='$liscode', DESCS='$descs', TUBEID='$tubeid' where MAPID='$update'"; }
|
||||||
|
|
||||||
if( $db->query($sql) ) {
|
if( $db->query($sql) ) {
|
||||||
return $this->respond(['message' => 'Save Success'],201);
|
return $this->respond(['message' => 'Save Success'],201);
|
||||||
@ -72,6 +104,7 @@ class API_DictMappings extends ResourceController {
|
|||||||
$db = \Config\Database::connect();
|
$db = \Config\Database::connect();
|
||||||
$update = $this->request->getPost('update');
|
$update = $this->request->getPost('update');
|
||||||
$hiscode = $this->request->getPost('hiscode');
|
$hiscode = $this->request->getPost('hiscode');
|
||||||
|
$tubeid = $this->request->getPost('tubeid');
|
||||||
$descs = $this->request->getPost('descs');
|
$descs = $this->request->getPost('descs');
|
||||||
$mliscode = [];
|
$mliscode = [];
|
||||||
for ($i = 1; $i <= 44; $i++) {
|
for ($i = 1; $i <= 44; $i++) {
|
||||||
@ -94,8 +127,8 @@ class API_DictMappings extends ResourceController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// dict_mappings
|
// dict_mappings
|
||||||
if($update == '0') { $sql = "INSERT INTO cmod.dbo.CM_DICT_MAPPINGS (MAPTYPE, HISCODE, LISCODE, DESCS ) VALUES ('P', '$hiscode', null, '$descs')"; }
|
if($update == '0') { $sql = "INSERT INTO cmod.dbo.CM_DICT_MAPPINGS (MAPTYPE, HISCODE, LISCODE, DESCS, TUBEID) VALUES ('P', '$hiscode', null, '$descs', '$tubeid')"; }
|
||||||
else { $sql = "UPDATE cmod.dbo.CM_DICT_MAPPINGS set HISCODE='$hiscode', LISCODE=null, DESCS='$descs' where MAPID='$update'"; }
|
else { $sql = "UPDATE cmod.dbo.CM_DICT_MAPPINGS set HISCODE='$hiscode', LISCODE=null, DESCS='$descs', TUBEID='$tubeid' where MAPID='$update'"; }
|
||||||
if( !$db->query($sql) ) {
|
if( !$db->query($sql) ) {
|
||||||
$response = [
|
$response = [
|
||||||
'errors' => $db->errors(),
|
'errors' => $db->errors(),
|
||||||
|
|||||||
@ -92,6 +92,10 @@ class AdminController extends BaseController {
|
|||||||
|
|
||||||
public function dictMappings_index() {
|
public function dictMappings_index() {
|
||||||
$db = \Config\Database::connect();
|
$db = \Config\Database::connect();
|
||||||
|
$sql = "select * from cmod.dbo.CM_DICT_TUBES";
|
||||||
|
$query = $db->query($sql);
|
||||||
|
$results = $query->getResultArray();
|
||||||
|
$data['tubes'] = $results;
|
||||||
$sql = "select TESTCODE from DICT_TESTS where ENDVALIDDATE is null";
|
$sql = "select TESTCODE from DICT_TESTS where ENDVALIDDATE is null";
|
||||||
$query = $db->query($sql);
|
$query = $db->query($sql);
|
||||||
$results = $query->getResultArray();
|
$results = $query->getResultArray();
|
||||||
|
|||||||
@ -7,13 +7,31 @@ echo "";
|
|||||||
foreach($tests as $data) {
|
foreach($tests as $data) {
|
||||||
$testcode = $data['TESTCODE'];
|
$testcode = $data['TESTCODE'];
|
||||||
echo "<option value='$testcode' />";
|
echo "<option value='$testcode' />";
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</datalist>
|
</datalist>
|
||||||
<div class="card border-0 m-1">
|
<div class="card border-0 m-1">
|
||||||
<div class="card-header bg-success text-white">
|
<div class="card-header bg-success text-white">
|
||||||
<div class='card-title m-0'><b>Dictionary Mapping Order</b></div>
|
<div class='card-title m-0'><b>Dictionary Mapping Order</b></div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="card-body">
|
||||||
|
<div class='row mb-2'>
|
||||||
|
<div class='col-2'>HIS code</div>
|
||||||
|
<div class='col-2'><input type='text' class='form-control form-control-sm' id='search_hiscode' oninput='this.value = this.value.toUpperCase();' /></div>
|
||||||
|
</div>
|
||||||
|
<div class='row mb-2'>
|
||||||
|
<div class='col-2'>LIS code</div>
|
||||||
|
<div class='col-2'><input type='text' class='form-control form-control-sm' id='search_liscode' oninput='this.value = this.value.toUpperCase();' /></div>
|
||||||
|
</div>
|
||||||
|
<div class='row mb-2'>
|
||||||
|
<div class='col-2'>Mapping text</div>
|
||||||
|
<div class='col-3'><input type='text' class='form-control form-control-sm' id='search_maptext' oninput='this.value = this.value.toLowerCase();' /></div>
|
||||||
|
</div>
|
||||||
|
<button class='btn btn-sm btn-success-2' onclick='search()'>Search</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card border-0 m-1">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<!-- <div class='card-title'>Dictionary Mapping Order</div> -->
|
<!-- <div class='card-title'>Dictionary Mapping Order</div> -->
|
||||||
<button class='btn btn-sm btn-success-2' onclick="createSingle()"><i class="bi bi-plus-circle"></i> Create Single</button>
|
<button class='btn btn-sm btn-success-2' onclick="createSingle()"><i class="bi bi-plus-circle"></i> Create Single</button>
|
||||||
@ -24,6 +42,7 @@ foreach($tests as $data) {
|
|||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>Type</th>
|
<th>Type</th>
|
||||||
|
<th>Tube</th>
|
||||||
<th>HIS Code</th>
|
<th>HIS Code</th>
|
||||||
<th>LIS Code</th>
|
<th>LIS Code</th>
|
||||||
<th>Description</th>
|
<th>Description</th>
|
||||||
@ -51,6 +70,21 @@ foreach($tests as $data) {
|
|||||||
<input type='hidden' id='updateSingle' value='' />
|
<input type='hidden' id='updateSingle' value='' />
|
||||||
<tr class="align-middle"> <th>HIS Code</th> <th>:</th> <td><input class='form-control' type='text' id='hiscodeSingle'/></td> </tr>
|
<tr class="align-middle"> <th>HIS Code</th> <th>:</th> <td><input class='form-control' type='text' id='hiscodeSingle'/></td> </tr>
|
||||||
<tr class="align-middle"> <th>LIS Code</th> <th>:</th> <td><input list='liscode' class='form-control' type='text' id='liscodeSingle' oninput='this.value = this.value.toUpperCase();' /></td> </tr>
|
<tr class="align-middle"> <th>LIS Code</th> <th>:</th> <td><input list='liscode' class='form-control' type='text' id='liscodeSingle' oninput='this.value = this.value.toUpperCase();' /></td> </tr>
|
||||||
|
<tr class="align-middle"> <th>Tube</th> <th>:</th>
|
||||||
|
<td>
|
||||||
|
<select class='form-control' id='tubeidSingle'>
|
||||||
|
<option value=''></option>
|
||||||
|
<?php
|
||||||
|
foreach($tubes as $data) {
|
||||||
|
$tubeid = $data['TUBEID'];
|
||||||
|
$tubecode = $data['TUBECODE'];
|
||||||
|
$tubename = $data['TUBENAME'];
|
||||||
|
echo "<option value='$tubeid'>$tubecode - $tubename</option>";
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</select>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr class="align-middle"> <th>Desc.</th> <th>:</th> <td><textarea class='form-control' id='descsSingle'></textarea></td> </tr>
|
<tr class="align-middle"> <th>Desc.</th> <th>:</th> <td><textarea class='form-control' id='descsSingle'></textarea></td> </tr>
|
||||||
</table>
|
</table>
|
||||||
<button class='btn btn-sm btn-primary' onclick='saveSingle()'>Save</button>
|
<button class='btn btn-sm btn-primary' onclick='saveSingle()'>Save</button>
|
||||||
@ -76,6 +110,21 @@ foreach($tests as $data) {
|
|||||||
<table class="table table-sm table-borderless">
|
<table class="table table-sm table-borderless">
|
||||||
<input type='hidden' id='updateProfile' value='' />
|
<input type='hidden' id='updateProfile' value='' />
|
||||||
<tr class="align-middle"> <th>HIS Code</th> <th>:</th> <td><input class='form-control' type='text' id='hiscodeProfile'/></td> </tr>
|
<tr class="align-middle"> <th>HIS Code</th> <th>:</th> <td><input class='form-control' type='text' id='hiscodeProfile'/></td> </tr>
|
||||||
|
<tr class="align-middle"> <th>Tube</th> <th>:</th>
|
||||||
|
<td>
|
||||||
|
<select class='form-control' id='tubeidProfile'>
|
||||||
|
<option value=''></option>
|
||||||
|
<?php
|
||||||
|
foreach($tubes as $data) {
|
||||||
|
$tubeid = $data['TUBEID'];
|
||||||
|
$tubecode = $data['TUBECODE'];
|
||||||
|
$tubename = $data['TUBENAME'];
|
||||||
|
echo "<option value='$tubeid'>$tubecode - $tubename</option>";
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</select>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr class="align-middle"> <th>Desc.</th> <th>:</th> <td><textarea class='form-control' id='descsProfile'></textarea></td> </tr>
|
<tr class="align-middle"> <th>Desc.</th> <th>:</th> <td><textarea class='form-control' id='descsProfile'></textarea></td> </tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
@ -103,14 +152,17 @@ foreach($tests as $data) {
|
|||||||
|
|
||||||
<?= $this->section('script') ?>
|
<?= $this->section('script') ?>
|
||||||
<script>
|
<script>
|
||||||
index();
|
function search() {
|
||||||
function index() {
|
let url = '<?=base_url('');?>api/dictMappings/search';
|
||||||
let url = '<?=base_url('');?>api/dictMappings/index';
|
var liscode = $('#search_liscode').val();
|
||||||
|
var hiscode = $('#search_hiscode').val();
|
||||||
|
var maptext = $('#search_maptext').val();
|
||||||
|
let data = { liscode:liscode, hiscode:hiscode, maptext:maptext };
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: url,
|
url: url,
|
||||||
method: 'GET',
|
method: 'POST',
|
||||||
|
data : data,
|
||||||
success: function(response) {
|
success: function(response) {
|
||||||
$("#myTable").DataTable().destroy();
|
|
||||||
$("#table-body").html("");
|
$("#table-body").html("");
|
||||||
var data = response['dictMappings'];
|
var data = response['dictMappings'];
|
||||||
for (var i = 0; i < data.length; i++) {
|
for (var i = 0; i < data.length; i++) {
|
||||||
@ -119,21 +171,20 @@ function index() {
|
|||||||
maptype = data[i].MAPTYPE;
|
maptype = data[i].MAPTYPE;
|
||||||
mapid = data[i].MAPID;
|
mapid = data[i].MAPID;
|
||||||
descs = data[i].DESCS;
|
descs = data[i].DESCS;
|
||||||
|
tubecode = data[i].TUBECODE;
|
||||||
editBtn = '';
|
editBtn = '';
|
||||||
if(data[i].LISCODE == null) { liscode = '-'; }
|
if(data[i].LISCODE == null) { liscode = '-'; }
|
||||||
|
if(data[i].TUBECODE == null) { tubecode = '-'; }
|
||||||
if(maptype == 'S') {
|
if(maptype == 'S') {
|
||||||
editBtn = '<button class="btn btn-sm btn-success-2" ' + ' onclick="editSingle(' + mapid+ ')">Edit' + '</button> ';
|
editBtn = '<button class="btn btn-sm btn-success-2" ' + ' onclick="editSingle(' + mapid+ ')">Edit' + '</button> ';
|
||||||
} else {
|
} else {
|
||||||
editBtn = '<button class="btn btn-sm btn-success-2" ' + ' onclick="editProfile(' + mapid+ ')">Edit' + '</button> ';
|
editBtn = '<button class="btn btn-sm btn-success-2" ' + ' onclick="editProfile(' + mapid+ ')">Edit' + '</button> ';
|
||||||
}
|
}
|
||||||
let datarow = '<tr class="align-middle">' +
|
let datarow = '<tr class="align-middle">' +
|
||||||
'<td>' + maptype + '</td>' + '<td>' + hiscode+ '</td> <td>' + liscode + '</td>' + '<td>' + descs + '</td>' + '<td>' + editBtn + '</td>' +
|
'<td>' + maptype + '</td>' + '<td>' + tubecode + '</td>' + '<td>' + hiscode+ '</td> <td>' + liscode + '</td>' + '<td>' + descs + '</td>' + '<td>' + editBtn + '</td>' +
|
||||||
'</tr>';
|
'</tr>';
|
||||||
$("#table-body").append(datarow);
|
$("#table-body").append(datarow);
|
||||||
}
|
}
|
||||||
$("#myTable").DataTable({
|
|
||||||
"pageLength" : 25,
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
error: function(response) { console.log(response.responseJSON); }
|
error: function(response) { console.log(response.responseJSON); }
|
||||||
});
|
});
|
||||||
@ -145,6 +196,7 @@ function createSingle() {
|
|||||||
$("#hiscodeSingle").val("");
|
$("#hiscodeSingle").val("");
|
||||||
$("#liscodeSingle").val("");
|
$("#liscodeSingle").val("");
|
||||||
$("#descsSingle").val("");
|
$("#descsSingle").val("");
|
||||||
|
$(`#tubeidSingle option[value='']`).prop('selected', true);
|
||||||
$("#modal_single").modal('show');
|
$("#modal_single").modal('show');
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -159,6 +211,8 @@ function editSingle(mapid) {
|
|||||||
$("#liscodeSingle").val(data.LISCODE);
|
$("#liscodeSingle").val(data.LISCODE);
|
||||||
$("#hiscodeSingle").val(data.HISCODE);
|
$("#hiscodeSingle").val(data.HISCODE);
|
||||||
$("#descsSingle").val(data.DESCS);
|
$("#descsSingle").val(data.DESCS);
|
||||||
|
$("#tubeidSingle").val(data.TUBEID);
|
||||||
|
$(`#tubeidSingle option[value='${data.TUBEID}']`).prop('selected', true);
|
||||||
$("#modal_single").modal('show');
|
$("#modal_single").modal('show');
|
||||||
},
|
},
|
||||||
error: function(response) {
|
error: function(response) {
|
||||||
@ -171,6 +225,7 @@ function createProfile() {
|
|||||||
$("#updateProfile").val("0");
|
$("#updateProfile").val("0");
|
||||||
$("#hiscodeProfile").val("");
|
$("#hiscodeProfile").val("");
|
||||||
$("#descsProfile").val("");
|
$("#descsProfile").val("");
|
||||||
|
$(`#tubeidProfile option[value='']`).prop('selected', true);
|
||||||
for (let i = 1; i <= 44; i++) {
|
for (let i = 1; i <= 44; i++) {
|
||||||
let id = `.mliscode${i}`;
|
let id = `.mliscode${i}`;
|
||||||
let element = $(id);
|
let element = $(id);
|
||||||
@ -214,7 +269,8 @@ function saveSingle() {
|
|||||||
var hiscode = $("#hiscodeSingle").val();
|
var hiscode = $("#hiscodeSingle").val();
|
||||||
var liscode = $("#liscodeSingle").val();
|
var liscode = $("#liscodeSingle").val();
|
||||||
var descs = $("#descsSingle").val();
|
var descs = $("#descsSingle").val();
|
||||||
let data = { update: update, hiscode: hiscode, liscode:liscode, descs:descs };
|
var tubeid = $("#tubeidSingle").val();
|
||||||
|
let data = { update: update, hiscode: hiscode, liscode:liscode, descs:descs, tubeid:tubeid };
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: url,
|
url: url,
|
||||||
method: "POST",
|
method: "POST",
|
||||||
@ -224,8 +280,9 @@ function saveSingle() {
|
|||||||
$("#hiscodeSingle").val('');
|
$("#hiscodeSingle").val('');
|
||||||
$("#descsSingle").val('');
|
$("#descsSingle").val('');
|
||||||
$("#updateSingle").val('');
|
$("#updateSingle").val('');
|
||||||
|
$("#tubeidSingle").val('');
|
||||||
$("#modal_single").modal('hide');
|
$("#modal_single").modal('hide');
|
||||||
index();
|
search();
|
||||||
},
|
},
|
||||||
error: function(response) {
|
error: function(response) {
|
||||||
alert(response.responseJSON.messages.errors);
|
alert(response.responseJSON.messages.errors);
|
||||||
@ -237,8 +294,9 @@ function saveProfile() {
|
|||||||
let url = '<?=base_url('');?>api/dictMappings/saveProfile';
|
let url = '<?=base_url('');?>api/dictMappings/saveProfile';
|
||||||
var update = $("#updateProfile").val();
|
var update = $("#updateProfile").val();
|
||||||
var hiscode = $("#hiscodeProfile").val();
|
var hiscode = $("#hiscodeProfile").val();
|
||||||
|
var tubeid = $("#tubeidProfile").val();
|
||||||
var descs = $("#descsProfile").val();
|
var descs = $("#descsProfile").val();
|
||||||
let data = { update: update, hiscode: hiscode, descs:descs };
|
let data = { update: update, hiscode: hiscode, descs:descs, tubeid:tubeid };
|
||||||
for (let i = 1; i <= 44; i++) {
|
for (let i = 1; i <= 44; i++) {
|
||||||
let className = `.mliscode${i}`;
|
let className = `.mliscode${i}`;
|
||||||
let value = $(className).val();
|
let value = $(className).val();
|
||||||
@ -252,7 +310,7 @@ function saveProfile() {
|
|||||||
data: data,
|
data: data,
|
||||||
success: function(response) {
|
success: function(response) {
|
||||||
$("#modal_profile").modal('hide');
|
$("#modal_profile").modal('hide');
|
||||||
index();
|
search();
|
||||||
},
|
},
|
||||||
error: function(response) {
|
error: function(response) {
|
||||||
alert(response.responseJSON.messages.errors);
|
alert(response.responseJSON.messages.errors);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user