package action;

import Bean.*;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.hibernate.Session;
import tools.*;
import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.util.List;

public class Student extends HibernateTools implements ServletRequestAware {
    private int sno;
    private Integer age;
    private Integer classid;
    private String name;
    private String sex;
    private String spd;
    private String spdcheck;
    private String dept;
    private String school;
    private File file;//上传文件的file对象,由拦截器自动填充
    private String fileFileName;//上传文件名,由拦截器自动填充
    private String fileContentType;//上传文件类型,由拦截器自动填充

    private Session session;
    private int update;//判断是添加学生还是更新学生信息
    private List<StudentEntity> stuEntities;
    private int delkey;
    private int updatekey;
    public String addStudent(){
        showStudents();
        if (session==null||!session.isOpen()){
            session=init();
        }
        if (sno==0||age==0||classid==0||name==null||sex==null||spd==null||spdcheck==null||school==null||dept==null){
           addActionError("请输入所有必填内容");
            return update==0?ERROR:"manage";
        }
        if (!spd.equals(spdcheck))
        {
           addActionError("两次密码不相同");
            return update==0?ERROR:"manage";
        }
        StudentEntity stuEntity=session.get(StudentEntity.class, sno);
        if (stuEntity!=null&&update==0){
            addActionError("该生已经存在,无法重复添加");
            return update==0?ERROR:"manage";
        }
        if (session.get(ClassEntity.class, classid)==null){
            addActionError("班级不存在,请检查班级号");
            return update==0?ERROR:"manage";
        }
        if (fileContentType==null||(!fileContentType.equals("image/jpeg")&&!fileContentType.equals("image/jpg"))){
            addActionError("图片格式不正确,请上传jpg格式");
            return update==0?ERROR:"manage";
        }
    if (update==0)//避免出现两个相同的实体
        stuEntity=new StudentEntity();
        stuEntity.setStudentId(sno);
        stuEntity.setAge(age);
        stuEntity.setClassId(classid);
        stuEntity.setName(name);
        stuEntity.setSex(sex);
        stuEntity.setPassword(spd);
        stuEntity.setDept(dept);
        stuEntity.setSchool(school);
        stuEntity.setHeadImg(filetobytes.Filetobyte(file));
        session.saveOrUpdate(stuEntity);
        destory();
        showStudents();
        if (update==1){
            addActionError("修改成功");
            return "update";
        }
        addActionError("添加成功");
        return SUCCESS;
    }

    public String delstudent(){
        showStudents();
        if (session==null||!session.isOpen()){
            session=init();
        }
        if (delkey==0){
           addActionError("未指定删除对象");
            return INPUT;
        }
        StudentEntity stuEntity=session.get(StudentEntity.class, delkey);
        if (stuEntity==null){
           addActionError("该学生已经不存在");
            return ERROR;
        }
        session.delete(stuEntity);
        destory();
        delkey=0;
        addActionError("删除成功");
        showStudents();
        return SUCCESS;
    }
    public String showStudents(){
        if (session==null||!session.isOpen()){
            session=init();
        }
        stuEntities=session.createQuery("from StudentEntity order by studentId").getResultList();
        destory();
        return SUCCESS;
    }

public String premanageStudent(){
        //刷新学生信息
    session=init();
    if (updatekey==0){
        return INPUT;
    }
    StudentEntity stuEntity=session.get(StudentEntity.class, updatekey);
    if (stuEntity==null){
        addActionError("用户不存在,请刷新后重试");
        return ERROR;
    }
    sno=stuEntity.getStudentId();
    name=stuEntity.getName();
    sex=stuEntity.getSex();
    spdcheck=spd=stuEntity.getPassword();
    age=stuEntity.getAge();
    classid=stuEntity.getClassId();
    school=stuEntity.getSchool();
    dept=stuEntity.getDept();
    spd=spdcheck=stuEntity.getPassword();
    destory();
       return SUCCESS;
}

    @Override
    public void setServletRequest(HttpServletRequest httpServletRequest) {

    }

    public int getSno() {
        return sno;
    }

    public void setSno(int sno) {
        this.sno = sno;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public Integer getClassid() {
        return classid;
    }

    public void setClassid(Integer classid) {
        this.classid = classid;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getSpd() {
        return spd;
    }

    public void setSpd(String spd) {
        this.spd = spd;
    }

    public int getUpdatekey() {
        return updatekey;
    }

    public void setUpdatekey(int updatekey) {
        this.updatekey = updatekey;
    }

    public String getSpdcheck() {
        return spdcheck;
    }

    public void setSpdcheck(String spdcheck) {
        this.spdcheck = spdcheck;
    }

    public List<StudentEntity> getStuEntities() {
        return stuEntities;
    }

    public void setStuEntities(List<StudentEntity> stuEntities) {
        this.stuEntities = stuEntities;
    }

    public int getDelkey() {
        return delkey;
    }

    public void setDelkey(int delkey) {
        this.delkey = delkey;
    }

    public int getUpdate() {
        return update;
    }

    public void setUpdate(int update) {
        this.update = update;
    }

    public String getDept() {
        return dept;
    }

    public void setDept(String dept) {
        this.dept = dept;
    }

    public String getSchool() {
        return school;
    }

    public void setSchool(String school) {
        this.school = school;
    }

    public File getHeadImg() {
        return file;
    }

    public void setHeadImg(File file) {
        this.file = file;
    }

    public File getFile() {
        return file;
    }

    public void setFile(File file) {
        this.file = file;
    }

    public String getFileFileName() {
        return fileFileName;
    }

    public void setFileFileName(String fileFileName) {
        this.fileFileName = fileFileName;
    }

    public String getFileContentType() {
        return fileContentType;
    }

    public void setFileContentType(String fileContentType) {
        this.fileContentType = fileContentType;
    }

    public String getHeadImgContentType() {
        return fileContentType;
    }

    public void setHeadImgContentType(String fileContentType) {
        this.fileContentType = fileContentType;
    }
}
最近下载更多
这不是一只柚子吗  LV6 2021年5月24日
feiyang991128  LV4 2021年5月12日
hao liong  LV2 2021年5月3日
wensidy  LV10 2021年4月27日
hahaman  LV5 2021年4月25日
lili010126  LV8 2021年4月2日
184773349  LV8 2021年3月6日
cxy2956  LV1 2021年1月10日
李晓晗  LV1 2021年1月7日
atheking  LV18 2020年12月4日
最近浏览更多
wuyeziye  LV2 11月24日
123568343  LV1 11月17日
无敌大富富富翁  LV2 11月17日
a2831244768  LV4 11月9日
gnnhka  LV8 9月18日
秃头兔 8月11日
暂无贡献等级
Hsy605  LV9 6月20日
2471511401  LV2 6月18日
xuweisong2010  LV27 6月6日
baoligeer  LV5 6月2日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友