Subversion Repositories SmartDukaan

Rev

Rev 35922 | Blame | Compare with Previous | Last modification | View Log | RSS feed

<section class="wrapper">
    <div class="row">
        <div class="col-lg-12">
            <h3 class="page-header">
                <i class="icon_document_alt"></i>Seller
            </h3>
            <ol class="breadcrumb">
                <li><i class="fa fa-home"></i><a
                        href="${rc.contextPath}/dashboard">Home</a></li>
                <li><i class="icon_document_alt"></i>Supplier Form</li>
            </ol>
        </div>
    </div>
    <form id="new-supplier-create-form">
        <div class="form-row">
            <div class="form-group col-md-6">
                <label for="name">Name</label>
                <input type="text" class="form-control" id="name" name="inputName" placeholder="Name"
                       value="$supplier.getName()" readonly>
            </div>

            <div class="form-group col-md-6">
                <label for="phone">Phone</label>
                <input type="number" class="form-control" id="phone" name="inputPhone" placeholder="Phone" value="$supplier.getPhone()">
            </div>

            <div class="form-group col-md-6">
                <label for="gst">GSTIN</label>
                <input type="text" class="form-control" id="gst" name="inputGst" placeholder="GST"
                       value="$supplier.getGstin()">
            </div>
            <div class="form-group col-md-6">
                <label for="panNumber">PAN</label>
                <input type="text" class="form-control" id="panNumber" name="inputPan" placeholder="pan"
                       value="$supplier.getPan()" readonly>
            </div>
            <div class="form-group col-md-6">
                <label for="Fax">Fax</label>
                <input type="text" class="form-control" id="Fax" name="inputFax" placeholder="Fax" value="$supplier.getFax()">
            </div>

            <div class="form-group col-md-6">
                <label for="headName">Head Name</label>
                <input type="text" class="form-control" id="headName" name="inputHeadName" placeholder="Head Name" value="$supplier.getHeadName()">
            </div>

            <div class="form-group col-md-6">
                <label for="headDesign">Head Designation</label>
                #if($supplier.getHeadDesignation())
                    <input type="text" class="form-control" id="headDesign" name="inputHeadDesign"
                           placeholder="Head Designation" value="$supplier.getHeadDesignation()">
                #else
                    <input type="text" class="form-control" id="headDesign" name="inputHeadDesign"
                           placeholder="Head Designation" value="">
                #end

            </div>
            <div class="form-group col-md-6">
                <label for="headEmail">Head Email</label>
                <input type="email" class="form-control" id="headEmail" name="inputHeadEmail" placeholder="Head Email"
                       value="$supplier.getHeadEmail()">
            </div>
            <div class="form-group col-md-6">
                <label for="contactPerson">Contact Person</label>
                <input type="text" class="form-control" id="contactPerson" name="inputContactPerson"
                       placeholder="Contact Person" value="$supplier.getContactName()">
            </div>
            <div class="form-group col-md-6">
                            <label for="contactPhone">Contact Phone</label>
                            <input type="number" class="form-control" id="contactPhone" name="inputContactPhone"
                                   placeholder="Contact Phone" value="$supplier.getContactPhone()">
                        </div>
            <div class="form-group col-md-6">
                <label for="contactEmail">Contact Email</label>
                <input type="email" class="form-control" id="contactEmail" name="inputContactEmail"
                       placeholder="Contact Email" value="$supplier.getContactEmail()">
            </div>
            <div class="form-group col-md-6">
                                        <label for="document">Document</label>
                                        <input type="file" id="document" name="inputDocument">

                         </div>
            ##            <div class="form-group col-md-6">
            ##                <label for="contactFax">Contact Fax</label>
            ##                <input type="text" class="form-control" id="contactFax" name="inputContactFax"
            ##                       placeholder="Contact Fax" value="$supplier.getContactFax()">
            ##            </div>

            <div class="form-group col-md-6">
                <label for="registeredAddress">Registered Address</label>
                <input type="text" class="form-control" id="registeredAddress" name="inputRegisteredAddress"
                       placeholder="Registered Address" value="$supplier.getRegisteredAddress()">
            </div>
            <div class="form-group col-md-6">
                <label for="communicationAddress">Communication Address</label>
                <input type="text" class="form-control" id="communicationAddress" name="inputCommunicationAddress"
                       placeholder="Communication Address" value="$supplier.getCommunicationAddress()">
            </div>
            <div class="form-group col-md-6">
                <label for="terms&Conditions">Terms & Conditions</label>
                <input type="text" class="form-control" id="terms&Conditions" name="inputTermConditions"
                       placeholder="Terms & Conditions" value="$supplier.getTnc()">
            </div>
            <div class="form-group col-md-6">
                <input type="checkbox" id="warehouseCheckbox" name="warehouseCheckbox" value=""
                    #if($supplier.getInternalWarehouseId()) checked #end>
                <label for="warehouseCheckbox">Internal Warehouse</label><br>
            </div>
            <div class="form-group col-md-6">
                <label for="warehouse">Warehouse Name</label>
                <select class="form-control input-sm" id="internalWarehouseId" name="internalWarehouseId"
                        placeholder="Warehouse Name"
                    #if(!$supplier.getInternalWarehouseId()) disabled #end>
                    <option value="" disabled #if(!$supplier.getInternalWarehouseId()) selected #end>Warehouse Name
                    </option>
                    #foreach($warehouseEntry in $warehouseMap.entrySet())
                        <option value="$warehouseEntry.getKey()"
                            #if($supplier.getInternalWarehouseId() && $supplier.getInternalWarehouseId() == $warehouseEntry.getKey())
                                selected #end>
                            $warehouseEntry.getValue()
                        </option>
                    #end
                </select>
            </div>

            <div class="form-group col-md-6">
                <label for="warehouseLocation">Warehouse Location</label>
                <select class="chosen-select" id="warehouseLocation" name="inputWarehouseLocation"
                        data-placeholder="Warehouse Location" multiple style="width:500px;" tabindex="4">
                    #foreach($warehouseIdAndStateEntry in $warehouseIdAndState.entrySet())
                        <option value="$warehouseIdAndStateEntry.getKey()"
                            #if($supplierPhysicalWarehouseIds.contains($warehouseIdAndStateEntry.getKey()))
                                selected #end >
                        $warehouseIdAndStateEntry.getValue().getPrefix()
                            ($warehouseIdAndStateEntry.getValue().getStateName())
                        </option>
                    #end
                </select>
            </div>


            <div class="form-group col-md-6">
                <label for="state">State</label>
                <select class="form-control input-sm" id="stateId" name="stateId" placeholder="State"
                        >
                    <option value="" disabled>State </option>
                    #foreach($stateName in $state)
                        <option value="$stateName.getId()"
                            #if($stateName.getId() == $supplier.getStateId()) selected #end
                        >$stateName.getName()</option>
                    #end
                </select>
            </div>

            <div class="form-group col-md-6">
                <label for="pOValidityLimit">PO Validity Days Limit</label>
                <input type="number" class="form-control" id="pOValidityLimit" name="inputPOValidityLimit"
                       placeholder="PO Validity Days Limit" value="$supplier.getPoValidityLimit()">
            </div>
            <div class="form-group col-md-6">
                <button type="button" class="btn btn-primary submit-supplier-edit " style="margin: 20px;"
                        data-dd="$supplier.getId()">Update
                </button>

            </div>
        </div>
    </form>
