实验老师批改作业
已批改作业
已批改作业列表获取较为简单,只要将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: