添加文件题功能
This commit is contained in:
parent
06acc58905
commit
51e1d20a6c
|
@ -10,14 +10,12 @@ import org.apache.shiro.SecurityUtils;
|
|||
import org.jeecg.common.api.vo.Result;
|
||||
import org.jeecg.common.system.base.controller.JeecgController;
|
||||
import org.jeecg.common.system.vo.LoginUser;
|
||||
import org.jeecg.common.util.text.StringUtils;
|
||||
import org.jeecg.modules.kc.config.entity.KcExportConfigTpkwcqkjzglx;
|
||||
import org.jeecg.modules.kc.config.service.IKcExportConfigTpkwcqkjzglxService;
|
||||
import org.jeecg.modules.kc.kcSysConfig.entity.KcSysConfig;
|
||||
import org.jeecg.modules.kc.kcSysConfig.service.IKcSysConfigService;
|
||||
import org.jeecg.modules.kc.wjxDjxx.entity.StudentCyglSys;
|
||||
import org.jeecg.modules.kc.wjxDjxx.entity.StudentWjglSys;
|
||||
import org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxx;
|
||||
import org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxxTmlbPage;
|
||||
import org.jeecg.modules.kc.wjxDjxx.entity.*;
|
||||
import org.jeecg.modules.kc.wjxDjxx.service.IWjxDjxxService;
|
||||
import org.jeecg.modules.system.service.impl.SysBaseApiImpl;
|
||||
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
||||
|
@ -46,7 +44,6 @@ public class WjxDjxxController extends JeecgController<WjxDjxx, IWjxDjxxService>
|
|||
@Autowired
|
||||
private IWjxDjxxService wjxDjxxService;
|
||||
|
||||
|
||||
@Value("${jeecg.path.upload}")
|
||||
private String upLoadPath;
|
||||
|
||||
|
@ -290,4 +287,53 @@ public class WjxDjxxController extends JeecgController<WjxDjxx, IWjxDjxxService>
|
|||
mv.addObject(NormalExcelConstants.DATA_LIST, exportList);
|
||||
return mv;
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value="查询主观题带评分内容", notes="查询主观题带评分内容")
|
||||
@GetMapping(value = "/queryZgtdpf")
|
||||
public Result<WjxDjxx> queryZgtdpf(WjxDjxx wjxDjxx) {
|
||||
QueryWrapper<WjxDjxx> wjxDjxxQueryWrapper = new QueryWrapper<>();
|
||||
wjxDjxxQueryWrapper.eq("vid",wjxDjxx.getVid());
|
||||
wjxDjxxQueryWrapper.eq(StringUtils.isNotEmpty(wjxDjxx.getJid()),"jid",wjxDjxx.getJid());
|
||||
wjxDjxxQueryWrapper.eq("sfxysdpy","1");
|
||||
wjxDjxxQueryWrapper.last("limit 1");
|
||||
wjxDjxx = wjxDjxxService.getOne(wjxDjxxQueryWrapper);
|
||||
if(wjxDjxx!=null){
|
||||
WjxDjxx wjxDjxx2 = wjxDjxxService.querySdpfById(wjxDjxx.getId());
|
||||
wjxDjxx = wjxDjxx2;
|
||||
}
|
||||
return Result.OK(wjxDjxx);
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value="手动评分", notes="手动评分")
|
||||
@PostMapping(value = "/editSdpf")
|
||||
public Result<String> editSdpf(@RequestBody List<WjxDjxxTmxx> list) {
|
||||
String res = "提交成功!";
|
||||
for(WjxDjxxTmxx par:list){
|
||||
String djid = par.getDjid();
|
||||
String djtmid = par.getDjtmid();
|
||||
|
||||
WjxDjxxTmxx wjxDjxxTmxx = new WjxDjxxTmxx();
|
||||
wjxDjxxTmxx.setId(djtmid);
|
||||
wjxDjxxTmxx.setItemScore(par.getItemScore());
|
||||
wjxDjxxService.updateDjxxTmxx(wjxDjxxTmxx);
|
||||
|
||||
wjxDjxxTmxx = wjxDjxxService.getByDjxxId(djtmid);
|
||||
|
||||
WjxDjxxTmxx wjxDjxxTmxx2 = wjxDjxxService.getSumScore(wjxDjxxTmxx);
|
||||
|
||||
WjxDjxx wjxDjxx = new WjxDjxx();
|
||||
wjxDjxx.setId(djid);
|
||||
wjxDjxx.setSfxysdpy("0");
|
||||
wjxDjxx.setScore(wjxDjxxTmxx2.getItemScore());
|
||||
wjxDjxxService.editSdpf(wjxDjxx);
|
||||
|
||||
}
|
||||
|
||||
return Result.OK(res);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -50,8 +50,10 @@ public class WjxDjxxTmlbPage {
|
|||
private String mainId;
|
||||
|
||||
private String title;
|
||||
private String wjTitle;
|
||||
private Double wjScore;
|
||||
private String sfxysdpy;
|
||||
private String picPath;
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -58,6 +58,7 @@ public class WjxDjxxTmxx implements Serializable {
|
|||
private String jid;
|
||||
@ApiModelProperty(value = "答卷人ID")
|
||||
private String userId;
|
||||
private String picPath;
|
||||
|
||||
@ApiModelProperty(value = "题目类型")
|
||||
@TableField(exist = false)
|
||||
|
@ -74,4 +75,8 @@ public class WjxDjxxTmxx implements Serializable {
|
|||
|
||||
@TableField(exist = false)
|
||||
private String tktda;
|
||||
@TableField(exist = false)
|
||||
private String djid;
|
||||
@TableField(exist = false)
|
||||
private String djtmid;
|
||||
}
|
||||
|
|
|
@ -51,4 +51,14 @@ public interface WjxDjxxMapper extends BaseMapper<WjxDjxx> {
|
|||
String getDjnumType(@Param("vid")String vid, @Param("wjIndex")Integer wjIndex, @Param("itemIndex")Integer itemIndex, @Param("type")String type);
|
||||
|
||||
void updateTotalScore(WjxDjxx wjxDjxx);
|
||||
|
||||
List<WjxDjxxTmxx> findDjtmxx2(String vid, String jid);
|
||||
|
||||
void updateDjxxTmxx(WjxDjxxTmxx wjxDjxxTmxx);
|
||||
|
||||
WjxDjxxTmxx getSumScore(WjxDjxxTmxx wjxDjxxTmxx);
|
||||
|
||||
void editSdpf(WjxDjxx wjxDjxx);
|
||||
|
||||
WjxDjxxTmxx getByDjxxId(@Param("djtmid")String djtmid);
|
||||
}
|
||||
|
|
|
@ -58,7 +58,7 @@
|
|||
sfxysdpy = #{sfxysdpy},
|
||||
</if>
|
||||
<if test="totalScore != null">
|
||||
total_score = ${totalScore},
|
||||
total_score = ${totalScore}
|
||||
</if>
|
||||
where vid = #{vid}
|
||||
and jid = #{jid}
|
||||
|
@ -82,7 +82,8 @@
|
|||
wj_title,
|
||||
item_index,
|
||||
answer_text,
|
||||
item_score
|
||||
item_score,
|
||||
pic_path
|
||||
)
|
||||
value(
|
||||
#{id},
|
||||
|
@ -95,7 +96,8 @@
|
|||
#{wjTitle},
|
||||
#{itemIndex},
|
||||
#{answerText},
|
||||
#{itemScore}
|
||||
#{itemScore},
|
||||
#{picPath}
|
||||
)
|
||||
</insert>
|
||||
|
||||
|
@ -108,7 +110,7 @@
|
|||
</select>
|
||||
|
||||
<select id="findDjtmxx" parameterType="String" resultType="org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxxTmxx">
|
||||
select x.id,x.wj_index,x.wj_type,x.wj_title,x.wj_score,y.item_selected,y.item_score,y.answer_text
|
||||
select x.id,x.wj_index,x.wj_type,x.wj_title,x.wj_score,y.item_selected,y.item_score,y.answer_text,y.pic_path
|
||||
from (
|
||||
select c.id,c.wj_index,c.wj_type,c.wj_title,c.wj_score
|
||||
from wjx_djxx a
|
||||
|
@ -119,11 +121,33 @@
|
|||
and a.jid = #{jid}
|
||||
) x
|
||||
inner join (
|
||||
select wj_index,item_score,answer_text,GROUP_CONCAT(item_index) as item_selected
|
||||
select wj_index,item_score,answer_text,GROUP_CONCAT(item_index) as item_selected,pic_path
|
||||
from wjx_djxx_tmxx
|
||||
where vid = #{vid}
|
||||
and jid = #{jid}
|
||||
group by wj_index,item_score,answer_text
|
||||
group by wj_index,item_score,answer_text,pic_path
|
||||
) y on x.wj_index = y.wj_index
|
||||
order by x.wj_index
|
||||
</select>
|
||||
|
||||
<select id="findDjtmxx2" parameterType="String" resultType="org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxxTmxx">
|
||||
select x.id,x.wj_index,x.wj_type,x.wj_title,x.wj_score,y.item_selected,y.item_score,y.answer_text,y.pic_path,x.djid,y.djtmid
|
||||
from (
|
||||
select c.id,c.wj_index,c.wj_type,c.wj_title,c.wj_score,a.id as djid
|
||||
from wjx_djxx a
|
||||
inner join wjx_wjxx b on a.vid = b.vid
|
||||
inner join wjx_wjxx_tmlb c on c.main_id = b.id
|
||||
where a.flag = '1'
|
||||
and a.vid = #{vid}
|
||||
and a.jid = #{jid}
|
||||
) x
|
||||
inner join (
|
||||
select wj_index,item_score,answer_text,GROUP_CONCAT(item_index) as item_selected,pic_path,id as djtmid
|
||||
from wjx_djxx_tmxx
|
||||
where vid = #{vid}
|
||||
and jid = #{jid}
|
||||
and item_score is null
|
||||
group by wj_index,item_score,answer_text,pic_path,id
|
||||
) y on x.wj_index = y.wj_index
|
||||
order by x.wj_index
|
||||
</select>
|
||||
|
@ -165,7 +189,7 @@
|
|||
</select>
|
||||
|
||||
<select id="findAllDjjgsPage" parameterType="org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxx" resultType="org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxx">
|
||||
select a.atype,b.id,a.xqxn,a.kcmc,a.start_time,a.end_time,a.title,a.content,b.vid,b.jid,y.xh as user_id,y.xm as user_name,b.open_time,b.commit_time,b.score,b.total_score,ifnull(b.answer_seconds,-1) as answer_seconds,a.title
|
||||
select a.atype,b.id,a.xqxn,a.kcmc,a.start_time,a.end_time,a.title,a.content,b.vid,b.jid,y.xh as user_id,y.xm as user_name,b.open_time,b.commit_time,b.score,b.total_score,ifnull(b.answer_seconds,-1) as answer_seconds,a.title,b.sfxysdpy
|
||||
from wjx_wjxx a
|
||||
inner join (
|
||||
select a.xh,a.xm,b.KCAPZBBH
|
||||
|
@ -361,10 +385,37 @@
|
|||
and item_index = #{itemIndex}
|
||||
</if>
|
||||
<if test='type != null and type != "" and type=="1"'>
|
||||
and item_score != '0'
|
||||
and item_score != '0' and item_score is not null
|
||||
</if>
|
||||
<if test='type != null and type != "" and type=="2"'>
|
||||
and item_score = '0'
|
||||
and (item_score = '0' or item_score is null)
|
||||
</if>
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<update id="updateDjxxTmxx" parameterType="org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxxTmxx">
|
||||
update wjx_djxx_tmxx
|
||||
set
|
||||
item_score = #{itemScore}
|
||||
where id = #{id}
|
||||
</update>
|
||||
|
||||
<update id="editSdpf" parameterType="org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxx">
|
||||
update wjx_djxx
|
||||
set score = #{score},sfxysdpy = #{sfxysdpy}
|
||||
where id = #{id}
|
||||
</update>
|
||||
|
||||
<select id="getSumScore" resultType="org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxxTmxx">
|
||||
select jid,sum(item_score) as item_score from (
|
||||
select distinct jid,wj_index,max(item_score) as item_score from wjx_djxx_tmxx where jid = #{jid} GROUP BY jid,wj_index
|
||||
) t GROUP BY jid
|
||||
</select>
|
||||
|
||||
|
||||
<select id="getByDjxxId" parameterType="String" resultType="org.jeecg.modules.kc.wjxDjxx.entity.WjxDjxxTmxx">
|
||||
select * from wjx_djxx_tmxx where id = #{djtmid}
|
||||
</select>
|
||||
|
||||
</mapper>
|
|
@ -31,4 +31,14 @@ public interface IWjxDjxxService extends IService<WjxDjxx> {
|
|||
List<StudentWjglSys> exportWjglSysXls(QueryWrapper<StudentWjglSys> queryWrapper, StudentWjglSys studentWjglSys);
|
||||
|
||||
IPage<StudentWjglSys> sysWjglList(Page<StudentWjglSys> page, QueryWrapper<StudentWjglSys> queryWrapper, StudentWjglSys studentWjglSys);
|
||||
|
||||
WjxDjxx querySdpfById(String id);
|
||||
|
||||
void updateDjxxTmxx(WjxDjxxTmxx wjxDjxxTmxx);
|
||||
|
||||
WjxDjxxTmxx getSumScore(WjxDjxxTmxx wjxDjxxTmxx);
|
||||
|
||||
void editSdpf(WjxDjxx wjxDjxx);
|
||||
|
||||
WjxDjxxTmxx getByDjxxId(String djtmid);
|
||||
}
|
||||
|
|
|
@ -194,22 +194,68 @@ public class WjxDjxxServiceImpl extends ServiceImpl<WjxDjxxMapper, WjxDjxx> impl
|
|||
}
|
||||
if(answerItem.get("item_index")!=null){
|
||||
JSONArray itemIndex = answerItem.getJSONArray("item_index");
|
||||
|
||||
QueryWrapper<WjxWjxx> wjxWjxxQueryWrapper = new QueryWrapper<>();
|
||||
wjxWjxxQueryWrapper.eq("vid",vid);
|
||||
wjxWjxxQueryWrapper.last("limit 1");
|
||||
WjxWjxx wjxxPar= wjxWjxxMapper.selectOne(wjxWjxxQueryWrapper);
|
||||
|
||||
|
||||
if(itemIndex.size()>0){
|
||||
for(Object index : itemIndex){
|
||||
Integer ti = (Integer) index;
|
||||
|
||||
|
||||
wjxDjxxTmxx.setItemIndex(ti);
|
||||
String id = new DefaultIdentifierGenerator().nextId(new WjxDjxxTmxx()).toString();
|
||||
wjxDjxxTmxx.setId(id);
|
||||
|
||||
try {
|
||||
QueryWrapper<WjxWjxxTmlb> wjxWjxxTmlbQueryWrapper = new QueryWrapper<>();
|
||||
wjxWjxxTmlbQueryWrapper.eq("main_id",wjxxPar.getId());
|
||||
wjxWjxxTmlbQueryWrapper.eq("wj_index",wjxDjxxTmxx.getWjIndex());
|
||||
wjxWjxxTmlbQueryWrapper.last("limit 1");
|
||||
WjxWjxxTmlb tmlb = wjxWjxxTmlbMapper.selectOne(wjxWjxxTmlbQueryWrapper);
|
||||
wjxDjxxTmxx.setPicPath(tmlb.getPicPath());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
baseMapper.addDjTmxx(wjxDjxxTmxx);
|
||||
}
|
||||
}else{
|
||||
String id = new DefaultIdentifierGenerator().nextId(new WjxDjxxTmxx()).toString();
|
||||
wjxDjxxTmxx.setId(id);
|
||||
|
||||
try {
|
||||
QueryWrapper<WjxWjxxTmlb> wjxWjxxTmlbQueryWrapper = new QueryWrapper<>();
|
||||
wjxWjxxTmlbQueryWrapper.eq("main_id",wjxxPar.getId());
|
||||
wjxWjxxTmlbQueryWrapper.eq("wj_index",wjxDjxxTmxx.getWjIndex());
|
||||
wjxWjxxTmlbQueryWrapper.last("limit 1");
|
||||
WjxWjxxTmlb tmlb = wjxWjxxTmlbMapper.selectOne(wjxWjxxTmlbQueryWrapper);
|
||||
wjxDjxxTmxx.setPicPath(tmlb.getPicPath());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
wjxDjxxTmxx.setId(id);;
|
||||
baseMapper.addDjTmxx(wjxDjxxTmxx);
|
||||
}
|
||||
}else{
|
||||
String id = new DefaultIdentifierGenerator().nextId(new WjxDjxxTmxx()).toString();
|
||||
wjxDjxxTmxx.setId(id);
|
||||
|
||||
try {
|
||||
QueryWrapper<WjxWjxx> wjxWjxxQueryWrapper = new QueryWrapper<>();
|
||||
wjxWjxxQueryWrapper.eq("vid",vid);
|
||||
wjxWjxxQueryWrapper.last("limit 1");
|
||||
WjxWjxx wjxxPar= wjxWjxxMapper.selectOne(wjxWjxxQueryWrapper);
|
||||
QueryWrapper<WjxWjxxTmlb> wjxWjxxTmlbQueryWrapper = new QueryWrapper<>();
|
||||
wjxWjxxTmlbQueryWrapper.eq("main_id",wjxxPar.getId());
|
||||
wjxWjxxTmlbQueryWrapper.eq("wj_index",wjxDjxxTmxx.getWjIndex());
|
||||
wjxWjxxTmlbQueryWrapper.last("limit 1");
|
||||
WjxWjxxTmlb tmlb = wjxWjxxTmlbMapper.selectOne(wjxWjxxTmlbQueryWrapper);
|
||||
wjxDjxxTmxx.setPicPath(tmlb.getPicPath());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
wjxDjxxTmxx.setId(id);;
|
||||
baseMapper.addDjTmxx(wjxDjxxTmxx);
|
||||
}
|
||||
}
|
||||
|
@ -245,10 +291,11 @@ public class WjxDjxxServiceImpl extends ServiceImpl<WjxDjxxMapper, WjxDjxx> impl
|
|||
wjxDjxxTmxx.setCreateBy(user.getUsername());
|
||||
wjxDjxxTmxx.setCreateTime(new Date());
|
||||
wjxDjxxTmxx.setId(id);
|
||||
wjxDjxxTmxx.setWjTitle(wjxDjxxTmlbPage.getTitle());
|
||||
wjxDjxxTmxx.setWjTitle(wjxDjxxTmlbPage.getWjTitle());
|
||||
wjxDjxxTmxx.setWjIndex(WjIndex);
|
||||
wjxDjxxTmxx.setAnswerText(wjxDjxxTmlbPage.getWjAnswer());
|
||||
wjxDjxxTmxx.setItemScore(wjxDjxxTmlbPage.getWjScore());
|
||||
// wjxDjxxTmxx.setItemScore(wjxDjxxTmlbPage.getWjScore());
|
||||
wjxDjxxTmxx.setPicPath(wjxDjxxTmlbPage.getPicPath());
|
||||
baseMapper.addDjTmxx(wjxDjxxTmxx);
|
||||
}
|
||||
}
|
||||
|
@ -548,4 +595,44 @@ public class WjxDjxxServiceImpl extends ServiceImpl<WjxDjxxMapper, WjxDjxx> impl
|
|||
return baseMapper.sysWjglList(page, queryWrapper, studentWjglSys);
|
||||
}
|
||||
|
||||
@Override
|
||||
public WjxDjxx querySdpfById(String id) {
|
||||
LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
WjxDjxx djxx = baseMapper.findDjxx(id,user.getUsername());
|
||||
if(djxx != null){
|
||||
djxx.setAnswerSfm(convertSecondsToHMS(djxx.getAnswerSeconds()));
|
||||
List<WjxDjxxTmxx> list = baseMapper.findDjtmxx2(djxx.getVid(),djxx.getJid());
|
||||
for(WjxDjxxTmxx wjxDjxxTmxx:list){
|
||||
List<WjxWjxxTmxx> list2= wjxWjxxTmxxMapper.selectByMainId(wjxDjxxTmxx.getId());
|
||||
wjxDjxxTmxx.setWjxWjxxTmxxList(list2);
|
||||
//获取填空题答案
|
||||
WjxWjxxTmlb tmlb = wjxWjxxTmlbMapper.selectById(wjxDjxxTmxx.getId());
|
||||
wjxDjxxTmxx.setTktda(tmlb.getWjAnswer());
|
||||
}
|
||||
djxx.setWjxDjxxTmxxList(list);
|
||||
|
||||
}
|
||||
return djxx;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateDjxxTmxx(WjxDjxxTmxx wjxDjxxTmxx) {
|
||||
baseMapper.updateDjxxTmxx(wjxDjxxTmxx);
|
||||
}
|
||||
|
||||
@Override
|
||||
public WjxDjxxTmxx getSumScore(WjxDjxxTmxx wjxDjxxTmxx) {
|
||||
return baseMapper.getSumScore(wjxDjxxTmxx);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void editSdpf(WjxDjxx wjxDjxx) {
|
||||
baseMapper.editSdpf(wjxDjxx);
|
||||
}
|
||||
|
||||
@Override
|
||||
public WjxDjxxTmxx getByDjxxId(String djtmid) {
|
||||
return baseMapper.getByDjxxId(djtmid);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -369,6 +369,18 @@ public class SysUserController {
|
|||
return sysUserService.changePassword(sysUser);
|
||||
}
|
||||
|
||||
|
||||
@RequiresPermissions("system:user:changepwd")
|
||||
@RequestMapping(value = "/chongzhiPassword", method = RequestMethod.PUT)
|
||||
public Result<?> chongzhiPassword() {
|
||||
List<SysUser> list = sysUserService.list();
|
||||
for(SysUser sysUser : list){
|
||||
sysUser.setPassword("kczx@^1!");
|
||||
sysUserService.changePassword(sysUser);
|
||||
}
|
||||
return Result.ok("密码重置成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询指定用户和部门关联的数据
|
||||
*
|
||||
|
|
Loading…
Reference in New Issue