MIF_E31211972/resources/views/admin/pages/barang/createbarangkeluar.blade.php

227 lines
12 KiB
PHP

@extends('admin.layouts.app')
@section('title', 'Tambah Barang Keluar')
@push('style')
<!-- CSS Libraries -->
<link rel="stylesheet" href="{{ asset('admin/library/summernote/dist/summernote-bs4.css') }}">
<style>
#preview img {
width: 100%;
height: 300px;
object-fit: cover;
object-position: center;
border-radius: .25rem;
}
</style>
@endpush
@section('main')
<div class="main-content">
<section class="section">
<div class="section-header">
<h1>Tambah Barang Keluar</h1>
<div class="section-header-breadcrumb">
<a href="{{ url('/barangkeluar') }}" class="btn btn-warning">Kembali</a>
</div>
</div>
<div class="section-body">
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-body">
<form action="{{ route('barangkeluar.store') }}" method="POST" enctype="multipart/form-data" class="row">
@csrf
<div class="form-group col-md-6">
<label>Customer</label>
<select class="form-control @error('id_customer') is-invalid @enderror" name="id_customer">
@foreach ($customer as $itemsup)
<option value="{{ $itemsup->id }}">{{ $itemsup->nama_customer }}</option>
@endforeach
</select>
@error('id_customer')
<div class="invalid-feedback">Silahkan masukkan customer yang benar</div>
@enderror
<small>Jika customer belum terdaftar, <a href="/customer/create">Tambah</a></small>
</div>
<div class="form-group col-md-6">
<label>Pilih Kopi</label>
<select class="form-control @error('id_kopi') is-invalid @enderror" name="id_kopi" id="kopi">
@foreach ($kopi as $item)
<option value="{{ $item->id }}" data-harga="{{ $item->harga_jual }}">
{{ $item->nama_kopi }} - Stok {{ $item->stok }} kg
</option>
@endforeach
</select>
@error('id_kopi')
<div class="invalid-feedback">Silahkan pilih kategori</div>
@enderror
</div>
<div class="form-group col-md-6">
<label>Jenis Kopi</label>
<select class="form-control @error('jenis_kopi') is-invalid @enderror" name="jenis_kopi">
<option value="mentah">Mentah</option>
<option value="roasting">Roasting</option>
<option value="bubuk">Bubuk</option>
</select>
@error('jenis_kopi')
<div class="invalid-feedback">Silahkan pilih jenis kopi dengan benar</div>
@enderror
</div>
<div class="form-group col-md-6">
<label>Harga (per kg)</label>
<input type="text" class="form-control @error('harga_kopi') is-invalid @enderror" name="harga_kopi" value="{{ old('harga_kopi') }}" required autocomplete="off" id="harga" readonly>
@error('harga_kopi')
<div class="invalid-feedback">Harga kopi tidak valid</div>
@enderror
</div>
<div class="form-group col-md-6">
<label>Jumlah (kg)</label>
<input type="number" class="form-control @error('jumlah') is-invalid @enderror" name="jumlah" value="{{ old('jumlah') }}" required autocomplete="off" id="jumlah" onkeyup="hitung()">
@error('jumlah')
<div class="invalid-feedback">Jumlah tidak valid</div>
@enderror
</div>
<div class="form-group col-md-6">
<label>Total Harga</label>
<input type="text" class="form-control @error('total_harga') is-invalid @enderror" name="total_harga" value="{{ old('total_harga') }}" required autocomplete="off" id="vgrand_total" readonly>
<input type="hidden" name="total_harga" id="grand_total" readonly>
@error('total_harga')
<div class="invalid-feedback">Total Harga tidak valid</div>
@enderror
</div>
<div class="form-group col-md-6" id="targetDiv1" style="display: none">
<label>Pembayaran Awal (DP)</label>
<input type="text" class="form-control @error('dp') is-invalid @enderror" name="dp" value="{{ old('dp') }}" autocomplete="off" id="dp" onkeyup="hitung()" value="0">
@error('dp')
<div class="invalid-feedback">DP tidak valid</div>
@enderror
</div>
<div class="form-group col-md-6">
<label>Sisa Bayar</label>
<input type="text" class="form-control @error('sisa_bayar') is-invalid @enderror" value="{{ old('sisa_bayar') }}" id="vsisa_bayar" required autocomplete="off" readonly>
<input type="hidden" name="sisa_bayar" id="sisa_bayar" readonly>
@error('sisa_bayar')
<div class="invalid-feedback">Sisa Bayar tidak valid</div>
@enderror
</div>
<div class="form-group col-md-4" id="targetDiv2" style="display: none">
<label>Bukti Pembayaran (DP)</label>
<input type="file" name="gambardp" class="form-control @error('gambardp') is-invalid @enderror" id="gambar" onchange="imagePrev(this, '#tgambar');" autocomplete="off" style="border: none!important">
@error('gambardp')
<div class="invalid-feedback">{{ $message }}</div>
@enderror
<div id="preview">
<img class="mt-3" src="{{ asset('admin/img/noimage.png') }}" id="tgambar">
</div>
</div>
<div class="col-md-12">
<button class="btn btn-primary float-right" type="submit">Tambah</button>
</div>
</form>
</div>
</div>
</div>
</div>
</section>
</div>
@endsection
@push('scripts')
<script src="{{ asset('admin/library/summernote/dist/summernote-bs4.js') }}"></script>
<script>
$(document).ready(function(){
$('#jumlah').on('input', function() {
var angka = $(this).val();
if (angka < 30) {
$('#targetDiv1').css('display', 'none');
$('#targetDiv2').css('display', 'none');
} else {
$('#targetDiv1').css('display', 'block');
$('#targetDiv2').css('display', 'block');
}
});
});
function imagePrev(imageUploadKTP, tumb) {
if (imageUploadKTP.files && imageUploadKTP.files[0]) {
var reader = new FileReader();
reader.onload = function(e) {
$(tumb).attr('src', e.target.result);
};
reader.readAsDataURL(imageUploadKTP.files[0]);
}
}
function formatRupiah(angka, prefix) {
var number_string = angka.replace(/[^,\d]/g, '').toString(),
split = number_string.split(','),
sisa = split[0].length % 3,
rupiah = split[0].substr(0, sisa),
ribuan = split[0].substr(sisa).match(/\d{3}/gi);
if (ribuan) {
separator = sisa ? '.' : '';
rupiah += separator + ribuan.join('.');
}
rupiah = split[1] != undefined ? rupiah + ',' + split[1] : rupiah;
return prefix == undefined ? rupiah : (rupiah ? 'Rp. ' + rupiah : '');
}
document.getElementById('dp').addEventListener('keyup', function(e) {
this.value = formatRupiah(this.value, 'Rp. ');
});
function setHargaKopi() {
let select = document.getElementById('kopi');
let harga = select.options[select.selectedIndex].getAttribute('data-harga');
document.getElementById('harga').value = formatRupiah(harga, 'Rp. ');
hitung();
}
function hitung() {
let inharga = document.getElementById('harga').value.replace(/\D/g, '');
let injumlah = document.getElementById('jumlah').value;
let indp = document.getElementById('dp').value.replace(/\D/g, '');
let grandTotal = inharga * injumlah;
let sisaBayar = grandTotal - indp;
let viewGrandTotal = formatRupiah(grandTotal.toString(), 'Rp. ');
let viewSisaBayar = formatRupiah(sisaBayar.toString(), 'Rp. ');
if (inharga < 0 || injumlah < 0 || indp < 0) {
viewGrandTotal = "Masukkan nominal yang benar";
viewSisaBayar = "Masukkan nominal yang benar";
}
if (sisaBayar < 0) {
viewSisaBayar = "Masukkan dp yang benar";
}
document.getElementById('vgrand_total').value = viewGrandTotal;
document.getElementById('vsisa_bayar').value = viewSisaBayar;
document.getElementById('grand_total').value = grandTotal;
document.getElementById('sisa_bayar').value = sisaBayar;
}
document.getElementById('kopi').addEventListener('change', setHargaKopi);
setHargaKopi();
</script>
@endpush