/
home
/
sjslayjy
/
public_html
/
mosaram
/
resources
/
views
/
dashboard
/
token
/
Upload File
HOME
@extends('dashboard.layouts.app') @section('title','Token') @section('style') {{Html::style("assets/css/bootstrap-datepicker3.min.css")}} @endsection @section('content') <div class="main-content"> <div class="main-content-inner"> <div class="breadcrumbs ace-save-state" id="breadcrumbs"> <ul class="breadcrumb"> <li> <i class="ace-icon fa fa-home home-icon"></i> <a href="#">{{__('messages.Home')}}</a> </li> <li class="active">{{__('messages.Token')}}</li> </ul> </div> <div class="page-content"> <div class="panel panel-primary"> <div class="panel-heading"> <h3 class="panel-title"> {{__('messages.Token')}} {{__('messages.generateNew')}}</h3> </div> <div class="panel-body"> <form action="" role="form" id="generateTokenForm"> <div class="container"> <div class="row"> <div class="col-md-4"> <div class="form-group"> <label for="token_type">{{__('messages.tokentype')}}</label> <select class="form-control select2" name="token_type" id="token_type" onchange="handleTokenType(this.value)"> <option value="1" selected>{{__('messages.Rake')}} {{__('messages.Token')}}</option> <option value="2">{{__('messages.WarehouseToken')}}</option> </select> </div> </div> <div class="col-md-4" id="rake_div"> <div class="form-group"> <label for="master_rake_id">{{__('messages.masterrake')}}</label> <select class="form-control select2" name="master_rake_id" id="master_rake_id" onchange="getMasterRakeDetails(this.value)"> <option value=""> {{__('messages.masterrake')}} {{__('messages.Select')}}</option> @foreach($master_rakes as $rake) <option value="{{$rake->id}}">{{$rake->name}}</option> @endforeach() </select> <span class="label label-danger" id="add_rake_id_error" style="display: none;"></span> </div> </div> <div class="col-md-4" id="warehouse_div" style="display: none;"> <div class="form-group"> <label for="from_warehouse_id">{{__('messages.From')}} {{__('messages.Warehouses')}}</label> <select class="form-control select2" name="from_warehouse_id" id="from_warehouse_id" onchange="getInventoryDetails(this.value);"> <option value="">{{__('messages.Select')}} {{__('messages.Warehouses')}}</option> @foreach($warehouses as $warehouse) <option value="{{$warehouse->id}}">{{$warehouse->name}}</option> @endforeach() </select> <span class="label label-danger" id="add_from_warehouse_id_error" style="display: none;"></span> </div> </div> <div class="clearfix"></div> <div class="col-md-4"> <div class="form-group"> <label for="company_id">{{__('messages.company')}}</label> <select class="form-control select2" name="company_id" id="company_id"> @foreach($companies as $company) <option value="{{$company->id}}" {{$acting_company == $company->id ? "selected":""}}>{{$company->name}}</option> @endforeach() </select> </div> </div> <div class="col-md-4"> <div class="form-group"> <label for="to_type">{{__('messages.To')}}</label> <select class="form-control select2" name="to_type" id="to_type" onchange="handleToType(this.value)"> <option value="1">{{__('messages.Warehouses')}}</option> <option value="2">{{__('messages.Retailers')}}</option> <option value="3">{{__('messages.Dealer')}}</option> </select> </div> </div> <div class="col-md-4" id="warehouses_section"> <div class="form-group"> <label for="warehouse_id">{{__('messages.Warehouses')}}</label> <select class="form-control select2" name="warehouse_id" id="warehouse_id"> <option value=""> {{__('messages.Warehouses')}} {{__('messages.Select')}}</option> @foreach($warehouses as $warehouse) <option value="{{$warehouse->id}}">{{$warehouse->name}}</option> @endforeach() </select> <span class="label label-danger" id="add_warehouse_id_error" style="display: none;"></span> </div> </div> <div class="col-md-4" id="retailer_section" style="display: none;"> <div class="form-group"> <label for="retailer_id">{{__('messages.Retailers')}}</label> <select class="form-control select2" name="retailer_id" id="retailer_id"> <option value="">{{__('messages.Retailers')}} {{__('messages.Select')}}</option> @foreach($retailers as $retailer) <option value="{{$retailer->id}}">{{$retailer->name}}({{$retailer->address}})</option> @endforeach() </select> <span class="label label-danger" id="add_warehouse_id_error" style="display: none;"></span> </div> </div> <div class="col-md-4" id="dealer_section" style="display: none;"> <div class="form-group"> <label for="dealer_id">{{__('messages.Dealer')}}</label> <select class="form-control select2" name="dealer_id" id="dealer_id" onchange="handleDealer(this.value)"> <option value="">{{__('messages.Dealer')}} {{__('messages.Select')}}</option> @foreach($dealers as $dealer) <option value="{{$dealer->id}}">{{$dealer->name}} ({{$dealer->address1}})</option> @endforeach() </select> <span class="label label-danger" id="add_dealer_id_error" style="display: none;"></span> </div> </div> <div class="clearfix"></div> <div class="col-md-4"> <div class="form-group"> <label for="date_of_generation">{{__('messages.Date')}}</label> <input type="text" class="form-control date-picker" name="date_of_generation" id="date_of_generation" placeholder="Date" value="{{date('m/d/Y')}}"> <span class="label label-danger" id="add_date_error" style="display: none;"></span> </div> </div> <div class="col-md-4"> <div class="form-group"> <label for="product_company_id">{{__('messages.ProductCompany')}}</label> <select class="form-control select2" name="product_company_id" id="product_company_id"> <option value=""> {{__('messages.ProductCompany')}} {{__('messages.Select')}}</option> @foreach($product_companies as $product_company) <option value="{{$product_company->id}}">{{$product_company->name}}</option> @endforeach() </select> <span class="label label-danger" id="add_product_company_id_error" style="display: none;"></span> </div> </div> <div class="col-md-4"> <div class="form-group"> <label for="account_from_id">{{__('messages.AccountFrom')}}</label> <input type="hidden" name="account_from_id" id="account_from_id_value"> <select class="form-control select2" id="account_from_id" onchange="getRakeAllotmentDetails(this.value)"> <option value="">{{__('messages.Accounts')}} {{__('messages.Select')}}</option> </select> <span class="label label-danger" id="add_account_from_id_error" style="display: none;"></span> </div> </div> <div class="clearfix"></div> <div class="col-md-4"> <div class="form-group"> <label for="product_id">{{__('messages.Product')}}</label> <select class="form-control select2" name="product_id" id="product_id" onchange="getAllotedProductDetails(this.value)"> <option value="">{{__('messages.Product')}} {{__('messages.Select')}}</option> </select> <span class="label label-danger" id="add_product_id_error" style="display: none;"></span> </div> </div> <div class="col-md-2"> <div class="form-group"> <label for="remaining_quantity">Retailer Limit </label> <input type="text" class="form-control" name="retailer_limit" id="retailer_limit" placeholder="Retailer Limit" readonly="readonly"> </div> </div> <div class="col-md-2"> <div class="form-group"> <label for="remaining_quantity">{{__('messages.RemainingQuantity')}}</label> <input type="text" class="form-control" name="remaining_quantity" id="remaining_quantity" placeholder="Remaining Quantity" readonly="readonly"> </div> </div> <div class="col-md-4"> <div class="form-group"> <label for="quantity">{{__('messages.Quantity')}}</label> <input type="text" class="form-control" name="quantity" id="quantity" placeholder="Quantity" onkeyup="checkQuantity(this.value)"> <span class="label label-danger" id="add_quantity_error" style="display: none;"></span> </div> </div> <div class="clearfix"></div> <div class="col-md-4"> <div class="form-group"> <label for="unit_id">{{__('messages.Unit')}}</label> <select class="form-control select2" name="unit_id" id="unit_id"> <option value="">{{__('messages.Unit')}} {{__('messages.Select')}}</option> @foreach($units as $unit) <option value="{{$unit->id}}">{{$unit->unit}}</option> @endforeach() </select> <span class="label label-danger" id="add_unit_id_error" style="display: none;"></span> </div> </div> <div class="col-md-2"> <div class="form-group"> <label for="rate">{{__('messages.Rate')}}</label> <input type="text" class="form-control" name="rate" id="rate" placeholder="Rate"> <span class="label label-danger" id="add_rate_error" style="display: none;"></span> </div> </div> <div class="col-md-2"> <div class="form-group"> <label for="rate">MRP Rate</label> <input type="text" class="form-control" name="mrp_rate" id="mrp_rate" placeholder="MRP Rate"> <span class="label label-danger" id="add_mrp_rate_error" style="display: none;"></span> </div> </div> <div class="col-md-4"> <div class="form-group"> <label for="transporter_id">{{__('messages.Transporter')}}</label> <select class="form-control select2" name="transporter_id" id="transporter_id"> <option value="">{{__('messages.Transporter')}} {{__('messages.Select')}}</option> @foreach($transporters as $transporter) <option value="{{$transporter->id}}">{{$transporter->name}}</option> @endforeach() </select> <span class="label label-danger" id="add_transporter_id_error" style="display: none;"></span> </div> </div> <div class="clearfix"></div> <div class="col-md-4"> <div class="form-group"> <label for="warehouse_keeper_id">{{__('messages.WarehouseKeeper')}}</label> <select class="form-control select2" name="warehouse_keeper_id" id="warehouse_keeper_id"> <option value=""> {{__('messages.WarehouseKeeper')}} {{__('messages.Select')}}</option> @foreach($warehouse_keepers as $warehouse_keeper) <option value="{{$warehouse_keeper->id}}">{{$warehouse_keeper->name}}</option> @endforeach() </select> <span class="label label-danger" id="add_Warehouse_keeper_id_error" style="display: none;"></span> </div> </div> <div class="col-md-4"> <div class="form-group"> <label for="truck_number">{{__('messages.TruckNumber')}}</label> <input type="text" class="form-control" name="truck_number" id="truck_number" placeholder="Truck Number"> <span class="label label-danger" id="add_truck_number_error" style="display: none;"></span> </div> </div> <div class="col-md-4"> <div class="form-group"> <label for="delivery_payment_mode">{{__('messages.FreightPaymentMode')}}</label> <select class="form-control select2" name="delivery_payment_mode" id="delivery_payment_mode"> <option value="EX">EX</option> <option value="FOR">FOR</option> <option value="FOX">FOX</option> </select> <span class="label label-danger" id="add_delivery_payment_mode_error" style="display: none;"></span> </div> </div> <div class="clearfix"></div> <div class="col-md-4"> <div class="form-group"> <label for="description">{{__('messages.Description')}}</label> <textarea name="description" id="description" class="form-control" rows="3" required="required"></textarea> <span class="label label-danger" id="add_description_error" style="display: none;"></span> </div> </div> <div class="col-md-4"> <div class="form-group"> <span class="label label-danger" id="add_mfms_id_error" style="display: none;"></span> </div> </div> </div> </div> <a href="{{URL('/user/generate-token')}}" class="btn btn-default">Reset</a> <button type="button" id="generateTokenBtn" class="btn btn-primary">Submit</button> </form> </div> </div> </div> </div><!-- /.page-content --> </div><!-- /.main-content --> @section('script') {{ Html::script("assets/js/ace-elements.min.js")}} {{ Html::script("assets/js/ace.min.js")}} {{ Html::script("assets/js/bootstrap-datepicker.min.js")}} <script type="text/javascript"> $(document).ready(function() { $('#retailer_id').change(function() { var id = $('#retailer_id').val(); $.ajax({ url: "{{url('/user/get-retailer-data')}}" + "/" + id, method: 'GET', success: function(data) { $('#retailer_limit').val(data.retailer); } }); }); }); $(document).ready(function() { $('.date-picker').datepicker({ autoclose: true, todayHighlight: true }) .next().on(ace.click_event, function() { $(this).prev().focus(); }); $('#generateTokenBtn').click(function(e) { e.preventDefault(); $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content') } }); $('.loading-bg').show(); $.ajax({ url: $('#generateTokenForm').attr('action'), method: 'POST', data: $('#generateTokenForm').serialize(), success: function(data) { $('.loading-bg').hide(); if (!data.flag) { showError('add_rake_id_error', data.errors.master_rake_id); showError('add_from_warehouse_id_error', data.errors.from_warehouse_id); showError('add_company_id_error', data.errors.company_id); showError('add_dealer_id_error', data.errors.dealer_id); showError('add_product_company_id_error', data.errors.product_company_id); showError('add_product_id_error', data.errors.product_id); showError('add_warehouse_id_error', data.errors.warehouse_id); showError('add_quantity_error', data.errors.quantity); showError('add_rate_error', data.errors.rate); showError('add_unit_id_error', data.errors.unit_id); showError('add_date_error', data.errors.date_of_generation); showError('add_account_from_id_error', data.errors.account_from_id); showError('add_delivery_payment_mode_error', data.errors.delivery_payment_mode); showError('add_mfms_id_error', data.errors.mfms_id); } else { swal({ title: "Success!", text: data.message, type: "success" }, function() { var print_url = "{{URL('/')}}" + '/user/print-token/' + data.token.id; window.location.href = print_url; }); } } }); }); }); function handleTokenType(id) { if (id == 1) { $('#rake_div').show(); $('#warehouse_div').hide(); $('#to_type').val(3).trigger('change'); } else if (id == 2) { $('#rake_div').hide(); $('#to_type').val(2).trigger('change'); $('#warehouse_div').show(); } } function handleToType(type) { $('.loading-bg').show(); $('#account_from_id').attr('disabled', false); if (type == 1) { $('#warehouses_section').show(); $('#retailer_section').hide(); $('#dealer_section').hide(); } else if (type == 2) { $('#warehouses_section').hide(); $('#retailer_section').show(); $('#dealer_section').hide(); } else if (type == 3) { $('#warehouses_section').hide(); $('#retailer_section').hide(); $('#dealer_section').show(); } $('.loading-bg').hide(); } function handleDealer(id) { console.log(id); $('.loading-bg').show(); $('#account_from_id').val(id).trigger('change'); $('#account_from_id').attr('disabled', true); $('#account_from_id_value').val(id); $('.loading-bg').hide(); } function getMasterRakeDetails(id) { if (id == "") { swal('Error', 'Master Rake id is missing', 'warning'); } else { $('.loading-bg').show(); $.ajax({ url: "{{url('/get-master-rake-details/')}}" + "/" + id, type: 'GET', success: function(data) { console.log(data); $('.loading-bg').hide(); if (data.flag) { var company_option = "<option value='" + data.master_rake.product_company.id + "'>" + data.master_rake.product_company.name + "</option>" $('#product_company_id').html(company_option).trigger('change'); var account_from_option = "<option value=''>Select Product</option>"; var select_dealer = "<option value=''>Select Dealer</option>"; $.each(data.master_rake.rake_allotments, function(i, value) { account_from_option += "<option value=" + value.dealer_id + ">" + value.dealer.name + "(" + value.dealer.address1 + ")</option>"; select_dealer += "<option value=" + value.dealer_id + ">" + value.dealer.name + "(" + value.dealer.address1 + ")</option>"; }); $('#account_from_id').html(account_from_option); $('#dealer_id').html(select_dealer); } else { swal('Error', data.message, 'warning'); } } }); } } function getInventoryDetails(id) { if (id == "") { swal('Error', 'Warehouse id is missing', 'warning'); } else { $('.loading-bg').show(); $.ajax({ url: "{{url('/get-warehouse-parties/')}}" + "/" + id, type: 'GET', success: function(data) { console.log(data); $('.loading-bg').hide(); if (data.flag) { var company_option = "<option value=''>Select Product Company</option>"; $.each(data.product_companies, function(i, value) { company_option += "<option value=" + value.product_brand_id + ">" + value.product_brand.name + "(" + value.product_brand.brand_name + ")</option>"; }); $('#product_company_id').html(company_option).trigger('change'); var account_from_option = "<option value=''>Select Account From</option>"; $.each(data.parties, function(i, value) { account_from_option += "<option value=" + value.id + ">" + value.name + "(" + value.address1 + ")</option>"; }); $('#account_from_id').html(account_from_option); } else { swal('Error', data.message, 'warning'); } } }); } } function getRakeAllotmentDetails(dealer_id) { $('#account_from_id_value').val(dealer_id); var token_type = $('#token_type option:selected').val(); if (token_type == 1) { var master_rake_id = $('#master_rake_id option:selected').val(); if (master_rake_id == "") { $('#master_rake_id option:selected').focus(); $('#dealer_id').val(''); swal('Error', 'Please Select Master Rake', 'warning'); } else if (dealer_id == "") {} else { $('.loading-bg').show(); $.ajax({ url: "{{url('/get-dealer-rake-allotment/')}}" + "/" + master_rake_id + "/" + dealer_id, type: 'GET', success: function(data) { console.log(data); $('.loading-bg').hide(); if (data.flag) { $('#product_id').html(data.product_options); $('#account_id').val(dealer_id).trigger('change'); } else { $('#company_id').val(''); swal('Error', data.message, 'warning'); } } }); } } else { var from_warehouse_id = $('#from_warehouse_id option:selected').val(); var product_company_id = $('#product_company_id option:selected').val(); if (from_warehouse_id == "") { $('#from_warehouse_id option:selected').focus(); $('#dealer_id').val(''); swal('Error', 'Please Select Warehouse', 'warning'); } else if (product_company_id == "") { $('#product_company_id option:selected').focus(); $('#product_company_id').val(''); swal('Error', 'Please Select Product Company id', 'warning'); } else { $('.loading-bg').show(); $.ajax({ url: "{{url('/get-party-products/')}}" + "/" + from_warehouse_id + "/" + product_company_id + "/" + dealer_id, type: 'GET', success: function(data) { console.log(data); $('.loading-bg').hide(); if (data.flag) { var product_options = "<option value=''>Select Product</option>"; $.each(data.products, function(i, value) { product_options += "<option value=" + value.product_id + ">" + value.product.name + "</option>"; }); $('#product_id').html(product_options); } else { $('#company_id').val(''); swal('Error', data.message, 'warning'); } } }); } } } function getAllotedProductDetails(product_id) { var token_type = $('#token_type option:selected').val(); if (token_type == 1) { var master_rake_id = $('#master_rake_id option:selected').val(); var dealer_id = $('#account_from_id option:selected').val(); if (master_rake_id == "") { $('#master_rake_id option:selected').focus(); $('#dealer_id').val(''); swal('Error', 'Please Select Master Rake', 'warning'); } else if (dealer_id == "") {} else if (product_id == "") { $('#product_id').val(''); swal('Error', 'Product missing', 'warning'); } else { $('.loading-bg').show(); $.ajax({ url: "{{url('/get-alloted-product-details/')}}" + "/" + master_rake_id + "/" + dealer_id + "/" + product_id, type: 'GET', success: function(data) { console.log(data); $('.loading-bg').hide(); if (data.flag) { $('#remaining_quantity').val(data.product_details.remaining_quantity); $('#quantity').val(data.product_details.remaining_quantity); $('#unit_id').val(data.product_details.unit_id).trigger('change'); } else { $('#product_id').val(''); swal('Error', data.message, 'warning'); } } }); } } else { var from_warehouse_id = $('#from_warehouse_id option:selected').val(); var product_company_id = $('#product_company_id option:selected').val(); var party = $('#account_from_id option:selected').val(); if (from_warehouse_id == "") { $('#from_warehouse_id option:selected').focus(); $('#dealer_id').val(''); swal('Error', 'Please Select Warehouse', 'warning'); } else if (product_company_id == "") { $('#product_company_id option:selected').focus(); $('#product_company_id').val(''); swal('Error', 'Please Select Product Company id', 'warning'); } else if (party == "") { $('#product_company_id option:selected').focus(); $('#product_company_id').val(''); swal('Error', 'Please Select Party', 'warning'); } else if (product_id == "") { $('#product_id').val(''); swal('Error', 'Product missing', 'warning'); } else { $('.loading-bg').show(); $.ajax({ // url: "{{url('/warehouse-inventory-product-details/')}}"+"/"+from_warehouse_id+"/"+product_company_id+"/"+product_id, url: "{{url('/warehouse-inventory-product-details/')}}" + "/" + from_warehouse_id + "/" + product_company_id + "/" + product_id + "/" + party, type: 'GET', success: function(data) { console.log(data); $('.loading-bg').hide(); if (data.flag) { // $('#remaining_quantity').val(data.product_details.quantity); $('#remaining_quantity').val(data.product_details.balance); $('#unit_id').val(data.product_details.unit_id).trigger('change'); } else { $('#product_id').val(''); swal('Error', data.message, 'warning'); } } }); } } } function checkQuantity(value) { var token_type = $('#token_type option:selected').val(); if (token_type == 2) { var remaining_quantity = parseInt($('#remaining_quantity').val()); if (remaining_quantity < parseInt(value)) { // ('#quantity').val(''); swal('Warning', 'Entered Quantity (' + parseInt(value) + ') should not be greater than remaining quantity(' + remaining_quantity + ')', 'warning'); } } } function showError(id, error) { if (typeof(error) === "undefined") { $('#' + id).hide(); } else { $('#' + id).show(); $('#' + id).text(error); } } </script> @endsection @endsection