exam模块添加

This commit is contained in:
zhujunjieit 2018-12-06 21:38:21 +08:00
parent e58c928387
commit d621925c48
39 changed files with 3741 additions and 3 deletions

View File

@ -43,10 +43,10 @@
<modules>
<module>ruoyi-admin</module>
<module>ruoyi-framework</module>
<module>ruoyi-system</module>
<module>ruoyi-quartz</module>
<module>ruoyi-generator</module>
<module>ruoyi-common</module>
<module>ruoyi-exam</module>
</modules>
<packaging>pom</packaging>
@ -124,4 +124,5 @@
</pluginRepository>
</pluginRepositories>
</project>
</project>

View File

@ -45,7 +45,12 @@
<artifactId>ruoyi-generator</artifactId>
<version>${ruoyi.version}</version>
</dependency>
<!-- 考试系统-->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-exam</artifactId>
<version>${ruoyi.version}</version>
</dependency>
<!-- 定时任务
<dependency>
<groupId>com.ruoyi</groupId>

30
ruoyi-exam/pom.xml Normal file
View File

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>ruoyi</artifactId>
<groupId>com.ruoyi</groupId>
<version>3.1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>ruoyi-exam</artifactId>
<description>
考试系统
</description>
<properties>
</properties>
<dependencies>
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-framework</artifactId>
<version>${ruoyi.version}</version>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,127 @@
package com.ruoyi.web.controller.exam;
import java.util.List;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.exam.domain.ExamQuestionCategory;
import com.ruoyi.exam.service.IExamQuestionCategoryService;
import com.ruoyi.framework.web.base.BaseController;
import com.ruoyi.framework.web.page.TableDataInfo;
import com.ruoyi.common.base.AjaxResult;
import com.ruoyi.common.utils.ExcelUtil;
/**
* 试题分类 信息操作处理
*
* @author zhujj
* @date 2018-12-06
*/
@Controller
@RequestMapping("/exam/examQuestionCategory")
public class ExamQuestionCategoryController extends BaseController
{
private String prefix = "exam/examQuestionCategory";
@Autowired
private IExamQuestionCategoryService examQuestionCategoryService;
@RequiresPermissions("exam:examQuestionCategory:view")
@GetMapping()
public String examQuestionCategory()
{
return prefix + "/examQuestionCategory";
}
/**
* 查询试题分类列表
*/
@RequiresPermissions("exam:examQuestionCategory:list")
@PostMapping("/list")
@ResponseBody
public TableDataInfo list(ExamQuestionCategory examQuestionCategory)
{
startPage();
List<ExamQuestionCategory> list = examQuestionCategoryService.selectExamQuestionCategoryList(examQuestionCategory);
return getDataTable(list);
}
/**
* 导出试题分类列表
*/
@RequiresPermissions("exam:examQuestionCategory:export")
@PostMapping("/export")
@ResponseBody
public AjaxResult export(ExamQuestionCategory examQuestionCategory)
{
List<ExamQuestionCategory> list = examQuestionCategoryService.selectExamQuestionCategoryList(examQuestionCategory);
ExcelUtil<ExamQuestionCategory> util = new ExcelUtil<ExamQuestionCategory>(ExamQuestionCategory.class);
return util.exportExcel(list, "examQuestionCategory");
}
/**
* 新增试题分类
*/
@GetMapping("/add")
public String add()
{
return prefix + "/add";
}
/**
* 新增保存试题分类
*/
@RequiresPermissions("exam:examQuestionCategory:add")
@Log(title = "试题分类", businessType = BusinessType.INSERT)
@PostMapping("/add")
@ResponseBody
public AjaxResult addSave(ExamQuestionCategory examQuestionCategory)
{
return toAjax(examQuestionCategoryService.insertExamQuestionCategory(examQuestionCategory));
}
/**
* 修改试题分类
*/
@GetMapping("/edit/{id}")
public String edit(@PathVariable("id") String id, ModelMap mmap)
{
ExamQuestionCategory examQuestionCategory = examQuestionCategoryService.selectExamQuestionCategoryById(id);
mmap.put("examQuestionCategory", examQuestionCategory);
return prefix + "/edit";
}
/**
* 修改保存试题分类
*/
@RequiresPermissions("exam:examQuestionCategory:edit")
@Log(title = "试题分类", businessType = BusinessType.UPDATE)
@PostMapping("/edit")
@ResponseBody
public AjaxResult editSave(ExamQuestionCategory examQuestionCategory)
{
return toAjax(examQuestionCategoryService.updateExamQuestionCategory(examQuestionCategory));
}
/**
* 删除试题分类
*/
@RequiresPermissions("exam:examQuestionCategory:remove")
@Log(title = "试题分类", businessType = BusinessType.DELETE)
@PostMapping( "/remove")
@ResponseBody
public AjaxResult remove(String ids)
{
return toAjax(examQuestionCategoryService.deleteExamQuestionCategoryByIds(ids));
}
}

View File

@ -0,0 +1,127 @@
package com.ruoyi.web.controller.exam;
import java.util.List;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.exam.domain.ExamQuestionComment;
import com.ruoyi.exam.service.IExamQuestionCommentService;
import com.ruoyi.framework.web.base.BaseController;
import com.ruoyi.framework.web.page.TableDataInfo;
import com.ruoyi.common.base.AjaxResult;
import com.ruoyi.common.utils.ExcelUtil;
/**
* 问题点评 信息操作处理
*
* @author zhujj
* @date 2018-12-06
*/
@Controller
@RequestMapping("/exam/examQuestionComment")
public class ExamQuestionCommentController extends BaseController
{
private String prefix = "exam/examQuestionComment";
@Autowired
private IExamQuestionCommentService examQuestionCommentService;
@RequiresPermissions("exam:examQuestionComment:view")
@GetMapping()
public String examQuestionComment()
{
return prefix + "/examQuestionComment";
}
/**
* 查询问题点评列表
*/
@RequiresPermissions("exam:examQuestionComment:list")
@PostMapping("/list")
@ResponseBody
public TableDataInfo list(ExamQuestionComment examQuestionComment)
{
startPage();
List<ExamQuestionComment> list = examQuestionCommentService.selectExamQuestionCommentList(examQuestionComment);
return getDataTable(list);
}
/**
* 导出问题点评列表
*/
@RequiresPermissions("exam:examQuestionComment:export")
@PostMapping("/export")
@ResponseBody
public AjaxResult export(ExamQuestionComment examQuestionComment)
{
List<ExamQuestionComment> list = examQuestionCommentService.selectExamQuestionCommentList(examQuestionComment);
ExcelUtil<ExamQuestionComment> util = new ExcelUtil<ExamQuestionComment>(ExamQuestionComment.class);
return util.exportExcel(list, "examQuestionComment");
}
/**
* 新增问题点评
*/
@GetMapping("/add")
public String add()
{
return prefix + "/add";
}
/**
* 新增保存问题点评
*/
@RequiresPermissions("exam:examQuestionComment:add")
@Log(title = "问题点评", businessType = BusinessType.INSERT)
@PostMapping("/add")
@ResponseBody
public AjaxResult addSave(ExamQuestionComment examQuestionComment)
{
return toAjax(examQuestionCommentService.insertExamQuestionComment(examQuestionComment));
}
/**
* 修改问题点评
*/
@GetMapping("/edit/{id}")
public String edit(@PathVariable("id") String id, ModelMap mmap)
{
ExamQuestionComment examQuestionComment = examQuestionCommentService.selectExamQuestionCommentById(id);
mmap.put("examQuestionComment", examQuestionComment);
return prefix + "/edit";
}
/**
* 修改保存问题点评
*/
@RequiresPermissions("exam:examQuestionComment:edit")
@Log(title = "问题点评", businessType = BusinessType.UPDATE)
@PostMapping("/edit")
@ResponseBody
public AjaxResult editSave(ExamQuestionComment examQuestionComment)
{
return toAjax(examQuestionCommentService.updateExamQuestionComment(examQuestionComment));
}
/**
* 删除问题点评
*/
@RequiresPermissions("exam:examQuestionComment:remove")
@Log(title = "问题点评", businessType = BusinessType.DELETE)
@PostMapping( "/remove")
@ResponseBody
public AjaxResult remove(String ids)
{
return toAjax(examQuestionCommentService.deleteExamQuestionCommentByIds(ids));
}
}

View File

@ -0,0 +1,127 @@
package com.ruoyi.web.controller.exam;
import java.util.List;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.exam.domain.ExamQuestion;
import com.ruoyi.exam.service.IExamQuestionService;
import com.ruoyi.framework.web.base.BaseController;
import com.ruoyi.framework.web.page.TableDataInfo;
import com.ruoyi.common.base.AjaxResult;
import com.ruoyi.common.utils.ExcelUtil;
/**
* 问题 信息操作处理
*
* @author zhujj
* @date 2018-12-06
*/
@Controller
@RequestMapping("/exam/examQuestion")
public class ExamQuestionController extends BaseController
{
private String prefix = "exam/examQuestion";
@Autowired
private IExamQuestionService examQuestionService;
@RequiresPermissions("exam:examQuestion:view")
@GetMapping()
public String examQuestion()
{
return prefix + "/examQuestion";
}
/**
* 查询问题列表
*/
@RequiresPermissions("exam:examQuestion:list")
@PostMapping("/list")
@ResponseBody
public TableDataInfo list(ExamQuestion examQuestion)
{
startPage();
List<ExamQuestion> list = examQuestionService.selectExamQuestionList(examQuestion);
return getDataTable(list);
}
/**
* 导出问题列表
*/
@RequiresPermissions("exam:examQuestion:export")
@PostMapping("/export")
@ResponseBody
public AjaxResult export(ExamQuestion examQuestion)
{
List<ExamQuestion> list = examQuestionService.selectExamQuestionList(examQuestion);
ExcelUtil<ExamQuestion> util = new ExcelUtil<ExamQuestion>(ExamQuestion.class);
return util.exportExcel(list, "examQuestion");
}
/**
* 新增问题
*/
@GetMapping("/add")
public String add()
{
return prefix + "/add";
}
/**
* 新增保存问题
*/
@RequiresPermissions("exam:examQuestion:add")
@Log(title = "问题", businessType = BusinessType.INSERT)
@PostMapping("/add")
@ResponseBody
public AjaxResult addSave(ExamQuestion examQuestion)
{
return toAjax(examQuestionService.insertExamQuestion(examQuestion));
}
/**
* 修改问题
*/
@GetMapping("/edit/{id}")
public String edit(@PathVariable("id") String id, ModelMap mmap)
{
ExamQuestion examQuestion = examQuestionService.selectExamQuestionById(id);
mmap.put("examQuestion", examQuestion);
return prefix + "/edit";
}
/**
* 修改保存问题
*/
@RequiresPermissions("exam:examQuestion:edit")
@Log(title = "问题", businessType = BusinessType.UPDATE)
@PostMapping("/edit")
@ResponseBody
public AjaxResult editSave(ExamQuestion examQuestion)
{
return toAjax(examQuestionService.updateExamQuestion(examQuestion));
}
/**
* 删除问题
*/
@RequiresPermissions("exam:examQuestion:remove")
@Log(title = "问题", businessType = BusinessType.DELETE)
@PostMapping( "/remove")
@ResponseBody
public AjaxResult remove(String ids)
{
return toAjax(examQuestionService.deleteExamQuestionByIds(ids));
}
}

