Explorar o código

Merge branch 'dev0410' of https://git.oschina.net/songyue123456/comm-ques-bank into dev0410

weiwenhai %!s(int64=8) %!d(string=hai) anos
pai
achega
25c7e2f880

+ 1 - 1
cqb-paper/src/main/java/com/qmth/cqb/paper/dao/PaperDetailUnitRepo.java

@@ -12,7 +12,7 @@ import java.util.List;
 
 
 public interface PaperDetailUnitRepo extends MongoRepository<PaperDetailUnit, String>,QueryByExampleExecutor<PaperDetailUnit> {
-    List<PaperDetailUnit> findByPaperDetail(PaperDetail paperDetail);
+    List<PaperDetailUnit> findByPaperDetailOrderByNumber(PaperDetail paperDetail);
     List<PaperDetailUnit> findByPaper(Paper paper);
     List<PaperDetailUnit> findByQuestion(Question question);
     List<PaperDetailUnit> findByQuestionIn(List<Question> questionList);

+ 14 - 2
cqb-paper/src/main/java/com/qmth/cqb/paper/model/Paper.java

@@ -57,6 +57,11 @@ public class Paper implements Serializable {
     private String orgId;
 
     private Map<String, String> params;// 导入试卷属性
+    
+    /**
+     * 是否包含音频题
+     */
+    private boolean hasAudioQuestion;
 
     public static long getSerialVersionUID() {
         return serialVersionUID;
@@ -209,6 +214,13 @@ public class Paper implements Serializable {
 	public void setLevel(CourseLevel level) {
 		this.level = level;
 	}
-    
-    
+
+	public boolean isHasAudioQuestion() {
+		return hasAudioQuestion;
+	}
+
+	public void setHasAudioQuestion(boolean hasAudioQuestion) {
+		this.hasAudioQuestion = hasAudioQuestion;
+	}
+	
 }

+ 1 - 1
cqb-paper/src/main/java/com/qmth/cqb/paper/service/PaperDetailUnitService.java

@@ -114,7 +114,7 @@ public class PaperDetailUnitService {
      * @return
      */
     public List<PaperDetailUnit> getUnitsByPaperDetail(PaperDetail paperDetail) {
-        return paperDetailUnitRepo.findByPaperDetail(paperDetail);
+        return paperDetailUnitRepo.findByPaperDetailOrderByNumber(paperDetail);
     }
 
     /**

+ 4 - 4
cqb-paper/src/main/java/com/qmth/cqb/paper/service/PaperService.java

@@ -427,7 +427,7 @@ public class PaperService {
 
         // 封装小题
         for (int i = 0; i < paperDetailExps.size(); i++) {
-            List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetail(paperDetails.get(i));
+            List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetailOrderByNumber(paperDetails.get(i));
             if (paperDetailUnits != null && paperDetailUnits.size() > 0) {
                 List<PaperDetailUnitExp> paperDetailUnitExps = BeanCopierUtil.copyPropertiesOfList(paperDetailUnits,
                         PaperDetailUnitExp.class);
@@ -576,7 +576,7 @@ public class PaperService {
         }
         // 计算各大题总分
         for (PaperDetail paperDetail : paperDetails) {
-            List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetail(paperDetail);
+            List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetailOrderByNumber(paperDetail);
             Collections.sort(paperDetailUnits);
             if (paperDetailUnits.size() > 0) {
                 int count = 0;
@@ -661,7 +661,7 @@ public class PaperService {
         Paper paper = paperRepo.findOne(paperId);
         PaperDetail pd = paperDetailRepo.findOne(paperDetailId);
         PaperDetailUnit pdu = new PaperDetailUnit();
-        List<PaperDetailUnit> pdus = paperDetailUnitRepo.findByPaperDetail(pd);
+        List<PaperDetailUnit> pdus = paperDetailUnitRepo.findByPaperDetailOrderByNumber(pd);
         pdu.setPaper(paper);
         pdu.setQuestionType(question.getQuestionType());
         pdu.setQuestion(question);
@@ -726,7 +726,7 @@ public class PaperService {
             AccessUser user) {
         Paper paper = paperRepo.findOne(paperId);
         PaperDetail pd = paperDetailRepo.findOne(paperDetailId);
-        List<PaperDetailUnit> pdus = paperDetailUnitRepo.findByPaperDetail(pd);
+        List<PaperDetailUnit> pdus = paperDetailUnitRepo.findByPaperDetailOrderByNumber(pd);
         List<PaperDetailUnit> saveUnits = new ArrayList<PaperDetailUnit>();
         for (Question ques : questions) {
             PaperDetailUnit pdu = new PaperDetailUnit();

+ 1 - 1
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/DzkdExportPaperService.java

@@ -87,7 +87,7 @@ public class DzkdExportPaperService extends ExportPaperAbstractService{
 		int objetcUnitSum = 0;
 		for (int i = 0; i < paperDetails.size(); i++) {
 			PaperDetailExp paperDetailExp = BeanCopierUtil.copyProperties(paperDetails.get(i), PaperDetailExp.class);
-			List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetail(paperDetails.get(i));
+			List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetailOrderByNumber(paperDetails.get(i));
 			// 把大题分类 :客观题和主观题
 			List<PaperDetailUnitExp> paperDetailUnitExps = BeanCopierUtil.copyPropertiesOfList(paperDetailUnits,PaperDetailUnitExp.class);
 			// 选择题,套题下选择题 选项顺序重新排列

+ 1 - 1
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/ExportPaperAbstractService.java

@@ -242,7 +242,7 @@ public abstract class ExportPaperAbstractService {
 		int objetcUnitSum = 0;
 		for (int i = 0; i < paperDetails.size(); i++) {
 			PaperDetailExp paperDetailExp = BeanCopierUtil.copyProperties(paperDetails.get(i), PaperDetailExp.class);
-			List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetail(paperDetails.get(i));
+			List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetailOrderByNumber(paperDetails.get(i));
 			// 把大题分类 :客观题和主观题
 			List<PaperDetailUnitExp> paperDetailUnitExps = BeanCopierUtil.copyPropertiesOfList(paperDetailUnits,PaperDetailUnitExp.class);
 			// 选择题,套题下选择题 选项顺序重新排列

+ 1 - 1
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/SydxExportPaperService.java

@@ -147,7 +147,7 @@ public class SydxExportPaperService extends ExportPaperAbstractService{
         for(int i = 0; i < paperDetailExps.size(); i++){
             PaperDetailExp paperDetailExp = paperDetailExps.get(i);
             paperDetailExp.setTitle(getDetailTitle(paperDetailExp));
-            List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetail(paperDetails.get(i));
+            List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetailOrderByNumber(paperDetails.get(i));
 
             setAnswerWord(paperDetailUnits);
 

+ 1 - 1
cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExtractConfigServiceImpl.java

@@ -405,7 +405,7 @@ public class ExtractConfigServiceImpl implements ExtractConfigService {
         // 封装小题
         for (int i = 0; i < paperDetailDtos.size(); i++) {
         	//根据大题查出大题下面的小题
-            List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetail(paperDetails.get(i));
+            List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaperDetailOrderByNumber(paperDetails.get(i));
             //小题根据number进行排序 perDetailUnit 对象中有compareTo方法
             Collections.sort(paperDetailUnits);
 			//设置答案

+ 146 - 146
cqb-paper/src/main/java/com/qmth/cqb/paper/web/PaperDetailController.java

@@ -1,146 +1,146 @@
-package com.qmth.cqb.paper.web;
-
-import java.util.List;
-import java.util.Map;
-
-import javax.servlet.http.HttpServletRequest;
-
-import org.apache.commons.lang.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-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.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
-import org.springframework.web.multipart.MultipartFile;
-import org.springframework.web.multipart.commons.CommonsMultipartFile;
-
-import com.qmth.cqb.paper.dao.PaperDetailRepo;
-import com.qmth.cqb.paper.dao.PaperRepo;
-import com.qmth.cqb.paper.model.PaperDetail;
-import com.qmth.cqb.paper.model.PaperDetailUnit;
-import com.qmth.cqb.paper.service.PaperDetailService;
-import com.qmth.cqb.paper.service.PaperService;
-
-import cn.com.qmth.examcloud.common.uac.annotation.Uac;
-import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
-import cn.com.qmth.examcloud.common.uac.enums.RoleMeta;
-import cn.com.qmth.examcloud.common.uac.enums.UacPolicy;
-import io.swagger.annotations.ApiOperation;
-
-/**
- * Created by songyue on 16/12/28.
- */
-@RestController
-@RequestMapping("${api_cqb}/")
-public class PaperDetailController {
-
-    @Autowired
-    PaperDetailService paperDetailService;
-
-    @Autowired
-    PaperService paperService;
-    
-    @Autowired
-    PaperDetailRepo paperDetailRepo;
-
-    /**
-     * 获取大题对应的小题
-     * 
-     * @param detail_id
-     * @return
-     */
-    @ApiOperation(value = "获取大题对应的小题", notes = "获取大题对应的小题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @GetMapping(value = "/paperDetail/units/{detail_id}")
-    public List<PaperDetailUnit> getUnitsByPaperDetailId(String detail_id) {
-        return paperDetailService.getUnitsByPaperDetailId(detail_id);
-    }
-
-    /**
-     * 获取大题
-     * 
-     * @param detail_id
-     * @return
-     */
-    @ApiOperation(value = "获取大题", notes = "获取大题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @GetMapping(value = "/paperDetail/{detail_id}")
-    public PaperDetail getPaperDetailId(@PathVariable String detail_id) {
-        return paperDetailService.findById(detail_id);
-    }
-
-    /**
-     * 更新大题信息
-     * 
-     * @param pd
-     * @return
-     */
-    @ApiOperation(value = "更新试卷中的大题", notes = "更新试卷中的大题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @PostMapping(value = "/updatePaperDetail/{paperId}")
-    public ResponseEntity updatePaperDetail( HttpServletRequest request,
-                                             @PathVariable String paperId, 
-                                             @RequestBody PaperDetail pd) {
-        AccessUser user = (AccessUser) request.getAttribute("accessUser");
-        PaperDetail paperDetail = paperDetailService.savePaperDetail(pd,paperId,user);
-        return new ResponseEntity(paperDetail, HttpStatus.OK);
-
-    }
-
-    /**
-     * 新增大题
-     * 
-     * @param pd
-     * @return
-     */
-    @ApiOperation(value = "新增大题", notes = "新增大题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @PostMapping(value = "/paperDetail")
-    public ResponseEntity addPaperDetail(@RequestBody PaperDetail pd) {
-        PaperDetail paperDetail = paperDetailRepo.save(pd);
-        return new ResponseEntity(paperDetail, HttpStatus.OK);
-    }
-
-    /**
-     * 删除大题
-     * 
-     * @param detailId
-     * @return
-     */
-    @ApiOperation(value = "删除大题", notes = "删除大题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @DeleteMapping(value = "/paperDetail/{detailId}")
-    public ResponseEntity removePaperDetail(@PathVariable String detailId) {
-        paperDetailService.deletePaperDetail(detailId);
-        return new ResponseEntity(detailId, HttpStatus.OK);
-    }
-
-    /**
-     * 根据试卷ID得到所有大题
-     * 
-     * @param paperId
-     * @return
-     */
-    @ApiOperation(value = "根据试卷ID得到所有大题", notes = "根据试卷ID得到所有大题")
-    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
-    @GetMapping(value = "/paperDetail/paper/{paperId}")
-    public ResponseEntity getPaperDetailsByPaperId(@PathVariable String paperId) {
-        return new ResponseEntity(paperService.findPaperDetailsById(paperId), HttpStatus.OK);
-    }
-    
-    
-    @ApiOperation(value = "上传音频文件", notes = "上传音频文件")
-    @PostMapping(value = "/uploadRadio")
-    public ResponseEntity uploadRadio(List<MultipartFile> files,HttpServletRequest request){
-    	for(MultipartFile file:files){
-    		System.out.println("名称:"+file.getOriginalFilename()+",大小:"+file.getSize());
-    	}
-    	return null;
-    }
-}
+package com.qmth.cqb.paper.web;
+
+import java.util.List;
+import java.util.Map;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.DeleteMapping;
+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.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.commons.CommonsMultipartFile;
+
+import com.qmth.cqb.paper.dao.PaperDetailRepo;
+import com.qmth.cqb.paper.dao.PaperRepo;
+import com.qmth.cqb.paper.model.PaperDetail;
+import com.qmth.cqb.paper.model.PaperDetailUnit;
+import com.qmth.cqb.paper.service.PaperDetailService;
+import com.qmth.cqb.paper.service.PaperService;
+
+import cn.com.qmth.examcloud.common.uac.annotation.Uac;
+import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
+import cn.com.qmth.examcloud.common.uac.enums.RoleMeta;
+import cn.com.qmth.examcloud.common.uac.enums.UacPolicy;
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * Created by songyue on 16/12/28.
+ */
+@RestController
+@RequestMapping("${api_cqb}/")
+public class PaperDetailController {
+
+    @Autowired
+    PaperDetailService paperDetailService;
+
+    @Autowired
+    PaperService paperService;
+    
+    @Autowired
+    PaperDetailRepo paperDetailRepo;
+
+    /**
+     * 获取大题对应的小题
+     * 
+     * @param detail_id
+     * @return
+     */
+    @ApiOperation(value = "获取大题对应的小题", notes = "获取大题对应的小题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @GetMapping(value = "/paperDetail/units/{detail_id}")
+    public List<PaperDetailUnit> getUnitsByPaperDetailId(String detail_id) {
+        return paperDetailService.getUnitsByPaperDetailId(detail_id);
+    }
+
+    /**
+     * 获取大题
+     * 
+     * @param detail_id
+     * @return
+     */
+    @ApiOperation(value = "获取大题", notes = "获取大题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @GetMapping(value = "/paperDetail/{detail_id}")
+    public PaperDetail getPaperDetailId(@PathVariable String detail_id) {
+        return paperDetailService.findById(detail_id);
+    }
+
+    /**
+     * 更新大题信息
+     * 
+     * @param pd
+     * @return
+     */
+    @ApiOperation(value = "更新试卷中的大题", notes = "更新试卷中的大题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @PostMapping(value = "/updatePaperDetail/{paperId}")
+    public ResponseEntity updatePaperDetail( HttpServletRequest request,
+                                             @PathVariable String paperId, 
+                                             @RequestBody PaperDetail pd) {
+        AccessUser user = (AccessUser) request.getAttribute("accessUser");
+        PaperDetail paperDetail = paperDetailService.savePaperDetail(pd,paperId,user);
+        return new ResponseEntity(paperDetail, HttpStatus.OK);
+
+    }
+
+    /**
+     * 新增大题
+     * 
+     * @param pd
+     * @return
+     */
+    @ApiOperation(value = "新增大题", notes = "新增大题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @PostMapping(value = "/paperDetail")
+    public ResponseEntity addPaperDetail(@RequestBody PaperDetail pd) {
+        PaperDetail paperDetail = paperDetailRepo.save(pd);
+        return new ResponseEntity(paperDetail, HttpStatus.OK);
+    }
+
+    /**
+     * 删除大题
+     * 
+     * @param detailId
+     * @return
+     */
+    @ApiOperation(value = "删除大题", notes = "删除大题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @DeleteMapping(value = "/paperDetail/{detailId}")
+    public ResponseEntity removePaperDetail(@PathVariable String detailId) {
+        paperDetailService.deletePaperDetail(detailId);
+        return new ResponseEntity(detailId, HttpStatus.OK);
+    }
+
+    /**
+     * 根据试卷ID得到所有大题
+     * 
+     * @param paperId
+     * @return
+     */
+    @ApiOperation(value = "根据试卷ID得到所有大题", notes = "根据试卷ID得到所有大题")
+    @Uac(roles={RoleMeta.QUESTION_ADMIN,RoleMeta.SUPER_ADMIN},policy=UacPolicy.IN)
+    @GetMapping(value = "/paperDetail/paper/{paperId}")
+    public ResponseEntity getPaperDetailsByPaperId(@PathVariable String paperId) {
+        return new ResponseEntity(paperService.findPaperDetailsById(paperId), HttpStatus.OK);
+    }
+    
+    
+    @ApiOperation(value = "上传音频文件", notes = "上传音频文件")
+    @PostMapping(value = "/uploadRadio")
+    public ResponseEntity uploadRadio(List<MultipartFile> files,HttpServletRequest request){
+    	for(MultipartFile file:files){
+    		System.out.println("名称:"+file.getOriginalFilename()+",大小:"+file.getSize());
+    	}
+    	return null;
+    }
+}

+ 21 - 0
cqb-question-resource/src/main/java/com/qmth/cqb/question/dao/QuestionAudioRepo.java

@@ -0,0 +1,21 @@
+package com.qmth.cqb.question.dao;
+
+import java.util.List;
+
+import org.springframework.data.mongodb.repository.MongoRepository;
+import org.springframework.data.repository.query.QueryByExampleExecutor;
+
+import com.qmth.cqb.question.model.QuestionAudio;
+
+/**
+ * @author  	chenken
+ * @date    	2017年8月1日 上午11:31:23
+ * @company 	QMTH
+ * @description QuestionRadioRepo.java
+ */
+public interface QuestionAudioRepo extends MongoRepository<QuestionAudio, String>, QueryByExampleExecutor<QuestionAudio> {
+	
+	public List<QuestionAudio> findByQuestionId(String questionId);
+	
+}
+

+ 21 - 1
cqb-question-resource/src/main/java/com/qmth/cqb/question/model/Question.java

@@ -7,7 +7,6 @@ import java.util.Map;
 import org.docx4j.openpackaging.packages.WordprocessingMLPackage;
 import org.springframework.data.annotation.Id;
 
-import com.qmth.cqb.utils.CommonUtils;
 import com.qmth.cqb.utils.word.DocxProcessUtil;
 
 import cn.com.qmth.examcloud.common.dto.question.enums.QuesStructType;
@@ -63,7 +62,13 @@ public class Question implements Serializable {
     private String orgId; // 机构ID
 
     private Map<String, String> quesParams;// 试题属性
+    /**
+     * 是否包含音频
+     */
+    private boolean hasAudio;
 
+    private List<QuestionAudio> questionAudios;
+    
     public static long getSerialVersionUID() {
         return serialVersionUID;
     }
@@ -249,5 +254,20 @@ public class Question implements Serializable {
         this.courseMajor = courseMajor;
     }
 
+	public boolean isHasAudio() {
+		return hasAudio;
+	}
+
+	public void setHasAudio(boolean hasAudio) {
+		this.hasAudio = hasAudio;
+	}
+
+	public List<QuestionAudio> getQuestionAudios() {
+		return questionAudios;
+	}
+
+	public void setQuestionAudios(List<QuestionAudio> questionAudios) {
+		this.questionAudios = questionAudios;
+	}
 
 }

+ 78 - 0
cqb-question-resource/src/main/java/com/qmth/cqb/question/model/QuestionAudio.java

@@ -0,0 +1,78 @@
+package com.qmth.cqb.question.model;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @author  	chenken
+ * @date    	2017年8月1日 上午10:56:23
+ * @company 	QMTH
+ * @description QuestionAudio.java
+ */
+public class QuestionAudio implements Serializable{
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 7190928471784053821L;
+
+	private String id;
+	/**
+	 * 试题ID
+	 */
+	private String questionId;
+	/**
+	 * 文件名称
+	 */
+	private String fileName;
+	/**
+	 * 存放路径
+	 */
+	private String fileUrl;
+	/**
+	 * 创建时间
+	 */
+	private Date createTime;
+	/**
+	 * 创建人
+	 */
+	private String createUser;
+	
+	public String getId() {
+		return id;
+	}
+	public void setId(String id) {
+		this.id = id;
+	}
+	public String getQuestionId() {
+		return questionId;
+	}
+	public void setQuestionId(String questionId) {
+		this.questionId = questionId;
+	}
+	public String getFileName() {
+		return fileName;
+	}
+	public void setFileName(String fileName) {
+		this.fileName = fileName;
+	}
+	public String getFileUrl() {
+		return fileUrl;
+	}
+	public void setFileUrl(String fileUrl) {
+		this.fileUrl = fileUrl;
+	}
+	public Date getCreateTime() {
+		return createTime;
+	}
+	public void setCreateTime(Date createTime) {
+		this.createTime = createTime;
+	}
+	public String getCreateUser() {
+		return createUser;
+	}
+	public void setCreateUser(String createUser) {
+		this.createUser = createUser;
+	}
+	
+}
+

+ 27 - 0
cqb-question-resource/src/main/java/com/qmth/cqb/question/service/QuestionAudioService.java

@@ -0,0 +1,27 @@
+package com.qmth.cqb.question.service;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
+
+import com.qmth.cqb.question.model.QuestionAudio;
+
+/**
+ * @author  	chenken
+ * @date    	2017年8月1日 上午11:26:40
+ * @company 	QMTH
+ * @description QuestionRadioService.java
+ */
+public interface QuestionAudioService {
+	/**
+	 * 保存试题音频文件
+	 * @param questionRadio
+	 */
+	public void saveQuestionAudio(QuestionAudio questionAudio,AccessUser accessUser);
+	 /**
+	  * 根据试题ID获取音频文件
+	  * @return
+	  */
+	public List<QuestionAudio> findQuestionAudiosByQuestionId(String questionId);
+}
+

+ 42 - 0
cqb-question-resource/src/main/java/com/qmth/cqb/question/service/impl/QuestionAudioServiceImpl.java

@@ -0,0 +1,42 @@
+package com.qmth.cqb.question.service.impl;
+
+import java.util.Date;
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.Assert;
+
+import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
+
+import com.qmth.cqb.question.dao.QuestionAudioRepo;
+import com.qmth.cqb.question.model.QuestionAudio;
+import com.qmth.cqb.question.service.QuestionAudioService;
+
+/**
+ * @author  	chenken
+ * @date    	2017年8月1日 上午11:27:33
+ * @company 	QMTH
+ * @description QuestionRadioServiceImpl.java
+ */
+@Service("questionAudioService")
+public class QuestionAudioServiceImpl implements QuestionAudioService{
+
+	@Autowired
+	private QuestionAudioRepo questionAudioRepo;
+	
+	@Override
+	public void saveQuestionAudio(QuestionAudio questionAudio,AccessUser accessUser) {
+		questionAudio.setCreateTime(new Date());
+		questionAudio.setCreateUser(accessUser.getName());
+		questionAudioRepo.save(questionAudio);
+	}
+
+	@Override
+	public List<QuestionAudio> findQuestionAudiosByQuestionId(String questionId) {
+		Assert.hasLength(questionId, "questionId不能为空");
+		return questionAudioRepo.findByQuestionId(questionId);
+	}
+
+}
+