2021-07-21 项目实训-研究生管理系统

教师端毕业申请-外审论文申请

1、.xml文件中的SQL语句

<select id="selectCommittedAllByTeacherIdAndState" resultMap="BaseResultMap">
    select
      *
    from e_review_papers
    where
      tea_id = #{teaId,jdbcType=INTEGER} and state = #{state,jdbcType=VARCHAR}
  </select>
  <update id="updateByPrimaryKeySelective" parameterType="com.sdu.postgraduate.entity.EReviewPapers" >
    update e_review_papers
    <set >
      <if test="state != null" >
        state = #{state,jdbcType=VARCHAR},
      </if>
      <if test="paperTitle != null" >
        paper_title = #{paperTitle,jdbcType=VARCHAR},
      </if>
      <if test="abstractText != null" >
        abstract_text = #{abstractText,jdbcType=VARCHAR},
      </if>
      <if test="chineseKeywords != null" >
        chinese_keywords = #{chineseKeywords,jdbcType=VARCHAR},
      </if>
      <if test="stuId != null" >
        stu_id = #{stuId,jdbcType=INTEGER},
      </if>
      <if test="teaId != null" >
        tea_id = #{teaId,jdbcType=INTEGER},
      </if>
      <if test="additionPath != null" >
        addition_path = #{additionPath,jdbcType=VARCHAR},
      </if>
    </set>
    where out_audit_apply_id = #{outAuditApplyId,jdbcType=INTEGER}
  </update>
  <update id="updateByPrimaryKey" parameterType="com.sdu.postgraduate.entity.EReviewPapers" >
    update e_review_papers
    set paper_title = #{paperTitle,jdbcType=VARCHAR},
      abstract_text = #{abstractText,jdbcType=VARCHAR},
      chinese_keywords = #{chineseKeywords,jdbcType=VARCHAR},
      stu_id = #{stuId,jdbcType=INTEGER},
      tea_id = #{teaId,jdbcType=INTEGER},
      addition_path = #{additionPath,jdbcType=VARCHAR}
    where out_audit_apply_id = #{outAuditApplyId,jdbcType=INTEGER}
  </update>

2、mapper接口中的方法定义

    int updateByPrimaryKeySelective(EReviewPapers record);
    EReviewPapers selectByPrimaryKey(Integer outAuditApplyId);
    List<EReviewPapers> selectCommittedAllByTeacherIdAndState(EReviewPapers ep);

3、service层中的方法定义

	public List<EReviewPapers> loadEReviewPaperByTeacherIdAndState(EReviewPapers ep){
        return eReviewPapersDao.selectCommittedAllByTeacherIdAndState(ep);
    }
    public EReviewPapers selectEReviewPapersById(int ep){
        return eReviewPapersDao.selectByPrimaryKey(ep);
    }
    public int updateEReviewPaperState(EReviewPapers ep){
        return eReviewPapersDao.updateByPrimaryKeySelective(ep);
    }
    public GraduateRelationship selectGraduateRelationByEpId(GraduateRelationship gr) {
        return graduateRelationshipDao.selectByEpId(gr);
    }
    public int updateGraduateRelationshipByEpId(GraduateRelationship gr){
        return graduateRelationshipDao.updateByGraduateEpId(gr);
    }