View File

@ -0,0 +1,127 @@
package com.ruoyi.web.controller.exam;
import java.util.List;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.exam.domain.ExamQuestionItem;
import com.ruoyi.exam.service.IExamQuestionItemService;
import com.ruoyi.framework.web.base.BaseController;
import com.ruoyi.framework.web.page.TableDataInfo;
import com.ruoyi.common.base.AjaxResult;
import com.ruoyi.common.utils.ExcelUtil;
/**
* 问题选项 信息操作处理
*
* @author zhujj
* @date 2018-12-06
*/
@Controller
@RequestMapping("/exam/examQuestionItem")
public class ExamQuestionItemController extends BaseController
{
private String prefix = "exam/examQuestionItem";
@Autowired
private IExamQuestionItemService examQuestionItemService;
@RequiresPermissions("exam:examQuestionItem:view")
@GetMapping()
public String examQuestionItem()
{
return prefix + "/examQuestionItem";
}
/**
* 查询问题选项列表
*/
@RequiresPermissions("exam:examQuestionItem:list")
@PostMapping("/list")
@ResponseBody
public TableDataInfo list(ExamQuestionItem examQuestionItem)
{
startPage();
List<ExamQuestionItem> list = examQuestionItemService.selectExamQuestionItemList(examQuestionItem);
return getDataTable(list);
}
/**
* 导出问题选项列表
*/
@RequiresPermissions("exam:examQuestionItem:export")
@PostMapping("/export")
@ResponseBody
public AjaxResult export(ExamQuestionItem examQuestionItem)
{
List<ExamQuestionItem> list = examQuestionItemService.selectExamQuestionItemList(examQuestionItem);
ExcelUtil<ExamQuestionItem> util = new ExcelUtil<ExamQuestionItem>(ExamQuestionItem.class);
return util.exportExcel(list, "examQuestionItem");
}
/**
* 新增问题选项
*/
@GetMapping("/add")
public String add()
{
return prefix + "/add";
}
/**
* 新增保存问题选项
*/
@RequiresPermissions("exam:examQuestionItem:add")
@Log(title = "问题选项", businessType = BusinessType.INSERT)
@PostMapping("/add")
@ResponseBody
public AjaxResult addSave(ExamQuestionItem examQuestionItem)
{
return toAjax(examQuestionItemService.insertExamQuestionItem(examQuestionItem));
}
/**
* 修改问题选项
*/
@GetMapping("/edit/{id}")
public String edit(@PathVariable("id") String id, ModelMap mmap)
{
ExamQuestionItem examQuestionItem = examQuestionItemService.selectExamQuestionItemById(id);
mmap.put("examQuestionItem", examQuestionItem);
return prefix + "/edit";
}
/**
* 修改保存问题选项
*/
@RequiresPermissions("exam:examQuestionItem:edit")
@Log(title = "问题选项", businessType = BusinessType.UPDATE)
@PostMapping("/edit")
@ResponseBody
public AjaxResult editSave(ExamQuestionItem examQuestionItem)
{
return toAjax(examQuestionItemService.updateExamQuestionItem(examQuestionItem));
}
/**
* 删除问题选项
*/
@RequiresPermissions("exam:examQuestionItem:remove")
@Log(title = "问题选项", businessType = BusinessType.DELETE)
@PostMapping( "/remove")
@ResponseBody
public AjaxResult remove(String ids)
{
return toAjax(examQuestionItemService.deleteExamQuestionItemByIds(ids));
}
}

View File

@ -0,0 +1,168 @@
package com.ruoyi.exam.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.base.BaseEntity;
import java.util.Date;
/**
* 问题表 exam_question
*
* @author zhujj
* @date 2018-12-06
*/
public class ExamQuestion
{
private static final long serialVersionUID = 1L;
/** */
private String id;
/** 问题标题 */
private String title;
/** 问题答案 */
private String answer;
/** 问题类型 */
private String type;
/** 标签 */
private String label;
/** 类别 */
private String categoryId;
/** 创建者 */
private String createBy;
/** 创建时间 */
private Date createDate;
/** 更新者 */
private String updateBy;
/** 更新时间 */
private Date updateDate;
/** 备注信息 */
private String remarks;
/** 删除标记 */
private String delFlag;
public void setId(String id)
{
this.id = id;
}
public String getId()
{
return id;
}
public void setTitle(String title)
{
this.title = title;
}
public String getTitle()
{
return title;
}
public void setAnswer(String answer)
{
this.answer = answer;
}
public String getAnswer()
{
return answer;
}
public void setType(String type)
{
this.type = type;
}
public String getType()
{
return type;
}
public void setLabel(String label)
{
this.label = label;
}
public String getLabel()
{
return label;
}
public void setCategoryId(String categoryId)
{
this.categoryId = categoryId;
}
public String getCategoryId()
{
return categoryId;
}
public void setCreateBy(String createBy)
{
this.createBy = createBy;
}
public String getCreateBy()
{
return createBy;
}
public void setCreateDate(Date createDate)
{
this.createDate = createDate;
}
public Date getCreateDate()
{
return createDate;
}
public void setUpdateBy(String updateBy)
{
this.updateBy = updateBy;
}
public String getUpdateBy()
{
return updateBy;
}
public void setUpdateDate(Date updateDate)
{
this.updateDate = updateDate;
}
public Date getUpdateDate()
{
return updateDate;
}
public void setRemarks(String remarks)
{
this.remarks = remarks;
}
public String getRemarks()
{
return remarks;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public String getDelFlag()
{
return delFlag;
}
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("title", getTitle())
.append("answer", getAnswer())
.append("type", getType())
.append("label", getLabel())
.append("categoryId", getCategoryId())
.append("createBy", getCreateBy())
.append("createDate", getCreateDate())
.append("updateBy", getUpdateBy())
.append("updateDate", getUpdateDate())
.append("remarks", getRemarks())
.append("delFlag", getDelFlag())
.toString();
}
}

View File

@ -0,0 +1,144 @@
package com.ruoyi.exam.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.base.BaseEntity;
import java.util.Date;
/**
* 试题分类表 exam_question_category
*
* @author zhujj
* @date 2018-12-06
*/
public class ExamQuestionCategory
{
private static final long serialVersionUID = 1L;
/** */
private String id;
/** 分类 */
private String name;
/** */
private String parentId;
/** */
private String parentIds;
/** 创建者 */
private String createBy;
/** 创建时间 */
private Date createDate;
/** 更新者 */
private String updateBy;
/** 更新时间 */
private Date updateDate;
/** 备注信息 */
private String remarks;
/** 删除标记 */
private String delFlag;
public void setId(String id)
{
this.id = id;
}
public String getId()
{
return id;
}
public void setName(String name)
{
this.name = name;
}
public String getName()
{
return name;
}
public void setParentId(String parentId)
{
this.parentId = parentId;
}
public String getParentId()
{
return parentId;
}
public void setParentIds(String parentIds)
{
this.parentIds = parentIds;
}
public String getParentIds()
{
return parentIds;
}
public void setCreateBy(String createBy)
{
this.createBy = createBy;
}
public String getCreateBy()
{
return createBy;
}
public void setCreateDate(Date createDate)
{
this.createDate = createDate;
}
public Date getCreateDate()
{
return createDate;
}
public void setUpdateBy(String updateBy)
{
this.updateBy = updateBy;
}
public String getUpdateBy()
{
return updateBy;
}
public void setUpdateDate(Date updateDate)
{
this.updateDate = updateDate;
}
public Date getUpdateDate()
{
return updateDate;
}
public void setRemarks(String remarks)
{
this.remarks = remarks;
}
public String getRemarks()
{
return remarks;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public String getDelFlag()
{
return delFlag;
}
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("name", getName())
.append("parentId", getParentId())
.append("parentIds", getParentIds())
.append("createBy", getCreateBy())
.append("createDate", getCreateDate())
.append("updateBy", getUpdateBy())
.append("updateDate", getUpdateDate())
.append("remarks", getRemarks())
.append("delFlag", getDelFlag())
.toString();
}
}

View File

@ -0,0 +1,156 @@
package com.ruoyi.exam.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.base.BaseEntity;
import java.util.Date;
/**
* 问题点评表 exam_question_comment
*
* @author zhujj
* @date 2018-12-06
*/
public class ExamQuestionComment
{
private static final long serialVersionUID = 1L;
/** */
private String id;
/** 点评内容 */
private Integer content;
/** 问题 */
private String examQuestionId;
/** 点赞数量 */
private Integer praiseCount;
/** 类型0 学生点评 1 老师点评) */
private String commentType;
/** 创建者 */
private String createBy;
/** 创建时间 */
private Date createDate;
/** 更新者 */
private String updateBy;
/** 更新时间 */
private Date updateDate;
/** 备注信息 */
private String remarks;
/** 删除标记 */
private String delFlag;
public void setId(String id)
{
this.id = id;
}
public String getId()
{
return id;
}
public void setContent(Integer content)
{
this.content = content;
}
public Integer getContent()
{
return content;
}
public void setExamQuestionId(String examQuestionId)
{
this.examQuestionId = examQuestionId;
}
public String getExamQuestionId()
{
return examQuestionId;
}
public void setPraiseCount(Integer praiseCount)
{
this.praiseCount = praiseCount;
}
public Integer getPraiseCount()
{
return praiseCount;
}
public void setCommentType(String commentType)
{
this.commentType = commentType;
}
public String getCommentType()
{
return commentType;
}
public void setCreateBy(String createBy)
{
this.createBy = createBy;
}
public String getCreateBy()
{
return createBy;
}
public void setCreateDate(Date createDate)
{
this.createDate = createDate;
}
public Date getCreateDate()
{
return createDate;
}
public void setUpdateBy(String updateBy)
{
this.updateBy = updateBy;
}
public String getUpdateBy()
{
return updateBy;
}
public void setUpdateDate(Date updateDate)
{
this.updateDate = updateDate;
}
public Date getUpdateDate()
{
return updateDate;
}
public void setRemarks(String remarks)
{
this.remarks = remarks;
}
public String getRemarks()
{
return remarks;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public String getDelFlag()
{
return delFlag;
}
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("content", getContent())
.append("examQuestionId", getExamQuestionId())
.append("praiseCount", getPraiseCount())
.append("commentType", getCommentType())
.append("createBy", getCreateBy())
.append("createDate", getCreateDate())
.append("updateBy", getUpdateBy())
.append("updateDate", getUpdateDate())
.append("remarks", getRemarks())
.append("delFlag", getDelFlag())
.toString();
}
}

