IMMREX7
@extends('schools.school_layout')
@section('content')
<style>
.modal-backdrop{
display : none;
}
</style>
<div class="modal fade" id="serial" tabindex="-1" role="dialog" aria-labelledby="serialModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="serialModalLabel">Add Serial No</h5>
</div>
<div class="modal-body">
<input type="hidden" id="unqid" value=""/>
<table class="table table-bordered">
<thead>
<tr>
<th></th>
<th>Serial No</th>
<th>Action</th>
</tr>
</thead>
<tbody id="serial_data">
<tr>
<td class="serialno">1</td>
<td><input type="text" id="no1" class="form-control" placeholder="Type serial no"/></td>
<td></td>
</tr>
</tbody>
<tr>
<td colspan="3" style="text-align: right"><input type="button" class="add-serial btn btn-sm btn-success" value="Add Row"></td>
</tr>
</table>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary" onclick="saveSerialNo()">Save changes</button>
</div>
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-12">
<div class="card">
<div class="header">
<h2><strong>@if(isset($invoice))Edit @else Add @endif Invoice</strong></h2>
</div>
<div class="body">
@if(isset($invoice))
{!! Form::model($invoice,['method' => 'PATCH', 'action' => ['School\Stock\InvoiceController@update', $invoice->idInvoice], 'class' => 'form-horizontal','files'=>true]) !!}
@else
{!! Form::open(['url' => 'school/invoices', 'class' => 'form-horizontal','id'=>'form','files'=>true]) !!}
@endif
<div class="row clearfix">
<div class="col-sm-3 form-control-label required">
<label for="classname">Customer Type</label>
</div>
<div class="col-sm-6">
<div class="form-group">
{!! Form::select('customerType',[''=>'---Select---','Student'=>'Student','Staff'=>'Staff','Customer'=>'Customer'],null,['class' => 'form-control show-tick ms','required'=>'required']) !!}
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-3 form-control-label required">
<label for="classname">Customer </label>
</div>
<div class="col-sm-6">
<div class="form-group">
{!! Form::select('idCustomer',[''=>'---Select---'],null,['class' => 'form-control show-tick ms select2','id'=>'enrollment']) !!}
<span id='customer_error'></span>
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-3 form-control-label required">
<label for="classname">Invoice No </label>
</div>
<div class="col-sm-3">
<div class="form-group">
{!! Form::text('invoiceNo',$invoice_no,['class' => 'form-control','readonly'=>'readonly']) !!}
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-3 form-control-label required">
<label for="classname">Date</label>
</div>
<div class="col-sm-3">
<div class="form-group">
{!! Form::text('invoiceDate',null,['class' => 'form-control datepicker','required'=>'required']) !!}
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-3 form-control-label">
<label for="classname">Reference</label>
</div>
<div class="col-sm-3">
<div class="form-group">
{!! Form::text('reference',null,['class' => 'form-control']) !!}
@if ($errors->has('reference'))
<label id="minmaxlength-error" class="error" for="minmaxlength">
<strong>{{ $errors->first('reference') }}</strong>
</label>
@endif
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-3 form-control-label">
<label for="classname">Salesperson</label>
</div>
<div class="col-sm-3">
<div class="form-group">
{!! Form::text('salesperson',null,['class' => 'form-control']) !!}
</div>
</div>
</div>
<hr>
<div class="row">
<div class="col-sm-12">
<table class="table table-bordered">
<thead>
<tr>
<th></th>
<th>Item</th>
<th>Quantity</th>
<th>Rate</th>
<th>Tax</th>
<th>Amount</th>
<th></th>
</tr>
</thead>
<tbody id="optional_list">
<?php $i =1;?>
<tr>
<td class="sno">{{$i}}</td>
<td>
{!! Form::select('products[1][idProduct]',$products,null,['class' => 'form-control select2 show-tick ms','onchange'=>'getProductRate(this,1)']) !!}
<p>Not in List? <a href="{{url('/school/products')}}" target="_blank">Add New</a><br><span><b>Renewal Date</b></span>{!! Form::date('products[1][renew]',null,['class' => 'form-control','id'=>'renew']) !!}</p>
<span id="producterror1" class="help-block"></span>
</td>
<td>
{!! Form::text('products[1][quantity]',null,['class' => 'form-control','required'=>'required','id'=>'qty1','onkeyup'=>'CalculateRate(1)']) !!}
<span id="available_quantity1" class="help-block"></span>
<span id="qtyerror1" class="help-block"></span>
<button type="button" class="btn btn-primary" data-toggle="modal" data-id="1" data-target="#serial">Add Serial No</button><br>
<input type="text" class="form-control" name="products[1][serial]" id="device1" readonly/>
</td>
<td>
{!! Form::text('products[1][rate]',null,['class' => 'form-control','required'=>'required','id'=>'price1','onkeyup'=>'CalculateRate(1)' ]) !!}
</td>
<td>
{!! Form::select('products[1][tax]',getProductTaxes(),null,['class' => 'form-control show-tick ms','onchange'=>'getTaxedAmount(this,1)','required'=>'required']) !!}
</td>
<td>
{!! Form::text('products[1][productTotal]',null,['class' => 'form-control amount','required'=>'required','id'=>'productamount1']) !!}
</td>
<td></td>
</tr>
<?php $i++ ; ?>
</tbody>
<tr>
<td colspan="7" style="text-align: right"><input type="button" class="add-row btn btn-sm btn-success" value="Add Row"></td>
</tr>
</table>
</div>
</div>
<div class="row">
<div class="col-md-6">
</div>
<div class="col-md-6 text-right">
<div class="row clearfix">
<div class="col-sm-6 form-control-label">
<label for="classname"><strong>Sub Total</strong></label>
</div>
<div class="col-sm-6">
<div class="form-group">
{!! Form::text('subTotal',null,['class' => 'form-control','id'=>'subtotal','readonly'=>'readonly']) !!}
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-6 form-control-label">
<label for="classname">Discount</label>
</div>
<div class="col-sm-6">
<div class="form-group">
{!! Form::text('discountTotal',null,['class' => 'form-control','id'=>'discount','onblur'=>'calculateDiscount()']) !!}
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-6 form-control-label">
<label for="classname">Adjustment</label>
</div>
<div class="col-sm-6">
<div class="form-group">
{!! Form::text('adjustment',null,['class' => 'form-control','id'=>'adjustment','onblur'=>'calculateAdjustment()']) !!}
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-6 form-control-label">
<label for="classname"><strong>Total Amount</strong></label>
</div>
<div class="col-sm-6">
<div class="form-group">
{!! Form::text('totalAmount',null,['class' => 'form-control','id'=>'netamt','readonly'=>'readonly']) !!}
</div>
</div>
</div>
</div>
</div>
<hr>
<div class="row">
<div class="col-md-6">
<div class="row clearfix">
<div class="col-sm-4 form-control-label">
<label for="classname">Customer Note</label>
</div>
<div class="col-sm-8">
<div class="form-group">
{!! Form::textarea('notes',null,['class' => 'form-control','size'=>'30x2']) !!}
@if ($errors->has('notes'))
<label id="minmaxlength-error" class="error" for="minmaxlength">
<strong>{{ $errors->first('notes') }}</strong>
</label>
@endif
</div>
</div>
</div>
</div>
<div class="col-md-6 text-right">
<div class="row clearfix">
<div class="col-sm-3 form-control-label">
<label for="classname"><strong>Free Allowed</strong></label>
</div>
<div class="col-sm-4">
<div class="form-group">
<input type="checkbox" id="free_allowed" name="freeAllowed" class="checkbox-inline" onchange="valueChanged()">
</div>
</div>
</div>
<div id='notfree'>
<div class="row clearfix">
<div class="col-sm-4 form-control-label">
<label for="classname">Payable Amount</label>
</div>
<div class="col-sm-8">
<div class="form-group">
{!! Form::text('amountPayable',null,['class' => 'form-control','readonly'=>'readonly','id'=>'payableamt']) !!}
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-4 form-control-label required">
<label for="classname">Pay Amount</label>
</div>
<div class="col-sm-8">
<div class="form-group">
{!! Form::text('paidAmount',null,['class' => 'form-control','id'=>'paidamt','onblur'=>'calculateBalance()','required'=>'required']) !!}
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-4 form-control-label">
<label for="classname">Balance Amount</label>
</div>
<div class="col-sm-8">
<div class="form-group">
{!! Form::text('balanceAmount',null,['class' => 'form-control','readonly'=>'readonly','id'=>'balance']) !!}
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-4 form-control-label required">
<label for="classname">Select Payment Mode</label>
</div>
<div class="col-sm-8">
<div class="form-group">
{!! Form::select('paymentMode',['' => '--Select Mode--','Unpaid' => 'Unpaid']+ payMode(),null,['class' => 'form-control show-tick ms paymentMode','id'=>'paymode','required'=>'required']) !!}
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-4 form-control-label">
<label for="classname">UTR Number</label>
</div>
<div class="col-sm-8">
<div class="form-group">
{!! Form::text('utr',null,['class' => 'form-control']) !!}
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-4 form-control-label">
<label for="classname">UTR Screenshot/File</label>
</div>
<div class="col-sm-8">
<div class="form-group">
{!! Form::file('utrFile',null,['class' => 'form-control']) !!}
</div>
</div>
</div>
<div class="row clearfix cardpayment">
<div class="col-sm-4 form-control-label">
<label for="classname">CardNo./Trans ID</label>
</div>
<div class="col-sm-8">
<div class="form-group">
<input type="text" name="cardNo" class="form-control">
<span id='cardnoerror'></span>
</div>
</div>
</div>
<div class="row bankaccount" style="display: none;">
<div class="col-sm-12">
<div class="row clearfix">
<div class="col-sm-3 form-control-label required">
<label for="classname">Bank Accounts</label>
</div>
<div class="col-sm-9">
<div class="form-group">
{!! Form::select('idAccount',fetchAccounts(),null,['class' => 'form-control show-tick ms select2']) !!}
<span id='bankerror'></span>
</div>
</div>
</div>
</div>
</div>
<div class="row otherpaymode">
<div class="col-sm-12">
<div class="row clearfix">
<div class="col-sm-3 form-control-label required">
<label for="classname">Bank</label>
</div>
<div class="col-sm-3">
<div class="form-group">
{!! Form::select('idBank',banks(),null,['class' => 'form-control show-tick ms select2']) !!}
<span id='bankerror'></span>
</div>
</div>
<div class="col-sm-3 form-control-label required">
<label for="classname">Cheque No. / DD No.</label>
</div>
<div class="col-sm-3">
<div class="form-group">
<input type="text" name="chequeNo" class="form-control">
<span id='chequenoerror'></span>
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-3 form-control-label required">
<label for="classname">Cheque / DD Date</label>
</div>
<div class="col-sm-3">
<div class="form-group">
<input type="text" name="chequeDate" class="form-control datepicker">
<span id='chequedateerror'></span>
</div>
</div>
<div class="col-sm-3 form-control-label required">
<label for="classname">Amount</label>
</div>
<div class="col-sm-3">
<div class="form-group">
<input type="text" name="chequeAmount" class="form-control" onkeypress = 'return onlyNumbersandSpecialChar(event)'>
<span id='amounterror'></span>
</div>
</div>
</div>
</div>
</div>
</div>
<div id='free' style="display: none;">
<div class="row clearfix">
<div class="col-sm-4 form-control-label">
<label for="classname">Purpose</label>
</div>
<div class="col-sm-8">
<div class="form-group">
{!! Form::textarea('purpose',null,['class' => 'form-control','size'=>'30x2']) !!}
@if ($errors->has('purpose'))
<label id="minmaxlength-error" class="error" for="minmaxlength">
<strong>{{ $errors->first('purpose') }}</strong>
</label>
@endif
</div>
</div>
</div>
</div>
</div>
</div>
<div id="errors"></div>
<div class="row clearfix">
<div class="col-sm-8 offset-sm-2">
@if(isset($invoice))
{!! Form::submit('UPDATE',['class' => 'btn btn-raised btn-primary btn-round waves-effect']) !!}
@else
{!! Form::submit('SAVE',['class' => 'btn btn-raised btn-primary btn-round waves-effect','id'=>'submit-btn']) !!}
@endif
{!! Form::close() !!}
</div>
</div>
</div>
</div>
</div>
</div>
@stop
@section('script')
<script>
$(document).ready(function() {
$('#serial1').select2();
$('select[name="customerType"]').on('change', function() {
var cardholderVal = $(this).val();
var schid = {{Auth::guard('school')->user()->idSchool}}
if(cardholderVal == 'Student') {
$.ajax({
url: "{{url('/school/') }}"+'/' +schid + "/students",
type: "GET",
dataType: "json",
success:function(data) {
$('#enrollment').empty();
$('#enrollment').append('<option value="">--- Select ---</option>');
$.each(data, function(key, value) {
$('#enrollment').append('<option value="'+ key +'">'+ value +'</option>');
});
}
});
}else if(cardholderVal == 'Customer') {
$.ajax({
url: "{{url('/school/') }}"+'/' +schid + "/customer",
type: "GET",
dataType: "json",
success:function(data) {
$('#enrollment').empty();
$('#enrollment').append('<option value="">--- Select ---</option>');
$.each(data, function(key, value) {
$('#enrollment').append('<option value="'+ key +'">'+ value +'</option>');
});
}
});
}else{
$.ajax({
url: "{{url('/school/') }}"+'/' +schid + "/employees",
type: "GET",
dataType: "json",
success:function(data) {
$('#enrollment').empty();
$('#enrollment').append('<option value="">--- Select ---</option>');
$.each(data, function(key, value) {
$('#enrollment').append('<option value="'+ key +'">'+ value +'</option>');
});
}
});
}
});
});
$(document).ready(function() {
var i = $('.sno:last').text();
$(".add-row").click(function(){
i++;
var markup = '<tr><td class="sno">'+i+'</td>\
<td><select name="products['+i+'][idProduct]" class = "form-control select2 show-tick ms" onchange = "getProductRate(this,'+i+')">@foreach($products as $key=>$value)<option value="{{$key}}">{{$value}}</option>@endforeach</select><p>Not in List? <a href="{{url('/school/products')}}" target="_blank">Add New</a><br><span><b>Renewal Date</b></span><input class="form-control" type="date" name="products['+i+'][renew]" id="renew'+i+'"></p><span id="producterror'+i+'" class="help-block"></span></td>\n\
\n\ <td><input class="form-control" type="text" name="products['+i+'][quantity]" id="qty'+i+'" onkeyup = "CalculateRate('+i+')" required ="required"><span id="available_quantity'+i+'" class="help-block"></span><button type="button" class="btn btn-primary" data-toggle="modal" data-id="'+i+'" data-target="#serial">Add Serial No</button><br><input type="text" class="form-control" name="products['+i+'][serial]" id="device'+i+'" readonly/></td>\n\
\n\ <td><input class="form-control" type="text" name="products['+i+'][rate]" id="price'+i+'" onkeyup = "CalculateRate('+i+')" required ="required"></td>\n\
\n\ <td><select name="products['+i+'][tax]" class = "form-control show-tick ms" required="required" onchange ="getTaxedAmount(this,'+i+')">@foreach(getProductTaxes() as $key=>$value)<option value="{{$key}}">{{$value}}</option>@endforeach</select></td>\n\
\n\ <td><input class="form-control amount" type="text" name="products['+i+'][productTotal]" id="productamount'+i+'" required ="required"></td>\n\
<td style="text-align:right;vertical-align: middle;"><input type="button" class="btn btn-sm btn-danger" value="Delete" id="remove_row"></td></tr>';
$("#optional_list").append(markup);
});
$('#optional_list').on('click', 'input[type="button"]', function () {
$(this).closest('tr').remove();
i = $('.sno:last').text();
for (let t = 1; t <= i; t++) {
CalculateRate(t)
}
});
var i = $('.serialno:last').text();
$(".add-serial").click(function(){
i++;
var markup = '<tr><td class="serialno">'+i+'</td>\
<td><input type="text" id="no'+i+'" class="form-control" placeholder="Type serial no"/>\n\
<td style="text-align:right;vertical-align: middle;"><input type="button" class="btn btn-sm btn-danger" value="Delete" id="remove_serial"></td></tr>';
$("#serial_data").append(markup);
});
$('#serial_data').on('click', 'input[type="button"]', function () {
$(this).closest('tr').remove();
i = $('.serialno:last').text();
});
$('#serial').on('shown.bs.modal', function (e) {
var id = $(e.relatedTarget).attr('data-id');
const myArray = $('#device'+id).val().split(",");
$("#serial_data").empty();
if(myArray.length > 0){
for (let i = 1; i <= myArray.length; i++) {
if(i == 1)
var markup = '<tr><td class="serialno">'+i+'</td>\
<td><input type="text" id="no'+i+'" class="form-control" placeholder="Type serial no" value="'+myArray[i - 1]+'"/>\n\
<td style="text-align:right;vertical-align: middle;"></td></tr>';
else var markup = '<tr><td class="serialno">'+i+'</td>\
<td><input type="text" id="no'+i+'" class="form-control" placeholder="Type serial no" value="'+myArray[i - 1]+'"/>\n\
<td style="text-align:right;vertical-align: middle;"><input type="button" class="btn btn-sm btn-danger" value="Delete" id="remove_serial"></td></tr>';
$("#serial_data").append(markup);
}
}else{
var i = 1;
var markup = '<tr><td class="serialno">'+i+'</td>\
<td><input type="text" id="no'+i+'" class="form-control" placeholder="Type serial no"/>\n\
<td style="text-align:right;vertical-align: middle;"></td></tr>';
$("#serial_data").append(markup);
}
$('#unqid').val(id);
});
});
function saveSerialNo(){
$('#serial').modal('hide');
i = $('.serialno:last').text();
var serialNo = '';
for (let t = 1; t <= i; t++) {
if(t == 1)
serialNo = $('#no'+t).val();
else {
if($('#no'+t).val() != undefined)
serialNo = serialNo+','+$('#no'+t).val();
}
}
$('#device'+$('#unqid').val()).val(serialNo);
}
function getProductRate(selected,keyid){
var val = selected.value;
if(val) {
$.ajax({
url: "{{url('/school/products') }}"+'/' +val,
type: "GET",
dataType: "json",
success:function(data) {
// $('#price'+keyid).empty();
$('#price'+keyid).val(data['salePrice']);
}
});
$.ajax({
url: "{{url('/school/prodinstock') }}"+'/' +val,
type: "GET",
dataType: "json",
success:function(data) {
// $('#price'+keyid).empty();
$('#available_quantity'+keyid).html("Available Quantity : " + data['quantityInStock']);
}
});
}
}
function valueChanged()
{
if($("#free_allowed").is(":checked")) {
$("#free").show();
$("#notfree").hide();
$('#paidamt').prop('required',false);
}else{
$("#notfree").show();
$("#free").hide();
$('#paidamt').prop('required',true);
}
}
function CalculateRate($key){
var rate = '#price' + $key;
var rt = $(rate).val();
var qty = '#qty' + $key;
var qt = $(qty).val();
var amt = rt * qt;
var amount = '#productamount' + $key;
$(amount).val(amt.toFixed(2));
var grandTotal = 0;
$(".amount").each(function (){
var stval = parseFloat($(this).val());
grandTotal += isNaN(stval) ? 0 : stval;
});
$('#subtotal').val(grandTotal.toFixed(2));
// $('#compamount').val(grandTotal.toFixed(2));
var subtotal = $('#subtotal').val(grandTotal.toFixed(2));
$('#netamt').val(grandTotal.toFixed(2));
$('#payableamt').val(grandTotal.toFixed(2));
}
function Calculation($key){
var rate = '#price' + $key;
var rt = $(rate).val();
var qty = '#qty' + $key;
var qt = $(qty).val();
var amt = rt * qt;
var amount = '#productamount' + $key;
$(amount).val(amt.toFixed(2));
var grandTotal = 0;
$(".amount").each(function (){
var stval = parseFloat($(this).val());
grandTotal += isNaN(stval) ? 0 : stval;
});
$('#subtotal').val(grandTotal.toFixed(2));
// $('#compamount').val(grandTotal.toFixed(2));
var subtotal = $('#subtotal').val(grandTotal.toFixed(2));
$('#netamt').val(grandTotal.toFixed(2));
$('#payableamt').val(grandTotal.toFixed(2));
}
function getTaxedAmount(selected,keyid){
var val = selected.value;
if(val) {
var rate = '#price' + keyid;
var rt = $(rate).val();
var qty = '#qty' + keyid;
var qt = $(qty).val();
var amt = rt * qt;
var tax = amt*val/100;
var taxedamt = amt + tax;
var amount = '#productamount' + keyid;
$(amount).val(taxedamt.toFixed(2));
var grandTotal = 0;
$(".amount").each(function (){
var stval = parseFloat($(this).val());
grandTotal += isNaN(stval) ? 0 : stval;
});
$('#subtotal').val(grandTotal.toFixed(2));
// $('#compamount').val(grandTotal.toFixed(2));
var subtotal = $('#subtotal').val(grandTotal.toFixed(2));
$('#netamt').val(grandTotal.toFixed(2));
$('#payableamt').val(grandTotal.toFixed(2));
}
}
function calculateDiscount(){
var discount = $('#discount').val();
var adjustment = $('#adjustment').val();
var netamt = $('#subtotal').val();
var total = netamt - discount - adjustment;
$('#netamt').val(total.toFixed(2));
$('#payableamt').val(total.toFixed(2));
}
function calculateBalance(){
var paid = $('#paidamt').val();
var netamt = $('#payableamt').val();
var balance = netamt - paid;
$('#balance').val(balance.toFixed(2));
}
function calculateAdjustment (){
var discount = $('#discount').val();
var adjustment = $('#adjustment').val();
var netamt = $('#subtotal').val();
var total = netamt - discount - adjustment;
$('#netamt').val(total.toFixed(2));
$('#payableamt').val(total.toFixed(2));
}
$('.otherpaymode').hide();
$('.cardpayment').hide();
$('#paymode').change(function() {
var val = $(this).val();
$('.bankaccount').hide();
$('#paidamt').prop('required',true);
$('#paidamt').prop('readonly',false);
if((val == 'Cheque')){
$('.cardpayment').hide();
$('.otherpaymode').show();
}else if((val == 'Unpaid')){
$('.cardpayment').hide();
$('.otherpaymode').hide();
$('#paidamt').val('0.00');
$('#paidamt').prop('required',false);
$('#paidamt').prop('readonly',true);
calculateBalance();
}else if(val == 'DD'){
$('.cardpayment').hide();
$('.otherpaymode').show();
}else if(val == 'Card'){
$('.cardpayment').show();
$('.otherpaymode').hide();
}else if(val == 'IMPS'){
$('.cardpayment').hide();
$('.otherpaymode').hide();
$('.bankaccount').show();
}else{
$('.otherpaymode').hide();
$('.cardpayment').hide();
}
});
$(document).on('click', '.js-sweetalert', function (e) {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
e.preventDefault();
var id = $(this).data('id');
swal({
title: "Are you sure?",
text: "Are You sure you want to delete this Invoice!",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "Yes, delete it!",
closeOnConfirm: true
},
function() {
// console.log('here');
$.ajax({
type: "DELETE",
url: "{{url('/school/invoices/')}}" +"/"+id,
data: {id:id}
})
.done(function(data) {
swal({
title: "Deleted",
text: "Invoice has been successfully deleted",
type: "success"
},function() {
location.reload();
});
})
.error(function(data) {
swal("Oops", "We couldn't connect to the server!", "error");
});
return false;
});
});
// Saving form data
$('#form').on('submit',function(e){
$.ajaxSetup({
header:$('meta[name="_token"]').attr('content')
});
var formData = new FormData($('#form')[0]);
$("#submit-btn").prop('disabled', true);
$.ajax({
type:"POST",
url: "{{url('school/invoices') }}",
processData: false,
contentType: false,
data:formData,
dataType: 'json',
success:function(data){
if( data[Object.keys(data)[0]] === 'SUCCESS' ){
$("#submit-btn").prop('disabled', true);
window.location = "{{url('school/invoices')}}";
}
else { //False Case: With error msg
$("#msg").html(data); //$msg is the id of empty msg
}
},
error: function(data){
if( data.status === 422 ) {
$("#submit-btn").prop('disabled', false);
var errors = data.responseJSON.errors;
var errorHtml = '<div class="alert alert-danger"><ul>';
$.each( errors, function( key, value ) {
if (key.split(".")[1] + '.idProduct' === key.split(".")[1] + '.' +key.split(".")[2])
{
errorrate = '<p class="help-block">' + value + '</p>';
$( '#producterror'+key.split(".")[1] ).html( errorrate );
}else{
if (key.split(".")[1] + '.noitem' === key.split(".")[1] + '.' +key.split(".")[2])
{
errorrate = '<p class="help-block">' + value + '</p>';
$( '#qtyerror'+key.split(".")[1] ).html( errorrate );
}else{
if (key.split(".")[1] + '.aval_qty' === key.split(".")[1] + '.' +key.split(".")[2])
{
errorrate = '<p class="help-block">' + value + '</p>';
$( '#qtyerror'+key.split(".")[1] ).html( errorrate );
}else{
errorHtml += '<li>' + value + '</li>';
}
}
}
});
errorHtml += '<ul></div>';
$('#errors').html(errorHtml);
if(errors['idCustomer']=== undefined){
$( '#customer_error' ).empty();
}else{
errorname = '<span class="help-block"><strong>'+errors['idCustomer']+'</strong></span>';
$( '#customer_error' ).html( errorname );
}
}
}
});
return false;
});
</script>
@stop
Copyright © 2021 -