You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
test/branch_zyx/StorageTableModel.java

75 lines
2.6 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

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数组中指定索引的值
}
}