/** * i健康用户库,即医生数据,此命名为解藉用户与特定角色的关条。 * * 目前,医生真实数据存在于家庭医生平台数据库,IM数据库仅是做视图。将来根据需要将通过同步机制将数据同步到IM数据库。 */ "use strict"; var ImDb = require("./db/im.db.js"); var log = require('../../util/log'); let oracledbUtil = require('../../util/oracledb.util'); class DoctorRepo { constructor() { } static findOne(doctorId, handler) { oracledbUtil.query({ "sql": "SELECT ID, FUN_DECRYPTION(name,'"+DB_TABLES.AesKey+"') as NAME, SEX, BIRTHDATE, AVATAR ,FUN_DECRYPTION(IDCARD,'"+DB_TABLES.AesKey+"') as IDCARD FROM DOCTORS WHERE ID = :ID ", "args": [doctorId], "handler": handler }); }; static findByMobile(mobile, handler) { oracledbUtil.query({ "sql": "SELECT ID, FUN_DECRYPTION(name,'"+DB_TABLES.AesKey+"') as NAME , SEX, BIRTHDATE, AVATAR FROM DOCTORS WHERE FUN_DECRYPTION(MOBILE,'"+DB_TABLES.AesKey+"') = :MOBILE ", "args": [mobile], "handler": handler }); }; static addDoctor(id,name,mobile,sex,birthdate,avatar,hospital_name,level,idcard, handler) { if(name!=null&&name!=""){ name = "FUN_ENCRYPTION('"+name+"','"+DB_TABLES.AesKey+"')"; } if(mobile!=null&&mobile!=""){ mobile = "FUN_ENCRYPTION('"+mobile+"','"+DB_TABLES.AesKey+"')"; } if(idcard!=null&&idcard!=""){ idcard = "FUN_ENCRYPTION('"+idcard+"','"+DB_TABLES.AesKey+"')"; } oracledbUtil.query({ "sql": "INSERT INTO BASE.BASE_DOCTOR (ID,NAME,MOBILE,SEX,BIRTHDATE,PHOTO,IDCARD,DEL) VALUES (:ID,:NAME,:MOBILE,:SEX,:BIRTHDATE,:PHOTO,:IDCARD,1)", "args": [id,name,mobile,sex,birthdate,avatar,idcard], "handler": handler }); }; } module.exports = DoctorRepo;