File: /var/www/html/hrms-production/resources/views/components/employee-petition-modal.blade.php
{{-- Add Employee Employee Petition --}}
<div class="modal fade" id="addEmployeePetition">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Employee Write Petition </h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<!-- Main content -->
<form id="addEmployeePetitionform">
<input type="hidden" name="_token" id="token" value="{{ csrf_token() }}">
<input type="hidden" name="EmployeeId" id="EmployeeId">
<input type="hidden" name="EmployeeCode" id="EmpCode">
<div class="card-body">
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="EmployeeCode">Employee Code<span class="text-danger">*</span></label>
<select class="form-control form-control-sm select2" style="width: 100%;"
aria-hidden="true" name="EmployeeCode" id="EmployeeCode"
data-placeholder="Employee Code" required>
<option selected="selected" disabled>Employee Code</option>
</select>
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="Court">Court <span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="Court" id="Court">
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="WritePetition">Write Petition No <span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="WritePetition" id="WritePetition">
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="PartiesName">Parties Name<span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="PartiesName" id="PartiesName">
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="AuthorizedOfficer">AuthorizedOfficer <span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="AuthorizedOfficer" id="AuthorizedOfficer">
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="CaseStatus">Case Status <span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="CaseStatus" id="CaseStatus">
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="PreviousDate">Previous Date<span class="text-danger">*</span></label>
<div class="input-group date" id="PreviousDate" data-target-input="nearest">
<input type="text" id="PrevDate" name="PreviousDate"
class="form-control form-control-sm datetimepicker-input" data-target="#PreviousDate" placeholder="DD/MM/YYYY" />
<div class="input-group-append" data-target="#PreviousDate" data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="NextDate">Next Date<span class="text-danger">*</span></label>
<div class="input-group date" id="NextDate" data-target-input="nearest">
<input type="text" id="NexDate" name="NextDate"
class="form-control form-control-sm datetimepicker-input" data-target="#NextDate" placeholder="DD/MM/YYYY" />
<div class="input-group-append" data-target="#NextDate" data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="form-group mb-2">
<label class="mb-0" for="CaseDescription">Case Description<span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="CaseDescription" id="CaseDescription">
</div>
</div>
</div>
<hr />
<div class="row">
<div class="col-12">
<div class="d-flex align-items-center justify-content-center">
<button type="button" class="btn btn-sm btn-outline-secondary mx-1"data-dismiss="modal" aria-label="Close">Cancel</button>
<button type="submit" id="btn-save-name" name="Save" value="Save"class="btn btn-sm btn-info mx-1">Save</button>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
<!-- /.modal -->
{{-- Update Write Petition --}}
<div class="modal fade" id="UpdateWritePetition">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Employee Edit Write Petition <span id="EditEmployeeName" class="text-info"></span></h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<!-- Main content -->
<form id="updateWritePetitionform">
<input type="hidden" name="_token" id="Edittoken" value="{{ csrf_token() }}">
<input type="hidden" name="WritPetitionId" id="WritPetitionId">
<input type="hidden" name="EditEmployeeId" id="EditEmployeeId">
<input type="hidden" name="PrimaryId" id="PrimaryId">
<div class="card-body">
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="EmployeeCode">Employee Code<span class="text-danger">*</span></label>
<select class="form-control form-control-sm select2" style="width: 100%;" aria-hidden="true" name="EditEmployeeCode" id="EditEmployeeCode"data-placeholder="Employee Code" required>
<option value="" disabled selected>Employee Code</option>
</select>
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="EditCourt">Court <span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="EditCourt" id="EditCourt">
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="EditWritePetition">Write Petition No <span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="EditWritePetition" id="EditWritePetition">
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="EditPartiesName">Parties Name<span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="EditPartiesName" id="EditPartiesName">
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="EditAuthorizedOfficer">AuthorizedOfficer <span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="EditAuthorizedOfficer" id="EditAuthorizedOfficer">
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="EditCaseStatus">Case Status <span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="EditCaseStatus" id="EditCaseStatus">
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="EditPreviousDate">Previous Date<span class="text-danger">*</span></label>
<div class="input-group date" id="EditPreviousDate" data-target-input="nearest">
<input type="text" id="EditPrevDate" name="EditPreviousDate"
class="form-control form-control-sm datetimepicker-input" data-target="#EditPreviousDate" placeholder="DD/MM/YYYY" />
<div class="input-group-append" data-target="#EditPreviousDate" data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group mb-2">
<label class="mb-0" for="EditNextDate">Next Date<span class="text-danger">*</span></label>
<div class="input-group date" id="EditNextDate" data-target-input="nearest">
<input type="text" id="EditNexDate" name="EditNextDate"
class="form-control form-control-sm datetimepicker-input" data-target="#EditNextDate" placeholder="DD/MM/YYYY" />
<div class="input-group-append" data-target="#EditNextDate" data-toggle="datetimepicker">
<div class="input-group-text"><i class="fa fa-calendar"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="form-group mb-2">
<label class="mb-0" for="EditCaseDescription">Case Description<span class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm" name="EditCaseDescription" id="EditCaseDescription">
</div>
</div>
</div>
<hr />
<div class="row">
<div class="col-12">
<div class="d-flex align-items-center justify-content-center">
<button type="button" class="btn btn-sm btn-outline-secondary mx-1" data-dismiss="modal" aria-label="Close">Cancel</button>
<button type="submit" class="btn btn-sm btn-info mx-1">Update</button>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
<!-- /.modal -->
{{-- Employee List --}}
<script>
$(document).ready(function() {
$.ajax({
type: "GET",
url: "{{ url('/employee-list') }}",
dataType: "json",
success: function(response) {
var json = response.EmployeeList;
$.each(json, function(i, employee) {
$("#EmployeeCode,#EditEmployeeCode").append("<option value='" + employee.EmployeeId + "'>" + employee.EmployeeCode + " (" + employee.EmployeeName + ") " + "</option>");
$('#EmployeeCode,#EditEmployeeCode').trigger('change');
});
}
});
});
// Get Employee Details
$('#EmployeeCode').on('select2:select', function (e) {
var data = e.params.data;
var EmployeeId = data.id;
$('#EmpId').val('');
$('#EmpCode').val('');
getEmployeeDetail(EmployeeId);
// Reset Form field on change Employee Code
$('#EmployeeId').val(null).trigger('change');
});
function getEmployeeDetail(EmployeeId)
{
var EmployeeId = EmployeeId;
$.ajax({
type: "post",
url: "{{ url('/') }}/get-employee-current-detail",
dataType: "json",
data: {
_token: "{{csrf_token()}}",
EmployeeId: EmployeeId,
},
success: function(response) {
var json = response.GetEmpCurrentDetail;
$('#EmployeeId').val(json.EmployeeId);
$('#EmpCode').val(json.EmployeeCode);
$('#EditEmployeeId').val(json.EmployeeId);
}
});
}
</script>
{{-- Edit Write PetitionId Modal --}}
<script>
function editWritePetition(WritPetitionId)
{
var WritPetitionId = WritPetitionId;
$('#UpdateWritePetition').modal('show');
$.ajax({
type: "POST",
url: "{{ url('/') }}/edit-write-petition",
dataType: 'json',
data: {
WritPetitionId: WritPetitionId,
_token: "{{ csrf_token() }}",
},
success: function (response) {
$('span#EditEmployeeName').html('#' +response.GetWritPetition.EmployeeName);
$('#PrimaryId').val(response.GetWritPetition.id);
$('#WritPetitionId').val(response.GetWritPetition.WritPetitionId);
$('#EditEmployeeId').val(response.GetWritPetition.EmployeeId);
$('#EditEmployeeCode').val(response.GetWritPetition.EmployeeId);
$('#EditEmployeeCode').trigger('change');
$('#EditCourt').val(response.GetWritPetition.Court);
$('#EditWritePetition').val(response.GetWritPetition.WritPetitionNo);
$('#EditPartiesName').val(response.GetWritPetition.PartyName);
$('#EditCaseDescription').val(response.GetWritPetition.CaseDescription);
$('#EditCaseStatus').val(response.GetWritPetition.CaseStatus);
$('#EditPrevDate').val(response.GetWritPetition.PrevDate);
$('#EditNexDate').val(response.GetWritPetition.NextDate);
$('#EditAuthorizedOfficer').val(response.GetWritPetition.AuthorizedOfficer);
}
});
}
</script>
{{-- Validate form and Save data --}}
<script>
$(function () {
$.validator.setDefaults({
submitHandler: function () {
event.preventDefault();
// Get Form Data
var token = $("#token").val();
var EmployeeId = $('#EmployeeId').val();
var EmpCode = $('#EmployeeCode').find('option:selected').text();
var EmployeeCode = EmpCode.split(' ')[0];
var Court = $('#Court').val();
var WritePetition = $('#WritePetition').val();
var PartiesName = $('#PartiesName').val();
var CaseDescription = $('#CaseDescription').val();
var CaseStatus = $('#CaseStatus').val();
var PreviousDate = $('#PrevDate').val();
var NextDate = $('#NexDate').val();
var AuthorizedOfficer = $('#AuthorizedOfficer').val();
var fd = new FormData();
fd.append('_token',token);
fd.append('EmployeeId',EmployeeId);
fd.append('EmployeeCode',EmployeeCode);
fd.append('Court',Court);
fd.append('WritPetitionNo',WritePetition);
fd.append('PartyName',PartiesName);
fd.append('CaseDescription',CaseDescription);
fd.append('CaseStatus',CaseStatus);
fd.append('PreviousDate',PreviousDate);
fd.append('NextDate',NextDate);
fd.append('AuthorizedOfficer',AuthorizedOfficer);
$.ajax({
type: "post",
url: "{{ url('store-write-petition') }}",
data: fd,
contentType: false,
processData: false,
success: function(response) {
// var response = response;
const Toast = Swal.mixin({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 2000,
timerProgressBar: true,
didOpen: (toast) => {
toast.addEventListener('mouseenter', Swal.stopTimer)
toast.addEventListener('mouseleave', Swal.resumeTimer)
}
})
Toast.fire({
icon: 'success',
title: 'Write Petition added successfully!'
});
setTimeout(function(){
window.location.reload(1);
}, 2000);
},
error: function(data) {
const Toast = Swal.mixin({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 2000,
timerProgressBar: true,
didOpen: (toast) => {
toast.addEventListener('mouseenter', Swal.stopTimer)
toast.addEventListener('mouseleave', Swal.resumeTimer)
}
})
Toast.fire({
icon: 'error',
title: 'Something went wrong!'
});
}
});
}
});
$('#addEmployeePetitionform').validate({
rules: {
EmployeeCode: {
required: true,
},
Court: {
required: true,
},
WritePetition: {
required: true,
},
PartiesName: {
required: true,
},
CaseDescription: {
required: true,
},
CaseStatus: {
required: true,
},
PreviousDate: {
required: true,
},
NextDate: {
required: true,
},
AuthorizedOfficer: {
required: true,
},
},
messages: {
EmployeeCode: {
required: "Employee Code is required.",
},
Court: {
required: "Court is required.",
},
WritePetition: {
required: "Write Petition is required.",
},
PartiesName: {
required: "Parties Name is required.",
},
CaseDescription: {
required: "Case Description is required.",
},
CaseStatus: {
required: "Case Status is required.",
},
PreviousDate: {
required: "Previous Date is required.",
},
NextDate: {
required: "Next Date is required.",
},
AuthorizedOfficer: {
required: "Authorized Officer is required.",
},
},
errorElement: 'span',
errorPlacement: function (error, element) {
error.addClass('invalid-feedback');
element.closest('.form-group').append(error);
},
highlight: function (element, errorClass, validClass) {
$(element).addClass('is-invalid');
},
unhighlight: function (element, errorClass, validClass) {
$(element).removeClass('is-invalid');
}
});
});
</script>
{{-- Validate form and Update Icard data --}}
<script>
$(function () {
$.validator.setDefaults({
submitHandler: function () {
event.preventDefault();
// Get Form Data
var token = $("#Edittoken").val();
var PrimaryId = $("#PrimaryId").val();
var EmpCode = $('#EditEmployeeCode').find('option:selected').text();
var EmployeeCode = EmpCode.split(' ')[0];
var EmployeeId = $('#EditEmployeeId').find('option:selected').val();
var EditCourt = $('#EditCourt').val();
var EditWritePetition = $('#EditWritePetition').val();
var EditPartiesName = $('#EditPartiesName').val();
var EditCaseDescription = $('#EditCaseDescription').val();
var EditCaseStatus = $('#EditCaseStatus').val();
var EditPreviousDate = $('#EditPrevDate').val();
var EditNextDate = $('#EditNexDate').val();
var EditAuthorizedOfficer = $('#EditAuthorizedOfficer').val();
var fd = new FormData();
fd.append('_token',token);
fd.append('PrimaryId',PrimaryId);
fd.append('EmployeeId',EmployeeId);
fd.append('EmployeeCode',EmployeeCode);
fd.append('Court',EditCourt);
fd.append('WritPetitionNo',EditWritePetition);
fd.append('PartyName',EditPartiesName);
fd.append('CaseDescription',EditCaseDescription);
fd.append('CaseStatus',EditCaseStatus);
fd.append('PrevDate',EditPreviousDate);
fd.append('NextDate',EditNextDate);
fd.append('AuthorizedOfficer',EditAuthorizedOfficer);
$.ajax({
type: "post",
url: "{{ url('update-write-petition') }}",
data: fd,
processData: false,
contentType: false,
cache: false,
success: function(response) {
const Toast = Swal.mixin({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 2000,
timerProgressBar: true,
didOpen: (toast) => {
toast.addEventListener('mouseenter', Swal.stopTimer)
toast.addEventListener('mouseleave', Swal.resumeTimer)
}
})
Toast.fire({
icon: 'success',
title: 'Report updated successfully!'
});
setTimeout(function(){
window.location.reload(1);
}, 2000);
},
error: function(data) {
const Toast = Swal.mixin({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 2000,
timerProgressBar: true,
didOpen: (toast) => {
toast.addEventListener('mouseenter', Swal.stopTimer)
toast.addEventListener('mouseleave', Swal.resumeTimer)
}
})
Toast.fire({
icon: 'error',
title: 'Something went wrong!'
});
}
});
}
});
$('#updateWritePetitionform').validate({
rules: {
EditCourt: {
required: true,
},
EditWritePetition: {
required: true,
},
EditPartiesName: {
required: true,
},
EditCaseDescription: {
required: true,
},
EditCaseStatus: {
required: true,
},
EditPreviousDate: {
required: true,
},
EditNextDate: {
required: true,
},
EditAuthorizedOfficer: {
required: true,
},
},
messages: {
EditCourt: {
required: "Court is required.",
},
EditWritePetition: {
required: "Write Petition is required.",
},
EditPartiesName: {
required: "Parties Name is required.",
},
EditCaseDescription: {
required: "Case Description is required.",
},
EditCaseStatus: {
required: "Case Status is required.",
},
EditPreviousDate: {
required: "Previous Date is required.",
},
EditNextDate: {
required: "Next Date is required.",
},
EditAuthorizedOfficer: {
required: "Authorized Officer is required.",
},
},
errorElement: 'span',
errorPlacement: function (error, element) {
error.addClass('invalid-feedback');
element.closest('.form-group').append(error);
},
highlight: function (element, errorClass, validClass) {
$(element).addClass('is-invalid');
},
unhighlight: function (element, errorClass, validClass) {
$(element).removeClass('is-invalid');
}
});
});
</script>
{{-- Delete Promotion Detail --}}
<script>
function deleteWritePetition(WritPetitionId) {
var WritPetitionId = WritPetitionId;
Swal.fire({
title: "Delete Record?",
text: "Are you sure you want to delete this Record?",
icon: "warning",
icon: "warning",
showCancelButton: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
confirmButtonText: "Yes, delete it!",
}).then((result) => {
if (result.isConfirmed) {
$.ajax({
type: "post",
url: "{{ url('/') }}/delete-write-petition",
dataType: "json",
data: {
_token: "{{csrf_token()}}",
WritPetitionId: WritPetitionId,
},
success: function (response) {
Swal.fire({
icon: "success",
title: "Record has been deleted!",
showConfirmButton: false,
timer: 1500,
}).then(function () {
location.reload();
});
},
});
}
});
}
</script>