李勇

点名和答题卡模块接口和事件监听统一使用一套接口;根据type来区分,点名的type=100

此 diff 太大无法显示。
... ... @@ -32,7 +32,7 @@ import QuestionApe from 'apes/QuestionApe';
import UTF8 from 'utf-8';
let loger = Loger.getLoger('McuClient');
let _sdkInfo = {"version": "v1.31.8.20170613", "author": "www.3mang.com"};
let _sdkInfo = {"version": "v1.31.11.20170613", "author": "www.3mang.com"};
//APE
let _sass;
... ...
... ... @@ -16,7 +16,6 @@ import TimerCounter from "TimerCounter";
import Sass from 'Sass';
let loger = Loger.getLoger('ConferApe');
let itemIdx = 0;//table插入新数据的计数id,目前用时间戳
class ConferApe extends Ape {
constructor() {
... ... @@ -33,21 +32,6 @@ class ConferApe extends Ape {
this.thirdMessage=new ThirdMessage();
this.thirdMessage.on(ThirdMessage.RECIVE_MESSAGE,this.onThirdReciveParentMessage.bind(this));
//监听Sass事件
this._sass=Sass;
//创建答题卡
this._sass.on(Sass.SASS_CREAT_QUESTION_SUCCESS,this._sassCreatQuestionSuccessHandler.bind(this));
this._sass.on(Sass.SASS_CREAT_QUESTION_FAILED,this._sassCreatQuestionFailedHandler.bind(this));
//获取题目数据
this._sass.on(Sass.SASS_GET_QUESTION_SUCCESS,this._sassGetQuestionSuccessHandler.bind(this));
this._sass.on(Sass.SASS_GET_QUESTION_FAILED,this._sassGetQuestionFailedHandler.bind(this));
//获取答题结果
this._sass.on(Sass.SASS_GET_QUESTION_RESULT_SUCCESS,this._sassGetQuestionResultSuccessHandler.bind(this));
this._sass.on(Sass.SASS_GET_QUESTION_RESULT_FAILED,this._sassGetQuestionResultFailedHandler.bind(this));
//保存答题数据
this._sass.on(Sass.SASS_SEND_ANSWER_SUCCESS,this._sassSendAnswerSuccessHandler.bind(this));
this._sass.on(Sass.SASS_SEND_ANSWER_FAILED,this._sassSendAnswerFailedHandler.bind(this));
// Ape Models
this.registerKey(this._session_id, this._session_name, this._session_tag, new ArrayBuffer);
... ... @@ -966,95 +950,6 @@ class ConferApe extends Ape {
}
return null;
}
//答题卡接口-------------------------------------------------------------------
creatQuestion(_param){
if(!_param){
loger.warn("创建答题卡->参数错误",_param);
return;
}
loger.log("创建答题卡->",_param);
if(this._sass){
/*{
"type": 1,//1单选,2多选,3判断,4点名
"content": "题目",//没有就传""
"timeLimit": 88,//有效时间(秒)
"correct": "[]",//正确答案,没有就传[]
"options": [],//选项数组,没有就传[]
"answer": []//学生选择的答案,没有就传[]
}*/
let paramObj=_param;
paramObj.classId=GlobalConfig.classId;
this._sass.creatQuestion(paramObj);
}
}
getQuestion(_param){
if(!_param){
loger.warn("获取答题卡数据->参数错误",_param);
return;
}
loger.log("获取答题卡数据->.",_param);
if(this._sass){
this._sass.getQuestion(_param);
}
}
getQuestionResult(_param){
if(!_param){
loger.warn("获取答题卡结果->参数错误",_param);
return;
}
loger.log("获取答题卡结果->",_param);
if(this._sass){
this._sass.getQuestionResult(_param);
}
}
stopQuestion(_param){
if(!_param){
loger.warn("停止答题->参数错误",_param);
return;
}
loger.log("停止答题->",_param);
}
sendAnswer(_param){
if(!_param){
loger.warn("保存答题答案->参数错误",_param);
return;
}
loger.log("保存答题答案->",_param);
if(this._sass){
let paramObj=_param;
paramObj.classId=GlobalConfig.classId;
paramObj.userId = GlobalConfig.userId;
paramObj.userName = GlobalConfig.userName;
this._sass.sendAnswer(_param);
}
}
//Sass 事件监听
_sassCreatQuestionSuccessHandler(_data){
loger.log("创建答题卡成功",_data);
}
_sassCreatQuestionFailedHandler(_data){
loger.log("创建答题卡失败",_data);
}
_sassGetQuestionSuccessHandler(_data){
loger.log("获取答题卡数据成功",_data);
}
_sassGetQuestionFailedHandler(_data){
loger.log("获取答题卡数据失败",_data);
}
_sassGetQuestionResultSuccessHandler(_data){
loger.log("获取答题卡结果成功",_data);
}
_sassGetQuestionResultFailedHandler(_data){
loger.log("获取答题卡结果失败",_data);
}
_sassSendAnswerSuccessHandler(_data){
loger.log("保存答案成功",_data);
}
_sassSendAnswerFailedHandler(_data){
loger.log("保存答案失败",_data);
}
}
... ...
... ... @@ -56,7 +56,7 @@ class QuestionApe extends Ape {
this._emit(MessageTypes.MCU_ERROR, MessageTypes.ERR_APE_INTERFACE_PARAM_WRONG);
return;
}
let itemIdx = ApeConsts.CONFERENCE_OBJ_QUESTION_ID;
let itemIdx =_param.itemIdx;
let modelPdu = this.packPdu(_param, itemIdx);
if (modelPdu == null) {
... ... @@ -135,6 +135,8 @@ class QuestionApe extends Ape {
case 1:
case 2:
case 3:
case 4:
case 100:
//停止答题
loger.log("更新答题数据");
if(GlobalConfig.isHost){
... ... @@ -161,11 +163,11 @@ class QuestionApe extends Ape {
}
}
break;
case 4:
//停止点名
loger.log("更新点名数据");
this._emit(MessageTypes.UPDATE_CALL_THE_ROLL,model);
break;
//case 4:
// //停止点名
// loger.log("更新点名数据");
// this._emit(MessageTypes.UPDATE_CALL_THE_ROLL,model);
// break;
default :
break;
}
... ... @@ -317,7 +319,7 @@ class QuestionApe extends Ape {
return;
}else {
if(this._sass){
if(this.questionList[_param.itemIdx]){
if(questionItem.questionId==parseInt(_param.questionId)){
loger.log("保存答题答案->",_param);
let paramObj=_param;
paramObj.classId=GlobalConfig.classId;
... ... @@ -325,11 +327,13 @@ class QuestionApe extends Ape {
paramObj.userName = GlobalConfig.userName;
this._sass.sendAnswer(paramObj);
}else {
loger.log("保存答题答案->数据不存在",_param);
loger.log("保存答题答案->questionId不存在",_param);
console.log("questionList",this.questionList);
}
}
}
}else {
loger.warn("保存答题答案->数据不存在",_param);
}
}
stopQuestion(_param){
... ... @@ -337,17 +341,27 @@ class QuestionApe extends Ape {
loger.warn("停止答题->参数错误",_param);
return;
}
loger.log("停止答题->",_param);
this.tableDelete(_param);
if(this.questionList[_param.itemIdx]){
loger.log("停止答题->",_param);
this.tableDelete(_param);
}else {
loger.warn("停止答题->数据不存在",_param);
}
}
//Sass 事件监听
_sassCreatQuestionSuccessHandler(_data){
loger.log("创建答题卡成功",_data);
//loger.log("创建答题卡成功",_data);
if(_data){
//this.questionDataList[_data.questionId]=_data;//保存题目数据
let questionItem=_data;
questionItem.itemIdx=ApeConsts.CONFERENCE_OBJ_QUESTION_ID;
/* //判断是答题还是点名,type=100的时候是点名
if(questionItem.type==100){
questionItem.itemIdx=ApeConsts.CONFERENCE_OBJ_QUESTION_ID+1;
}else {
questionItem.itemIdx=ApeConsts.CONFERENCE_OBJ_QUESTION_ID;
}*/
questionItem.itemIdx=EngineUtils.creatTimestamp();
this.sendUpdaterTable(questionItem);
}
... ...