|
@ -245,7 +245,7 @@ class ParticipantRepo {
|
|
* @param handler
|
|
* @param handler
|
|
*/
|
|
*/
|
|
static existsParticipant(sessionId, userId, handler) {
|
|
static existsParticipant(sessionId, userId, handler) {
|
|
let sql = "SELECT CASE WHEN COUNT(*) > 0 THEN TRUE ELSE FALSE END EXIST FROM PARTICIPANTS W WHERE W.SESSION_ID =:SESSION_ID AND W.PARTICIPANT_ID = :PARTICIPANT_ID ";
|
|
|
|
|
|
let sql = "SELECT CASE WHEN COUNT(*) > 0 THEN 'true' ELSE 'false' END EXIST FROM PARTICIPANTS W WHERE W.SESSION_ID =:SESSION_ID AND W.PARTICIPANT_ID = :PARTICIPANT_ID ";
|
|
log.info("用户是否在指定Session中:sql:" + sql);
|
|
log.info("用户是否在指定Session中:sql:" + sql);
|
|
log.info("用户是否在指定Session中:args:" + [sessionId, userId]);
|
|
log.info("用户是否在指定Session中:args:" + [sessionId, userId]);
|
|
oracledbUtil.query({
|
|
oracledbUtil.query({
|
|
@ -263,22 +263,26 @@ class ParticipantRepo {
|
|
* @param handler
|
|
* @param handler
|
|
*/
|
|
*/
|
|
static saveParticipantsToMysql(sessionId, users, handler) {
|
|
static saveParticipantsToMysql(sessionId, users, handler) {
|
|
let sql = "INSERT INTO " + DB_TABLES.Participants + " (SESSION_ID,PARTICIPANT_ID,PARTICIPANT_ROLE,LAST_FETCH_TIME) VALUES ";
|
|
|
|
|
|
let sql = "INSERT ALL ";
|
|
let args = [];
|
|
let args = [];
|
|
let nowDate = new Date();
|
|
let nowDate = new Date();
|
|
log.info("saveParticipantsToMysql:[sql] = " + sql);
|
|
log.info("saveParticipantsToMysql:[sql] = " + sql);
|
|
log.info("saveParticipantsToMysql:[users.length] = " + users.length);
|
|
log.info("saveParticipantsToMysql:[users.length] = " + users.length);
|
|
for (let j in users) {
|
|
for (let j in users) {
|
|
let tokens = users[j].split(":");
|
|
let tokens = users[j].split(":");
|
|
sql += "(:SESSION_ID,:PARTICIPANT_ID,:PARTICIPANT_ROLE,:LAST_FETCH_TIME)";
|
|
|
|
|
|
sql += " INTO " + DB_TABLES.Participants + " (SESSION_ID,PARTICIPANT_ID,PARTICIPANT_ROLE,LAST_FETCH_TIME) VALUES (:SESSION_ID,:PARTICIPANT_ID,:PARTICIPANT_ROLE,:LAST_FETCH_TIME)";
|
|
args.push(sessionId);
|
|
args.push(sessionId);
|
|
args.push(tokens[0]);
|
|
args.push(tokens[0]);
|
|
args.push(tokens.length > 1 ? tokens[1] : '0');
|
|
args.push(tokens.length > 1 ? tokens[1] : '0');
|
|
args.push(nowDate);
|
|
args.push(nowDate);
|
|
if (j != users.length - 1) sql += ", ";
|
|
|
|
|
|
if (j != users.length - 1) sql += "";
|
|
log.info("saveParticipantsToMysql:[args] = " + args);
|
|
log.info("saveParticipantsToMysql:[args] = " + args);
|
|
}
|
|
}
|
|
sql += " ON DUPLICATE KEY UPDATE PARTICIPANT_ROLE = VALUES(PARTICIPANT_ROLE)";
|
|
|
|
|
|
sql += " SELECT 1 FROM DUAL";
|
|
|
|
/**
|
|
|
|
* to do 待改造
|
|
|
|
*/
|
|
|
|
// sql += " ON DUPLICATE KEY UPDATE PARTICIPANT_ROLE = VALUES(PARTICIPANT_ROLE)";
|
|
oracledbUtil.query({
|
|
oracledbUtil.query({
|
|
"sql": sql,
|
|
"sql": sql,
|
|
"args": args,
|
|
"args": args,
|