package com.lingnan.supermarket.table; // 声明当前类所在的包 import java.util.List; // 导入List接口,用于表示列表 import java.util.Vector; // 导入Vector类,用于实现可增长的对象数组 import javax.swing.JFrame; // 导入JFrame类,用于创建窗口框架 import javax.swing.table.AbstractTableModel; // 导入AbstractTableModel类,用于创建表格模型 import com.lingnan.supermarket.dto.Buffer; // 导入Buffer类,可能用于临时数据存储 import com.lingnan.supermarket.dto.InOrder; // 导入InOrder类,表示进货订单 import com.lingnan.supermarket.dto.InRecord; // 导入InRecord类,表示进货记录 import com.lingnan.supermarket.dto.Buffer; // 重复导入Buffer类,可能是错误,应该删除 import com.lingnan.supermarket.dto.Production; // 导入Production类,表示产品 import com.lingnan.supermarket.dto.User; // 导入User类,表示用户 import com.lingnan.supermarket.dao.UserService; // 导入UserService接口,用于用户数据访问 import com.lingnan.supermarket.dao.impl.*; // 导入所有实现类,可能用于数据访问层的具体实现 import com.lingnan.supermarket.dialog.InDialog; // 导入InDialog类,可能用于显示进货对话框 public class InRecordTM extends AbstractTableModel{ // 定义一个类,继承自AbstractTableModel,用于创建进货记录表格数据模型 private String [] columnName = {"订单号","id","数量","金额"}; // 定义列名数组,用于表格的列标题 private productionImpl prodDao = new productionImpl(); // 创建productionImpl实例,用于操作产品数据 private Vector InRecords; // 声明一个Vector类型的变量,用于存储进货记录 private inRecordServiceImpl inRecordImpl = new inRecordServiceImpl(); // 创建inRecordServiceImpl实例,用于操作进货记录数据 private InRecord inRecord= new InRecord(); // 创建InRecord实例,用于存储单条进货记录 private String iNumber ;/*订单号*/ // 声明一个String变量,用于存储订单号 public InRecordTM(String iNumber) { // 构造函数,接收订单号参数 this.iNumber=iNumber; // 将传入的订单号赋值给类的成员变量 } public void findInRecordByINumber() { // 根据订单号查找进货记录的方法 //将添加的商品加入到静态变量Vector数组中 /*prod = InDialog.getProduction();*/ InRecords = inRecordImpl.findByIdinRecord(iNumber); // 根据订单号查询进货记录并赋值给InRecords } @Override public int getRowCount() { // 重写方法,获取表格的行数 return InRecords.size(); // 返回InRecords的大小 } /* public Float getAllPrice() { return BufferImpl.InBufferAllPrice(); } */ @Override public int getColumnCount() { // 重写方法,获取表格的列数 return columnName.length; // 返回columnName数组的长度 } @Override public Object getValueAt(int rowIndex, int columnIndex) { // 重写方法,获取指定单元格的值 inRecord = InRecords.get(rowIndex); // 获取指定行的进货记录 /* System.out.println( "id="+users.get(rowIndex).getId()); System.out.println("rowIndex"+rowIndex); System.out.println("columnIndex"+columnIndex);*/ iNumber=inRecord.getiNumber(); // 获取订单号 if(columnIndex==0) { return inRecord.getiNumber(); // 返回订单号 }else if(columnIndex==1) { return inRecord.getId(); // 返回id }else if(columnIndex==2) { return inRecord.getSum(); // 返回数量 }else if(columnIndex==3) { return inRecord.getInPrice(); // 返回金额 }else { return null; // 如果列索引不匹配,返回null } } public String getINumber() { // 返回要修改或删除的记录的订单号 return iNumber; // 返回类的成员变量iNumber } @Override public String getColumnName(int column) { // 重写方法,获取指定列的列名 return columnName[column]; // 返回columnName数组中指定索引的值 } }