484 lines
20 KiB
PHP
Executable File
484 lines
20 KiB
PHP
Executable File
<!-- ============================================================== -->
|
||
<!-- Start Page Content here -->
|
||
<!-- ============================================================== -->
|
||
|
||
<div class="content-page">
|
||
<div class="content">
|
||
<?php
|
||
helper('form');
|
||
$error = session()->getFlashdata('error');
|
||
if ($error) {
|
||
?>
|
||
<div class="alert alert-danger alert-dismissable">
|
||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||
<?php echo session()->getFlashdata('error'); ?>
|
||
</div>
|
||
<?php } ?>
|
||
<?php
|
||
$success = session()->getFlashdata('success');
|
||
if ($success) {
|
||
?>
|
||
<div class="alert alert-success alert-dismissable">
|
||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||
<?php echo session()->getFlashdata('success'); ?>
|
||
</div>
|
||
<?php } ?>
|
||
<!-- Start Content-->
|
||
<div class="container-fluid">
|
||
<div class="box box-success">
|
||
<?php if (!empty($validation)) : ?>
|
||
<div class="alert alert-danger">
|
||
<ul>
|
||
<?php foreach ($validation as $error) : ?>
|
||
<li><?= esc($error) ?></li>
|
||
<?php endforeach; ?>
|
||
</ul>
|
||
</div>
|
||
<?php endif; ?>
|
||
<!-- form start -->
|
||
</div>
|
||
<!-- start page title -->
|
||
<div class="row">
|
||
<div class="col-12">
|
||
<div class="page-title-box page-title-box-alt">
|
||
<h4 class="page-title"> Add Supplier Details</h4>
|
||
<a class="btn btn-secondary" href="<?php echo base_url(); ?>supplierlisting"><span class="bold">Back</span></a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- end page title -->
|
||
<div class="row">
|
||
<div class="col-12">
|
||
<div class="card">
|
||
<div class="card-body" style="padding: 1rem 2rem !important;">
|
||
<div class="row">
|
||
<div class="col-12">
|
||
<form class="form-horizontal" role="form" id="addsupplier" action="<?php echo base_url() ?>addNewsupplier" method="post" role="form" enctype="multipart/form-data">
|
||
<div class="box-body">
|
||
<!-- Supplier Information -->
|
||
<legend style="margin-left:-10px;color: #4f7c97;">Supplier Information</legend>
|
||
<div class="col-md-12" style="margin-bottom: 27px;">
|
||
<div class="form-row" style="margin-bottom:10px;">
|
||
<div class=" col-md-3">
|
||
<label class="col-form-label" for="SupplierName">Supplier Name<span class="badge">*</span></label>
|
||
<input type="text" name="SupplierName" maxlength="100" id="supplierName" class="form-control" required>
|
||
</div>
|
||
<div class=" col-md-3">
|
||
<label class="col-form-label" for="ContactNumber">Contact Number<span class="badge">*</span></label>
|
||
<input type="text" name="ContactNumber" onchange="return getContactNumberValidation();" id="ContactNumber" required maxlength="13" class="form-control" title="Please Enter Mobile Number (or) Telephone Number" onkeypress="return isNumberKey(event)">
|
||
</div>
|
||
<div class="col-md-3">
|
||
<label class="col-form-label" for="AlternateContactNumber">Alternate Contact Number</label>
|
||
<input type="text" name="AlternateContactNumber" onchange="return getValidAlternateNumber();" id="AlternateContactNumber" maxlength="13" class="form-control" title="Please Enter Mobile Number (or) Telephone Number" onkeypress="return isNumberKey(event)">
|
||
</div>
|
||
<div class="col-md-3">
|
||
<label class="col-form-label" for="EmailAddress">Email ID<span class="badge">*</span></label>
|
||
<input type="email" name="emailid" id="emailid" required maxlength="100" class="form-control">
|
||
</div>
|
||
</div>
|
||
<div class="form-row">
|
||
<div class="col-md-12" style="margin-top:5px">
|
||
<label for="SupplierType">Supplier Type</label><!--<span class="badge">*</span>-->
|
||
 