4、controller层业务逻辑

     
/**
     * 外审论文申请:
     * 根据teacherID加载所有外审论文申请
     * 状态不包括未提交
     * @param request
     * @return
     */
    @RequestMapping("/loadEReviewPaperByTeacherId")
    @Transactional(rollbackFor = {RuntimeException.class, Error.class})
    public Result loadEReviewPaperByTeacherId(@RequestBody Map<String, Object> request) {
//        Integer tea_id = (int) request.get("tea_id");
        Integer tea_id = Integer.valueOf(request.get("tea_id").toString());
        List<String> state = Arrays.asList("审核中", "审核成功", "审核失败");
        List<String> kind = Arrays.asList("notExamineInfo", "passInfo", "forbidInfo");
        HashMap<String,ArrayList> state_request = new HashMap<>();
        EReviewPapers apply = new EReviewPapers();
        apply.setTeaId(tea_id);
        for(int j = 0 ; j < state.size() ; j++){
            ArrayList fullList = new ArrayList();
            apply.setState(state.get(j));
            List<EReviewPapers> origin_request = teacherService.loadEReviewPaperByTeacherIdAndState(apply);
            for(int i = 0;i < origin_request.size();i++){
                LinkedHashMap<String,Object> full_request = new LinkedHashMap<>();
                EReviewPapers gr = origin_request.get(i);
                Student stu = teacherService.selectStudentByPrimaryKey(gr.getStuId());
                full_request.put("stuName",stu.getStuName());
                full_request.put("EReviewPapers",gr);
                fullList.add(full_request);
            }
            state_request.put(kind.get(j),fullList);
        }
        return Result.succ(state_request);
    }

    /**
     * 外审论文审核:
     * 教师对申请状态为审核中的申请进行审核
     * 状态可更改为审核成功or审核失败
     * 同时修改graduateRelationship表
     * @param request
     * @return
     */
    @RequestMapping("/updateEReviewPaperStateById")
    @Transactional(rollbackFor = {RuntimeException.class, Error.class})
    public Result updateEReviewPaperStateById(@RequestBody Map<String, Object> request){
        Integer apply_id = (int) request.get("apply_id");
        String state = (String) request.get("state");
        EReviewPapers gr = new EReviewPapers();
        gr.setOutAuditApplyId(apply_id);
        gr = teacherService.selectEReviewPapersById(apply_id);
        if(gr==null){
            return Result.fail("不存在外审论文信息");
        }
        GraduateRelationship ship = new GraduateRelationship();
        ship.setOutAuditApplyId(apply_id);
        ship = teacherService.selectGraduateRelationByEpId(ship);
        if(ship==null){
            return Result.fail("不存在毕业关系信息");
        }
        gr.setState(state);
        if(state.equals("审核成功")){
            ship.setState("外审论文审核成功");
            if(teacherService.updateEReviewPaperState(gr)==1&&teacherService.updateGraduateRelationshipByEpId(ship)==1){
                return Result.succ("操作成功1!");
            }else{
                return Result.fail("操作失败!");
            }
        }else if(state.equals("审核失败")){
            ship.setState("外审论文审核失败");
            if(teacherService.updateEReviewPaperState(gr)==1&&teacherService.updateGraduateRelationshipByEpId(ship)==1){
                return Result.succ("操作成功2!");
            }else{
                return Result.fail("操作失败!");
            }
        }else if(state.equals("取消审核")){
            gr.setState("未提交");
            ship.setState("外审论文未提交");
            if(teacherService.updateEReviewPaperState(gr)==1&&teacherService.updateGraduateRelationshipByEpId(ship)==1){
                return Result.succ("操作成功3!");
            }else{
                return Result.fail("操作失败!");
            }
        }else{
            return Result.succ("参数不匹配!");
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
系统根据B/S,即所谓的电脑浏览器/网络服务器方式,运用Java技术性,挑选MySQL作为后台系统。系统主要包含对客服聊天管理、字典表管理、公告信息管理、金融工具管理、金融工具收藏管理、金融工具银行卡管理、借款管理、理财产品管理、理财产品收藏管理、理财产品银行卡管理、理财银行卡信息管理、银行卡管理、存款管理、银行卡记录管理、取款管理、转账管理、用户管理、员工管理等功能模块。 文中重点介绍了银行管理的专业技术发展背景和发展状况,随后遵照软件传统式研发流程,最先挑选适用思维和语言软件开发平台,依据需求分析报告模块和设计数据库结构,再根据系统功能模块的设计制作系统功能模块图、流程表和E-R图。随后设计架构以及编写代码,并实现系统能模块。最终基本完成系统检测和功能测试。结果显示,该系统能够实现所需要的作用,工作状态没有明显缺陷。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。进入银行卡列表,管理员可以进行查看列表、模糊搜索以及相关维护等操作。用户进入系统可以查看公告和模糊搜索公告信息、也可以进行公告维护操作。理财产品管理页面,管理员可以进行查看列表、模糊搜索以及相关维护等操作。产品类型管理页面,此页面提供给管理员的功能有:新增产品类型,修改产品类型,删除产品类型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值