fixing totalDiscount

This commit is contained in:
2023-06-18 12:26:19 +01:00
parent 51b833e0cd
commit 60347fd054
4 changed files with 163 additions and 9 deletions
@@ -36,15 +36,16 @@ if (index >= 0) {
sdiscount = Formats.PERCENT.formatValue((discountrate));
for (int number= 0; number < ticket.getLinesCount(); number++) {
line = ticket.getLine(number);
ticket.setLine(number,
new TicketLineInfo(
line.getProductID(),
line.getProductName() + " - Item Discount @ " + sdiscount,
line.getProductTaxCategoryID(),
line.getProductPrinter(),
line.getMultiply(),
line.getNewPrice() - (double)Math.abs(line.getNewPrice() * discountrate * 100) /100,
line.getTaxInfo()));
TicketLineInfo ticketLineInfo = new TicketLineInfo(
line.getProductID(),
line.getProductName() + " - Item Discount @ " + sdiscount,
line.getProductTaxCategoryID(),
line.getProductPrinter(),
line.getMultiply(),
line.getNewPrice() - (double)Math.abs(line.getNewPrice() * discountrate * 100) /100,
line.getTaxInfo());
ticketLineInfo.setTicketUpdated("ticket.updated", "true");
ticket.setLine(number,ticketLineInfo);
}
} else {
java.awt.Toolkit.getDefaultToolkit().beep();
@@ -0,0 +1,95 @@
package com.unicenta.pos.ticket;
import com.google.gson.Gson;
import org.junit.Test;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import static org.junit.Assert.*;
public class TicketLineInfoTest {
@Test
public void shouldSendOrderDiscountToPrinter(){
String json = getText("src/test/resources/TicketLineInfo.json");
assert json != null;
TicketLineInfo ticketLineInfo = new Gson().fromJson(json, TicketLineInfo.class);
assert ticketLineInfo != null;
sendOrderScript(ticketLineInfo);
}
@Test
public void shouldSendItemDiscountToPrinter() {
String json = getText("src/test/resources/TicketLineInfoOrderDiscount.json");
assert json != null;
TicketLineInfo ticketLineInfo = new Gson().fromJson(json, TicketLineInfo.class);
assert ticketLineInfo != null;
sendOrderScript(ticketLineInfo);
}
private void sendOrderScript(TicketLineInfo line) {
boolean printedP1 = false;
boolean printedP2 = false;
boolean printedP3 = false;
boolean printedP4 = false;
boolean printedP5 = false;
boolean printedP6 = false;
if (line.getProperty("product.printer")!=null && line.getProperty("ticket.updated")!=null) {
if (line.getProperty("product.printer").equals("1")) {
System.out.print("getting property: ");
System.out.println(line.getProperty("ticket.updated").equals("true"));
if((printedP1 == false)) {
//sales.printTicket("Printer.Ticket.P1");
printedP1 = true;
}
}
if (line.getProperty("product.printer").equals("2")) {
if((printedP2 == false) && line.getProperty("ticket.updated").equals("true")){
//sales.printTicket("Printer.Ticket.P2");
printedP2 = true;
}
}
if (line.getProperty("product.printer").equals("3")) {
if((printedP3 == false) && line.getProperty("ticket.updated").equals("true")){
//sales.printTicket("Printer.Ticket.P3");
printedP3 = true;
}
}
if (line.getProperty("product.printer").equals("4")) {
if((printedP4 == false) && line.getProperty("ticket.updated").equals("true")){
//sales.printTicket("Printer.Ticket.P4");
printedP4 = true;
}
}
if (line.getProperty("product.printer").equals("5")) {
if((printedP5 == false) && line.getProperty("ticket.updated").equals("true")){
//sales.printTicket("Printer.Ticket.P5");
printedP5 = true;
}
}
if (line.getProperty("product.printer").equals("6")) {
if((printedP6 == false) && line.getProperty("ticket.updated").equals("true")){
//sales.printTicket("Printer.Ticket.P6");
printedP6 = true;
}
}
}
}
private String getText(String path) {
try {
return new String(Files.readAllBytes(Paths.get(path)));
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
+35
View File
@@ -0,0 +1,35 @@
{
"m_sTicket": "8c5bfd03-f4f8-4a3f-b216-57f194e1cda6",
"m_iLine": 0,
"multiply": 1.0,
"price": 8.333333333333334,
"tax":
{
"id": "001",
"name": "Tax Standard",
"taxcategoryid": "001",
"rate": 0.2,
"cascade": false
},
"attributes":
{
"product.printer": "1",
"product.warranty": "false",
"product.reference": "123",
"product.com": "false",
"product.verpatrib": "false",
"ticket.updated": "true",
"product.name": "Burger",
"product.service": "false",
"product.categoryid": "000",
"product.taxcategoryid": "001",
"product.memodate": "1900-01-01 00:00:01",
"product.code": "123",
"product.vprice": "false",
"product.texttip": "",
"product.constant": "false"
},
"productid": "fc33fa54-3af1-486b-85e7-9838160053ea",
"updated": false,
"newprice": 10.0
}
@@ -0,0 +1,23 @@
{
"m_sTicket": "5ff16e4c-0df9-4002-bc54-cc60fce92de2",
"m_iLine": 0,
"multiply": 1.0,
"price": 7.333333333333334,
"tax":
{
"id": "001",
"name": "Tax Standard",
"taxcategoryid": "001",
"rate": 0.2,
"cascade": false
},
"attributes":
{
"product.taxcategoryid": "001",
"product.printer": "1",
"product.name": "Burger - Item Discount @ 12%"
},
"productid": "fc33fa54-3af1-486b-85e7-9838160053ea",
"updated": false,
"newprice": 0.0
}