ソースを参照

将exchange中的数据库操作移除,改为接口调用

chenken 6 年 前
コミット
fac64c3526
12 ファイル変更429 行追加318 行削除
  1. 1 1
      examcloud-exchange-outer-api-provider/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/controller/swufe/CommonGainScoreController.java
  2. 1 1
      examcloud-exchange-outer-api-provider/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/controller/sydx/ScoreController.java
  3. 7 11
      examcloud-exchange-outer-dao/src/main/java/cn/com/qmth/examcloud/exchange/dao/OutletScoreDao.java
  4. 2 3
      examcloud-exchange-outer-dao/src/main/java/cn/com/qmth/examcloud/exchange/dao/bean/ExamScore.java
  5. 2 2
      examcloud-exchange-outer-dao/src/main/java/cn/com/qmth/examcloud/exchange/dao/impl/ExamRecordDaoImpl.java
  6. 2 2
      examcloud-exchange-outer-dao/src/main/java/cn/com/qmth/examcloud/exchange/dao/impl/ExamScoreDaoImpl.java
  7. 28 29
      examcloud-exchange-outer-dao/src/main/java/cn/com/qmth/examcloud/exchange/dao/impl/OutletScoreDaoImpl.java
  8. 3 2
      examcloud-exchange-outer-service/src/main/java/cn/com/qmth/examcloud/exchange/outer/service/OutletScoreService.java
  9. 231 214
      examcloud-exchange-outer-service/src/main/java/cn/com/qmth/examcloud/exchange/outer/service/bean/OutletScore.java
  10. 114 28
      examcloud-exchange-outer-service/src/main/java/cn/com/qmth/examcloud/exchange/outer/service/impl/OutletScoreServiceImpl.java
  11. 21 16
      examcloud-exchange-outer-service/src/main/java/cn/com/qmth/examcloud/exchange/outer/service/impl/scorePush/SydxScorePushServiceImpl.java
  12. 17 9
      examcloud-exchange-outer-service/src/main/java/cn/com/qmth/examcloud/exchange/outer/service/impl/scorePush/XncdScorePushServiceImpl.java

+ 1 - 1
examcloud-exchange-outer-api-provider/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/controller/swufe/CommonGainScoreController.java

@@ -17,8 +17,8 @@ import cn.com.qmth.examcloud.commons.web.security.bean.User;
 import cn.com.qmth.examcloud.commons.web.support.ControllerSupport;
 import cn.com.qmth.examcloud.exchange.base.response.FailureBaseResponse;
 import cn.com.qmth.examcloud.exchange.base.response.SuccessBaseResponse;
-import cn.com.qmth.examcloud.exchange.dao.bean.OutletScore;
 import cn.com.qmth.examcloud.exchange.outer.service.OutletScoreService;
+import cn.com.qmth.examcloud.exchange.outer.service.bean.OutletScore;
 import io.swagger.annotations.ApiOperation;
 
 /**

+ 1 - 1
examcloud-exchange-outer-api-provider/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/controller/sydx/ScoreController.java

@@ -16,8 +16,8 @@ import org.springframework.web.bind.annotation.RestController;
 import cn.com.qmth.examcloud.commons.web.security.bean.User;
 import cn.com.qmth.examcloud.commons.web.support.ControllerSupport;
 import cn.com.qmth.examcloud.exchange.base.response.FailureBaseResponse;
-import cn.com.qmth.examcloud.exchange.dao.bean.OutletScore;
 import cn.com.qmth.examcloud.exchange.outer.service.OutletScoreService;
+import cn.com.qmth.examcloud.exchange.outer.service.bean.OutletScore;
 import io.swagger.annotations.ApiOperation;
 
 /**

+ 7 - 11
examcloud-exchange-outer-dao/src/main/java/cn/com/qmth/examcloud/exchange/dao/OutletScoreDao.java

@@ -1,9 +1,5 @@
 package cn.com.qmth.examcloud.exchange.dao;
 
-import java.util.List;
-
-import cn.com.qmth.examcloud.common.dto.em.ExamStudent;
-import cn.com.qmth.examcloud.exchange.dao.bean.OutletScore;
 
 /**
  * @author  	chenken
@@ -21,19 +17,19 @@ public interface OutletScoreDao {
 	 * @param courseCode
 	 * @return
 	 */
-	List<OutletScore> queryExamScoreBy(Long rootOrgId,Long examId,String studentCode,String courseCode);
+	//List<OutletScore> queryExamScoreBy(Long rootOrgId,Long examId,String studentCode,String courseCode);
 	/**
 	 * 石油大学:按scoreId查询成绩
 	 * @param scoreId
 	 * @return
 	 */
-	List<OutletScore> sydxGetExamScoreById(Long scoreId);
+	//List<OutletScore> sydxGetExamScoreById(Long scoreId);
     /**
 	 * 按scoreId查询成绩
 	 * @param scoreId
 	 * @return
 	 */
-	List<OutletScore> getExamScoreById(Long scoreId);
+	//List<OutletScore> getExamScoreById(Long scoreId);
     /**
      * 按照examRemark,examStuRemark,examOrgId查询考生
      * @param examRemark
@@ -41,21 +37,21 @@ public interface OutletScoreDao {
      * @param examOrgId
      * @return
      */
-    public List<ExamStudent> findExamStudents(Long examId);
+   // public List<ExamStudent> findExamStudents(Long examId);
     /**
      * 根据身份证号查询查询考生
      * @param identityNumbers
      * @param examOrgId
      * @return
      */
-    public List<ExamStudent> findExamStudents(List<String> identityNumbers, Long rootOrgId);
+    //public List<ExamStudent> findExamStudents(List<String> identityNumbers, Long rootOrgId);
     /**
      * 根据考试名称身份证号查询查询考生
      * @param identityNumbers
      * @param examOrgId
      * @return
      */
-    public List<ExamStudent> findExamStudents(Long examId,List<String> identityNumbers);
+    //public List<ExamStudent> findExamStudents(Long examId,List<String> identityNumbers);
     /**
      * 根据机构ID,批次名称,课程code,学号List查询考生
      * @param batchName
@@ -63,7 +59,7 @@ public interface OutletScoreDao {
      * @param studentCodes
      * @return
      */
