项目实训——实验平台(四)

实验老师批改作业

已批改作业

已批改作业列表获取较为简单,只要将data()数据中设置的url中的list改为"/ExMsg/exMsg/getPublishedScore"

ExMsgMapper.xml:

要获取批改的已提交的作业,所有要选择ishandle = '是' and scorevisiable = '是'的

<select id="getPublishedScore" resultType="org.jeecg.modules.demo.ExMsg.entity.ExMsg">
        select *
        from ex_msg
        where extid = #{extid} and ishandle = "是" and scorevisiable = "是"
    </select>

ExMsgServiceImpl:

@Override
    public List<ExMsg> getPublishedScore(String extid) {
        return this.baseMapper.getPublishedScore(extid);
    }

ExMsgController:

通过自己写的iFlowThirdService方法来获取此时操作的用户。再通过sysUser.getUsername()来获取用户账号

@RequestMapping(value = "/getPublishedScore",method = RequestMethod.GET)
	 public Result<?> getPublishedScore(@RequestParam(name="extid",defaultValue = "1")String extid){
		 SysUser sysUser = iFlowThirdService.getLoginUser();
		 extid = sysUser.getUsername();
		 List<ExMsg> allList = exMsgService.getPublishedScore(extid);
		 return Result.ok(allList);
	 }

 这里显示"实验要求文件"和"长传作业"时也要使用插槽

<span slot="fileUrl" slot-scope="fileUrl">
          <a :href="fileUrl" v-text="getFileName(fileUrl)"></a>
        </span>
        <span slot="homeworkUrl" slot-scope="homeworkUrl">
          <a :href="homeworkUrl" v-text="getFileName(homeworkUrl)"></a>
        </span>

getFileName()获取文件名(之前博客写过

columns:[

{
{
                        title:'实验要求文件',
                        align:"center",
                        dataIndex: 'filecontentString',
                        scopedSlots: {customRender: 'fileUrl'}
                    },
                    {
                        title:'上传作业',
                        align:"center",
                        dataIndex: 'homeworkString',
                        scopedSlots: {customRender: 'homeworkUrl'}
                    },
}
]

 

未完成作业

为了方便老师统计未完成作业的学生,要获取此时时间,筛选出未提交作业并且截止日期小于此刻时间的学生,并且打0分

ExMsgMapper.xml:

<update id="setZero">
        update ex_msg
        set exscore = "0" , scorevisiable = "是"
        where ishandle != "是" and #{deadline} > deadline
    </update>
    <select id="getUndoneStu" resultType="org.jeecg.modules.demo.ExMsg.entity.ExMsg">
        select *
        from ex_msg
        where extid = #{extid} and ishandle != "是" and #{deadline} > deadline
    </select>

ExMsgServiceImpl:

@Override
    public void setZero(Date deadline) {
        this.baseMapper.setZero(deadline);
    }

    @Override
    public List<ExMsg> getUndoneStu(String extid,Date deadline) {
        return this.baseMapper.getUndoneStu(extid,deadline);
    }

ExMsgController:

 在getUndoneStu()方法中调用设置的setZero()方法,将这些作业打0分

同样使用new Date(System.currentTimeMillis());获取当前时间,与截止日期比较

@RequestMapping(value = "/getUndoneStu",method = RequestMethod.GET)
	 public Result<?> getUndoneStu(@RequestParam(name="extid",defaultValue = "1")String extid){
		 SysUser sysUser = iFlowThirdService.getLoginUser();
		 extid = sysUser.getUsername();
		 Date deadline = new Date(System.currentTimeMillis());
		 exMsgService.setZero(deadline);
		 List<ExMsg> allList = exMsgService.getUndoneStu(extid,deadline);
		 return Result.ok(allList);
	 }

前端StuUndoneList.vue:

学生查看实验成绩

ExMsgMapper.xml:

<select id="getOwnScore" resultType="org.jeecg.modules.demo.ExMsg.entity.ExMsg">
        select *
        from ex_msg
        where sid = #{sid} and scorevisiable = "是"
    </select>

ExMsgServiceImpl:

@Override
    public List<ExMsg> getOwnScore(String sid) {
        return this.baseMapper.getOwnScore(sid);
    }

ExMsgController:

@RequestMapping(value = "/getOwnScore",method = RequestMethod.GET)
	 public Result<?> getOwnScore(@RequestParam(name="sid",defaultValue = "1")String sid){
		 SysUser sysUser = iFlowThirdService.getLoginUser();
		 sid = sysUser.getUsername();
		 List<ExMsg> allList = exMsgService.getOwnScore(sid);
		 return Result.ok(allList);
	 }

前端StuScoreList.vue:

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值