⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 datamanager.java

📁 对2000元以上的资产管理
💻 JAVA
字号:
package com.util;

import java.util.List;
import com.cdaccp.entity.Asset;
import javax.swing.table.DefaultTableModel;
import com.cdaccp.entity.LendRecord;
import com.cdaccp.entity.Employee;

/**
 *
 *  数据处理类,界面上的事件处理程序将调用该类的方法
 *  为表格中填充数据
 */
public class DataManager {
  public static int PAGENUMBER = 1; //显示数据的当前页数
  public static int PERPAGECOUNT = 30; //每页显示数据的行数
  public static int PAGECOUNT = 0;

  //显示资产详细信息时数据表格中的表头
  static String[] assetHead = new String[] {
      "资产编号", "资产名称", "大类名称", "小类名称", "价格", "购入日期", "状态", "购入人", "使用状态",
      "备注"};

  //显示资产借用记录时数据表格中的表头
  static String[] lendHead = new String[] {
      "资产编号", "资产名称", "借用编号", "借用人", "借用日期", "归还日期", "借出经手人", "归还经手人", "备注"};

  //显示职工信息的表头
  static String[] employeeHead = new String[] {
      "工号", "姓名", "职位", "备注"};

  //资产信息数据集合,该集合中的数据将作为界面表格的数据
  public static List assetList;
  //借用信息数据集合,当界面选择的查询为“借用记录”时,用它来表示借用记录
  public static List lendList;
//职工信息集合
  public static List employeeList;
  /**
   * 该方法用于为主界面上的TableModel(model)对象填充数据
   * 当需要对主界面的表格更换“资产信息”内容时调用该方法
   * @param model DefaultTableModel 将主界面上的model对象传入
   */
  public static void resetAssetIntoTable(DefaultTableModel model) {
    try {
      PAGECOUNT = (assetList.size() - 1) / PERPAGECOUNT + 1; // 计算总页数
      int begin = (PAGENUMBER - 1) * PERPAGECOUNT; //记录的开始行数
      int end = PAGENUMBER * PERPAGECOUNT; //结束记录的行数
      int lessRecord = assetList.size() - begin; //还有多少行数据可以显示
      //如果list中没有35条记录,size设置成35,否则size的值是list的size()的值
      //保证表格中将会35行
      int size = assetList.size() > 35 ? assetList.size() : 35;
      String[][] info = new String[size][10];
      int lineIndex = 0; //控制二维数组的第一维

//    for (int i = 0; i < assetList.size(); i++) {
      for (int i = begin; i < end && i < (begin + lessRecord); i++) {
        Asset asset = (Asset) assetList.get(i); //将集合中的每个元素强制转换成Asset对象
        info[lineIndex][0] = String.valueOf(asset.getId());
        info[lineIndex][1] = asset.getName();
        info[lineIndex][2] = asset.getCateName();
        info[lineIndex][3] = asset.getSubName();
        info[lineIndex][4] = String.valueOf(asset.getPrice());
        info[lineIndex][5] = asset.getPurchaseDate().substring(0, 19);
        int status = asset.getStatus();
        if (status == 0) {
          info[lineIndex][6] = "正常";
        }
        else if (status == 1) {
          info[lineIndex][6] = "维修";
        }
        else {
          info[lineIndex][6] = "报废";
        }
        info[lineIndex][7] = asset.getUseByName();
        if (asset.getOnUse() == 0) {
          info[lineIndex][8] = "未借出";
        }
        else {
          info[lineIndex][8] = "已借出";
        }
        info[lineIndex][9] = asset.getRemarks();
        lineIndex++;
      }
      //设置数据对象,第一个参数表示数据的二维数组,第二个参数表示表头的一维数组
      model.setDataVector(info, assetHead);
    }
    catch (Exception ex) {
    }
  }

