|
|
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 ProdCatalogTM extends AbstractTableModel{ // 定义一个类,继承自AbstractTableModel,用于产品目录的表格数据模型
|
|
|
|
|
|
private String [] columnName = {"类别id","类别名称","商品id","商品名称"}; // 定义列名数组,用于表格的列标题
|
|
|
|
|
|
private productionImpl prodDao = new productionImpl(); // 创建productionImpl实例,用于操作产品数据
|
|
|
|
|
|
private Vector<Production> prods; // 声明一个Vector,用于存储产品列表
|
|
|
|
|
|
public void all() {
|
|
|
// 查找全部数据
|
|
|
prods = prodDao.findAllproduction(); // 调用findAllproduction方法,获取所有产品数据
|
|
|
}
|
|
|
public void ById2(Production p) {
|
|
|
// 根据类别id查找数据
|
|
|
prods = prodDao.findProductionById2(p.getId2()); // 调用findProductionById2方法,根据类别id获取产品数据
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public int getRowCount() {
|
|
|
return prods.size(); // 返回产品列表的大小,即表格的行数
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public int getColumnCount() {
|
|
|
return columnName.length; // 返回列名数组的长度,即表格的列数
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public Object getValueAt(int rowIndex, int columnIndex) {
|
|
|
Production prod = prods.get(rowIndex); // 获取指定行的产品对象
|
|
|
// 以下注释掉的是打印语句,用于调试
|
|
|
/*System.out.println( "id="+users.get(rowIndex).getId());
|
|
|
System.out.println("rowIndex"+rowIndex);
|
|
|
System.out.println("columnIndex"+columnIndex);*/
|
|
|
if(columnIndex==0) {
|
|
|
return prod.getId2(); // 返回类别id
|
|
|
}else if(columnIndex==1) {
|
|
|
return prod.getName2(); // 返回类别名称
|
|
|
}else if(columnIndex==2) {
|
|
|
return prod.getId(); // 返回商品id
|
|
|
}else if(columnIndex==3) {
|
|
|
return prod.getName(); // 返回商品名称
|
|
|
}else {
|
|
|
return null; // 如果列索引不匹配,返回null
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public String getColumnName(int column) {
|
|
|
return columnName[column]; // 返回指定列的列名
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|