|
|
|
|
@ -7,22 +7,89 @@ import com.lingnan.supermarket.dto.Production;
|
|
|
|
|
|
|
|
|
|
public class CreateOrder {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public String CreateOrder(Vector<Production> v,String oNumber,String time,Float allPrice,String username) {
|
|
|
|
|
String xx="----------------------------------------------------------------------------\r\n";
|
|
|
|
|
String InRequireText=time+"\r\n"+xx;
|
|
|
|
|
InRequireText += "#名称 #单价 #数量 #金额\r\n";/*生成订单小票*/
|
|
|
|
|
for(Production p:v) {
|
|
|
|
|
InRequireText+=p.getName()+" "+p.getInPrice()+" "+p.getSum()+" "+p.getPrice()+"\r\n";
|
|
|
|
|
// 方法:生成订单小票文本
|
|
|
|
|
public String CreateOrder(Vector<Production> v, String oNumber, String time, Float allPrice, String username) {
|
|
|
|
|
// 初始化分隔符
|
|
|
|
|
String xx = "----------------------------------------------------------------------------\r\n";
|
|
|
|
|
|
|
|
|
|
// 订单生成时间
|
|
|
|
|
String InRequireText = time + "\r\n" + xx;
|
|
|
|
|
|
|
|
|
|
// 添加订单标题
|
|
|
|
|
InRequireText += "#名称 #单价 #数量 #金额\r\n";
|
|
|
|
|
|
|
|
|
|
// 遍历商品列表,生成订单项信息
|
|
|
|
|
for (Production p : v) {
|
|
|
|
|
InRequireText += p.getName() + " " + p.getInPrice() + " " + p.getSum() + " " + p.getPrice() + "\r\n";
|
|
|
|
|
}
|
|
|
|
|
InRequireText+="\r\n"+xx;
|
|
|
|
|
InRequireText+="#总进货金额:"+allPrice+"元";
|
|
|
|
|
InRequireText+="\r\n#负责人:"+username;
|
|
|
|
|
InRequireText+="\r\n#订单编号:"+oNumber;
|
|
|
|
|
InRequireText+="\r\n#地址:新民超市";
|
|
|
|
|
InRequireText+="\r\n#联系电话:xxx";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 订单总金额
|
|
|
|
|
InRequireText += "\r\n" + xx;
|
|
|
|
|
InRequireText += "#总进货金额:" + allPrice + "元";
|
|
|
|
|
|
|
|
|
|
// 订单负责人和编号
|
|
|
|
|
InRequireText += "\r\n#负责人:" + username;
|
|
|
|
|
InRequireText += "\r\n#订单编号:" + oNumber;
|
|
|
|
|
|
|
|
|
|
// 商店信息
|
|
|
|
|
InRequireText += "\r\n#地址:新民超市";
|
|
|
|
|
InRequireText += "\r\n#联系电话:xxx";
|
|
|
|
|
|
|
|
|
|
// 加入订单备注
|
|
|
|
|
InRequireText += "\r\n#备注:谢谢光临,欢迎下次购买!";
|
|
|
|
|
|
|
|
|
|
// 空行分隔
|
|
|
|
|
InRequireText += "\r\n";
|
|
|
|
|
|
|
|
|
|
// 添加当前时间的时间戳
|
|
|
|
|
InRequireText += "#生成时间:" + System.currentTimeMillis() + "\r\n";
|
|
|
|
|
|
|
|
|
|
// 订单结束标记
|
|
|
|
|
InRequireText += "----------------------------------------------------------------------------\r\n";
|
|
|
|
|
|
|
|
|
|
// 返回生成的订单小票文本
|
|
|
|
|
return InRequireText;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 日志记录方法(模拟)
|
|
|
|
|
private void logOrderCreation(String oNumber) {
|
|
|
|
|
// 这里模拟记录订单生成日志
|
|
|
|
|
System.out.println("订单创建成功,订单编号:" + oNumber);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 模拟打印订单内容的方法
|
|
|
|
|
public void printOrder(String orderContent) {
|
|
|
|
|
// 打印订单内容(实际应用中可能是发送到打印机)
|
|
|
|
|
System.out.println(orderContent);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 订单处理(模拟)方法
|
|
|
|
|
public void processOrder(Vector<Production> v, String oNumber, String time, Float allPrice, String username) {
|
|
|
|
|
// 创建订单内容
|
|
|
|
|
String orderContent = CreateOrder(v, oNumber, time, allPrice, username);
|
|
|
|
|
|
|
|
|
|
// 打印订单
|
|
|
|
|
printOrder(orderContent);
|
|
|
|
|
|
|
|
|
|
// 记录订单创建日志
|
|
|
|
|
logOrderCreation(oNumber);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 添加订单清单格式方法
|
|
|
|
|
private String getOrderListFormat(Vector<Production> v) {
|
|
|
|
|
StringBuilder orderList = new StringBuilder();
|
|
|
|
|
|
|
|
|
|
for (Production p : v) {
|
|
|
|
|
orderList.append(p.getName())
|
|
|
|
|
.append(" - 单价: ")
|
|
|
|
|
.append(p.getInPrice())
|
|
|
|
|
.append(",数量: ")
|
|
|
|
|
.append(p.getSum())
|
|
|
|
|
.append(",金额: ")
|
|
|
|
|
.append(p.getPrice())
|
|
|
|
|
.append("\r\n");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return orderList.toString();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|