</section>

<script>

    $(document).ready(function () {
        $('.chosen-select').chosen({
            search_contains: true

        });

        // Handle internal warehouse checkbox toggle
        $('#warehouseCheckbox').on('change', function () {
            const warehouseSelect = $('#internalWarehouseId');
            if (this.checked) {
                warehouseSelect.prop('disabled', false);
            } else {
                warehouseSelect.prop('disabled', true);
                warehouseSelect.val('');
            }
        });
    });

    function isValidGST(gstin) {
        const gstRegex = /^[0-9]{2}[A-Z]{5}[0-9]{4}[A-Z]{1}[A-Z0-9]{1}[Z]{1}[A-Z0-9]{1}$/;
        return gstRegex.test(gstin);
    }

    // Check GST field on document ready
    $(document).ready(function () {
        const gstInput = $('#gst');
        const gstin = gstInput.val().trim();

        // Check if GST is valid
        if (gstin && isValidGST(gstin)) {
            gstInput.prop('readonly', true);
        } else {
            gstInput.prop('readonly', false);
        }

        // If GSTIN field changes, validate it dynamically
        gstInput.on('input', function () {
            const gstValue = $(this).val().trim();
            if (isValidGST(gstValue)) {
                $(this).prop('readonly', true);
            } else {
                $(this).prop('readonly', false);
            }
        });
    });

</script>