-	List<ExamStudent> findExamStudents(Long examId, String courseCode,List<String> studentCodes);
+	//List<ExamStudent> findExamStudents(Long examId, String courseCode,List<String> studentCodes);
     
 }
 

+ 2 - 3
examcloud-exchange-outer-dao/src/main/java/cn/com/qmth/examcloud/exchange/dao/bean/ExamScore.java

@@ -1,13 +1,11 @@
 package cn.com.qmth.examcloud.exchange.dao.bean;
 
-import javax.persistence.*;
 
-import cn.com.qmth.examcloud.exchange.dao.bean.OutletScore;
 
 /**
  * Created by yuanpan on 2017/4/27.
  */
-@Entity
+/*@Entity
 @SqlResultSetMapping(
         name = "OutletScoreMapping",
         classes = {
@@ -68,3 +66,4 @@ public class ExamScore {
     @Id
     private Long id;
 }
+*/

+ 2 - 2
examcloud-exchange-outer-dao/src/main/java/cn/com/qmth/examcloud/exchange/dao/impl/ExamRecordDaoImpl.java

@@ -23,7 +23,7 @@ public class ExamRecordDaoImpl implements ExamRecordDao {
 	
 	private JdbcTemplate jdbcTemplate;
 
-	@Override
+	//@Override
 	public List<ExamRecord> findByExamStudentId(Long examStudentId) {
 		String sql = "select "
 						+ " t1.id id,"
@@ -52,7 +52,7 @@ public class ExamRecordDaoImpl implements ExamRecordDao {
 		});
 	}
 
-	@Override
+	//@Override
 	public ExamRecord findByScoreId(Long scoreId) {
 		String sql = "select"
 						+ " t1.id,"

+ 2 - 2
examcloud-exchange-outer-dao/src/main/java/cn/com/qmth/examcloud/exchange/dao/impl/ExamScoreDaoImpl.java

@@ -22,7 +22,7 @@ public class ExamScoreDaoImpl implements ExamScoreDao{
 	
 	private JdbcTemplate jdbcTemplate;
 
-	/*@Override
+	//@Override
 	public List<ExamScore> findByExamRecordIdIn(List<Long> examRecordIds) {
 		StringBuffer examRecordIdsString = new StringBuffer();
 		for(Long number:examRecordIds){
@@ -46,7 +46,7 @@ public class ExamScoreDaoImpl implements ExamScoreDao{
 				return examScore;
 			}
 		});
-	}*/
+	}
 
 }
 

+ 28 - 29
examcloud-exchange-outer-dao/src/main/java/cn/com/qmth/examcloud/exchange/dao/impl/OutletScoreDaoImpl.java

@@ -13,7 +13,6 @@ import org.springframework.stereotype.Repository;
 
 import cn.com.qmth.examcloud.common.dto.em.ExamStudent;
 import cn.com.qmth.examcloud.exchange.dao.OutletScoreDao;
-import cn.com.qmth.examcloud.exchange.dao.bean.OutletScore;
 
 /**
  * @author  	chenken
@@ -26,11 +25,11 @@ public class OutletScoreDaoImpl implements OutletScoreDao{
 
 	private static final Logger log = LoggerFactory.getLogger(OutletScoreDaoImpl.class);
 	
-	@Autowired
+	//@Autowired
 	public JdbcTemplate jdbcTemplate;
 	
-	@Override
-	public List<OutletScore> sydxGetExamScoreById(Long scoreId) {
+	//@Override
+	/*public List<OutletScore> sydxGetExamScoreById(Long scoreId) {
 		StringBuffer sql = new StringBuffer();
 		sql.append("select "
                 +" score.id 					score_id,"
@@ -55,11 +54,11 @@ public class OutletScoreDaoImpl implements OutletScoreDao{
 				return getOutletScoreByResultSet(rs);
 			}
 		});
-	}
+	}*/
 	
 
-	@Override
-	public List<OutletScore> getExamScoreById(Long scoreId) {
+	//@Override
+	/*public List<OutletScore> getExamScoreById(Long scoreId) {
 		StringBuffer sql = new StringBuffer();
 		sql.append("select "
 	                +" score.id 				 score_id,"
@@ -87,9 +86,9 @@ public class OutletScoreDaoImpl implements OutletScoreDao{
 				return getExamScoreByIdResult(rs);
 			}
 		});
-	}
+	}*/
 
-	private OutletScore getExamScoreByIdResult(ResultSet rs) throws SQLException{
+	/*private OutletScore getExamScoreByIdResult(ResultSet rs) throws SQLException{
 		OutletScore outletScore = new OutletScore();
 		outletScore.setScoreId(rs.getLong("score_id"));
 		outletScore.setStudentName(rs.getString("student_name"));
@@ -108,9 +107,9 @@ public class OutletScoreDaoImpl implements OutletScoreDao{
 		Integer isIllegality = rs.getInt("is_illegality");
 		outletScore.setIsBreachThePrinciple(isIllegality == 1?true:false);
 		return outletScore;
-	}
+	}*/
 
-	private OutletScore getOutletScoreByResultSet(ResultSet rs) throws SQLException{
+	/*private OutletScore getOutletScoreByResultSet(ResultSet rs) throws SQLException{
 		OutletScore outletScore = new OutletScore();
 		outletScore.setScoreId(rs.getLong("score_id"));
 		outletScore.setStudentName(rs.getString("student_name"));
@@ -123,10 +122,10 @@ public class OutletScoreDaoImpl implements OutletScoreDao{
 		outletScore.setCourseCode(rs.getString("course_code"));
 		outletScore.setEndTime(rs.getString("end_time"));
 		return outletScore;
-	}
+	}*/
 
-	@Override
-	public List<ExamStudent> findExamStudents(Long examId) {
+	//@Override
+	/*public List<ExamStudent> findExamStudents(Long examId) {
 		StringBuffer sql = new StringBuffer();
 		sql.append("select "+
 						 " stu.id 				id,"+
@@ -146,9 +145,9 @@ public class OutletScoreDaoImpl implements OutletScoreDao{
 				return getExamStudentByResultSet(rs);
 			}
 		});
-	}
+	}*/
 	
-	private ExamStudent getExamStudentByResultSet(ResultSet rs) throws SQLException{
+	/*private ExamStudent getExamStudentByResultSet(ResultSet rs) throws SQLException{
 		ExamStudent examStudent = new ExamStudent();
 		examStudent.setId(rs.getLong("id"));
 		examStudent.setExamId(rs.getLong("exam_id"));
@@ -159,10 +158,10 @@ public class OutletScoreDaoImpl implements OutletScoreDao{
 		examStudent.setCourseName(rs.getString("course_name"));
 		examStudent.setFinished(rs.getBoolean("finished"));
 		return examStudent;
-	}
+	}*/
 
-	@Override
-	public List<ExamStudent> findExamStudents(List<String> identityNumbers,Long rootOrgId) {
+	//@Override
+	/*public List<ExamStudent> findExamStudents(List<String> identityNumbers,Long rootOrgId) {
 		StringBuffer sql = new StringBuffer();
 		sql.append("select "+
 						 " stu.id 				id,"+
@@ -189,10 +188,10 @@ public class OutletScoreDaoImpl implements OutletScoreDao{
 				return getExamStudentByResultSet(rs);
 			}
 		});
-	}
+	}*/
 
-	@Override
-	public List<ExamStudent> findExamStudents(Long examId,String courseCode, List<String> studentCodes) {
+	//@Override
+	/*public List<ExamStudent> findExamStudents(Long examId,String courseCode, List<String> studentCodes) {
 		StringBuffer sql = new StringBuffer();
 		sql.append("select "+
 					     " stu.id 				id,"+
@@ -221,10 +220,10 @@ public class OutletScoreDaoImpl implements OutletScoreDao{
 				return getExamStudentByResultSet(rs);
 			}
 		});
-	}
+	}*/
 
-	@Override
-	public List<ExamStudent> findExamStudents(Long examId,List<String> identityNumbers) {
+	//@Override
+	/*public List<ExamStudent> findExamStudents(Long examId,List<String> identityNumbers) {
 		StringBuffer sql = new StringBuffer();
 		sql.append("select "+
 						 " stu.id 				id,"+
@@ -251,11 +250,11 @@ public class OutletScoreDaoImpl implements OutletScoreDao{
 				return getExamStudentByResultSet(rs);
 			}
 		});
-	}
+	}*/
 
 
-	@Override
-	public List<OutletScore> queryExamScoreBy(Long rootOrgId, Long examId,String studentCode, String courseCode) {
+	//@Override
+/*	public List<OutletScore> queryExamScoreBy(Long rootOrgId, Long examId,String studentCode, String courseCode) {
 		StringBuffer sql = new StringBuffer();
 		sql.append("select "
 	                +" s.id 						score_id,"
@@ -283,7 +282,7 @@ public class OutletScoreDaoImpl implements OutletScoreDao{
 				return getExamScoreByIdResult(rs);
 			}
 		});
-	}
+	}*/
 	
 }
 

+ 3 - 2
examcloud-exchange-outer-service/src/main/java/cn/com/qmth/examcloud/exchange/outer/service/OutletScoreService.java

@@ -2,7 +2,8 @@ package cn.com.qmth.examcloud.exchange.outer.service;
 
 import java.util.List;
 
-import cn.com.qmth.examcloud.exchange.dao.bean.OutletScore;
+import cn.com.qmth.examcloud.exchange.outer.service.bean.OutletScore;
+
 
 /**
  * @author  	chenken
@@ -17,7 +18,7 @@ public interface OutletScoreService {
 	 * @param scoreId
 	 * @return
 	 */
-	List<OutletScore> getExamScoreById(Long scoreId)  throws Exception;
+	//List<OutletScore> getExamScoreById(Long scoreId)  throws Exception;
 	/**
 	 * 
 	 * @param rootOrgId

+ 231 - 214
examcloud-exchange-outer-dao/src/main/java/cn/com/qmth/examcloud/exchange/dao/bean/OutletScore.java → examcloud-exchange-outer-service/src/main/java/cn/com/qmth/examcloud/exchange/outer/service/bean/OutletScore.java

@@ -1,214 +1,231 @@
-package cn.com.qmth.examcloud.exchange.dao.bean;
-
-import cn.com.qmth.examcloud.common.dto.em.ExamStudent;
-
-/**
- * Created by yuanpan on 2017/2/15.
- */
-public class OutletScore {
-
-    private Long scoreId;//分数id
-    
-    private Long examId;
-    
-    private String examName;
-    
-    private String studentName;//考生名称
-
-    private String studentCode;//考生学号
-
-    private String identityNumber;//考生身份证号码
-
-    private Double totalScore;//总得分
-
-    private Double objectiveScore;//客观题得分
-
-    private Double subjectiveScore;//主观题得分
-
-    private String courseName;//课程名称
-
-    private String courseCode;//课程代码
-
-    private String examRemark;//接口外部系统考试标识
-    
-    private String startTime;//开始考试时间
-
-    private String endTime;//交卷时间
-
-    private String studentRemark;//ecs_exam_student考生标的备注字段,这里用来标识:毕业/非毕业/入学考试
-    /**
-     * 是否缺考
-     */
-    private Boolean isMissExam;
-    /**
-     * 是否违纪
-     */
-    private Boolean isBreachThePrinciple;
-    /**
-     * 人脸识别成功率
-     */
-    private Double successRate;
-    
-    public OutletScore() {}
-
-    public OutletScore(ExamStudent examStudent) {
-    	this.examId = examStudent.getExamId();
-    	this.studentName = examStudent.getName();
-        this.studentCode = examStudent.getStudentCode();
-        this.courseCode = examStudent.getCourseCode();
-        this.identityNumber = examStudent.getIdentityNumber();
-        String courseCode = examStudent.getCourseCode();
-        if(courseCode.startsWith("Z")
-        		||courseCode.startsWith("Q")
-        			||courseCode.startsWith("S")){
-        	this.courseCode = courseCode.substring(1,courseCode.length());
-    	}else{
-    		this.courseCode = courseCode;
-    	}
-	}
-
-	public Long getScoreId() {
-        return scoreId;
-    }
-
-    public void setScoreId(Long scoreId) {
-        this.scoreId = scoreId;
-    }
-
-    public String getStudentName() {
-        return studentName;
-    }
-
-    public void setStudentName(String studentName) {
-        this.studentName = studentName;
-    }
-
-    public String getStudentCode() {
-        return studentCode;
-    }
-
-    public void setStudentCode(String studentCode) {
-        this.studentCode = studentCode;
-    }
-
-    public String getIdentityNumber() {
-        return identityNumber;
-    }
-
-    public void setIdentityNumber(String identityNumber) {
-        this.identityNumber = identityNumber;
-    }
-
-    public Double getTotalScore() {
-        return totalScore;
-    }
-
-    public void setTotalScore(Double totalScore) {
-        this.totalScore = totalScore;
-    }
-
-    public Double getObjectiveScore() {
-        return objectiveScore;
-    }
-
-    public void setObjectiveScore(Double objectiveScore) {
-        this.objectiveScore = objectiveScore;
-    }
-
-    public Double getSubjectiveScore() {
-        return subjectiveScore;
-    }
-
-    public void setSubjectiveScore(Double subjectiveScore) {
-        this.subjectiveScore = subjectiveScore;
-    }
-
-    public String getCourseName() {
-        return courseName;
-    }
-
-    public void setCourseName(String courseName) {
-        this.courseName = courseName;
-    }
-
-    public String getCourseCode() {
-        return courseCode;
-    }
-
-    public void setCourseCode(String courseCode) {
-        this.courseCode = courseCode;
-    }
-
-    public String getExamRemark() {
-        return examRemark;
-    }
-
-    public void setExamRemark(String examRemark) {
-        this.examRemark = examRemark;
-    }
-
-    public String getEndTime() {
-        return endTime;
-    }
-
-    public void setEndTime(String endTime) {
-        this.endTime = endTime;
-    }
-
-    public String getStudentRemark() {
-        return studentRemark;
-    }
-
-    public void setStudentRemark(String studentRemark) {
-        this.studentRemark = studentRemark;
-    }
-
-	public Boolean getIsMissExam() {
-		return isMissExam;
-	}
-
-	public void setIsMissExam(Boolean isMissExam) {
-		this.isMissExam = isMissExam;
-	}
-
-	public Boolean getIsBreachThePrinciple() {
-		return isBreachThePrinciple;
-	}
-
-	public void setIsBreachThePrinciple(Boolean isBreachThePrinciple) {
-		this.isBreachThePrinciple = isBreachThePrinciple;
-	}
-
-	public Double getSuccessRate() {
-		return successRate;
-	}
-
-	public void setSuccessRate(Double successRate) {
-		this.successRate = successRate;
-	}
-
-	public Long getExamId() {
-		return examId;
-	}
-
-	public void setExamId(Long examId) {
-		this.examId = examId;
-	}
-
-	public String getExamName() {
-		return examName;
-	}
-
-	public void setExamName(String examName) {
-		this.examName = examName;
-	}
-
-	public String getStartTime() {
-		return startTime;
-	}
-
-	public void setStartTime(String startTime) {
-		this.startTime = startTime;
-	}
-    
-}
+package cn.com.qmth.examcloud.exchange.outer.service.bean;
+
+import cn.com.qmth.examcloud.common.dto.em.ExamStudent;
+import cn.com.qmth.examcloud.core.oe.admin.api.bean.OeExamStudentBean;
+
+/**
+ * Created by yuanpan on 2017/2/15.
+ */
+public class OutletScore {
+
+    private Long scoreId;//分数id
+    
+    private Long examId;
+    
+    private String examName;
+    
+    private String studentName;//考生名称
+
+    private String studentCode;//考生学号
+
+    private String identityNumber;//考生身份证号码
+
+    private Double totalScore;//总得分
+
+    private Double objectiveScore;//客观题得分
+
+    private Double subjectiveScore;//主观题得分
+
+    private String courseName;//课程名称
+
+    private String courseCode;//课程代码
+
+    private String examRemark;//接口外部系统考试标识
+    
+    private String startTime;//开始考试时间
+
+    private String endTime;//交卷时间
+
+    private String studentRemark;//ecs_exam_student考生标的备注字段,这里用来标识:毕业/非毕业/入学考试
+    /**
+     * 是否缺考
+     */
+    private Boolean isMissExam;
+    /**
+     * 是否违纪
+     */
+    private Boolean isBreachThePrinciple;
+    /**
+     * 人脸识别成功率
+     */
+    private Double successRate;
+    
+    public OutletScore() {}
+
+    public OutletScore(ExamStudent examStudent) {
+    	this.examId = examStudent.getExamId();
+    	this.studentName = examStudent.getName();
+        this.studentCode = examStudent.getStudentCode();
+        this.courseCode = examStudent.getCourseCode();
+        this.identityNumber = examStudent.getIdentityNumber();
+        String courseCode = examStudent.getCourseCode();
+        if(courseCode.startsWith("Z")
+        		||courseCode.startsWith("Q")
+        			||courseCode.startsWith("S")){
+        	this.courseCode = courseCode.substring(1,courseCode.length());
+    	}else{
+    		this.courseCode = courseCode;
+    	}
+	}
+    
+    public OutletScore(OeExamStudentBean examStudent) {
+    	this.examId = examStudent.getExamId();
+    	this.studentName = examStudent.getStudentName();
+    	this.studentCode = examStudent.getStudentCode();
+    	this.courseCode = examStudent.getCourseCode();
+    	this.identityNumber = examStudent.getIdentityNumber();
+    	String courseCode = examStudent.getCourseCode();
+    	if(courseCode.startsWith("Z")
+    			||courseCode.startsWith("Q")
+    			||courseCode.startsWith("S")){
+    		this.courseCode = courseCode.substring(1,courseCode.length());
+    	}else{
+    		this.courseCode = courseCode;
+    	}
+    }
+
+	public Long getScoreId() {
+        return scoreId;
+    }
+
+    public void setScoreId(Long scoreId) {
+        this.scoreId = scoreId;
+    }
+
+    public String getStudentName() {
+        return studentName;
+    }
+
+    public void setStudentName(String studentName) {
+        this.studentName = studentName;
+    }
+
+    public String getStudentCode() {
+        return studentCode;
+    }
+
+    public void setStudentCode(String studentCode) {
+        this.studentCode = studentCode;
+    }
+
+    public String getIdentityNumber() {
+        return identityNumber;
+    }
+
+    public void setIdentityNumber(String identityNumber) {
+        this.identityNumber = identityNumber;
+    }
+
+    public Double getTotalScore() {
+        return totalScore;
+    }
+
+    public void setTotalScore(Double totalScore) {
+        this.totalScore = totalScore;
+    }
+
+    public Double getObjectiveScore() {
+        return objectiveScore;
+    }
+
+    public void setObjectiveScore(Double objectiveScore) {
+        this.objectiveScore = objectiveScore;
+    }
+
+    public Double getSubjectiveScore() {
+        return subjectiveScore;
+    }
+
+    public void setSubjectiveScore(Double subjectiveScore) {
+        this.subjectiveScore = subjectiveScore;
+    }
+
+    public String getCourseName() {
+        return courseName;
+    }
+
+    public void setCourseName(String courseName) {
+        this.courseName = courseName;
+    }
+
+    public String getCourseCode() {
+        return courseCode;
+    }
+
+    public void setCourseCode(String courseCode) {
+        this.courseCode = courseCode;
+    }
+
+    public String getExamRemark() {
+        return examRemark;
+    }
+
+    public void setExamRemark(String examRemark) {
+        this.examRemark = examRemark;
+    }
+
+    public String getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(String endTime) {
+        this.endTime = endTime;
+    }
+
+    public String getStudentRemark() {
+        return studentRemark;
+    }
+
+    public void setStudentRemark(String studentRemark) {
+        this.studentRemark = studentRemark;
+    }
+
+	public Boolean getIsMissExam() {
+		return isMissExam;
+	}
+
+	public void setIsMissExam(Boolean isMissExam) {
+		this.isMissExam = isMissExam;
+	}
+
+	public Boolean getIsBreachThePrinciple() {
+		return isBreachThePrinciple;
+	}
+
+	public void setIsBreachThePrinciple(Boolean isBreachThePrinciple) {
+		this.isBreachThePrinciple = isBreachThePrinciple;
+	}
+
+	public Double getSuccessRate() {
+		return successRate;
+	}
+
+	public void setSuccessRate(Double successRate) {
+		this.successRate = successRate;
+	}
+
+	public Long getExamId() {
+		return examId;
+	}
+
+	public void setExamId(Long examId) {
+		this.examId = examId;
+	}
+
+	public String getExamName() {
+		return examName;
+	}
+
+	public void setExamName(String examName) {
+		this.examName = examName;
+	}
+
+	public String getStartTime() {
+		return startTime;
+	}
+
+	public void setStartTime(String startTime) {
+		this.startTime = startTime;
+	}
+    
+}

+ 114 - 28
examcloud-exchange-outer-service/src/main/java/cn/com/qmth/examcloud/exchange/outer/service/impl/OutletScoreServiceImpl.java

@@ -7,19 +7,30 @@ import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
+
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import cn.com.qmth.examcloud.common.dto.em.ExamStudent;
 import cn.com.qmth.examcloud.common.dto.em.enums.ExamRecordStatus;
 import cn.com.qmth.examcloud.common.dto.em.enums.MarkingType;
+import cn.com.qmth.examcloud.commons.base.util.DateUtil;
 import cn.com.qmth.examcloud.core.oe.admin.api.ExamRecordCloudService;
 import cn.com.qmth.examcloud.core.oe.admin.api.ExamScoreCloudService;
+import cn.com.qmth.examcloud.core.oe.admin.api.ExamScoreDataCloudService;
+import cn.com.qmth.examcloud.core.oe.admin.api.OeExamStudentCloudService;
 import cn.com.qmth.examcloud.core.oe.admin.api.bean.ExamRecordForSelectScore;
 import cn.com.qmth.examcloud.core.oe.admin.api.bean.ExamScoreBean;
+import cn.com.qmth.examcloud.core.oe.admin.api.bean.ExamScoreDataBean;
+import cn.com.qmth.examcloud.core.oe.admin.api.bean.OeExamStudentBean;
+import cn.com.qmth.examcloud.core.oe.admin.api.bean.FindStudentBean;
+import cn.com.qmth.examcloud.core.oe.admin.api.bean.FindStudentType;
+import cn.com.qmth.examcloud.core.oe.admin.api.request.FindExamScoreDataReq;
+import cn.com.qmth.examcloud.core.oe.admin.api.request.FindExamStudentInfoReq;
 import cn.com.qmth.examcloud.core.oe.admin.api.request.QueryExamRecordForSelectScoreReq;
 import cn.com.qmth.examcloud.core.oe.admin.api.request.QueryExamScoreReq;
+import cn.com.qmth.examcloud.core.oe.admin.api.response.FindExamScoreDataResp;
+import cn.com.qmth.examcloud.core.oe.admin.api.response.FindExamStudentInfoResp;
 import cn.com.qmth.examcloud.core.oe.admin.api.response.QueryExamRecordForSelectScoreResp;
 import cn.com.qmth.examcloud.core.oe.admin.api.response.QueryExamScoreResp;
 import cn.com.qmth.examcloud.examwork.api.ExamCloudService;
@@ -28,8 +39,8 @@ import cn.com.qmth.examcloud.examwork.api.request.GetExamReq;
 import cn.com.qmth.examcloud.examwork.api.response.GetExamPropertyResp;
 import cn.com.qmth.examcloud.examwork.api.response.GetExamResp;
 import cn.com.qmth.examcloud.exchange.dao.OutletScoreDao;
-import cn.com.qmth.examcloud.exchange.dao.bean.OutletScore;
 import cn.com.qmth.examcloud.exchange.outer.service.OutletScoreService;
+import cn.com.qmth.examcloud.exchange.outer.service.bean.OutletScore;
 
 /**
  * @author  	chenken
@@ -52,13 +63,19 @@ public class OutletScoreServiceImpl implements OutletScoreService{
 	@Autowired
 	private ExamRecordCloudService examRecordCloudService;
 	
-	@Override
+	@Autowired
+	private OeExamStudentCloudService oeExamStudentCloudService;
+	
+	@Autowired
+	private ExamScoreDataCloudService examScoreDataCloudService;
+	
+	/*@Override
 	public List<OutletScore> getExamScoreById(Long scoreId)  throws Exception{
 		if(scoreId == null){
 			return null;
 		}
 		return outletScoreDao.getExamScoreById(scoreId);
-	}
+	}*/
 	
 	/**
 	 * examStuRemark不再使用  2018-10-15 chenken
@@ -75,8 +92,16 @@ public class OutletScoreServiceImpl implements OutletScoreService{
 		GetExamResp getExamResp = examCloudService.getExam(getExamReq);
 		Long examId = getExamResp.getId();
 		
-		List<ExamStudent> examStudents = outletScoreDao.findExamStudents(examId);
-		return getExamStudentsScore(examStudents);
+		FindExamStudentInfoReq req = new FindExamStudentInfoReq();
+		req.setFindStudentType(FindStudentType.BY_EXAMID);
+		FindStudentBean findStudentBean = new FindStudentBean();
+		findStudentBean.setExamId(examId);
+		req.setFindStudentBean(findStudentBean);
+		
+		FindExamStudentInfoResp findExamStudentInfoResp = oeExamStudentCloudService.findExamStudentInfoBy(req);
+		List<OeExamStudentBean> examStudentBeans = findExamStudentInfoResp.getExamStudents();
+		//List<ExamStudent> examStudents = outletScoreDao.findExamStudents(examId);
+		return getExamStudentsScore(examStudentBeans);
 	}
 
 	@Override
@@ -84,8 +109,18 @@ public class OutletScoreServiceImpl implements OutletScoreService{
 		if(identityNumbers==null||identityNumbers.size()==0||examOrgId == null){
 			return null;
 		}
-		List<ExamStudent> examStudents = outletScoreDao.findExamStudents(identityNumbers,examOrgId);
-		return getExamStudentsScore(examStudents);
+		
+		FindExamStudentInfoReq req = new FindExamStudentInfoReq();
+		req.setFindStudentType(FindStudentType.BY_EXAMID_AND_IDENTITYNUMBERS);
+		FindStudentBean findStudentBean = new FindStudentBean();
+		findStudentBean.setRootOrgId(examOrgId);
+		findStudentBean.setIdentityNumbers(identityNumbers);
+		req.setFindStudentBean(findStudentBean);
+		
+		FindExamStudentInfoResp findExamStudentInfoResp = oeExamStudentCloudService.findExamStudentInfoBy(req);
+		List<OeExamStudentBean> examStudentBeans = findExamStudentInfoResp.getExamStudents();
+		//List<ExamStudent> examStudents = outletScoreDao.findExamStudents(identityNumbers,examOrgId);
+		return getExamStudentsScore(examStudentBeans);
 	}
 	
 	@Override
@@ -95,14 +130,27 @@ public class OutletScoreServiceImpl implements OutletScoreService{
 		getExamReq.setRootOrgId(rootOrgId);
 		GetExamResp getExamResp = examCloudService.getExam(getExamReq);
 		Long examId = getExamResp.getId();
-		List<ExamStudent> examStudents = outletScoreDao.findExamStudents(examId,courseCode,studentCodes);
-		return getExamStudentsScore(examStudents);
+		
+		FindExamStudentInfoReq req = new FindExamStudentInfoReq();
+		req.setFindStudentType(FindStudentType.BY_EXAMID_AND_STUDENTCODES);
+		FindStudentBean findStudentBean = new FindStudentBean();
+		findStudentBean.setExamId(examId);
+		findStudentBean.setStudentCodes(studentCodes);
+		req.setFindStudentBean(findStudentBean);
+		
+		FindExamStudentInfoResp findExamStudentInfoResp = oeExamStudentCloudService.findExamStudentInfoBy(req);
+		List<OeExamStudentBean> examStudentBeans = findExamStudentInfoResp.getExamStudents();
+		examStudentBeans = examStudentBeans.stream().filter(o->{
+			return o.getCourseCode().indexOf(courseCode)>-1;
+		}).collect(Collectors.toList());
+		//List<ExamStudent> examStudents = outletScoreDao.findExamStudents(examId,courseCode,studentCodes);
+		return getExamStudentsScore(examStudentBeans);
 	}
 	
-	private List<OutletScore> getExamStudentsScore(List<ExamStudent> examStudents) throws Exception{
+	private List<OutletScore> getExamStudentsScore(List<OeExamStudentBean> examStudents) throws Exception{
 		List<OutletScore> outletScoreList = new ArrayList<OutletScore>();
 		
-		for(ExamStudent examStudent:examStudents){
+		for(OeExamStudentBean examStudent:examStudents){
 			OutletScore outletScore = new OutletScore(examStudent);
 			outletScore = findExamData(outletScore,examStudent);
 			outletScoreList.add(outletScore);
@@ -110,14 +158,14 @@ public class OutletScoreServiceImpl implements OutletScoreService{
 		return outletScoreList;
 	}
 	
-	private OutletScore findExamData(OutletScore outletScore,ExamStudent examStudent) throws Exception{
+	private OutletScore findExamData(OutletScore outletScore,OeExamStudentBean examStudent) throws Exception{
 		QueryExamRecordForSelectScoreReq req = new QueryExamRecordForSelectScoreReq();
-		req.setExamStudentId(examStudent.getId());
+		req.setExamStudentId(examStudent.getExamStudentId());
 		QueryExamRecordForSelectScoreResp resp = examRecordCloudService.queryExamRecordForSelectScore(req);
 		List<ExamRecordForSelectScore> examRecordList = resp.getExamRecordForSelectScoreList();
         //List<ExamRecord> examRecordList = examRecordDao.findByExamStudentId(examStudent.getId());
         Boolean isFinished = examStudent.getFinished();
-        if(isFinished==null){
+        if(isFinished == null){
         	isFinished = false;
         }
         //是否缺考
@@ -265,22 +313,25 @@ public class OutletScoreServiceImpl implements OutletScoreService{
 		getExamReq.setRootOrgId(rootOrgId);
 		GetExamResp getExamResp = examCloudService.getExam(getExamReq);
 		Long examId = getExamResp.getId();
-		List<ExamStudent> examStudents = outletScoreDao.findExamStudents(examId,identityNumbers);
-		return getExamStudentsScore(examStudents);
+		
+		FindExamStudentInfoReq req = new FindExamStudentInfoReq();
+		req.setFindStudentType(FindStudentType.BY_EXAMID_AND_IDENTITYNUMBERS);
+		FindStudentBean findStudentBean = new FindStudentBean();
+		findStudentBean.setExamId(examId);
+		findStudentBean.setIdentityNumbers(identityNumbers);
+		req.setFindStudentBean(findStudentBean);
+		
+		FindExamStudentInfoResp findExamStudentInfoResp = oeExamStudentCloudService.findExamStudentInfoBy(req);
+		List<OeExamStudentBean> examStudentBeans = findExamStudentInfoResp.getExamStudents();
+		
+		
+		//List<ExamStudent> examStudents = outletScoreDao.findExamStudents(examId,identityNumbers);
+		return getExamStudentsScore(examStudentBeans);
 	}
 
 	@Override
 	public List<OutletScore> queryExamScoreBy(Long rootOrgId, String examName,String studentCode, String courseCode) throws Exception {
-		if(rootOrgId == null){
-			return null;
-		}
-		if(examName == null){
-			return null;
-		}
-		if(studentCode == null){
-			return null;
-		}
-		if(courseCode == null){
+		if(rootOrgId == null || examName == null || studentCode == null || courseCode == null){
 			return null;
 		}
 		
@@ -289,7 +340,42 @@ public class OutletScoreServiceImpl implements OutletScoreService{
 		getExamReq.setRootOrgId(rootOrgId);
 		GetExamResp getExamResp = examCloudService.getExam(getExamReq);
 		Long examId = getExamResp.getId();
-		return outletScoreDao.queryExamScoreBy(rootOrgId, examId, studentCode, courseCode);
+		
+		FindExamScoreDataReq findExamScoreDataReq = new FindExamScoreDataReq();
+		findExamScoreDataReq.setExamId(examId);
+		findExamScoreDataReq.setStudentCode(studentCode);
+		FindExamScoreDataResp findExamScoreDataResp = examScoreDataCloudService.findExamScoreDataByExamIdAndStudentCode(findExamScoreDataReq);
+		List<ExamScoreDataBean> examScoreDataList = findExamScoreDataResp.getExamScoreDatas();
+		if(examScoreDataList == null || examScoreDataList.size() == 0){
+			return null;
+		}
+		examScoreDataList = examScoreDataList.stream().filter(o->{
+			return o.getCourseCode().indexOf(courseCode)>-1;
+		}).collect(Collectors.toList());
+		
+		List<OutletScore> outletScoreList = new ArrayList<OutletScore>();		
+		for(ExamScoreDataBean examScoreData:examScoreDataList){
+			OutletScore outletScore = new OutletScore();
+			outletScore.setStudentCode(examScoreData.getStudentCode());
+			outletScore.setStudentName(examScoreData.getStudentName());
+			outletScore.setIdentityNumber(examScoreData.getIdentityNumber());
+			outletScore.setTotalScore(examScoreData.getTotalScore());
+			outletScore.setObjectiveScore(examScoreData.getObjectiveScore());
+			outletScore.setSubjectiveScore(examScoreData.getSubjectiveScore());
+			
+			String startTime = DateUtil.format(examScoreData.getStartTime(), "yyyy-MM-dd Hi:mm:ss");
+			outletScore.setStartTime(startTime);
+			if(examScoreData.getEndTime()!=null){
+				String endTime = DateUtil.format(examScoreData.getEndTime(), "yyyy-MM-dd Hi:mm:ss");
+				outletScore.setEndTime(endTime);
+			}
+			outletScore.setSuccessRate(examScoreData.getSuccPercent());
+			outletScore.setIsBreachThePrinciple(examScoreData.getIsIllegality());
+			outletScore.setScoreId(examScoreData.getScoreId());
+			outletScoreList.add(outletScore);
+		}
+		//return outletScoreDao.queryExamScoreBy(rootOrgId, examId, studentCode, courseCode);
+		return outletScoreList;
 	}
 
 }

+ 21 - 16
examcloud-exchange-outer-service/src/main/java/cn/com/qmth/examcloud/exchange/outer/service/impl/scorePush/SydxScorePushServiceImpl.java

@@ -21,9 +21,10 @@ import org.springframework.stereotype.Service;
 
 import cn.com.qmth.examcloud.common.dto.oe.marking.ExamRecordDto;
 import cn.com.qmth.examcloud.commons.base.util.JsonUtil;
-import cn.com.qmth.examcloud.exchange.dao.OutletScoreDao;
-import cn.com.qmth.examcloud.exchange.dao.bean.OutletScore;
-import cn.com.qmth.examcloud.exchange.outer.service.OutletScoreService;
+import cn.com.qmth.examcloud.core.oe.admin.api.ExamScoreDataCloudService;
+import cn.com.qmth.examcloud.core.oe.admin.api.bean.ExamScoreDataBean;
+import cn.com.qmth.examcloud.core.oe.admin.api.request.FindExamScoreDataReq;
+import cn.com.qmth.examcloud.core.oe.admin.api.response.FindExamScoreDataResp;
 import cn.com.qmth.examcloud.exchange.outer.service.ScorePushService;
 
 /**
@@ -45,13 +46,13 @@ public class SydxScorePushServiceImpl implements ScorePushService{
 
     @Value("${sydx.pushscore.url.port}")
     private String pushUrlPort;
-
-    @Autowired
-    private OutletScoreService outletScoreService;
     
+	/*@Autowired
+	private OutletScoreDao outletScoreDao;*/
+	
 	@Autowired
-	private OutletScoreDao outletScoreDao;
-    
+	private ExamScoreDataCloudService examScoreDataCloudService;
+	
 	@Override
 	public void scorePush(ExamRecordDto examRecordDto) throws Exception {
 		//有警告未审核
@@ -71,14 +72,18 @@ public class SydxScorePushServiceImpl implements ScorePushService{
   		Long scoreId = examRecordDto.getScoreId();
   		
 		LOG.info("准备推送成绩:{}", scoreId);
-
-        List<OutletScore> outletScores = outletScoreDao.sydxGetExamScoreById(scoreId);
-
-        if (outletScores == null || outletScores.size() == 0) {
+		 
+		FindExamScoreDataReq findExamScoreDataReq = new FindExamScoreDataReq();
+		findExamScoreDataReq.setScoreId(scoreId);
+		FindExamScoreDataResp findExamScoreDataResp =  examScoreDataCloudService.findExamScoreDataByScoreId(findExamScoreDataReq);
+		List<ExamScoreDataBean> examScoreDataList = findExamScoreDataResp.getExamScoreDatas();
+        //List<OutletScore> outletScores = outletScoreDao.sydxGetExamScoreById(scoreId);
+
+        if (examScoreDataList == null || examScoreDataList.size() == 0) {
             LOG.info("{}成绩数据不存在", scoreId);
         }
         
-        for(OutletScore outletScore:outletScores){
+        for(ExamScoreDataBean outletScore:examScoreDataList){
         	String courseCode = outletScore.getCourseCode();
         	//将Z000001变成000001
         	if(courseCode.startsWith("Z")||courseCode.startsWith("Q")||courseCode.startsWith("S")){
@@ -91,7 +96,7 @@ public class SydxScorePushServiceImpl implements ScorePushService{
         CloseableHttpResponse httpResponse = null;
         CloseableHttpClient httpClient = null;
         try {
-            String scoreStr = JsonUtil.toJson(outletScores);
+            String scoreStr = JsonUtil.toJson(examScoreDataList);
             LOG.info("成绩数据:{}", scoreStr);
             RequestConfig config = RequestConfig.custom()
                     .setConnectTimeout(5000)
@@ -111,8 +116,8 @@ public class SydxScorePushServiceImpl implements ScorePushService{
                     .setPath("/entity/learning/interface/stuHomeworkScore_syncFinalExamScore.action")
                     .setParameter("loginId", "bjsy")
                     .setParameter("password", "1111")
-                    .setParameter("examRemark", outletScores.get(0).getExamRemark())
-                    .setParameter("examStuRemark", outletScores.get(0).getStudentRemark())
+                    .setParameter("examRemark", examScoreDataList.get(0).getExamName())
+                    //.setParameter("examStuRemark", examScoreDataList.get(0).getStudentRemark())
                     .setParameter("scoreJsonStr", scoreStr)//通过查询参数的方式传递
                     .build();
 

+ 17 - 9
examcloud-exchange-outer-service/src/main/java/cn/com/qmth/examcloud/exchange/outer/service/impl/scorePush/XncdScorePushServiceImpl.java

@@ -22,9 +22,11 @@ import org.springframework.stereotype.Service;
 
 import cn.com.qmth.examcloud.common.dto.oe.marking.ExamRecordDto;
 import cn.com.qmth.examcloud.common.dto.oe.marking.PushScoreActionEnum;
+import cn.com.qmth.examcloud.core.oe.admin.api.ExamScoreDataCloudService;
+import cn.com.qmth.examcloud.core.oe.admin.api.bean.ExamScoreDataBean;
+import cn.com.qmth.examcloud.core.oe.admin.api.request.FindExamScoreDataReq;
+import cn.com.qmth.examcloud.core.oe.admin.api.response.FindExamScoreDataResp;
 import cn.com.qmth.examcloud.exchange.base.util.OutletUtils;
-import cn.com.qmth.examcloud.exchange.dao.bean.OutletScore;
-import cn.com.qmth.examcloud.exchange.outer.service.OutletScoreService;
 import cn.com.qmth.examcloud.exchange.outer.service.ScorePushService;
 
 /**
@@ -39,7 +41,7 @@ public class XncdScorePushServiceImpl  implements ScorePushService{
 	private static final Logger log = LoggerFactory.getLogger(XncdScorePushServiceImpl.class);
 	
     @Autowired
-    private OutletScoreService outletScoreService;
+	private ExamScoreDataCloudService examScoreDataCloudService;
     
     private static final String pushScoreUrl = "http://www.swufe-online.com/netedu/qmth.do";
 	
@@ -50,9 +52,15 @@ public class XncdScorePushServiceImpl  implements ScorePushService{
 				|| examRecordDto.getPushScoreActionEnum() == PushScoreActionEnum.CLEAN){
 			log.info("开始推送西南财大考生成绩 scoreId:"+examRecordDto.getScoreId());
 			Long scoreId = examRecordDto.getScoreId();
-	        List<OutletScore> outletScores = outletScoreService.getExamScoreById(scoreId);
-	        if (outletScores != null && outletScores.size() > 0) {
-	        	OutletScore outletScore = outletScores.get(0);
+			
+			FindExamScoreDataReq findExamScoreDataReq = new FindExamScoreDataReq();
+			findExamScoreDataReq.setScoreId(scoreId);
+			FindExamScoreDataResp findExamScoreDataResp =  examScoreDataCloudService.findExamScoreDataByScoreId(findExamScoreDataReq);
+			List<ExamScoreDataBean> examScoreDataList = findExamScoreDataResp.getExamScoreDatas();
+			
+	        //List<OutletScore> outletScores = outletScoreService.getExamScoreById(scoreId);
+	        if (examScoreDataList != null && examScoreDataList.size() > 0) {
+	        	ExamScoreDataBean outletScore = examScoreDataList.get(0);
 	        	
 	        	CloseableHttpResponse httpResponse = null;
 	            CloseableHttpClient httpClient = HttpClients.createDefault();;
@@ -86,7 +94,7 @@ public class XncdScorePushServiceImpl  implements ScorePushService{
 		}
 	}
 	
-	private List<NameValuePair> buildParamsData(OutletScore outletScore){
+	private List<NameValuePair> buildParamsData(ExamScoreDataBean outletScore){
 		Map<String,Object> map = OutletUtils.getKeyAndValue(outletScore);
         map.remove("examRemark");//西南财大接口不需要
         map.remove("studentRemark");//西南财大接口不需要
@@ -98,8 +106,8 @@ public class XncdScorePushServiceImpl  implements ScorePushService{
         map.put("PassWord","qmth123!");
         
         //是否违纪
-        boolean isBreachThePrinciple = (boolean) map.get("isBreachThePrinciple");
-        map.put("isBreachThePrinciple", isBreachThePrinciple?1:0);
+        boolean isIllegality = (boolean) map.get("isIllegality");
+        map.put("isBreachThePrinciple", isIllegality?1:0);
         
         List<NameValuePair> params = new ArrayList<NameValuePair>();
         for(String key:map.keySet()){