// script.Linediscount
//
//    uniCenta oPOS - Touch Friendly Point Of Sale
//    Copyright (c) 2009-2018 uniCenta
//    http://sourceforge.net/projects/unicentaopos
//
//    This file is part of uniCenta oPOS.
//
//    uniCenta oPOS is free software: you can redistribute it and/or modify
//    it under the terms of the GNU General Public License as published by
//    the Free Software Foundation, either version 3 of the License, or
//    (at your option) any later version.
//
//    uniCenta oPOS is distributed in the hope that it will be useful,
//    but WITHOUT ANY WARRANTY; without even the implied warranty of
//    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//    GNU General Public License for more details.
//
//    You should have received a copy of the GNU General Public License
//    along with uniCenta oPOS.  If not, see <http://www.gnu.org/licenses/>.
// **************************************************************************
// This script applies UsersInput %Discount for the Item Line value
// To use in the sales screen: Highlight the line you want to discount
// Then Tap in the %Discount amount and touch the % button

import com.unicenta.format.Formats;
import com.unicenta.pos.ticket.TicketLineInfo;
import com.unicenta.pos.ticket.TicketProductInfo;

discountrate = sales.getInputValue() / 100.0;

index = sales.getSelectedIndex();
if (index >= 0) {
    line = ticket.getLine(index);
    if (line.getPrice() > 0.0 && discountrate > 0.0) {
        sdiscount = Formats.PERCENT.formatValue(discountrate);
        ticket.insertLine(index + 1,
            new TicketLineInfo(
                    "Line Discount " + sdiscount,
                    line.getProductTaxCategoryID(),
                    line.getProductPrinter(),
                    line.getMultiply(),
                    -(double)Math.abs(line.getNewPrice() * discountrate * 100) / 100,
                    line.getTaxInfo()));
        sales.setSelectedIndex(index + 1);
    } else {
         java.awt.Toolkit.getDefaultToolkit().beep();
    }
} else {
    java.awt.Toolkit.getDefaultToolkit().beep();
}