sms notif

This commit is contained in:
Pringgosutono
2025-09-09 09:10:08 +07:00
parent 0217c1c947
commit c075457053
2 changed files with 43 additions and 13 deletions

View File

@ -173,6 +173,7 @@ class UsersController extends Controller
"bank_acc_number" => $req->bank_acc_number, "bank_acc_number" => $req->bank_acc_number,
"bank_acc_name" => $req->bank_acc_name, "bank_acc_name" => $req->bank_acc_name,
"status" => $req->status, "status" => $req->status,
"status_sms" => $req->status_sms,
"is_tracking" => $req->is_tracking, "is_tracking" => $req->is_tracking,
"vehicles" => $req->vehicles, "vehicles" => $req->vehicles,
"is_vdr_bcng" => $req->is_vdr_bcng, "is_vdr_bcng" => $req->is_vdr_bcng,
@ -195,6 +196,7 @@ class UsersController extends Controller
"bank_acc_number" => "nullable|numeric", "bank_acc_number" => "nullable|numeric",
"bank_acc_name" => "nullable|string|max:255", "bank_acc_name" => "nullable|string|max:255",
"status" => "required|integer|not_in:0", "status" => "required|integer|not_in:0",
"status_sms" => "required|integer",
"is_tracking" => "nullable|numeric", "is_tracking" => "nullable|numeric",
"vehicles" => "nullable|array", "vehicles" => "nullable|array",
"is_vdr_bcng" => "nullable|numeric", "is_vdr_bcng" => "nullable|numeric",
@ -294,6 +296,7 @@ class UsersController extends Controller
"crt_by" => $req->auth->uid, "crt_by" => $req->auth->uid,
"updt" => $now, "updt" => $now,
"updt_by" => $req->auth->uid, "updt_by" => $req->auth->uid,
"status_sms" => $req->status_sms,
]; ];
if ($req->roles == Users::ROLE_CHECKER) { if ($req->roles == Users::ROLE_CHECKER) {
// $data['chk_type'] = $req->chk_type; // $data['chk_type'] = $req->chk_type;
@ -352,6 +355,7 @@ class UsersController extends Controller
"bank_acc_number" => $req->bank_acc_number, "bank_acc_number" => $req->bank_acc_number,
"bank_acc_name" => $req->bank_acc_name, "bank_acc_name" => $req->bank_acc_name,
"is_vdr_bcng" => $req->is_vdr_bcng, "is_vdr_bcng" => $req->is_vdr_bcng,
"status_sms" => $req->status_sms,
]; ];
$rulesInput = [ $rulesInput = [
"uid" => "required|integer|not_in:0", "uid" => "required|integer|not_in:0",
@ -365,6 +369,7 @@ class UsersController extends Controller
"bank_acc_number" => "nullable|numeric", "bank_acc_number" => "nullable|numeric",
"bank_acc_name" => "nullable|string|max:255", "bank_acc_name" => "nullable|string|max:255",
"is_vdr_bcng" => "nullable|numeric", "is_vdr_bcng" => "nullable|numeric",
"status_sms" => "required|integer",
]; ];
$data = [ $data = [
"id" => $req->uid, "id" => $req->uid,
@ -440,6 +445,7 @@ class UsersController extends Controller
return new Response($apiResp, $apiResp["meta"]["code"]); return new Response($apiResp, $apiResp["meta"]["code"]);
} }
} }
$data["status_sms"] = $req->status_sms;
// validasi input // validasi input
$isValidInput = Validator::make($input, $rulesInput); $isValidInput = Validator::make($input, $rulesInput);

View File

