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

📄 readers.java

📁 图书管理系统,B/S,C/S都有,附有源代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
          readerinfo.setReaderSex(rs.getString(3));
          readerinfo.setReaderWP(rs.getString(4));
          readerinfo.setReaderLocked(rs.getString(5));
          readerinfo.setReaderPower(rs.getString(6));
          readerinfo.setReaderCT(rs.getString(7));
          readerinfo.setReaderAvail(rs.getString(8));
          readerinfo.setReaderPhone(rs.getString(9));
          readerinfo.setReaderComment(rs.getString(10));
          readerList.add(readerinfo);
          rs.next();
          i++;
        }
        rs.close();
        return true;
      }
      catch (SQLException e) {
        errMsg = "搜索完毕,没有搜索到结果,请更改搜索条件后再尝试!";
        return false;
      }
      finally {
        //关闭数据库连接
        db.close();
      }
    }
    else {
      errMsg = "管理编号为 " + supervisor + " 的管理员没有权限查询读者!";
      return false;
    }

  }

  public boolean addReader(HttpServletRequest res, HttpSession ses) throws
      Exception {

    DataBase db = new DataBase();
    admin admin = new admin();

    //获取页面请求信息
    request = res;

    //从SESSION中获取管理员ID
    session = ses;
    String supervisor = db.toSql( (String) session.getAttribute("supervisor"));

    if (admin.isAdminSR(supervisor)) {

      //产生新的读者编号
      String readerSN = createReaderSN();
      if (readerSN.equals("0000000")) {
        errMsg = "无法产生新的读者编号,无法添加新读者,请联系高级管理员!";
        return false;
      }

      //获取页面请求
      readerName = request.getParameter("readerName");
      readerSex = request.getParameter("readerSex");
      readerWP = request.getParameter("readerWP");
      readerLocked = request.getParameter("readerLocked");
      readerPower = request.getParameter("readerPower");
      readerCT = request.getParameter("readerCT");
      readerAvail = request.getParameter("readerAvail");
      readerPhone = request.getParameter("readerPhone");
      readerComment = request.getParameter("readerComment");

      try {

        //添加读者信息
        db.prepareStatement("insert into Reader values(?,?,?,?,?,?,?,?,?,?)");
        db.setString(1, readerSN);
        db.setString(2, readerName);
        db.setString(3, readerSex);
        db.setString(4, readerWP);
        db.setString(5, readerLocked);
        db.setString(6, readerPower);
        db.setString(7, readerCT);
        db.setString(8, readerAvail);
        db.setString(9, readerPhone);
        db.setString(10, readerComment);
        db.executeUpdate();
        return true;
      }
      catch (SQLException e) {
        errMsg = "添加读者失败,无法写入数据库!";
        return false;
      }
      finally {
        db.close();
      }
    }
    else {
      errMsg = "管理编号为 " + supervisor + " 的管理员没有权限添加读者!";
      return false;
    }

  }

  public boolean delReader(HttpServletRequest res, HttpSession ses) throws
      Exception {

    DataBase db = new DataBase();
    admin admin = new admin();

    //获取页面请求信息
    request = res;
    String newReaderSN = db.toSql(request.getParameter("readerSN"));

    //从SESSION中获取管理员ID
    session = ses;
    String supervisor = db.toSql( (String) session.getAttribute("supervisor"));

    //检查管理员是否有权限删除读者
    if (admin.isAdminRO(supervisor)) {
      //查询读者是否有未还图书
      db.prepareStatement("select 读者编号 from Reader where 读者编号 = ?");
      db.setString(1, newReaderSN);
      ResultSet rs = db.executeQuery();
      if (rs.next()) {
        //查询读者是否有未还图书
        db.prepareStatement("select 图书编号 from Borrow where 读者编号 = ?");
        db.setString(1, newReaderSN);
        rs = db.executeQuery();
        if (!rs.next()) {
          //删除读者
          db.prepareStatement("delete from Reader where 读者编号 = ?");
          db.setString(1, newReaderSN);
          db.executeUpdate();
          //关闭数据库连接
          rs.close();
          db.close();
          return true;
        }
        else {
          rs.close();
          db.close();
          errMsg = "读者编号为 " + newReaderSN + " 的读者有未归还的图书,图书必须全部归还后才允许删除读者!";
          return false;
        }
      }
      else {
        rs.close();
        db.close();
        errMsg = "读者编号为 " + newReaderSN + " 的读者不存在,请确认无误后再尝试!";
        return false;
      }
    }
    else {
      db.close();
      errMsg = "管理编号为 " + supervisor + " 的管理员没有权限删除图书!";
      return false;
    }

  }

  public boolean updateReader(HttpServletRequest res, HttpSession ses) throws
      Exception {

    DataBase db = new DataBase();
    admin admin = new admin();

    //获取页面请求信息
    request = res;

    //从SESSION中获取管理员ID
    session = ses;
    String supervisor = db.toSql( (String) session.getAttribute("supervisor"));

    if (admin.isAdminRO(supervisor)) {

      //获取页面请求信息
      readerSN = request.getParameter("readerSN");
      readerName = request.getParameter("readerName");
      readerSex = request.getParameter("readerSex");
      readerWP = request.getParameter("readerWP");
      readerLocked = request.getParameter("readerLocked");
      readerPower = request.getParameter("readerPower");
      readerCT = request.getParameter("readerCT");
      readerAvail = request.getParameter("readerAvail");
      readerPhone = request.getParameter("readerPhone");
      readerComment = request.getParameter("readerComment");

      try {
        //修改读者信息
        db.prepareStatement("update Reader set 读者姓名 = ?, 性别 = ?, 单位 = ?, 是否锁定 = ?, 借阅权限 = ?, 创建时间 = ?, 有效期限 = ?, 联系电话 = ?, 备注 = ? where 读者编号 = ?");
        db.setString(1, readerName);
        db.setString(2, readerSex);
        db.setString(3, readerWP);
        db.setString(4, readerLocked);
        db.setString(5, readerPower);
        db.setString(6, readerCT);
        db.setString(7, readerAvail);
        db.setString(8, readerPhone);
        db.setString(9, readerComment);
        db.setString(10, readerSN);
        db.executeUpdate();
        return true;
      }
      catch (SQLException e) {
        errMsg = "修改读者信息失败,请检查各项读者数据无误后再尝试!";
        return false;
      }
      finally {
        //关闭数据库连接
        db.close();
      }
    }
    else {
      errMsg = "管理编号为 " + supervisor + " 的管理员没有权限修改读者信息!";
      return false;
    }

  }

  public boolean getReaderPower(String newReaderSN) throws
      Exception {
    DataBase db = new DataBase();
    db.prepareStatement("select * from ReaderLevel where 借阅权限 = (select 借阅权限 from Reader where 读者编号 = ?)");
    db.setString(1, newReaderSN);
    ResultSet rs = db.executeQuery();
    if (rs.next()) {
      RPBC = Integer.parseInt(rs.getString(2)); //限借书数
      RPBT = Integer.parseInt(rs.getString(3)); //借阅期限
      RPCC = Integer.parseInt(rs.getString(4)); //续借次数
      RPCT = Integer.parseInt(rs.getString(5)); //续借期限
      return true;
    }
    else {
      return false;
    }
  }

  public boolean isExpReader(String newReaderSN) throws
      Exception {
    DataBase db = new DataBase();
    DateTime dt = new DateTime();
    db.prepareStatement("select 创建时间,有效期限 from Reader where 读者编号 = ?");
    db.setString(1, db.toSql(newReaderSN));
    ResultSet rs = db.executeQuery();
    rs.next();
    String newDate = rs.getString(1); //限借书数
    int newYear = Integer.parseInt(rs.getString(2)); //借阅期限
    String newExpDate = dt.gainYear(newDate, newYear);
    if (dt.isExp(newExpDate)) {
      return true;
    }
    else {
      return false;
    }
  }

  public boolean isBBRL(String newReaderSN) throws Exception {
    DataBase db = new DataBase();

    //获取该读者的限借书数
    db.prepareStatement("select 限借书数 from ReaderLevel where 借阅权限 = (select 借阅权限 from Reader where 读者编号 = ?)");
    db.setString(1, db.toSql(newReaderSN));
    ResultSet rs = db.executeQuery();
    rs.next();
    int newRPBC = Integer.parseInt(rs.getString(1));

    //获取该读者的已借书数
    db.prepareStatement("select 图书编号 from Borrow where 读者编号 = ?");
    db.setString(1, db.toSql(newReaderSN));
    rs = db.executeQuery();
    rs.last();
    int newBBS = rs.getRow();

    if (newBBS >= newRPBC) {
      return true;
    }
    else {
      return false;
    }
  }
}

⌨️ 快捷键说明

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