From 6935474bb6fb247ce8cdeca9dbc953046415d4a3 Mon Sep 17 00:00:00 2001 From: pxeyinm2q Date: Fri, 6 Dec 2024 12:54:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BA=86=E8=BF=9B=E8=B4=A7?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=E7=9A=84=E4=BB=A3=E7=A0=81=E6=B3=A8=E9=87=8A?= =?UTF-8?q?=20(#1)=20Co-authored-by:=20pxeyinm2q=20=20Co-c?= =?UTF-8?q?ommitted-by:=20pxeyinm2q=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../supermarket/dao/inOrderService.java | 11 +- .../com/lingnan/supermarket/dto/InRecord.java | 22 ++- .../lingnan/supermarket/dto/SupplierInf.java | 18 ++- .../lingnan/supermarket/table/InOrderTM.java | 74 +++++----- .../lingnan/supermarket/table/InRecordTM.java | 73 +++++----- .../supermarket/table/InTableModel.java | 130 ++++++++---------- 6 files changed, 165 insertions(+), 163 deletions(-) diff --git a/Supermarket/src/com/lingnan/supermarket/dao/inOrderService.java b/Supermarket/src/com/lingnan/supermarket/dao/inOrderService.java index 293aa66..6ca4286 100644 --- a/Supermarket/src/com/lingnan/supermarket/dao/inOrderService.java +++ b/Supermarket/src/com/lingnan/supermarket/dao/inOrderService.java @@ -1,18 +1,19 @@ package com.lingnan.supermarket.dao; -import java.util.Vector; - import com.lingnan.supermarket.dto.InOrder; +import java.util.Vector; + +// 进货订单服务接口,定义了与进货订单相关的操作 public interface inOrderService { //查询全部进货订单 Vector findAllInOrder (); //查询某个进货订单 InOrder findByIdinOrder (String iNumber); - + //默认princial为a1. 创建时new一个时间插入,总价随机模拟 + // 添加新的进货订单 int addInOrder(String iNumber,float allInPrice ); + // 删除指定的进货订单 int deleteInOrder(String iNumber); - - } diff --git a/Supermarket/src/com/lingnan/supermarket/dto/InRecord.java b/Supermarket/src/com/lingnan/supermarket/dto/InRecord.java index 5bc40f7..24a7c77 100644 --- a/Supermarket/src/com/lingnan/supermarket/dto/InRecord.java +++ b/Supermarket/src/com/lingnan/supermarket/dto/InRecord.java @@ -2,26 +2,40 @@ package com.lingnan.supermarket.dto; import com.lingnan.supermarket.dto.base.BsDomain; -public class InRecord extends BsDomain{ - private String iNumber; - private int sum; - private Float inPrice; +// 表示入库记录的数据传输对象类,继承自BsDomain +public class InRecord extends BsDomain { + private String iNumber; // 入库编号 + private int sum; // 入库总数 + private Float inPrice; // 入库单价 + + // 获取入库编号 public String getiNumber() { return iNumber; } + + // 设置入库编号 public void setiNumber(String iNumber) { this.iNumber = iNumber; } + + // 获取入库总数 public int getSum() { return sum; } + + // 设置入库总数 public void setSum(int sum) { this.sum = sum; } + + // 获取入库单价 public Float getInPrice() { return inPrice; } + + // 设置入库单价 public void setInPrice(Float inPrice) { this.inPrice = inPrice; } } + diff --git a/Supermarket/src/com/lingnan/supermarket/dto/SupplierInf.java b/Supermarket/src/com/lingnan/supermarket/dto/SupplierInf.java index 96c027a..a5dbb2c 100644 --- a/Supermarket/src/com/lingnan/supermarket/dto/SupplierInf.java +++ b/Supermarket/src/com/lingnan/supermarket/dto/SupplierInf.java @@ -2,22 +2,20 @@ package com.lingnan.supermarket.dto; import com.lingnan.supermarket.dto.base.BaseDomain; - +// 供应商信息类,继承自BaseDomain public class SupplierInf extends BaseDomain{ - private String name; - private String address; - private String contact; - private String email; + private String name; // 供应商名称 + private String address; // 供应商地址 + private String contact; // 供应商联系人 + private String email; // 供应商电子邮件 public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } - private int delmark; - - - + private int delmark; // 删除标记 + public int getDelmark() { return delmark; } @@ -42,4 +40,4 @@ public class SupplierInf extends BaseDomain{ public void setContact(String contact) { this.contact = contact; } - } +} diff --git a/Supermarket/src/com/lingnan/supermarket/table/InOrderTM.java b/Supermarket/src/com/lingnan/supermarket/table/InOrderTM.java index 60934ee..e662052 100644 --- a/Supermarket/src/com/lingnan/supermarket/table/InOrderTM.java +++ b/Supermarket/src/com/lingnan/supermarket/table/InOrderTM.java @@ -1,69 +1,70 @@ package com.lingnan.supermarket.table; -import java.util.List; -import java.util.Vector; - -import javax.swing.JFrame; -import javax.swing.table.AbstractTableModel; - -import com.lingnan.supermarket.dto.Buffer; +import com.lingnan.supermarket.dao.impl.inOrderServiceImpl; +import com.lingnan.supermarket.dao.impl.productionImpl; import com.lingnan.supermarket.dto.InOrder; -import com.lingnan.supermarket.dto.Buffer; -import com.lingnan.supermarket.dto.Production; -import com.lingnan.supermarket.dto.User; -import com.lingnan.supermarket.dao.UserService; -import com.lingnan.supermarket.dao.impl.*; -import com.lingnan.supermarket.dialog.InDialog; +import javax.swing.table.AbstractTableModel; +import java.util.Vector; +// 定义InOrderTM类,继承自AbstractTableModel public class InOrderTM extends AbstractTableModel{ - + + // 定义列名数组 private String [] columnName = {"订单号","总价","时间","负责人","状态"}; + // 实例化生产实现类 private productionImpl prodDao = new productionImpl(); - + + // 用于存储InOrder对象的向量 private Vector InOrders; + // 实例化入库订单服务实现类 private inOrderServiceImpl inOrderImpl= new inOrderServiceImpl(); + // 用于存储当前操作的InOrder对象 private InOrder inOrder ; - + + // 用于存储当前操作的订单号 String iNumber ;/*订单号*/ - - + + // 获取所有入库订单记录 public void allInOrderRecord() { - //将添加的商品加入到静态变量Vector数组中 + // 将添加的商品加入到静态变量Vector数组中 /*prod = InDialog.getProduction();*/ InOrders = inOrderImpl.findAllInOrder(); } - - //查找分类结果 + + // 根据分类查找结果 public void resultOfFind(int catalog) { if(catalog==0) InOrders = inOrderImpl.findAllInOrder(); else InOrders = inOrderImpl.FindStatus(catalog); } - - //根据订单查找 + + // 根据订单号查找 public void resultOfNumber(String Number) { InOrders=new Vector(); inOrder = inOrderImpl.findByIdinOrder(Number); InOrders.add(inOrder); } + // 返回表格行数 @Override public int getRowCount() { return InOrders.size(); } - -/* public Float getAllPrice() { - return BufferImpl.InBufferAllPrice(); - } -*/ + + /* public Float getAllPrice() { + return BufferImpl.InBufferAllPrice(); + } + */ + // 返回列数 @Override - public int getColumnCount() { + public int getColumnCount() { return columnName.length; } + // 获取指定单元格的值 @Override public Object getValueAt(int rowIndex, int columnIndex) { inOrder = InOrders.get(rowIndex); @@ -76,7 +77,7 @@ public class InOrderTM extends AbstractTableModel{ }else if(columnIndex==1) { return inOrder.getAllInPrice(); }else if(columnIndex==2) { - return inOrder.getInDate(); + return inOrder.getInDate(); }else if(columnIndex==3) { return inOrder.getPrincipal(); }else if(columnIndex==4) { @@ -92,16 +93,17 @@ public class InOrderTM extends AbstractTableModel{ return null; } } - + + // 返回要修改或删除的记录的订单号 public String getINumber() { /*返回要修改或删除的记录*/ return iNumber; } - - + + // 返回指定列的列名 @Override public String getColumnName(int column) { return columnName[column]; } - - -} + + +} \ No newline at end of file diff --git a/Supermarket/src/com/lingnan/supermarket/table/InRecordTM.java b/Supermarket/src/com/lingnan/supermarket/table/InRecordTM.java index 8bb0ad9..ee3dbef 100644 --- a/Supermarket/src/com/lingnan/supermarket/table/InRecordTM.java +++ b/Supermarket/src/com/lingnan/supermarket/table/InRecordTM.java @@ -1,62 +1,60 @@ package com.lingnan.supermarket.table; -import java.util.List; -import java.util.Vector; - -import javax.swing.JFrame; -import javax.swing.table.AbstractTableModel; - -import com.lingnan.supermarket.dto.Buffer; -import com.lingnan.supermarket.dto.InOrder; +import com.lingnan.supermarket.dao.impl.inRecordServiceImpl; +import com.lingnan.supermarket.dao.impl.productionImpl; import com.lingnan.supermarket.dto.InRecord; -import com.lingnan.supermarket.dto.Buffer; -import com.lingnan.supermarket.dto.Production; -import com.lingnan.supermarket.dto.User; -import com.lingnan.supermarket.dao.UserService; -import com.lingnan.supermarket.dao.impl.*; -import com.lingnan.supermarket.dialog.InDialog; +import javax.swing.table.AbstractTableModel; +import java.util.Vector; +// 定义InRecordTM类,继承自AbstractTableModel public class InRecordTM extends AbstractTableModel{ - + + // 定义列名数组 private String [] columnName = {"订单号","id","数量","金额"}; + // 实例化生产实现类 private productionImpl prodDao = new productionImpl(); - + + // 用于存储InRecord对象的向量 private Vector InRecords; - + // 实例化入库记录服务实现类 private inRecordServiceImpl inRecordImpl = new inRecordServiceImpl(); + // 用于存储当前操作的InRecord对象 private InRecord inRecord= new InRecord(); - + // 用于存储当前操作的订单号 private String iNumber ;/*订单号*/ - - + + // 构造方法,接收一个订单号作为参数 public InRecordTM(String iNumber) { this.iNumber=iNumber; } - + + // 根据订单号查找入库记录 public void findInRecordByINumber() { - //将添加的商品加入到静态变量Vector数组中 + // 将添加的商品加入到静态变量Vector数组中 /*prod = InDialog.getProduction();*/ InRecords = inRecordImpl.findByIdinRecord(iNumber); } - - + + // 返回表格行数 @Override public int getRowCount() { return InRecords.size(); } - -/* public Float getAllPrice() { - return BufferImpl.InBufferAllPrice(); - } -*/ + + /* public Float getAllPrice() { + return BufferImpl.InBufferAllPrice(); + } + */ + // 返回列数 @Override - public int getColumnCount() { + public int getColumnCount() { return columnName.length; } + // 获取指定单元格的值 @Override public Object getValueAt(int rowIndex, int columnIndex) { inRecord = InRecords.get(rowIndex); @@ -69,23 +67,24 @@ public class InRecordTM extends AbstractTableModel{ }else if(columnIndex==1) { return inRecord.getId(); }else if(columnIndex==2) { - return inRecord.getSum(); + return inRecord.getSum(); }else if(columnIndex==3) { return inRecord.getInPrice(); }else { return null; } } - + + // 返回要修改或删除的记录的订单号 public String getINumber() { /*返回要修改或删除的记录*/ return iNumber; } - - + + // 返回指定列的列名 @Override public String getColumnName(int column) { return columnName[column]; } - - -} + + +} \ No newline at end of file diff --git a/Supermarket/src/com/lingnan/supermarket/table/InTableModel.java b/Supermarket/src/com/lingnan/supermarket/table/InTableModel.java index b8f28ad..8deb7ee 100644 --- a/Supermarket/src/com/lingnan/supermarket/table/InTableModel.java +++ b/Supermarket/src/com/lingnan/supermarket/table/InTableModel.java @@ -1,99 +1,87 @@ -package com.lingnan.supermarket.table; +package com.lingnan.supermarket.table; // 定义包名 -import java.util.List; -import java.util.Vector; +import com.lingnan.supermarket.dao.impl.productionImpl; +import com.lingnan.supermarket.dto.Production; -import javax.swing.JFrame; import javax.swing.table.AbstractTableModel; +import java.util.Vector; +// 定义InTableModel类,继承自AbstractTableModel +public class InTableModel extends AbstractTableModel { -import com.lingnan.supermarket.dto.InOrder; - -import com.lingnan.supermarket.dto.Production; -import com.lingnan.supermarket.dto.User; -import com.lingnan.supermarket.dao.UserService; -import com.lingnan.supermarket.dao.impl.*; -import com.lingnan.supermarket.dialog.InDialog; - + // 列名数组 + private String[] columnName = {"id", "名称", "数量", "单价", "价格", "保质期", "类别", "供应商id"}; + // 声明生产实现类的实例 + private productionImpl prodDao = new productionImpl(); -public class InTableModel extends AbstractTableModel{ - - - private String [] columnName = {"id","名称","数量","单价","价格","保质期","类别","供应商id"}; + // 用于存储Production对象的向量 + private Vector v; - private productionImpl prodDao = new productionImpl(); - - private Vector v; + // 用于存储选中记录的id + String id; - - String id ; - - + // 构造方法,接收一个Production的向量作为参数 public InTableModel(Vector v) { - System.out.println("调用imtablemodel里面的构造函数"); - this.v=v; + System.out.println("调用InTableModel里面的构造函数"); + this.v = v; // 将传入的向量赋值给实例变量 } - - - + + // 返回表格行数 public int getRowCount() { - return v.size(); + return v.size(); // 向量的大小即为行数 } - + + // 计算并返回所有商品的总价格 public Float getAllPrice() { - Float allPrice=(float) 0; - for(Production p:v) { - allPrice+=p.getPrice(); + Float allPrice = (float) 0; // 初始化总价格为0 + for (Production p : v) { // 遍历每个Production对象 + allPrice += p.getPrice(); // 累加单个产品的价格 } - return allPrice; + return allPrice; // 返回总价格 } + // 返回列数 @Override - public int getColumnCount() { - return columnName.length; + public int getColumnCount() { + return columnName.length; // 列数为列名数组的长度 } + // 获取指定单元格的值 @Override public Object getValueAt(int rowIndex, int columnIndex) { - Production p = v.get(rowIndex); -/* System.out.println( "id="+users.get(rowIndex).getId()); - System.out.println("rowIndex"+rowIndex); - System.out.println("columnIndex"+columnIndex);*/ - id=p.getId(); - if(columnIndex==0) { - return p.getId(); - }else if(columnIndex==1) { - return p.getName(); - }else if(columnIndex==2) { - return p.getSum(); - }else if(columnIndex==3) { - return p.getInPrice() ; - }else if(columnIndex==4) { - return p.getPrice() ; - }else if(columnIndex==5) { - return p.getLife(); - }else if(columnIndex==6) { - return p.getName2()+p.getId2(); - }else if(columnIndex==7) { - return p.getSupplyId(); - }else { - return null; + Production p = v.get(rowIndex); // 获取行索引对应的Production对象 + id = p.getId(); // 获取产品ID + // 根据列索引返回相应的属性值 + if (columnIndex == 0) { + return p.getId(); // 返回ID + } else if (columnIndex == 1) { + return p.getName(); // 返回名称 + } else if (columnIndex == 2) { + return p.getSum(); // 返回数量 + } else if (columnIndex == 3) { + return p.getInPrice(); // 返回单价 + } else if (columnIndex == 4) { + return p.getPrice(); // 返回价格 + } else if (columnIndex == 5) { + return p.getLife(); // 返回保质期 + } else if (columnIndex == 6) { + return p.getName2() + p.getId2(); // 返回类别 + } else if (columnIndex == 7) { + return p.getSupplyId(); // 返回供应商ID + } else { + return null; // 其他情况返回null } } - - public String getId() { /*返回要修改或删除的记录*/ - return id; + + // 返回要修改或删除的记录的ID + public String getId() { + return id; // 返回当前选中记录的ID } - - + + // 返回指定列的列名 @Override public String getColumnName(int column) { - return columnName[column]; + return columnName[column]; // 返回列名 } - - - - - -} +} \ No newline at end of file