View File

@ -0,0 +1,144 @@
package com.ruoyi.exam.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.base.BaseEntity;
import java.util.Date;
/**
* 问题选项表 exam_question_item
*
* @author zhujj
* @date 2018-12-06
*/
public class ExamQuestionItem
{
private static final long serialVersionUID = 1L;
/** */
private String id;
/** 选项内容 */
private String content;
/** 选项 */
private String number;
/** 题目 */
private String examQuestionId;
/** 创建者 */
private String createBy;
/** 创建时间 */
private Date createDate;
/** 更新者 */
private String updateBy;
/** 更新时间 */
private Date updateDate;
/** 备注信息 */
private String remarks;
/** 删除标记 */
private String delFlag;
public void setId(String id)
{
this.id = id;
}
public String getId()
{
return id;
}
public void setContent(String content)
{
this.content = content;
}
public String getContent()
{
return content;
}
public void setNumber(String number)
{
this.number = number;
}
public String getNumber()
{
return number;
}
public void setExamQuestionId(String examQuestionId)
{
this.examQuestionId = examQuestionId;
}
public String getExamQuestionId()
{
return examQuestionId;
}
public void setCreateBy(String createBy)
{
this.createBy = createBy;
}
public String getCreateBy()
{
return createBy;
}
public void setCreateDate(Date createDate)
{
this.createDate = createDate;
}
public Date getCreateDate()
{
return createDate;
}
public void setUpdateBy(String updateBy)
{
this.updateBy = updateBy;
}
public String getUpdateBy()
{
return updateBy;
}
public void setUpdateDate(Date updateDate)
{
this.updateDate = updateDate;
}
public Date getUpdateDate()
{
return updateDate;
}
public void setRemarks(String remarks)
{
this.remarks = remarks;
}
public String getRemarks()
{
return remarks;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public String getDelFlag()
{
return delFlag;
}
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("content", getContent())
.append("number", getNumber())
.append("examQuestionId", getExamQuestionId())
.append("createBy", getCreateBy())
.append("createDate", getCreateDate())
.append("updateBy", getUpdateBy())
.append("updateDate", getUpdateDate())
.append("remarks", getRemarks())
.append("delFlag", getDelFlag())
.toString();
}
}

View File

@ -0,0 +1,63 @@
package com.ruoyi.exam.mapper;
import com.ruoyi.exam.domain.ExamQuestionCategory;
import java.util.List;
import com.ruoyi.framework.web.base.MyMapper;
/**
* 试题分类 数据层
*
* @author zhujj
* @date 2018-12-06
*/
public interface ExamQuestionCategoryMapper extends MyMapper<ExamQuestionCategory>
{
/**
* 查询试题分类信息
*
* @param id 试题分类ID
* @return 试题分类信息
*/
public ExamQuestionCategory selectExamQuestionCategoryById(String id);
/**
* 查询试题分类列表
*
* @param examQuestionCategory 试题分类信息
* @return 试题分类集合
*/
public List<ExamQuestionCategory> selectExamQuestionCategoryList(ExamQuestionCategory examQuestionCategory);
/**
* 新增试题分类
*
* @param examQuestionCategory 试题分类信息
* @return 结果
*/
public int insertExamQuestionCategory(ExamQuestionCategory examQuestionCategory);
/**
* 修改试题分类
*
* @param examQuestionCategory 试题分类信息
* @return 结果
*/
public int updateExamQuestionCategory(ExamQuestionCategory examQuestionCategory);
/**
* 删除试题分类
*
* @param id 试题分类ID
* @return 结果
*/
public int deleteExamQuestionCategoryById(String id);
/**
* 批量删除试题分类
*
* @param ids 需要删除的数据ID
* @return 结果
*/
public int deleteExamQuestionCategoryByIds(String[] ids);
}

View File

@ -0,0 +1,63 @@
package com.ruoyi.exam.mapper;
import com.ruoyi.exam.domain.ExamQuestionComment;
import java.util.List;
import com.ruoyi.framework.web.base.MyMapper;
/**
* 问题点评 数据层
*
* @author zhujj
* @date 2018-12-06
*/
public interface ExamQuestionCommentMapper extends MyMapper<ExamQuestionComment>
{
/**
* 查询问题点评信息
*
* @param id 问题点评ID
* @return 问题点评信息
*/
public ExamQuestionComment selectExamQuestionCommentById(String id);
/**
* 查询问题点评列表
*
* @param examQuestionComment 问题点评信息
* @return 问题点评集合
*/
public List<ExamQuestionComment> selectExamQuestionCommentList(ExamQuestionComment examQuestionComment);
/**
* 新增问题点评
*
* @param examQuestionComment 问题点评信息
* @return 结果
*/
public int insertExamQuestionComment(ExamQuestionComment examQuestionComment);
/**
* 修改问题点评
*
* @param examQuestionComment 问题点评信息
* @return 结果
*/
public int updateExamQuestionComment(ExamQuestionComment examQuestionComment);
/**
* 删除问题点评
*
* @param id 问题点评ID
* @return 结果
*/
public int deleteExamQuestionCommentById(String id);
/**
* 批量删除问题点评
*
* @param ids 需要删除的数据ID
* @return 结果
*/
public int deleteExamQuestionCommentByIds(String[] ids);
}

View File

@ -0,0 +1,63 @@
package com.ruoyi.exam.mapper;
import com.ruoyi.exam.domain.ExamQuestionItem;
import java.util.List;
import com.ruoyi.framework.web.base.MyMapper;
/**
* 问题选项 数据层
*
* @author zhujj
* @date 2018-12-06
*/
public interface ExamQuestionItemMapper extends MyMapper<ExamQuestionItem>
{
/**
* 查询问题选项信息
*
* @param id 问题选项ID
* @return 问题选项信息
*/
public ExamQuestionItem selectExamQuestionItemById(String id);
/**
* 查询问题选项列表
*
* @param examQuestionItem 问题选项信息
* @return 问题选项集合
*/
public List<ExamQuestionItem> selectExamQuestionItemList(ExamQuestionItem examQuestionItem);
/**
* 新增问题选项
*
* @param examQuestionItem 问题选项信息
* @return 结果
*/
public int insertExamQuestionItem(ExamQuestionItem examQuestionItem);
/**
* 修改问题选项
*
* @param examQuestionItem 问题选项信息
* @return 结果
*/
public int updateExamQuestionItem(ExamQuestionItem examQuestionItem);
/**
* 删除问题选项
*
* @param id 问题选项ID
* @return 结果
*/
public int deleteExamQuestionItemById(String id);
/**
* 批量删除问题选项
*
* @param ids 需要删除的数据ID
* @return 结果
*/
public int deleteExamQuestionItemByIds(String[] ids);
}

View File

@ -0,0 +1,63 @@
package com.ruoyi.exam.mapper;
import com.ruoyi.exam.domain.ExamQuestion;
import java.util.List;
import com.ruoyi.framework.web.base.MyMapper;
/**
* 问题 数据层
*
* @author zhujj
* @date 2018-12-06
*/
public interface ExamQuestionMapper extends MyMapper<ExamQuestion>
{
/**
* 查询问题信息
*
* @param id 问题ID
* @return 问题信息
*/
public ExamQuestion selectExamQuestionById(String id);
/**
* 查询问题列表
*
* @param examQuestion 问题信息
* @return 问题集合
*/
public List<ExamQuestion> selectExamQuestionList(ExamQuestion examQuestion);
/**
* 新增问题
*
* @param examQuestion 问题信息
* @return 结果
*/
public int insertExamQuestion(ExamQuestion examQuestion);
/**
* 修改问题
*
* @param examQuestion 问题信息
* @return 结果
*/
public int updateExamQuestion(ExamQuestion examQuestion);
/**
* 删除问题
*
* @param id 问题ID
* @return 结果
*/
public int deleteExamQuestionById(String id);
/**
* 批量删除问题
*
* @param ids 需要删除的数据ID
* @return 结果
*/
public int deleteExamQuestionByIds(String[] ids);
}

View File

@ -0,0 +1,54 @@
package com.ruoyi.exam.service;
import com.ruoyi.exam.domain.ExamQuestionCategory;
import java.util.List;
import com.ruoyi.framework.web.base.AbstractBaseService;
/**
* 试题分类 服务层
*
* @author zhujj
* @date 2018-12-06
*/
public interface IExamQuestionCategoryService extends AbstractBaseService<ExamQuestionCategory>
{
/**
* 查询试题分类信息
*
* @param id 试题分类ID
* @return 试题分类信息
*/
public ExamQuestionCategory selectExamQuestionCategoryById(String id);
/**
* 查询试题分类列表
*
* @param examQuestionCategory 试题分类信息
* @return 试题分类集合
*/
public List<ExamQuestionCategory> selectExamQuestionCategoryList(ExamQuestionCategory examQuestionCategory);
/**
* 新增试题分类
*
* @param examQuestionCategory 试题分类信息
* @return 结果
*/
public int insertExamQuestionCategory(ExamQuestionCategory examQuestionCategory);
/**
* 修改试题分类
*
* @param examQuestionCategory 试题分类信息
* @return 结果
*/
public int updateExamQuestionCategory(ExamQuestionCategory examQuestionCategory);
/**
* 删除试题分类信息
*
* @param ids 需要删除的数据ID
* @return 结果
*/
public int deleteExamQuestionCategoryByIds(String ids);
}

View File

@ -0,0 +1,54 @@
package com.ruoyi.exam.service;
import com.ruoyi.exam.domain.ExamQuestionComment;
import java.util.List;
import com.ruoyi.framework.web.base.AbstractBaseService;
/**
* 问题点评 服务层
*
* @author zhujj
* @date 2018-12-06
*/
public interface IExamQuestionCommentService extends AbstractBaseService<ExamQuestionComment>
{
/**
* 查询问题点评信息
*
* @param id 问题点评ID
* @return 问题点评信息
*/
public ExamQuestionComment selectExamQuestionCommentById(String id);
/**
* 查询问题点评列表
*
* @param examQuestionComment 问题点评信息
* @return 问题点评集合
*/
public List<ExamQuestionComment> selectExamQuestionCommentList(ExamQuestionComment examQuestionComment);
/**
* 新增问题点评
*
* @param examQuestionComment 问题点评信息
* @return 结果
*/
public int insertExamQuestionComment(ExamQuestionComment examQuestionComment);
/**
* 修改问题点评
*
* @param examQuestionComment 问题点评信息
* @return 结果
*/
public int updateExamQuestionComment(ExamQuestionComment examQuestionComment);
/**
* 删除问题点评信息
*
* @param ids 需要删除的数据ID
* @return 结果
*/
public int deleteExamQuestionCommentByIds(String ids);
}

View File

@ -0,0 +1,54 @@
package com.ruoyi.exam.service;
import com.ruoyi.exam.domain.ExamQuestionItem;
import java.util.List;
import com.ruoyi.framework.web.base.AbstractBaseService;
/**
* 问题选项 服务层
*
* @author zhujj
* @date 2018-12-06
*/
public interface IExamQuestionItemService extends AbstractBaseService<ExamQuestionItem>
{
/**
* 查询问题选项信息
*
* @param id 问题选项ID
* @return 问题选项信息
*/
public ExamQuestionItem selectExamQuestionItemById(String id);
/**
* 查询问题选项列表
*
* @param examQuestionItem 问题选项信息
* @return 问题选项集合
*/
public List<ExamQuestionItem> selectExamQuestionItemList(ExamQuestionItem examQuestionItem);
/**
* 新增问题选项
*
* @param examQuestionItem 问题选项信息
* @return 结果
*/
public int insertExamQuestionItem(ExamQuestionItem examQuestionItem);
/**
* 修改问题选项
*
* @param examQuestionItem 问题选项信息
* @return 结果
*/
public int updateExamQuestionItem(ExamQuestionItem examQuestionItem);
/**
* 删除问题选项信息
*
* @param ids 需要删除的数据ID
* @return 结果
*/
public int deleteExamQuestionItemByIds(String ids);
}

View File

@ -0,0 +1,54 @@
package com.ruoyi.exam.service;
import com.ruoyi.exam.domain.ExamQuestion;
import java.util.List;
import com.ruoyi.framework.web.base.AbstractBaseService;
/**
* 问题 服务层
*
* @author zhujj
* @date 2018-12-06
*/
public interface IExamQuestionService extends AbstractBaseService<ExamQuestion>
{
/**
* 查询问题信息
*
* @param id 问题ID
* @return 问题信息
*/
public ExamQuestion selectExamQuestionById(String id);
/**
* 查询问题列表
*
* @param examQuestion 问题信息
* @return 问题集合
*/
public List<ExamQuestion> selectExamQuestionList(ExamQuestion examQuestion);
/**
* 新增问题
*
* @param examQuestion 问题信息
* @return 结果
*/
public int insertExamQuestion(ExamQuestion examQuestion);
/**
* 修改问题
*
* @param examQuestion 问题信息
* @return 结果
*/
public int updateExamQuestion(ExamQuestion examQuestion);
/**
* 删除问题信息
*
* @param ids 需要删除的数据ID
* @return 结果
*/
public int deleteExamQuestionByIds(String ids);
}

View File

@ -0,0 +1,83 @@
package com.ruoyi.exam.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.exam.mapper.ExamQuestionCategoryMapper;
import com.ruoyi.exam.domain.ExamQuestionCategory;
import com.ruoyi.exam.service.IExamQuestionCategoryService;
import com.ruoyi.common.support.Convert;
import com.ruoyi.framework.web.base.AbstractBaseServiceImpl;
/**
* 试题分类 服务层实现
*
* @author zhujj
* @date 2018-12-06
*/
@Service
public class ExamQuestionCategoryServiceImpl extends AbstractBaseServiceImpl<ExamQuestionCategoryMapper,ExamQuestionCategory> implements IExamQuestionCategoryService
{
@Autowired
private ExamQuestionCategoryMapper examQuestionCategoryMapper;
/**
* 查询试题分类信息
*
* @param id 试题分类ID
* @return 试题分类信息
*/
@Override
public ExamQuestionCategory selectExamQuestionCategoryById(String id)
{
return examQuestionCategoryMapper.selectExamQuestionCategoryById(id);
}
/**
* 查询试题分类列表
*
* @param examQuestionCategory 试题分类信息
* @return 试题分类集合
*/
@Override
public List<ExamQuestionCategory> selectExamQuestionCategoryList(ExamQuestionCategory examQuestionCategory)
{
return examQuestionCategoryMapper.selectExamQuestionCategoryList(examQuestionCategory);
}
/**
* 新增试题分类
*
* @param examQuestionCategory 试题分类信息
* @return 结果
*/
@Override
public int insertExamQuestionCategory(ExamQuestionCategory examQuestionCategory)
{
return examQuestionCategoryMapper.insertExamQuestionCategory(examQuestionCategory);
}
/**
* 修改试题分类
*
* @param examQuestionCategory 试题分类信息
* @return 结果
*/
@Override
public int updateExamQuestionCategory(ExamQuestionCategory examQuestionCategory)
{
return examQuestionCategoryMapper.updateExamQuestionCategory(examQuestionCategory);
}
/**
* 删除试题分类对象
*
* @param ids 需要删除的数据ID
* @return 结果
*/
@Override
public int deleteExamQuestionCategoryByIds(String ids)
{
return examQuestionCategoryMapper.deleteExamQuestionCategoryByIds(Convert.toStrArray(ids));
}
}

View File

@ -0,0 +1,83 @@
package com.ruoyi.exam.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.exam.mapper.ExamQuestionCommentMapper;
import com.ruoyi.exam.domain.ExamQuestionComment;
import com.ruoyi.exam.service.IExamQuestionCommentService;
import com.ruoyi.common.support.Convert;
import com.ruoyi.framework.web.base.AbstractBaseServiceImpl;
/**
* 问题点评 服务层实现
*
* @author zhujj
* @date 2018-12-06
*/
@Service
public class ExamQuestionCommentServiceImpl extends AbstractBaseServiceImpl<ExamQuestionCommentMapper,ExamQuestionComment> implements IExamQuestionCommentService
{
@Autowired
private ExamQuestionCommentMapper examQuestionCommentMapper;
/**
* 查询问题点评信息
*
* @param id 问题点评ID
* @return 问题点评信息
*/
@Override
public ExamQuestionComment selectExamQuestionCommentById(String id)
{
return examQuestionCommentMapper.selectExamQuestionCommentById(id);
}
/**
* 查询问题点评列表
*
* @param examQuestionComment 问题点评信息
* @return 问题点评集合
*/
@Override
public List<ExamQuestionComment> selectExamQuestionCommentList(ExamQuestionComment examQuestionComment)
{
return examQuestionCommentMapper.selectExamQuestionCommentList(examQuestionComment);
}
/**
* 新增问题点评
*
* @param examQuestionComment 问题点评信息
* @return 结果
*/
@Override
public int insertExamQuestionComment(ExamQuestionComment examQuestionComment)
{
return examQuestionCommentMapper.insertExamQuestionComment(examQuestionComment);
}
/**
* 修改问题点评
*
* @param examQuestionComment 问题点评信息
* @return 结果
*/
@Override
public int updateExamQuestionComment(ExamQuestionComment examQuestionComment)
{
return examQuestionCommentMapper.updateExamQuestionComment(examQuestionComment);
}
/**
* 删除问题点评对象
*
* @param ids 需要删除的数据ID
* @return 结果
*/
@Override
public int deleteExamQuestionCommentByIds(String ids)
{
return examQuestionCommentMapper.deleteExamQuestionCommentByIds(Convert.toStrArray(ids));
}
}

View File

@ -0,0 +1,83 @@
package com.ruoyi.exam.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.exam.mapper.ExamQuestionItemMapper;
import com.ruoyi.exam.domain.ExamQuestionItem;
import com.ruoyi.exam.service.IExamQuestionItemService;
import com.ruoyi.common.support.Convert;
import com.ruoyi.framework.web.base.AbstractBaseServiceImpl;
/**
* 问题选项 服务层实现
*
* @author zhujj
* @date 2018-12-06
*/
@Service
public class ExamQuestionItemServiceImpl extends AbstractBaseServiceImpl<ExamQuestionItemMapper,ExamQuestionItem> implements IExamQuestionItemService
{
@Autowired
private ExamQuestionItemMapper examQuestionItemMapper;
/**
* 查询问题选项信息
*
* @param id 问题选项ID
* @return 问题选项信息
*/
@Override
public ExamQuestionItem selectExamQuestionItemById(String id)
{
return examQuestionItemMapper.selectExamQuestionItemById(id);
}
/**
* 查询问题选项列表
*
* @param examQuestionItem 问题选项信息
* @return 问题选项集合
*/
@Override
public List<ExamQuestionItem> selectExamQuestionItemList(ExamQuestionItem examQuestionItem)
{
return examQuestionItemMapper.selectExamQuestionItemList(examQuestionItem);
}
/**
* 新增问题选项
*
* @param examQuestionItem 问题选项信息
* @return 结果
*/
@Override
public int insertExamQuestionItem(ExamQuestionItem examQuestionItem)
{
return examQuestionItemMapper.insertExamQuestionItem(examQuestionItem);
}
/**
* 修改问题选项
*
* @param examQuestionItem 问题选项信息
* @return 结果
*/
@Override
public int updateExamQuestionItem(ExamQuestionItem examQuestionItem)
{
return examQuestionItemMapper.updateExamQuestionItem(examQuestionItem);
}
/**
* 删除问题选项对象
*
* @param ids 需要删除的数据ID
* @return 结果
*/
@Override
public int deleteExamQuestionItemByIds(String ids)
{
return examQuestionItemMapper.deleteExamQuestionItemByIds(Convert.toStrArray(ids));
}
}

View File

@ -0,0 +1,83 @@
package com.ruoyi.exam.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.exam.mapper.ExamQuestionMapper;
import com.ruoyi.exam.domain.ExamQuestion;
import com.ruoyi.exam.service.IExamQuestionService;
import com.ruoyi.common.support.Convert;
import com.ruoyi.framework.web.base.AbstractBaseServiceImpl;
/**
* 问题 服务层实现
*
* @author zhujj
* @date 2018-12-06
*/
@Service
public class ExamQuestionServiceImpl extends AbstractBaseServiceImpl<ExamQuestionMapper,ExamQuestion> implements IExamQuestionService
{
@Autowired
private ExamQuestionMapper examQuestionMapper;
/**
* 查询问题信息
*
* @param id 问题ID
* @return 问题信息
*/
@Override
public ExamQuestion selectExamQuestionById(String id)
{
return examQuestionMapper.selectExamQuestionById(id);
}
/**
* 查询问题列表
*
* @param examQuestion 问题信息
* @return 问题集合
*/
@Override
public List<ExamQuestion> selectExamQuestionList(ExamQuestion examQuestion)
{
return examQuestionMapper.selectExamQuestionList(examQuestion);
}
/**
* 新增问题
*
* @param examQuestion 问题信息
* @return 结果
*/
@Override
public int insertExamQuestion(ExamQuestion examQuestion)
{
return examQuestionMapper.insertExamQuestion(examQuestion);
}
/**
* 修改问题
*
* @param examQuestion 问题信息
* @return 结果
*/
@Override
public int updateExamQuestion(ExamQuestion examQuestion)
{
return examQuestionMapper.updateExamQuestion(examQuestion);
}
/**
* 删除问题对象
*
* @param ids 需要删除的数据ID
* @return 结果
*/
@Override
public int deleteExamQuestionByIds(String ids)
{
return examQuestionMapper.deleteExamQuestionByIds(Convert.toStrArray(ids));
}
}

View File

@ -0,0 +1,100 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.exam.mapper.ExamQuestionCategoryMapper">
<resultMap type="ExamQuestionCategory" id="ExamQuestionCategoryResult">
<result property="id" column="id" />
<result property="name" column="name" />
<result property="parentId" column="parent_id" />
<result property="parentIds" column="parent_ids" />
<result property="createBy" column="create_by" />
<result property="createDate" column="create_date" />
<result property="updateBy" column="update_by" />
<result property="updateDate" column="update_date" />
<result property="remarks" column="remarks" />
<result property="delFlag" column="del_flag" />
</resultMap>
<sql id="selectExamQuestionCategoryVo">
select id, name, parent_id, parent_ids, create_by, create_date, update_by, update_date, remarks, del_flag from exam_question_category
</sql>
<select id="selectExamQuestionCategoryList" parameterType="ExamQuestionCategory" resultMap="ExamQuestionCategoryResult">
<include refid="selectExamQuestionCategoryVo"/>
<where>
<if test="id != null and id != '' "> and id = #{id}</if>
<if test="name != null and name != '' "> and name = #{name}</if>
<if test="parentId != null and parentId != '' "> and parent_id = #{parentId}</if>
<if test="parentIds != null and parentIds != '' "> and parent_ids = #{parentIds}</if>
<if test="createBy != null and createBy != '' "> and create_by = #{createBy}</if>
<if test="createDate != null "> and create_date = #{createDate}</if>
<if test="updateBy != null and updateBy != '' "> and update_by = #{updateBy}</if>
<if test="updateDate != null "> and update_date = #{updateDate}</if>
<if test="remarks != null and remarks != '' "> and remarks = #{remarks}</if>
<if test="delFlag != null and delFlag != '' "> and del_flag = #{delFlag}</if>
</where>
</select>
<select id="selectExamQuestionCategoryById" parameterType="String" resultMap="ExamQuestionCategoryResult">
<include refid="selectExamQuestionCategoryVo"/>
where id = #{id}
</select>
<insert id="insertExamQuestionCategory" parameterType="ExamQuestionCategory">
insert into exam_question_category
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null and id != '' ">id,</if>
<if test="name != null and name != '' ">name,</if>
<if test="parentId != null and parentId != '' ">parent_id,</if>
<if test="parentIds != null and parentIds != '' ">parent_ids,</if>
<if test="createBy != null and createBy != '' ">create_by,</if>
<if test="createDate != null ">create_date,</if>
<if test="updateBy != null and updateBy != '' ">update_by,</if>
<if test="updateDate != null ">update_date,</if>
<if test="remarks != null and remarks != '' ">remarks,</if>
<if test="delFlag != null and delFlag != '' ">del_flag,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null and id != '' ">#{id},</if>
<if test="name != null and name != '' ">#{name},</if>
<if test="parentId != null and parentId != '' ">#{parentId},</if>
<if test="parentIds != null and parentIds != '' ">#{parentIds},</if>
<if test="createBy != null and createBy != '' ">#{createBy},</if>
<if test="createDate != null ">#{createDate},</if>
<if test="updateBy != null and updateBy != '' ">#{updateBy},</if>
<if test="updateDate != null ">#{updateDate},</if>
<if test="remarks != null and remarks != '' ">#{remarks},</if>
<if test="delFlag != null and delFlag != '' ">#{delFlag},</if>
</trim>
</insert>
<update id="updateExamQuestionCategory" parameterType="ExamQuestionCategory">
update exam_question_category
<trim prefix="SET" suffixOverrides=",">
<if test="name != null and name != '' ">name = #{name},</if>
<if test="parentId != null and parentId != '' ">parent_id = #{parentId},</if>
<if test="parentIds != null and parentIds != '' ">parent_ids = #{parentIds},</if>
<if test="createBy != null and createBy != '' ">create_by = #{createBy},</if>
<if test="createDate != null ">create_date = #{createDate},</if>
<if test="updateBy != null and updateBy != '' ">update_by = #{updateBy},</if>
<if test="updateDate != null ">update_date = #{updateDate},</if>
<if test="remarks != null and remarks != '' ">remarks = #{remarks},</if>
<if test="delFlag != null and delFlag != '' ">del_flag = #{delFlag},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteExamQuestionCategoryById" parameterType="String">
delete from exam_question_category where id = #{id}
</delete>
<delete id="deleteExamQuestionCategoryByIds" parameterType="String">
delete from exam_question_category where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>

View File

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.exam.mapper.ExamQuestionCommentMapper">
<resultMap type="ExamQuestionComment" id="ExamQuestionCommentResult">
<result property="id" column="id" />
<result property="content" column="content" />
<result property="examQuestionId" column="exam_question_id" />
<result property="praiseCount" column="praise_count" />
<result property="commentType" column="comment_type" />
<result property="createBy" column="create_by" />
<result property="createDate" column="create_date" />
<result property="updateBy" column="update_by" />
<result property="updateDate" column="update_date" />
<result property="remarks" column="remarks" />
<result property="delFlag" column="del_flag" />
</resultMap>
<sql id="selectExamQuestionCommentVo">
select id, content, exam_question_id, praise_count, comment_type, create_by, create_date, update_by, update_date, remarks, del_flag from exam_question_comment
</sql>
<select id="selectExamQuestionCommentList" parameterType="ExamQuestionComment" resultMap="ExamQuestionCommentResult">
<include refid="selectExamQuestionCommentVo"/>
<where>
<if test="id != null and id != '' "> and id = #{id}</if>
<if test="content != null "> and content = #{content}</if>
<if test="examQuestionId != null and examQuestionId != '' "> and exam_question_id = #{examQuestionId}</if>
<if test="praiseCount != null "> and praise_count = #{praiseCount}</if>
<if test="commentType != null and commentType != '' "> and comment_type = #{commentType}</if>
<if test="createBy != null and createBy != '' "> and create_by = #{createBy}</if>
<if test="createDate != null "> and create_date = #{createDate}</if>
<if test="updateBy != null and updateBy != '' "> and update_by = #{updateBy}</if>
<if test="updateDate != null "> and update_date = #{updateDate}</if>
<if test="remarks != null and remarks != '' "> and remarks = #{remarks}</if>
<if test="delFlag != null and delFlag != '' "> and del_flag = #{delFlag}</if>
</where>
</select>
<select id="selectExamQuestionCommentById" parameterType="String" resultMap="ExamQuestionCommentResult">
<include refid="selectExamQuestionCommentVo"/>
where id = #{id}
</select>
<insert id="insertExamQuestionComment" parameterType="ExamQuestionComment">
insert into exam_question_comment
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null and id != '' ">id,</if>
<if test="content != null ">content,</if>
<if test="examQuestionId != null and examQuestionId != '' ">exam_question_id,</if>
<if test="praiseCount != null ">praise_count,</if>
<if test="commentType != null and commentType != '' ">comment_type,</if>
<if test="createBy != null and createBy != '' ">create_by,</if>
<if test="createDate != null ">create_date,</if>
<if test="updateBy != null and updateBy != '' ">update_by,</if>
<if test="updateDate != null ">update_date,</if>
<if test="remarks != null and remarks != '' ">remarks,</if>
<if test="delFlag != null and delFlag != '' ">del_flag,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null and id != '' ">#{id},</if>
<if test="content != null ">#{content},</if>
<if test="examQuestionId != null and examQuestionId != '' ">#{examQuestionId},</if>
<if test="praiseCount != null ">#{praiseCount},</if>
<if test="commentType != null and commentType != '' ">#{commentType},</if>
<if test="createBy != null and createBy != '' ">#{createBy},</if>
<if test="createDate != null ">#{createDate},</if>
<if test="updateBy != null and updateBy != '' ">#{updateBy},</if>
<if test="updateDate != null ">#{updateDate},</if>
<if test="remarks != null and remarks != '' ">#{remarks},</if>
<if test="delFlag != null and delFlag != '' ">#{delFlag},</if>
</trim>
</insert>
<update id="updateExamQuestionComment" parameterType="ExamQuestionComment">
update exam_question_comment
<trim prefix="SET" suffixOverrides=",">
<if test="content != null ">content = #{content},</if>
<if test="examQuestionId != null and examQuestionId != '' ">exam_question_id = #{examQuestionId},</if>
<if test="praiseCount != null ">praise_count = #{praiseCount},</if>
<if test="commentType != null and commentType != '' ">comment_type = #{commentType},</if>
<if test="createBy != null and createBy != '' ">create_by = #{createBy},</if>
<if test="createDate != null ">create_date = #{createDate},</if>
<if test="updateBy != null and updateBy != '' ">update_by = #{updateBy},</if>
<if test="updateDate != null ">update_date = #{updateDate},</if>
<if test="remarks != null and remarks != '' ">remarks = #{remarks},</if>
<if test="delFlag != null and delFlag != '' ">del_flag = #{delFlag},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteExamQuestionCommentById" parameterType="String">
delete from exam_question_comment where id = #{id}
</delete>
<delete id="deleteExamQuestionCommentByIds" parameterType="String">
delete from exam_question_comment where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>

View File

@ -0,0 +1,100 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.exam.mapper.ExamQuestionItemMapper">
<resultMap type="ExamQuestionItem" id="ExamQuestionItemResult">
<result property="id" column="id" />
<result property="content" column="content" />
<result property="number" column="number" />
<result property="examQuestionId" column="exam_question_id" />
<result property="createBy" column="create_by" />
<result property="createDate" column="create_date" />
<result property="updateBy" column="update_by" />
<result property="updateDate" column="update_date" />
<result property="remarks" column="remarks" />
<result property="delFlag" column="del_flag" />
</resultMap>
<sql id="selectExamQuestionItemVo">
select id, content, number, exam_question_id, create_by, create_date, update_by, update_date, remarks, del_flag from exam_question_item
</sql>
<select id="selectExamQuestionItemList" parameterType="ExamQuestionItem" resultMap="ExamQuestionItemResult">
<include refid="selectExamQuestionItemVo"/>
<where>
<if test="id != null and id != '' "> and id = #{id}</if>
<if test="content != null and content != '' "> and content = #{content}</if>
<if test="number != null and number != '' "> and number = #{number}</if>
<if test="examQuestionId != null and examQuestionId != '' "> and exam_question_id = #{examQuestionId}</if>
<if test="createBy != null and createBy != '' "> and create_by = #{createBy}</if>
<if test="createDate != null "> and create_date = #{createDate}</if>
<if test="updateBy != null and updateBy != '' "> and update_by = #{updateBy}</if>
<if test="updateDate != null "> and update_date = #{updateDate}</if>
<if test="remarks != null and remarks != '' "> and remarks = #{remarks}</if>
<if test="delFlag != null and delFlag != '' "> and del_flag = #{delFlag}</if>
</where>
</select>
<select id="selectExamQuestionItemById" parameterType="String" resultMap="ExamQuestionItemResult">
<include refid="selectExamQuestionItemVo"/>
where id = #{id}
</select>
<insert id="insertExamQuestionItem" parameterType="ExamQuestionItem">
insert into exam_question_item
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null and id != '' ">id,</if>
<if test="content != null and content != '' ">content,</if>
<if test="number != null and number != '' ">number,</if>
<if test="examQuestionId != null and examQuestionId != '' ">exam_question_id,</if>
<if test="createBy != null and createBy != '' ">create_by,</if>
<if test="createDate != null ">create_date,</if>
<if test="updateBy != null and updateBy != '' ">update_by,</if>
<if test="updateDate != null ">update_date,</if>
<if test="remarks != null and remarks != '' ">remarks,</if>
<if test="delFlag != null and delFlag != '' ">del_flag,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null and id != '' ">#{id},</if>
<if test="content != null and content != '' ">#{content},</if>
<if test="number != null and number != '' ">#{number},</if>
<if test="examQuestionId != null and examQuestionId != '' ">#{examQuestionId},</if>
<if test="createBy != null and createBy != '' ">#{createBy},</if>
<if test="createDate != null ">#{createDate},</if>
<if test="updateBy != null and updateBy != '' ">#{updateBy},</if>
<if test="updateDate != null ">#{updateDate},</if>
<if test="remarks != null and remarks != '' ">#{remarks},</if>
<if test="delFlag != null and delFlag != '' ">#{delFlag},</if>
</trim>
</insert>
<update id="updateExamQuestionItem" parameterType="ExamQuestionItem">
update exam_question_item
<trim prefix="SET" suffixOverrides=",">
<if test="content != null and content != '' ">content = #{content},</if>
<if test="number != null and number != '' ">number = #{number},</if>
<if test="examQuestionId != null and examQuestionId != '' ">exam_question_id = #{examQuestionId},</if>
<if test="createBy != null and createBy != '' ">create_by = #{createBy},</if>
<if test="createDate != null ">create_date = #{createDate},</if>
<if test="updateBy != null and updateBy != '' ">update_by = #{updateBy},</if>
<if test="updateDate != null ">update_date = #{updateDate},</if>
<if test="remarks != null and remarks != '' ">remarks = #{remarks},</if>
<if test="delFlag != null and delFlag != '' ">del_flag = #{delFlag},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteExamQuestionItemById" parameterType="String">
delete from exam_question_item where id = #{id}
</delete>
<delete id="deleteExamQuestionItemByIds" parameterType="String">
delete from exam_question_item where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>

View File

@ -0,0 +1,110 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.exam.mapper.ExamQuestionMapper">
<resultMap type="ExamQuestion" id="ExamQuestionResult">
<result property="id" column="id" />
<result property="title" column="title" />
<result property="answer" column="answer" />
<result property="type" column="type" />
<result property="label" column="label" />
<result property="categoryId" column="category_id" />
<result property="createBy" column="create_by" />
<result property="createDate" column="create_date" />
<result property="updateBy" column="update_by" />
<result property="updateDate" column="update_date" />
<result property="remarks" column="remarks" />
<result property="delFlag" column="del_flag" />
</resultMap>
<sql id="selectExamQuestionVo">
select id, title, answer, type, label, category_id, create_by, create_date, update_by, update_date, remarks, del_flag from exam_question
</sql>
<select id="selectExamQuestionList" parameterType="ExamQuestion" resultMap="ExamQuestionResult">
<include refid="selectExamQuestionVo"/>
<where>
<if test="id != null and id != '' "> and id = #{id}</if>
<if test="title != null and title != '' "> and title = #{title}</if>
<if test="answer != null and answer != '' "> and answer = #{answer}</if>
<if test="type != null and type != '' "> and type = #{type}</if>
<if test="label != null and label != '' "> and label = #{label}</if>
<if test="categoryId != null and categoryId != '' "> and category_id = #{categoryId}</if>
<if test="createBy != null and createBy != '' "> and create_by = #{createBy}</if>
<if test="createDate != null "> and create_date = #{createDate}</if>
<if test="updateBy != null and updateBy != '' "> and update_by = #{updateBy}</if>
<if test="updateDate != null "> and update_date = #{updateDate}</if>
<if test="remarks != null and remarks != '' "> and remarks = #{remarks}</if>
<if test="delFlag != null and delFlag != '' "> and del_flag = #{delFlag}</if>
</where>
</select>
<select id="selectExamQuestionById" parameterType="String" resultMap="ExamQuestionResult">
<include refid="selectExamQuestionVo"/>
where id = #{id}
</select>
<insert id="insertExamQuestion" parameterType="ExamQuestion">
insert into exam_question
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null and id != '' ">id,</if>
<if test="title != null and title != '' ">title,</if>
<if test="answer != null and answer != '' ">answer,</if>
<if test="type != null and type != '' ">type,</if>
<if test="label != null and label != '' ">label,</if>
<if test="categoryId != null and categoryId != '' ">category_id,</if>
<if test="createBy != null and createBy != '' ">create_by,</if>
<if test="createDate != null ">create_date,</if>
<if test="updateBy != null and updateBy != '' ">update_by,</if>
<if test="updateDate != null ">update_date,</if>
<if test="remarks != null and remarks != '' ">remarks,</if>
<if test="delFlag != null and delFlag != '' ">del_flag,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null and id != '' ">#{id},</if>
<if test="title != null and title != '' ">#{title},</if>
<if test="answer != null and answer != '' ">#{answer},</if>
<if test="type != null and type != '' ">#{type},</if>
<if test="label != null and label != '' ">#{label},</if>
<if test="categoryId != null and categoryId != '' ">#{categoryId},</if>
<if test="createBy != null and createBy != '' ">#{createBy},</if>
<if test="createDate != null ">#{createDate},</if>
<if test="updateBy != null and updateBy != '' ">#{updateBy},</if>
<if test="updateDate != null ">#{updateDate},</if>
<if test="remarks != null and remarks != '' ">#{remarks},</if>
<if test="delFlag != null and delFlag != '' ">#{delFlag},</if>
</trim>
</insert>
<update id="updateExamQuestion" parameterType="ExamQuestion">
update exam_question
<trim prefix="SET" suffixOverrides=",">
<if test="title != null and title != '' ">title = #{title},</if>
<if test="answer != null and answer != '' ">answer = #{answer},</if>
<if test="type != null and type != '' ">type = #{type},</if>
<if test="label != null and label != '' ">label = #{label},</if>
<if test="categoryId != null and categoryId != '' ">category_id = #{categoryId},</if>
<if test="createBy != null and createBy != '' ">create_by = #{createBy},</if>
<if test="createDate != null ">create_date = #{createDate},</if>
<if test="updateBy != null and updateBy != '' ">update_by = #{updateBy},</if>
<if test="updateDate != null ">update_date = #{updateDate},</if>
<if test="remarks != null and remarks != '' ">remarks = #{remarks},</if>
<if test="delFlag != null and delFlag != '' ">del_flag = #{delFlag},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteExamQuestionById" parameterType="String">
delete from exam_question where id = #{id}
</delete>
<delete id="deleteExamQuestionByIds" parameterType="String">
delete from exam_question where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>

View File

@ -0,0 +1,94 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-examQuestion-add">
<div class="form-group">
<label class="col-sm-3 control-label">问题标题:</label>
<div class="col-sm-8">
<input id="title" name="title" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">问题答案:</label>
<div class="col-sm-8">
<input id="answer" name="answer" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">问题类型:</label>
<div class="col-sm-8">
<input id="type" name="type" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">标签:</label>
<div class="col-sm-8">
<input id="label" name="label" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">类别:</label>
<div class="col-sm-8">
<input id="categoryId" name="categoryId" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建者:</label>
<div class="col-sm-8">
<input id="createBy" name="createBy" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建时间:</label>
<div class="col-sm-8">
<input id="createDate" name="createDate" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新者:</label>
<div class="col-sm-8">
<input id="updateBy" name="updateBy" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新时间:</label>
<div class="col-sm-8">
<input id="updateDate" name="updateDate" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注信息:</label>
<div class="col-sm-8">
<input id="remarks" name="remarks" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">删除标记:</label>
<div class="col-sm-8">
<input id="delFlag" name="delFlag" class="form-control" type="text">
</div>
</div>
</form>
</div>
<div th:include="include::footer"></div>
<script type="text/javascript">
var prefix = ctx + "exam/examQuestion"
$("#form-examQuestion-add").validate({
rules:{
xxxx:{
required:true,
},
}
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/add", $('#form-examQuestion-add').serialize());
}
}
</script>
</body>
</html>

View File

@ -0,0 +1,95 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-examQuestion-edit" th:object="${examQuestion}">
<input id="id" name="id" th:field="*{id}" type="hidden">
<div class="form-group">
<label class="col-sm-3 control-label">问题标题:</label>
<div class="col-sm-8">
<input id="title" name="title" th:field="*{title}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">问题答案:</label>
<div class="col-sm-8">
<input id="answer" name="answer" th:field="*{answer}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">问题类型:</label>
<div class="col-sm-8">
<input id="type" name="type" th:field="*{type}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">标签:</label>
<div class="col-sm-8">
<input id="label" name="label" th:field="*{label}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">类别:</label>
<div class="col-sm-8">
<input id="categoryId" name="categoryId" th:field="*{categoryId}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建者:</label>
<div class="col-sm-8">
<input id="createBy" name="createBy" th:field="*{createBy}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建时间:</label>
<div class="col-sm-8">
<input id="createDate" name="createDate" th:field="*{createDate}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新者:</label>
<div class="col-sm-8">
<input id="updateBy" name="updateBy" th:field="*{updateBy}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新时间:</label>
<div class="col-sm-8">
<input id="updateDate" name="updateDate" th:field="*{updateDate}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注信息:</label>
<div class="col-sm-8">
<input id="remarks" name="remarks" th:field="*{remarks}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">删除标记:</label>
<div class="col-sm-8">
<input id="delFlag" name="delFlag" th:field="*{delFlag}" class="form-control" type="text">
</div>
</div>
</form>
</div>
<div th:include="include::footer"></div>
<script type="text/javascript">
var prefix = ctx + "exam/examQuestion"
$("#form-examQuestion-edit").validate({
rules:{
xxxx:{
required:true,
},
}
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/edit", $('#form-examQuestion-edit').serialize());
}
}
</script>
</body>
</html>

View File

@ -0,0 +1,179 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="gray-bg">
<div class="container-div">
<div class="row">
<div class="col-sm-12 search-collapse">
<form id="formId">
<div class="select-list">
<ul>
<li>
问题标题:<input type="text" name="title"/>
</li>
<li>
问题答案:<input type="text" name="answer"/>
</li>
<li>
问题类型:<input type="text" name="type"/>
</li>
<li>
标签:<input type="text" name="label"/>
</li>
<li>
类别:<input type="text" name="categoryId"/>
</li>
<li>
创建者:<input type="text" name="createBy"/>
</li>
<li>
创建时间:<input type="text" name="createDate"/>
</li>
<li>
更新者:<input type="text" name="updateBy"/>
</li>
<li>
更新时间:<input type="text" name="updateDate"/>
</li>
<li>
备注信息:<input type="text" name="remarks"/>
</li>
<li>
删除标记:<input type="text" name="delFlag"/>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
</li>
</ul>
</div>
</form>
</div>
<div class="btn-group-sm hidden-xs" id="toolbar" role="group">
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="exam:examQuestion:add">
<i class="fa fa-plus"></i> 添加
</a>
<a class="btn btn-primary btn-edit disabled" onclick="$.operate.edit()" shiro:hasPermission="exam:examQuestion:edit">
<i class="fa fa-edit"></i> 修改
</a>
<a class="btn btn-danger btn-del btn-del disabled" onclick="$.operate.removeAll()" shiro:hasPermission="exam:examQuestion:remove">
<i class="fa fa-remove"></i> 删除
</a>
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="exam:examQuestion:export">
<i class="fa fa-download"></i> 导出
</a>
</div>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table" data-mobile-responsive="true"></table>
</div>
</div>
</div>
<div th:include="include :: footer"></div>
<script th:inline="javascript">
var editFlag = [[${@permission.hasPermi('exam:examQuestion:edit')}]];
var removeFlag = [[${@permission.hasPermi('exam:examQuestion:remove')}]];
var prefix = ctx + "exam/examQuestion";
$(function() {
var options = {
url: prefix + "/list",
createUrl: prefix + "/add",
updateUrl: prefix + "/edit/{id}",
removeUrl: prefix + "/remove",
exportUrl: prefix + "/export",
modalName: "问题",
search: false,
showExport: true,
columns: [{
checkbox: true
},
{
field : 'id',
title : '',
visible: false
},
{
field : 'title',
title : '问题标题',
sortable: true
},
{
field : 'answer',
title : '问题答案',
sortable: true
},
{
field : 'type',
title : '问题类型',
sortable: true
},
{
field : 'label',
title : '标签',
sortable: true
},
{
field : 'categoryId',
title : '类别',
sortable: true
},
{
field : 'createBy',
title : '创建者',
sortable: true
},
{
field : 'createDate',
title : '创建时间',
sortable: true
},
{
field : 'updateBy',
title : '更新者',
sortable: true
},
{
field : 'updateDate',
title : '更新时间',
sortable: true
},
{
field : 'remarks',
title : '备注信息',
sortable: true
},
{
field : 'delFlag',
title : '删除标记',
sortable: true
},
{
title: '操作',
align: 'center',
formatter: function(value, row, index) {
var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>');
return actions.join('');
}
}]
};
$.table.init(options);
});
</script>
</body>
</html>

View File

@ -0,0 +1,82 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-examQuestionCategory-add">
<div class="form-group">
<label class="col-sm-3 control-label">分类:</label>
<div class="col-sm-8">
<input id="name" name="name" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label"></label>
<div class="col-sm-8">
<input id="parentId" name="parentId" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label"></label>
<div class="col-sm-8">
<input id="parentIds" name="parentIds" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建者:</label>
<div class="col-sm-8">
<input id="createBy" name="createBy" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建时间:</label>
<div class="col-sm-8">
<input id="createDate" name="createDate" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新者:</label>
<div class="col-sm-8">
<input id="updateBy" name="updateBy" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新时间:</label>
<div class="col-sm-8">
<input id="updateDate" name="updateDate" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注信息:</label>
<div class="col-sm-8">
<input id="remarks" name="remarks" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">删除标记:</label>
<div class="col-sm-8">
<input id="delFlag" name="delFlag" class="form-control" type="text">
</div>
</div>
</form>
</div>
<div th:include="include::footer"></div>
<script type="text/javascript">
var prefix = ctx + "exam/examQuestionCategory"
$("#form-examQuestionCategory-add").validate({
rules:{
xxxx:{
required:true,
},
}
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/add", $('#form-examQuestionCategory-add').serialize());
}
}
</script>
</body>
</html>

View File

@ -0,0 +1,83 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-examQuestionCategory-edit" th:object="${examQuestionCategory}">
<input id="id" name="id" th:field="*{id}" type="hidden">
<div class="form-group">
<label class="col-sm-3 control-label">分类:</label>
<div class="col-sm-8">
<input id="name" name="name" th:field="*{name}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label"></label>
<div class="col-sm-8">
<input id="parentId" name="parentId" th:field="*{parentId}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label"></label>
<div class="col-sm-8">
<input id="parentIds" name="parentIds" th:field="*{parentIds}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建者:</label>
<div class="col-sm-8">
<input id="createBy" name="createBy" th:field="*{createBy}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建时间:</label>
<div class="col-sm-8">
<input id="createDate" name="createDate" th:field="*{createDate}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新者:</label>
<div class="col-sm-8">
<input id="updateBy" name="updateBy" th:field="*{updateBy}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新时间:</label>
<div class="col-sm-8">
<input id="updateDate" name="updateDate" th:field="*{updateDate}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注信息:</label>
<div class="col-sm-8">
<input id="remarks" name="remarks" th:field="*{remarks}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">删除标记:</label>
<div class="col-sm-8">
<input id="delFlag" name="delFlag" th:field="*{delFlag}" class="form-control" type="text">
</div>
</div>
</form>
</div>
<div th:include="include::footer"></div>
<script type="text/javascript">
var prefix = ctx + "exam/examQuestionCategory"
$("#form-examQuestionCategory-edit").validate({
rules:{
xxxx:{
required:true,
},
}
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/edit", $('#form-examQuestionCategory-edit').serialize());
}
}
</script>
</body>
</html>

View File

@ -0,0 +1,161 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="gray-bg">
<div class="container-div">
<div class="row">
<div class="col-sm-12 search-collapse">
<form id="formId">
<div class="select-list">
<ul>
<li>
分类:<input type="text" name="name"/>
</li>
<li>
<input type="text" name="parentId"/>
</li>
<li>
<input type="text" name="parentIds"/>
</li>
<li>
创建者:<input type="text" name="createBy"/>
</li>
<li>
创建时间:<input type="text" name="createDate"/>
</li>
<li>
更新者:<input type="text" name="updateBy"/>
</li>
<li>
更新时间:<input type="text" name="updateDate"/>
</li>
<li>
备注信息:<input type="text" name="remarks"/>
</li>
<li>
删除标记:<input type="text" name="delFlag"/>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
</li>
</ul>
</div>
</form>
</div>
<div class="btn-group-sm hidden-xs" id="toolbar" role="group">
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="exam:examQuestionCategory:add">
<i class="fa fa-plus"></i> 添加
</a>
<a class="btn btn-primary btn-edit disabled" onclick="$.operate.edit()" shiro:hasPermission="exam:examQuestionCategory:edit">
<i class="fa fa-edit"></i> 修改
</a>
<a class="btn btn-danger btn-del btn-del disabled" onclick="$.operate.removeAll()" shiro:hasPermission="exam:examQuestionCategory:remove">
<i class="fa fa-remove"></i> 删除
</a>
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="exam:examQuestionCategory:export">
<i class="fa fa-download"></i> 导出
</a>
</div>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table" data-mobile-responsive="true"></table>
</div>
</div>
</div>
<div th:include="include :: footer"></div>
<script th:inline="javascript">
var editFlag = [[${@permission.hasPermi('exam:examQuestionCategory:edit')}]];
var removeFlag = [[${@permission.hasPermi('exam:examQuestionCategory:remove')}]];
var prefix = ctx + "exam/examQuestionCategory";
$(function() {
var options = {
url: prefix + "/list",
createUrl: prefix + "/add",
updateUrl: prefix + "/edit/{id}",
removeUrl: prefix + "/remove",
exportUrl: prefix + "/export",
modalName: "试题分类",
search: false,
showExport: true,
columns: [{
checkbox: true
},
{
field : 'id',
title : '',
visible: false
},
{
field : 'name',
title : '分类',
sortable: true
},
{
field : 'parentId',
title : '',
sortable: true
},
{
field : 'parentIds',
title : '',
sortable: true
},
{
field : 'createBy',
title : '创建者',
sortable: true
},
{
field : 'createDate',
title : '创建时间',
sortable: true
},
{
field : 'updateBy',
title : '更新者',
sortable: true
},
{
field : 'updateDate',
title : '更新时间',
sortable: true
},
{
field : 'remarks',
title : '备注信息',
sortable: true
},
{
field : 'delFlag',
title : '删除标记',
sortable: true
},
{
title: '操作',
align: 'center',
formatter: function(value, row, index) {
var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>');
return actions.join('');
}
}]
};
$.table.init(options);
});
</script>
</body>
</html>

View File

@ -0,0 +1,88 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-examQuestionComment-add">
<div class="form-group">
<label class="col-sm-3 control-label">点评内容:</label>
<div class="col-sm-8">
<input id="content" name="content" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">问题:</label>
<div class="col-sm-8">
<input id="examQuestionId" name="examQuestionId" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">点赞数量:</label>
<div class="col-sm-8">
<input id="praiseCount" name="praiseCount" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">类型0 学生点评 1 老师点评):</label>
<div class="col-sm-8">
<input id="commentType" name="commentType" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建者:</label>
<div class="col-sm-8">
<input id="createBy" name="createBy" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建时间:</label>
<div class="col-sm-8">
<input id="createDate" name="createDate" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新者:</label>
<div class="col-sm-8">
<input id="updateBy" name="updateBy" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新时间:</label>
<div class="col-sm-8">
<input id="updateDate" name="updateDate" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注信息:</label>
<div class="col-sm-8">
<input id="remarks" name="remarks" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">删除标记:</label>
<div class="col-sm-8">
<input id="delFlag" name="delFlag" class="form-control" type="text">
</div>
</div>
</form>
</div>
<div th:include="include::footer"></div>
<script type="text/javascript">
var prefix = ctx + "exam/examQuestionComment"
$("#form-examQuestionComment-add").validate({
rules:{
xxxx:{
required:true,
},
}
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/add", $('#form-examQuestionComment-add').serialize());
}
}
</script>
</body>
</html>

View File

@ -0,0 +1,89 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-examQuestionComment-edit" th:object="${examQuestionComment}">
<input id="id" name="id" th:field="*{id}" type="hidden">
<div class="form-group">
<label class="col-sm-3 control-label">点评内容:</label>
<div class="col-sm-8">
<input id="content" name="content" th:field="*{content}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">问题:</label>
<div class="col-sm-8">
<input id="examQuestionId" name="examQuestionId" th:field="*{examQuestionId}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">点赞数量:</label>
<div class="col-sm-8">
<input id="praiseCount" name="praiseCount" th:field="*{praiseCount}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">类型0 学生点评 1 老师点评):</label>
<div class="col-sm-8">
<input id="commentType" name="commentType" th:field="*{commentType}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建者:</label>
<div class="col-sm-8">
<input id="createBy" name="createBy" th:field="*{createBy}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建时间:</label>
<div class="col-sm-8">
<input id="createDate" name="createDate" th:field="*{createDate}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新者:</label>
<div class="col-sm-8">
<input id="updateBy" name="updateBy" th:field="*{updateBy}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新时间:</label>
<div class="col-sm-8">
<input id="updateDate" name="updateDate" th:field="*{updateDate}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注信息:</label>
<div class="col-sm-8">
<input id="remarks" name="remarks" th:field="*{remarks}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">删除标记:</label>
<div class="col-sm-8">
<input id="delFlag" name="delFlag" th:field="*{delFlag}" class="form-control" type="text">
</div>
</div>
</form>
</div>
<div th:include="include::footer"></div>
<script type="text/javascript">
var prefix = ctx + "exam/examQuestionComment"
$("#form-examQuestionComment-edit").validate({
rules:{
xxxx:{
required:true,
},
}
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/edit", $('#form-examQuestionComment-edit').serialize());
}
}
</script>
</body>
</html>

View File

@ -0,0 +1,170 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="gray-bg">
<div class="container-div">
<div class="row">
<div class="col-sm-12 search-collapse">
<form id="formId">
<div class="select-list">
<ul>
<li>
点评内容:<input type="text" name="content"/>
</li>
<li>
问题:<input type="text" name="examQuestionId"/>
</li>
<li>
点赞数量:<input type="text" name="praiseCount"/>
</li>
<li>
类型0 学生点评 1 老师点评):<input type="text" name="commentType"/>
</li>
<li>
创建者:<input type="text" name="createBy"/>
</li>
<li>
创建时间:<input type="text" name="createDate"/>
</li>
<li>
更新者:<input type="text" name="updateBy"/>
</li>
<li>
更新时间:<input type="text" name="updateDate"/>
</li>
<li>
备注信息:<input type="text" name="remarks"/>
</li>
<li>
删除标记:<input type="text" name="delFlag"/>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
</li>
</ul>
</div>
</form>
</div>
<div class="btn-group-sm hidden-xs" id="toolbar" role="group">
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="exam:examQuestionComment:add">
<i class="fa fa-plus"></i> 添加
</a>
<a class="btn btn-primary btn-edit disabled" onclick="$.operate.edit()" shiro:hasPermission="exam:examQuestionComment:edit">
<i class="fa fa-edit"></i> 修改
</a>
<a class="btn btn-danger btn-del btn-del disabled" onclick="$.operate.removeAll()" shiro:hasPermission="exam:examQuestionComment:remove">
<i class="fa fa-remove"></i> 删除
</a>
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="exam:examQuestionComment:export">
<i class="fa fa-download"></i> 导出
</a>
</div>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table" data-mobile-responsive="true"></table>
</div>
</div>
</div>
<div th:include="include :: footer"></div>
<script th:inline="javascript">
var editFlag = [[${@permission.hasPermi('exam:examQuestionComment:edit')}]];
var removeFlag = [[${@permission.hasPermi('exam:examQuestionComment:remove')}]];
var prefix = ctx + "exam/examQuestionComment";
$(function() {
var options = {
url: prefix + "/list",
createUrl: prefix + "/add",
updateUrl: prefix + "/edit/{id}",
removeUrl: prefix + "/remove",
exportUrl: prefix + "/export",
modalName: "问题点评",
search: false,
showExport: true,
columns: [{
checkbox: true
},
{
field : 'id',
title : '',
visible: false
},
{
field : 'content',
title : '点评内容',
sortable: true
},
{
field : 'examQuestionId',
title : '问题',
sortable: true
},
{
field : 'praiseCount',
title : '点赞数量',
sortable: true
},
{
field : 'commentType',
title : '类型0 学生点评 1 老师点评)',
sortable: true
},
{
field : 'createBy',
title : '创建者',
sortable: true
},
{
field : 'createDate',
title : '创建时间',
sortable: true
},
{
field : 'updateBy',
title : '更新者',
sortable: true
},
{
field : 'updateDate',
title : '更新时间',
sortable: true
},
{
field : 'remarks',
title : '备注信息',
sortable: true
},
{
field : 'delFlag',
title : '删除标记',
sortable: true
},
{
title: '操作',
align: 'center',
formatter: function(value, row, index) {
var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>');
return actions.join('');
}
}]
};
$.table.init(options);
});
</script>
</body>
</html>

View File

@ -0,0 +1,82 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-examQuestionItem-add">
<div class="form-group">
<label class="col-sm-3 control-label">选项内容:</label>
<div class="col-sm-8">
<input id="content" name="content" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">选项:</label>
<div class="col-sm-8">
<input id="number" name="number" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">题目:</label>
<div class="col-sm-8">
<input id="examQuestionId" name="examQuestionId" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建者:</label>
<div class="col-sm-8">
<input id="createBy" name="createBy" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建时间:</label>
<div class="col-sm-8">
<input id="createDate" name="createDate" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新者:</label>
<div class="col-sm-8">
<input id="updateBy" name="updateBy" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新时间:</label>
<div class="col-sm-8">
<input id="updateDate" name="updateDate" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注信息:</label>
<div class="col-sm-8">
<input id="remarks" name="remarks" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">删除标记:</label>
<div class="col-sm-8">
<input id="delFlag" name="delFlag" class="form-control" type="text">
</div>
</div>
</form>
</div>
<div th:include="include::footer"></div>
<script type="text/javascript">
var prefix = ctx + "exam/examQuestionItem"
$("#form-examQuestionItem-add").validate({
rules:{
xxxx:{
required:true,
},
}
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/add", $('#form-examQuestionItem-add').serialize());
}
}
</script>
</body>
</html>

View File

@ -0,0 +1,83 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-examQuestionItem-edit" th:object="${examQuestionItem}">
<input id="id" name="id" th:field="*{id}" type="hidden">
<div class="form-group">
<label class="col-sm-3 control-label">选项内容:</label>
<div class="col-sm-8">
<input id="content" name="content" th:field="*{content}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">选项:</label>
<div class="col-sm-8">
<input id="number" name="number" th:field="*{number}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">题目:</label>
<div class="col-sm-8">
<input id="examQuestionId" name="examQuestionId" th:field="*{examQuestionId}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建者:</label>
<div class="col-sm-8">
<input id="createBy" name="createBy" th:field="*{createBy}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">创建时间:</label>
<div class="col-sm-8">
<input id="createDate" name="createDate" th:field="*{createDate}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新者:</label>
<div class="col-sm-8">
<input id="updateBy" name="updateBy" th:field="*{updateBy}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">更新时间:</label>
<div class="col-sm-8">
<input id="updateDate" name="updateDate" th:field="*{updateDate}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注信息:</label>
<div class="col-sm-8">
<input id="remarks" name="remarks" th:field="*{remarks}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">删除标记:</label>
<div class="col-sm-8">
<input id="delFlag" name="delFlag" th:field="*{delFlag}" class="form-control" type="text">
</div>
</div>
</form>
</div>
<div th:include="include::footer"></div>
<script type="text/javascript">
var prefix = ctx + "exam/examQuestionItem"
$("#form-examQuestionItem-edit").validate({
rules:{
xxxx:{
required:true,
},
}
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/edit", $('#form-examQuestionItem-edit').serialize());
}
}
</script>
</body>
</html>

View File

@ -0,0 +1,161 @@
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="gray-bg">
<div class="container-div">
<div class="row">
<div class="col-sm-12 search-collapse">
<form id="formId">
<div class="select-list">
<ul>
<li>
选项内容:<input type="text" name="content"/>
</li>
<li>
选项:<input type="text" name="number"/>
</li>
<li>
题目:<input type="text" name="examQuestionId"/>
</li>
<li>
创建者:<input type="text" name="createBy"/>
</li>
<li>
创建时间:<input type="text" name="createDate"/>
</li>
<li>
更新者:<input type="text" name="updateBy"/>
</li>
<li>
更新时间:<input type="text" name="updateDate"/>
</li>
<li>
备注信息:<input type="text" name="remarks"/>
</li>
<li>
删除标记:<input type="text" name="delFlag"/>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
</li>
</ul>
</div>
</form>
</div>
<div class="btn-group-sm hidden-xs" id="toolbar" role="group">
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="exam:examQuestionItem:add">
<i class="fa fa-plus"></i> 添加
</a>
<a class="btn btn-primary btn-edit disabled" onclick="$.operate.edit()" shiro:hasPermission="exam:examQuestionItem:edit">
<i class="fa fa-edit"></i> 修改
</a>
<a class="btn btn-danger btn-del btn-del disabled" onclick="$.operate.removeAll()" shiro:hasPermission="exam:examQuestionItem:remove">
<i class="fa fa-remove"></i> 删除
</a>
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="exam:examQuestionItem:export">
<i class="fa fa-download"></i> 导出
</a>
</div>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table" data-mobile-responsive="true"></table>
</div>
</div>
</div>
<div th:include="include :: footer"></div>
<script th:inline="javascript">
var editFlag = [[${@permission.hasPermi('exam:examQuestionItem:edit')}]];
var removeFlag = [[${@permission.hasPermi('exam:examQuestionItem:remove')}]];
var prefix = ctx + "exam/examQuestionItem";
$(function() {
var options = {
url: prefix + "/list",
createUrl: prefix + "/add",
updateUrl: prefix + "/edit/{id}",
removeUrl: prefix + "/remove",
exportUrl: prefix + "/export",
modalName: "问题选项",
search: false,
showExport: true,
columns: [{
checkbox: true
},
{
field : 'id',
title : '',
visible: false
},
{
field : 'content',
title : '选项内容',
sortable: true
},
{
field : 'number',
title : '选项',
sortable: true
},
{
field : 'examQuestionId',
title : '题目',
sortable: true
},
{
field : 'createBy',
title : '创建者',
sortable: true
},
{
field : 'createDate',
title : '创建时间',
sortable: true
},
{
field : 'updateBy',
title : '更新者',
sortable: true
},
{
field : 'updateDate',
title : '更新时间',
sortable: true
},
{
field : 'remarks',
title : '备注信息',
sortable: true
},
{
field : 'delFlag',
title : '删除标记',
sortable: true
},
{
title: '操作',
align: 'center',
formatter: function(value, row, index) {
var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>');
return actions.join('');
}
}]
};
$.table.init(options);
});
</script>
</body>
</html>