|
|
package com.lingnan.supermarket.table; // 包声明,指定当前类所在的包
|
|
|
|
|
|
import java.util.List; // 导入List接口,用于表示列表
|
|
|
import java.util.Vector; // 导入Vector类,用于实现可增长的对象数组
|
|
|
|
|
|
import javax.swing.table.AbstractTableModel; // 导入AbstractTableModel类,用于创建表格模型
|
|
|
|
|
|
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.*; // 导入所有实现类,可能用于数据访问层的具体实现
|
|
|
|
|
|
|
|
|
|
|
|
public class StorageTableModel extends AbstractTableModel{ // 定义一个类,继承自AbstractTableModel,用于存储表格数据模型
|
|
|
|
|
|
private String [] columnName = {"id","名称","保质期","数量","类别","供应商编号"}; // 定义列名数组,用于表格的列标题
|
|
|
|
|
|
private productionImpl prodDao = new productionImpl(); // 创建productionImpl对象,用于操作产品数据
|
|
|
|
|
|
private Vector<Production> prods; // 声明一个Vector,用于存储Production对象列表
|
|
|
|
|
|
public void all() {
|
|
|
// 查找全部数据,并更新prods向量
|
|
|
prods = prodDao.findAllproduction();
|
|
|
}
|
|
|
|
|
|
public void Byname(Production p) {
|
|
|
// 根据产品名称查找数据,并更新prods向量
|
|
|
prods = prodDao.findproduction(p.getName());
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public int getRowCount() {
|
|
|
// 获取表格的行数,即prods向量的元素数量
|
|
|
return prods.size();
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public int getColumnCount() {
|
|
|
// 获取表格的列数,即columnName数组的长度
|
|
|
return columnName.length;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public Object getValueAt(int rowIndex, int columnIndex) {
|
|
|
// 获取指定行和列的单元格值
|
|
|
Production prod = prods.get(rowIndex); // 获取指定行的Production对象
|
|
|
if(columnIndex==0) {
|
|
|
return prod.getId(); // 返回产品ID
|
|
|
}else if(columnIndex==1) {
|
|
|
return prod.getName(); // 返回产品名称
|
|
|
}else if(columnIndex==2) {
|
|
|
return prod.getLife(); // 返回产品保质期
|
|
|
}else if(columnIndex==3) {
|
|
|
return prod.getSum(); // 返回产品数量
|
|
|
}else if(columnIndex==4) {
|
|
|
return prod.getName2()+prod.getId2(); // 返回产品类别和ID的组合
|
|
|
}else if(columnIndex==5) {
|
|
|
return prod.getSupplyId(); // 返回产品供应商编号
|
|
|
}else {
|
|
|
return null; // 如果列索引不匹配,返回null
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public String getColumnName(int column) {
|
|
|
// 获取指定列的列名
|
|
|
return columnName[column]; // 返回columnName数组中指定索引的值
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|