⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 htmlsalesformatter.java

📁 Exercise 5 SSD3 icarnegie mellon
💻 JAVA
字号:
/**
 * Esta clase crea una sola instancia y regresa una cadena de caracteres en HTML
 * cada vez que sea invocada.
 * 
 * @author  Marcos Alan Martinez Montes de Oca
 * @version 1.0.0
 */
public class HTMLSalesFormatter implements SalesFormatter {

	// La unica instancia de PlainTextSalesFormatter.
	static private HTMLSalesFormatter singletonInstance = null;

	/**
	 * Obtiene la unica instancia de mi clase PlainTextSalesFormatter. Si no hay
	 * una instancia previa, la crea. Si ya existe, regresa la instancia
	 * existente.
	 * 
	 * @return la unica instancia de PlainTextSalesFormatter
	 */
	static public HTMLSalesFormatter getSingletonInstance() {

		if (singletonInstance == null) {
			singletonInstance = new HTMLSalesFormatter();
		}

		return singletonInstance;
	}

	/**
	 * Declaro el constructor como privado para que otras clases no puedan crear
	 * instancias multiples.
	 */
	private HTMLSalesFormatter() {
	}

	/**
	 * Regresa una cadena de caracteres con el formato de la venta en HTML
	 * 
	 * @return una cadena de caracteres con el formato de la venta en HTML
	 */
	public String formatSales(Sales sales) {

		String out = "<html>\n\t<body>\n\t\t<center>"
				+ "<h2>Orders</h2></center>\n";
		
		double cant = 0.0;

		for (Order order : sales) {

			for (OrderItem orderItem : order) {

				out += "\t\t<p>\n\t\t\t<b>code:</b> "
						+ orderItem.getProduct().getCode()
						+ "<br>\n\t\t\t<b>quantity:</b> "
						+ orderItem.getQuantity()
						+ "<br>\n\t\t\t<b>price:</b> "
						+ orderItem.getProduct().getPrice() + "\n\t\t</p>\n";

				cant += orderItem.getValue();
			}

			out += "\t\t<hr>\n\t\t<h4>Total = " + cant + "</h4>\n"
					+ out;
			cant = 0;
		}
		out += "\t</body>\n</html>";
		return out;

	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -