📄 updatecourseinfohandler.java
字号:
//修改课程信息。在修改课程信息的过程中,可以修改除课程编号外的其它课程信息数据项。
//如果修改专业编号数据项,判断该课程是否已经成为开设的课程,即判断该课程是否存在于课程成绩信息中,
//如果存在,则不允许修改;如果不存在,允许修改。但是新的专业编号必须是专业信息中存在的专业编号,
//同时开课信息和选课信息中的原课程编号作废。
package jin.handler;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.util.*;
import jin.internalFrame.*;
import jin.dao.*;
import jin.bean.*;
public class UpdateCourseInfoHandler
{
private UpdateCourseInfo updateCourseInfo;
//private JTextField field;
private JComboBox[] comboBoxs;
private JComboBox comboBox;
private JTextField textField;
public UpdateCourseInfoHandler(UpdateCourseInfo updateCouresInf)
{
this.updateCourseInfo=updateCouresInf;
//field=updateCourseInfo.getField();
comboBoxs=updateCourseInfo.getComboBoxs();
String sql1="select * from courseInfo";
CourseInfoDAO courseInfoDAO=new CourseInfoDAO();
ArrayList courseList=courseInfoDAO.excuteQuery(sql1);
CourseInfoBean courseInfoBean=null;
for(int i=0;i<courseList.size();i++)
{
courseInfoBean=(CourseInfoBean)courseList.get(i);
comboBoxs[0].addItem(courseInfoBean.getCourseID());
}
comboBoxs[1].addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
if(comboBoxs[1].getSelectedItem().toString().trim().equals("专业编号"))
{
comboBox=new JComboBox();
JLabel label=new JLabel("请选择新的专业编号 ");
updateCourseInfo.getPanel().add(label);
String sql1="select * from courseInfo where courseID='"+comboBoxs[0].getSelectedItem().toString().trim()+"'";
CourseInfoDAO courseInfoDAO=new CourseInfoDAO();
ArrayList courseList=courseInfoDAO.excuteQuery(sql1);
//System.out.println("大小:"+courseList.size());
CourseInfoBean courseInfoBean=null;
if(courseList.size()!=0)
{
courseInfoBean=(CourseInfoBean)courseList.get(0);
}
String sql2="select * from majorInfo where not majorID='"+courseInfoBean.getMajorID()+"'";
MajorInfoDAO majorInfoDAO=new MajorInfoDAO();
ArrayList majorList=majorInfoDAO.excuteQuery(sql2);
MajorInfoBean majorInfoBean=null;
for(int i=0;i<majorList.size();i++)
{
majorInfoBean=(MajorInfoBean)majorList.get(i);
comboBox.addItem(majorInfoBean.getMajorID());
}
updateCourseInfo.getPanel().add(comboBox);
}
if(!comboBoxs[1].getSelectedItem().toString().trim().equals("专业编号"))
{
JLabel label=new JLabel("请输入新值: ");
textField=new JTextField(8);
updateCourseInfo.getPanel().add(label);
updateCourseInfo.getPanel().add(textField);
}
updateCourseInfo.setSize(350,251);
}
}
);
updateCourseInfo.getButtonsPanel().getButton(0).addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
if(comboBoxs[1].getSelectedItem().toString().trim().equals("专业编号"))
{
boolean BOK=false;
String sql1="select * from courseScoreInfo where courseID='"+comboBoxs[0].getSelectedItem().toString().trim()+"'";
CourseScoreInfoDAO courseScoreInfoDAO=new CourseScoreInfoDAO();
ArrayList courScoList=courseScoreInfoDAO.excuteQuery(sql1);
//System.out.println("大小:"+courseList.size());
//CourseInfoBean courseInfoBean=null;
if(courScoList!=null && courScoList.size()>0)
{
JOptionPane.showMessageDialog(null,"该课程已开设,不能修改!");
updateCourseInfo.setVisible(false);
}
else
{
String sql2="update courseInfo set courseID='"+(comboBoxs[0].getSelectedItem().toString().trim()+'u')+"',majorID='"+comboBox.getSelectedItem().toString().trim()+"' where courseID='"+comboBoxs[0].getSelectedItem().toString().trim()+"'";
CourseInfoDAO courseInfoDAO=new CourseInfoDAO();
BOK=courseInfoDAO.update(sql2);
if(BOK)
{
StringBuffer buffer=new StringBuffer();
String str=comboBoxs[0].getSelectedItem().toString().trim();
for(int i=0;i<str.length();i++)
{
if(str.charAt(i)!='u')
{
buffer.append(str.charAt(i));
}
}
String openCourID=new String(buffer);
String sql3="select * from openCourseInfo where openCourseID like '"+(openCourID+'%')+"'";
OpenCourseInfoDAO openCourseInfoDAO=new OpenCourseInfoDAO();
ArrayList openCourList=openCourseInfoDAO.excuteQuery(sql3);
OpenCourseInfoBean openCourseInfoBean=(OpenCourseInfoBean)openCourList.get(0);
System.out.println("大小:"+openCourList.size());
System.out.println(openCourseInfoBean.getOpenCourseID());
StringBuffer sb=new StringBuffer();
for(int j=0;j<openCourseInfoBean.getOpenCourseID().length();j++)
{
sb.append(openCourseInfoBean.getOpenCourseID().charAt(j));
}
sb.append('u');
String value=new String(sb);
System.out.println("新课程号"+value);
String sql4="update openCourseInfo set openCourseID='"+value+"',courseID='"+(comboBoxs[0].getSelectedItem().toString().trim()+'u')+"' where openCourseID like '"+(openCourID+'%')+"'";
BOK=openCourseInfoDAO.update(sql4);
if(BOK)
{
String sql5="update choiceCourseInfo set openCourseID='"+value+"' where openCourseID like '"+(openCourID+'%')+"'";
ChoiceCourseInfoDAO choiceCourseInfoDAO=new ChoiceCourseInfoDAO();
BOK=choiceCourseInfoDAO.update(sql5);
if(BOK)
{
JOptionPane.showMessageDialog(null,"修改课程信息成功!");
}
else
{
JOptionPane.showMessageDialog(null,"修改课程信息失败!");
}
}
else
{
JOptionPane.showMessageDialog(null,"修改课程信息失败!");
}
}
else
{
JOptionPane.showMessageDialog(null,"修改课程信息失败!");
}
}
updateCourseInfo.setVisible(false);
}
else if(comboBoxs[1].getSelectedItem().toString().trim().equals("课程名称"))
{
System.out.println("新值"+textField.getText());
String sql1="update courseInfo set courseName='"+textField.getText().trim()+"' where courseID='"+comboBoxs[0].getSelectedItem().toString().trim()+"'";
CourseInfoDAO courseInfoDAO=new CourseInfoDAO();
boolean BOK=courseInfoDAO.update(sql1);
if(BOK)
{
JOptionPane.showMessageDialog(null,"修改课程信息成功!");
}
else
{
JOptionPane.showMessageDialog(null,"修改课程信息失败!");
}
}
else if(comboBoxs[1].getSelectedItem().toString().trim().equals("状态"))
{
String sql1="update courseInfo set state='"+textField.getText().trim()+"' where courseID='"+comboBoxs[0].getSelectedItem().toString().trim()+"'";
CourseInfoDAO courseInfoDAO=new CourseInfoDAO();
boolean BOK=courseInfoDAO.update(sql1);
if(BOK)
{
JOptionPane.showMessageDialog(null,"修改课程信息成功!");
}
else
{
JOptionPane.showMessageDialog(null,"修改课程信息失败!");
}
}
updateCourseInfo.setVisible(false);
}
}
);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -