package action;

import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import models.Course;
import models.Course_teacher;
import models.Student;
import models.Student_course;
import models.Teacher;

import org.apache.struts2.ServletActionContext;

import service.TeacherService;

import com.opensymphony.xwork2.ActionContext;

public class TeacherAction {
	private HttpServletRequest request;
	private Teacher newteacher;
	private TeacherService teacherservice;

	
	
	public HttpServletRequest getRequest() {
		return request;
	}



	public void setRequest(HttpServletRequest request) {
		this.request = request;
	}



	public Teacher getNewteacher() {
		return newteacher;
	}



	public void setNewteacher(Teacher newteacher) {
		this.newteacher = newteacher;
	}



	public TeacherService getTeacherservice() {
		return teacherservice;
	}



	public void setTeacherservice(TeacherService teacherservice) {
		this.teacherservice = teacherservice;
	}



	public String execute() throws Exception {       //教师可选课程 
		ActionContext.getContext().getSession().put("teacher", newteacher);
		teacherservice.updateTeachInfo(newteacher);
		return "success";
	}
	public String selectCourse(){
		request=ServletActionContext.getRequest();
		HttpSession session=request.getSession();
		Teacher teacher=(Teacher)session.getAttribute("teacher");
		
			List<Course_teacher> course_selected=teacherservice.hasSelect(teacher);//得到已经选择过的课程
			System.out.println(course_selected.size());
			
		
		List<Course> all=teacherservice.getAll();   //保存所有课程
		ArrayList<Integer> selected=new ArrayList<Integer>();   //记录已经选择的课程id
		ArrayList<Integer> allcourse=new ArrayList<Integer>();   //记录所有课程的id
		for(int i=0;i<course_selected.size();i++){
			Integer a=course_selected.get(i).getCourse().getCId();
			selected.add(a);
		}
		for(int i=0;i<all.size();i++){
			Integer b=all.get(i).getCId();
			allcourse.add(b);
		}
		for (int j = 0; j < selected.size(); j++) {
			if (allcourse.contains(selected.get(j))) {
				allcourse.remove(selected.get(j));          //已经选择过该课程,进行移除

			}

		}
		ArrayList<Integer> rest=allcourse;
		ArrayList<Course> restcourse=new ArrayList<Course>();    //记录教师可以选择的课程
	  for(Course c:all){
		  for(Integer i:rest){
			  if(c.getCId()==i){
				  restcourse.add(c);
			  }
		  }
	  }
	  for(int i=0;i<restcourse.size();i++){
		  Course a=restcourse.get(i);
		  System.out.println("cid为:"+a.getCId());
		  System.out.println("cname为:"+a.getCName());
		  System.out.println("chour为:"+a.getCHour());
		  
	  }
	  request.setAttribute("canSelect", restcourse);
		
	
		
		return "success";
		
	
		
	}
	
	public String  sure(){              //教师确定选择某个课程
		request=ServletActionContext.getRequest();
		HttpSession session=request.getSession();
		Teacher a=(Teacher)session.getAttribute("teacher");
		int t_id=a.getTId();
		String c_id=request.getParameter("cid");
		System.out.println("t_id"+t_id);
		System.out.println("c_id"+c_id);
		Course_teacher ct=new Course_teacher();
		ct.setTeacher(a);
		Course cou=new Course();
		cou.setCId(Integer.parseInt(c_id));
		ct.setCourse(cou);
		
		teacherservice.sureSelect(ct);
	return "success";
	}
	
	
	public String selectResult(){                //选课结果查询
		request=ServletActionContext.getRequest();
		HttpSession session=request.getSession();
		Teacher teacher=(Teacher)session.getAttribute("teacher");
		
			List<Course_teacher> course_selected=teacherservice.hasSelect(teacher);//得到已经选择过的课程

	  request.setAttribute("hasSelect", course_selected);
	  
		return "success";
	}
	
	
	public String cancel(){                 //删除选课结果
		request=ServletActionContext.getRequest();
		HttpSession session=request.getSession();
		Teacher a=(Teacher)session.getAttribute("teacher");
		String ct_id=request.getParameter("ctid");
		
		List<Student_course> list=teacherservice.showOneStu(Integer.parseInt(ct_id));
		if(list.size()==0){
			Course_teacher ct=new Course_teacher();
			ct.setCTId(Integer.parseInt(ct_id));
			
			teacherservice.cancelSelect(ct);
		return "success";
		}
		else return "fail";
		
	}
	
	
	public String showAll(){           //查询授课
		request=ServletActionContext.getRequest();
		HttpSession session=request.getSession();
		Teacher teacher=(Teacher)session.getAttribute("teacher");
		
			List<Course_teacher> course_selected=teacherservice.hasSelect(teacher);//得到已经选择过的课程

	  request.setAttribute("hasSelect", course_selected);
	  
		return "success";
	}
	
	public String showAStudent(){
		request=ServletActionContext.getRequest();
		HttpSession session=request.getSession();
		Teacher teacher=(Teacher)session.getAttribute("teacher");
		String Ctid=request.getParameter("ctid");
		List<Student_course> list=teacherservice.showOneStu(Integer.parseInt(Ctid));
	    request.setAttribute("oneStu", list);
	    return "success";
	}
	
	
	public String showWindow(){
		request=ServletActionContext.getRequest();
		HttpSession session=request.getSession();
		
		String stu_id=request.getParameter("stuid");
		String c_t_id=request.getParameter("ctid");
		String grade=request.getParameter("grade");
		Student a=teacherservice.searchStudent(stu_id);
		
		System.out.println("ctid------------->"+c_t_id);
		session.setAttribute("stuid", stu_id);
		session.setAttribute("ctid", c_t_id);
		session.setAttribute("stuName", a.getStuName());
		request.setAttribute("grade", grade);
		
		return "success";
	}
	public String changeGrade(){
		request=ServletActionContext.getRequest();
		HttpSession session=request.getSession();
//		Teacher a=(Teacher)session.getAttribute("teacher");
		String ctid=(String)session.getAttribute("ctid");
		String stuid=(String)session.getAttribute("stuid");
		String newgrade=(String)request.getParameter("newgrade");
		
		teacherservice.changeGrade(Integer.parseInt(ctid), stuid, Integer.parseInt(newgrade));
		return "success";
		
	}
	
}
最近下载更多
krispeng  LV15 6月1日
571818771  LV3 2024年12月17日
星予宝藏666  LV6 2023年5月27日
海棠花瘦  LV9 2023年5月5日
aaa最代码  LV14 2023年2月27日
LITIANYU084414  LV11 2022年12月30日
weilaizhisheng  LV21 2022年12月5日
yut1an  LV2 2022年10月31日
hdwangxin  LV1 2022年7月7日
bluesky2016  LV15 2022年7月6日
最近浏览更多
暂无贡献等级
ma406805131  LV19 2024年12月26日
571818771  LV3 2024年12月17日
AOAO1234  LV2 2024年12月12日
xuanwomingren 2024年12月9日
暂无贡献等级
liulian666  LV2 2024年7月19日
y_x_happy  LV4 2024年6月7日
sunlea  LV20 2024年5月17日
阿昌先生  LV13 2024年3月26日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友