@ -7,8 +7,8 @@
@section('customcss') @section('customcss')
<style> <style>
/* .select2-container { /* .select2-container {
z-index: 99999; z-index: 99999;
} */ } */
</style> </style>
@endsection @endsection
@ -200,6 +200,13 @@
<label class="form-check-label" for="add-status"><span class="text-dark" id="add-txtStatus">Inactive</span></label> <label class="form-check-label" for="add-status"><span class="text-dark" id="add-txtStatus">Inactive</span></label>
</div> </div>
</div> </div>
<div class="mb-3">
<label for="add-status-sms" class="form-label">SMS Notification</label>
<div class="form-check form-switch">
<input class="form-check-input" type="checkbox" id="add-status-sms">
<label class="form-check-label" for="add-status-sms"><span class="text-dark" id="add-txtStatusSms">Inactive</span></label>
</div>
</div>
</div> </div>
</div> </div>
<div id="add-group_track_vhc" class="row"> <div id="add-group_track_vhc" class="row">
@ -382,6 +389,13 @@
<label class="form-check-label" for="updt-status"><span class="text-dark" id="updt-txtStatus">Inactive</span></label> <label class="form-check-label" for="updt-status"><span class="text-dark" id="updt-txtStatus">Inactive</span></label>
</div> </div>
</div> </div>
<div class="mb-3">
<label for="updt-status-sms" class="form-label">SMS Notification</label>
<div class="form-check form-switch">
<input class="form-check-input" type="checkbox" id="updt-status-sms">
<label class="form-check-label" for="updt-status-sms"><span class="text-dark" id="updt-txtStatusSMS">Inactive</span></label>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
@ -456,18 +470,20 @@
Filter.activate(); Filter.activate();
}, },
event: function() { event: function() {
$('#add-status').bind('change', function() { $('#add-status, #add-status-sms, #updt-status, #updt-status-sms').bind('change', function() {
if ($(this).is(':checked')) const labelSpan = $(this).closest('.form-check').find('span');
$('#add-txtStatus').html('Active') labelSpan.html($(this).is(':checked') ? 'Active' : 'Inactive');
else // if ($(this).is(':checked'))
$('#add-txtStatus').html('Inactive') // $('#add-txtStatus').html('Active')
}); // else
$('#updt-status').bind('change', function() { // $('#add-txtStatus').html('Inactive')
if ($(this).is(':checked'))
$('#updt-txtStatus').html('Active')
else
$('#updt-txtStatus').html('Inactive')
}); });
// $('#updt-status').bind('change', function() {
// if ($(this).is(':checked'))
// $('#updt-txtStatus').html('Active')
// else
// $('#updt-txtStatus').html('Inactive')
// });
// $('#add-roles').on('change', function() { // $('#add-roles').on('change', function() {
// let role = $('#add-roles').val(); // let role = $('#add-roles').val();
// if (role == State.user_roles.checker) { // if (role == State.user_roles.checker) {
@ -781,6 +797,8 @@
data.status = State.user_status.inactive; data.status = State.user_status.inactive;
} }
data.status_sms = ($('#add-status-sms').prop('checked')) ? 1 : 0;
data.is_tracking = $('#add-is_tracking').val(); data.is_tracking = $('#add-is_tracking').val();
data.vehicles = $('#add-vehicles').val(); data.vehicles = $('#add-vehicles').val();
return data; return data;
@ -920,6 +938,8 @@
}); });
}, },
passDataToView: function(data) { passDataToView: function(data) {
console.log("data", data);
$('#updt-first_name').val(data.first_name); $('#updt-first_name').val(data.first_name);
$('#updt-fulladdress').val(data.fulladdress); $('#updt-fulladdress').val(data.fulladdress);
$('#updt-phone').val(data.phone); $('#updt-phone').val(data.phone);
@ -961,6 +981,8 @@
$('#updtUserModal').data('id', data.id); $('#updtUserModal').data('id', data.id);
$('#updtUserModal').modal('show'); $('#updtUserModal').modal('show');
$('#updt-status-sms').prop('checked', (data.status_sms == 1) ? true : false).trigger('change');
}, },
getData: function() { getData: function() {
let data = {}; let data = {};
@ -996,6 +1018,8 @@
data.is_tracking = $('#updt-is_tracking').val(); data.is_tracking = $('#updt-is_tracking').val();
data.vehicles = $('#updt-vehicles').val(); data.vehicles = $('#updt-vehicles').val();
data.status_sms = ($('#updt-status-sms').prop('checked')) ? 1 : 0;
return data; return data;
}, },
submitData: async function(data) { submitData: async function(data) {