|
||
</div>
|
||
<div class="col-md-1" style="margin-top:5px">
|
||
<input type="checkbox" id="service" name="service" value="<?php echo $service = (isset($_POST['service'])) ? 0 : 1; ?>"> <b>SERVICE  </b>
|
||
</div>
|
||
<div class="col-md-1.5" style="margin-top:5px">
|
||
<input type="checkbox" id="rawmaterial" name="rawmaterial" value="<?php echo $rawmaterial = (isset($_POST['rawmaterial'])) ? 0 : 1; ?>"> <b>RAW MATERIALS  </b>
|
||
</div>
|
||
<div class="col-md-2" style="margin-top:5px">
|
||
<input type="checkbox" id="maintanance" name="maintanance" value="<?php echo $maintanance = (isset($_POST['maintanance'])) ? 0 : 1; ?>"> <b>MAINTENANCE  </b>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Address Section -->
|
||
<legend style="margin-left:-10px;color: #4f7c97;">Address Details</legend>
|
||
<div class="col-md-12" style="margin-bottom: 27px;">
|
||
<div class="form-row">
|
||
<div class=" col-md-6">
|
||
<label class="col-form-label" for="Address2">Address<span class="badge">*</span></label>
|
||
<textarea type="text" class="form-control required" id="Address" name="Address" maxlength="500" required rows="3"></textarea>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Tax Related Data -->
|
||
<legend style="margin-left:-10px;color: #4f7c97;">Tax Related Data</legend>
|
||
<!-- Text input-->
|
||
<div class="col-md-12" style="margin-bottom: 27px;">
|
||
<div class="form-row" style="margin-bottom: 20px;">
|
||
<div class=" col-md-4">
|
||
<label class="col-form-label" for="GSTNo">GST Number</label>
|
||
<input type="text" id="GSTNo" name="GSTNo" class="form-control" maxlength="15" onchange="validateGST();" style="text-transform:uppercase;" pattern="([0-9]){2}([A-Za-z]){5}([0-9]){4}([A-Za-z]){1}([0-9]){1}([Zz]){1}([A-Za-z0-9]){1}" title="Please Enter 2 Digit Number and 5 Character and 4 Digit Numbers and 1 Character and 1 Number and 'Z' and 1 Number or Character" onkeypress="return alphaNumberic(event)">
|
||
</div>
|
||
<div class=" col-md-4">
|
||
<label class="col-form-label" for="PAN">PAN</label>
|
||
<input type="text" id="panno" maxlength="10" pattern="([A-Za-z]){5}([0-9]){4}([A-Za-z]){1}" name="panno" style="text-transform:uppercase;" onchange="validatePAN();" class="form-control" title="Please Enter 5 Character and 4 digit numbers and 1 Character format (Character should be in caps)" onkeypress="return alphaNumberic(event)">
|
||
</div>
|
||
<div class=" col-md-4">
|
||
<label class="col-form-label" for="Cert_GST">Select GST Document<small> (only .pdf, .doc, .png, .jpg)</small></label>
|
||
<input style="margin-top: 5px;" type="file" size="20" accept=".docx,.pdf,.doc,.jpg,.png" id="Cert_GST" name="Cert_GST" />
|
||
</div>
|
||
</div>
|
||
|
||
<div class="form-row">
|
||
<div class=" col-md-8">
|
||
<label class="col-form-label" for="MSME">MSME</label>
|
||
<input type="text" id="MSMENo" name="MSME" class="form-control" maxlength="30">
|
||
</div>
|
||
<div class=" col-md-4">
|
||
<label class="col-form-label" for="Cert_MSME">Select MSME Document<small> (only .pdf, .doc, .png, .jpg)</small></label>
|
||
<input style="margin-top: 5px;" type="file" size="20" accept=".docx,.pdf,.doc,.jpg,.png" id="Cert_MSME" name="Cert_MSME" />
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Bank Details-->
|
||
<legend style="margin-left:-10px;color: #4f7c97;">Bank Details</legend>
|
||
|
||
<div class="col-md-12" style="margin-bottom: 27px;">
|
||
<div class="form-row">
|
||
<div class=" col-md-4">
|
||
<label class="col-form-label" for="Account_number">Account Number<span class="badge">*</span></label>
|
||
<input type="text" id="accno" name="accno" maxlength="20" class="form-control" onkeypress="return isNumberKey(event)" required>
|
||
</div>
|
||
<div class=" col-md-4">
|
||
<label class="col-form-label" for="IFSC_Code">IFSC Code<span class="badge">*</span></label>
|
||
<input type="text" id="ifsc" name="ifsc" maxlength="12" class="form-control" onkeypress="return alpha(event)" style="text-transform: uppercase" required>
|
||
</div>
|
||
<div class=" col-md-4">
|
||
<label class="col-form-label" for="Bank_Branch_Name">Bank Branch Name</label>
|
||
<input type="text" id="branchname" name="branchname" maxlength="200" class="form-control">
|
||
</div>
|
||
</div>
|
||
<div class="form-row" style="margin-top:20px">
|
||
<div class=" col-md-4">
|
||
<label class="col-form-label" for="Bank_Address">Bank Address<span class="badge">*</span></label>
|
||
<input type="text" id="bankaddress" name="bankaddress" maxlength="200" class="form-control" required>
|
||
</div>
|
||
<div class=" col-md-4">
|
||
<label class="col-form-label" for="Cert_BANK">Select Bank Document<small> (only .pdf, .doc, .png, .jpg)</small></label>
|
||
<input style="margin-top: 5px;" type="file" size="20" accept=".docx,.pdf,.doc,.jpg,.png" id="Cert_BANK" name="Cert_BANK" />
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="col-md-12" style="margin-bottom: 27px;">
|
||
<div class="col-md-3">
|
||
</div>
|
||
</div>
|
||
|
||
<legend style="margin-left:-10px;color: #4f7c97;">Payment Details</legend>
|
||
<!-- Text input-->
|
||
|
||
|
||
<div class="col-md-12" style="margin-bottom: 27px;">
|
||
<div class="col-md-3">
|
||
<span for="payablefrom">Payable Terms</span>
|
||
<select class="form-control required select2" id="Payment" name="Payment" onchange="payment_hidden();"> <!-- onchange="storeVal(this,'hiddenVal');"> -->
|
||
<option value="Date of invoice">Select Payment method</option>
|
||
<?php
|
||
if (!empty($payment)) {
|
||
foreach ($payment as $pmt) {
|
||
?>
|
||
<option value="<?php echo $pmt->PaymentID ?>"><?php echo $pmt->PaymentTerms ?></option>
|
||
<?php
|
||
}
|
||
}
|
||
?>
|
||
</select>
|
||
<input type="hidden" id="paymentid" name="paymentid" value="">
|
||
<!--<input type="hidden" id="paymentname" name="paymentname" value=""> -->
|
||
</div>
|
||
</div>
|
||
<div class="col-md-12 text-right">
|
||
<input type="reset" id="reset" class="btn btn-reset" style="background-color: red;color: white; margin-right: 15px;width: 80px;" value="Reset" />
|
||
<input type="submit" onclick="return Validate();" value="Submit" class="btn btn-success">
|
||
</div>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
</div>
|
||
<!-- end row -->
|
||
</div>
|
||
</div> <!-- end card -->
|
||
</div><!-- end col -->
|
||
</div>
|
||
<!-- end row -->
|
||
</div> <!-- container -->
|
||
</div> <!-- content -->
|
||
</div>
|
||
|
||
<!-- ============================================================== -->
|
||
<!-- End Page content -->
|
||
<!-- ============================================================== -->
|
||
|
||
|
||
|
||
<script>
|
||
function payment_hidden() {
|
||
var term = document.getElementById("Payment");
|
||
var termid = term.options[term.selectedIndex].value;
|
||
var termname = term.options[term.selectedIndex].text;
|
||
$("#paymentid").val(termid);
|
||
$("#paymentname").val(termname);
|
||
}
|
||
|
||
function Validate() {
|
||
if ($("#supplierName").val().length < 1) {
|
||
alert('Please Enter Supplier Name');
|
||
$("#supplierName").focus();
|
||
return false;
|
||
}
|
||
if (!getContactNumberValidation) {
|
||
$("#ContactNumber").focus();
|
||
return false;
|
||
}
|
||
if (!validateEmail()) {
|
||
$('#emailid').focus();
|
||
return false;
|
||
}
|
||
|
||
if ($("#Address").val().length < 1) {
|
||
alert('Please Enter Address');
|
||
$("#Address").focus();
|
||
return false;
|
||
}
|
||
|
||
if (!validateEmail()) {
|
||
$('#emailid').focus();
|
||
return false;
|
||
}
|
||
|
||
}
|
||
|
||
$('#supplierName').change(function() {
|
||
var suppliername = $('#supplierName').val();
|
||
var supplier = suppliername.replace(/ /g, '');
|
||
$('#loader').show();
|
||
$.ajax({
|
||
type: "POST",
|
||
url: "<?= base_url() . 'supplierExist' ?>",
|
||
data: {
|
||
id: supplier
|
||
},
|
||
success: function(data) {
|
||
var count = data?data.length:0;
|
||
if (count >= 1) {
|
||
$('#loader').hide();
|
||
if(data[0].IsActive == 1){
|
||
alert('supplier already existed ! ');
|
||
}else{
|
||
alert('supplier already existing in the deleted section..!! ');
|
||
}
|
||
|
||
var related_supplier = "";
|
||
$.each(data, function(i, obj) {
|
||
related_supplier += obj.SupplierID + " - " + obj.SupplierName + " - " + obj.Address + "\n";
|
||
});
|
||
alert("'" + suppliername + "' - related supplier are , " + " \n \n" + related_supplier);
|
||
$("#supplierName").val('');
|
||
$("#supplierName").focus();
|
||
} else {
|
||
$('#loader').hide();
|
||
//4Debug
|
||
// alert('This is New Supplier! ');
|
||
}
|
||
//4Debug
|
||
//console.log(data);
|
||
|
||
},
|
||
error: function(error) {
|
||
//4Debug
|
||
// alert("Error Occur");
|
||
$('#loader').hide();
|
||
console.error("Error" , error);
|
||
}
|
||
});
|
||
});
|
||
|
||
//Email Validate
|
||
function validateEmail() {
|
||
var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
|
||
|
||
var email = $('#EmailAddress').val();
|
||
if (email != "") {
|
||
if (reg.test(email) == false) {
|
||
alert('Please Enter Valid Email Address');
|
||
return (false);
|
||
} else {
|
||
return true;
|
||
}
|
||
}
|
||
}
|
||
|
||
function alphaNumberic(e) {
|
||
var k;
|
||
document.all ? k = e.keyCode : k = e.which;
|
||
return ((k > 64 && k < 91) || (k > 96 && k < 123) || k == 8 || k == 32 || (k >= 48 && k <= 57));
|
||
}
|
||
|
||
function blockKeyPress(evt) {
|
||
var charCode = (evt.which) ? evt.which : evt.keyCode;
|
||
alert(charCode);
|
||
if (charCode == 8 || charCode == 46) {
|
||
return false;
|
||
} else {
|
||
return false;
|
||
}
|
||
}
|
||
//charCode <= 31 && charCode != 32 && charCode => 33
|
||
function isNumberKey(evt) {
|
||
var charCode = (evt.which) ? evt.which : evt.keyCode;
|
||
if (charCode != 46 && charCode != 32 && charCode >= 33 &&
|
||
(charCode < 48 || charCode > 57))
|
||
return false;
|
||
|
||
return true;
|
||
}
|
||
|
||
//PAN Validate
|
||
function validatePAN() {
|
||
var reg = /^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$/;
|
||
|
||
var PAN = $('#panno').val();
|
||
|
||
if (PAN != '') {
|
||
if (reg.test(PAN) == false) {
|
||
alert('Please Enter Valid PAN Number');
|
||
return (false);
|
||
} else {
|
||
return true;
|
||
}
|
||
} else {
|
||
alert('Please Enter PAN Number');
|
||
return (false);
|
||
}
|
||
|
||
}
|
||
|
||
|
||
|
||
function validateGST() {
|
||
// var reg = /(?=.*[0-9]).{2}(?=.*[A-Za-z]).{5}(?=.*[0-9]).{4}(?=.*[A-Za-z]).{1}(?=.*[0-9]).{1}(?=.*[Zz]).{1}(?=.*[A-Za-z0-9]).{1}$/;
|
||
var reg = /^([0-9]){2}([A-Za-z]){5}([0-9]){4}([A-Za-z]){1}([0-9]){1}([Zz]){1}([A-Za-z0-9]){1}$/;
|
||
var GST = $('#GSTNo').val();
|
||
var PAN = $('#panno').val();
|
||
(PAN != '') ?? $('#panno').val("");
|
||
if (GST != '') {
|
||
if (reg.test(GST) == false) {
|
||
alert('Please Enter Valid GST Number Format should be 12ABCDE1234A1Z1 or 12ABCDE1234A1ZA');
|
||
return (false);
|
||
} else {
|
||
var panPattern = /[A-Z]{5}[0-9]{4}[A-Z]{1}/;
|
||
var panMatch = GST.match(panPattern);
|
||
if (panMatch) {
|
||
var extractedPAN = panMatch[0].toUpperCase();
|
||
if (panPattern.test(extractedPAN) == true) {
|
||
$('#panno').val(extractedPAN); //.prop('readonly', true);
|
||
}
|
||
}
|
||
return true;
|
||
}
|
||
} else {
|
||
alert('Please Enter GST Number');
|
||
return (false);
|
||
}
|
||
|
||
}
|
||
|
||
function getContactNumberValidation() {
|
||
var contactNumber = $('#ContactNumber').val();
|
||
|
||
var telephone = /^[0-9]{3,4}\s[0-9]{8,9}$/.test(contactNumber);
|
||
var regex = /^[0-9]{4,6}\s[0-9]{5,7}$/.test(contactNumber);
|
||
var mobilephone = /^[0-9]{10,12}$/.test(contactNumber);
|
||
|
||
//alert('chennai telephone:'+telephone);//alert('other telephone:'+regex);
|
||
//alert('mobilephone:'+mobilephone);//alert('input value:'+contactNumber);
|
||
|
||
if (contactNumber != '') {
|
||
|
||
if (telephone) {
|
||
//alert(' telephone number chennai district successfully inserted'+contactNumber);
|
||
return true;
|
||
} else if (regex) {
|
||
//alert('telephone number other district successfully inserted '+contactNumber);
|
||
return true;
|
||
} else if (mobilephone) {
|
||
//alert('mobile number successfully inserted'+contactNumber);
|
||
return true;
|
||
} else {
|
||
alert('Please Enter valid Contact Number ex: 044 12345678 , 0444 1234567,04444 123456 and 9876543210'); //alert('need to change:'+contactNumber);
|
||
return false;
|
||
}
|
||
} else {
|
||
|
||
alert('please correct format of contact number');
|
||
//alert('invalid'+contactNumber);
|
||
return false;
|
||
}
|
||
}
|
||
|
||
function getValidAlternateNumber() {
|
||
|
||
var contactNumber = $('#AlternateContactNumber').val();
|
||
|
||
var telephone = /^[0-9]{3,4}\s[0-9]{8,9}$/.test(contactNumber);
|
||
var regex = /^[0-9]{4,6}\s[0-9]{5,7}$/.test(contactNumber);
|
||
var mobilephone = /^[0-9]{10,12}$/.test(contactNumber);
|
||
|
||
//alert('chennai telephone:'+telephone);//alert('other telephone:'+regex);
|
||
//alert('mobilephone:'+mobilephone);//alert('input value:'+contactNumber);
|
||
|
||
if (contactNumber != '') {
|
||
|
||
if (telephone) {
|
||
//alert(' telephone number chennai district successfully inserted'+contactNumber);
|
||
return true;
|
||
} else if (regex) {
|
||
//alert('telephone number other district successfully inserted '+contactNumber);
|
||
return true;
|
||
} else if (mobilephone) {
|
||
//alert('mobile number successfully inserted'+contactNumber);
|
||
return true;
|
||
} else {
|
||
alert('Please Enter valid Contact Number ex: 044 12345678 , 0444 1234567,04444 123456 and 9876543210'); //alert('need to change:'+contactNumber);
|
||
return false;
|
||
}
|
||
} else {
|
||
|
||
alert('please correct format of contact number');
|
||
//alert('invalid'+contactNumber);
|
||
return false;
|
||
}
|
||
}
|
||
|
||
function validateEmail() {
|
||
var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
|
||
|
||
var email = $('#emailid').val();
|
||
|
||
if (email != '') {
|
||
if (reg.test(email) == false) {
|
||
alert('Please Enter Valid Email Address');
|
||
return (false);
|
||
} else {
|
||
return true;
|
||
}
|
||
} else {
|
||
alert('Please Enter email id');
|
||
}
|
||
|
||
}
|
||
|
||
$(document).ready(function() {
|
||
//$("#Payment").select2();
|
||
|
||
});
|
||
</script>
|