  /**
   * 该方法用于为主界面上的TableModel(model)对象填充数据
   * 当需要对主界面的表格更换“资产借用信息”内容时调用该方法
   * @param model DefaultTableModel 将主界面上的model对象传入
   */
  public static void resetLendIntoTable(DefaultTableModel model) {
    try{
      PAGECOUNT = (lendList.size() - 1) / PERPAGECOUNT + 1; // 计算总页数
      int begin = (PAGENUMBER - 1) * PERPAGECOUNT; //记录的开始行数
      int end = PAGENUMBER * PERPAGECOUNT; //结束记录的行数
      int lessRecord = lendList.size() - begin; //还有多少行数据可以显示
      //如果list中没有35条记录,size设置成35,否则size的值是list的size()的值
      //保证表格中将会35行
      int size = lendList.size() > 35 ? lendList.size() : 35;
      String[][] data = new String[size][9];
      int index = 0;
//    for (int i = 0; i < lendList.size(); i++) {
      for (int i = begin; i < end && i < (begin + lessRecord); i++) {
        LendRecord lend = (LendRecord) lendList.get(i);
        data[index][0] = String.valueOf(lend.getAssetId());
        data[index][1] = lend.getAssetName();
        data[index][2] = String.valueOf(lend.getEmpId());
        data[index][3] = lend.getEmpName();
        data[index][4] = lend.getUsedate().substring(0, 19);
        if (lend.getReturnDate() == null) {
          data[index][5] = "未归还";
        }
        else {
          data[index][5] = lend.getReturnDate().substring(0, 19);
        }
        data[index][6] = String.valueOf(lend.getOutLender());
        if (lend.getInLender() == 0) {
          data[index][7] = "未归还";
        }
        else {
          data[index][7] = String.valueOf(lend.getInLender());
        }
        data[index][8] = lend.getRemarks();
        index++;
      }
      model.setDataVector(data, lendHead);
    }catch(Exception ex){
    }
  }

  //用于在表格里显职工信息
  public static void resurLenEmployee(DefaultTableModel model) {
    int size = employeeList.size() > 15 ? employeeList.size() : 15;
    String[][] data = new String[size][4];
    int index = 0;
    for (int i = 0; i < employeeList.size(); i++) {
      Employee employee = (Employee) employeeList.get(i);
      data[index][0] = String.valueOf(employee.getEmpid());
      data[index][1] = employee.getEmpName();
      data[index][2] = employee.getJopName();
      data[index][3] = employee.getRemarks();
      index++;
    }
    model.setDataVector(data, employeeHead);
  }
//用来在删除资产列表显示资产记录
  public static void delectEesetAssetIntoTable(DefaultTableModel model) {
    //如果list中没有20条记录,size设置成20,否则size的值是list的size()的值
    //保证表格中将会20行
    int size = assetList.size() > 20 ? assetList.size() : 20;
    String[][] info = new String[size][10];
    int lineIndex = 0; //控制二维数组的第一维
    for (int i = 0; i < assetList.size(); i++) {
      Asset asset = (Asset) assetList.get(i); //将集合中的每个元素强制转换成Asset对象
      info[lineIndex][0] = String.valueOf(asset.getId());
      info[lineIndex][1] = asset.getName();
      info[lineIndex][2] = asset.getCateName();
      info[lineIndex][3] = asset.getSubName();
      info[lineIndex][4] = String.valueOf(asset.getPrice());
      info[lineIndex][5] = asset.getPurchaseDate().substring(0, 19);
      int status = asset.getStatus();
      if (status == 0) {
        info[lineIndex][6] = "正常";
      }
      else if (status == 1) {
        info[lineIndex][6] = "维修";
      }
      else {
        info[lineIndex][6] = "报废";
      }
      info[lineIndex][7] = asset.getUseByName();
      if (asset.getOnUse() == 0) {
        info[lineIndex][8] = "未借出";
      }
      else {
        info[lineIndex][8] = "已借出";
      }
      info[lineIndex][9] = asset.getRemarks();
      lineIndex++;
    }
    //设置数据对象,第一个参数表示数据的二维数组,第二个参数表示表头的一维数组
    model.setDataVector(info, assetHead);
  }
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -