Example #1
0
def generatorPdf(diagnoseId):

    diagnose=Diagnose.getDiagnoseById(diagnoseId)
    if session.has_key('userId'):
        userId=session['userId']
    if userId is None:
        return redirect('/loginPage')

    resHtml = None

    if UserRole.checkRole(db_session,userId,constant.RoleId.Patient) and Patient.is_patient_under_user(int(userId),diagnose.patientId):
        resHtml = renderHtmlFromDiagnose(diagnose)

    if UserRole.checkRole(db_session,userId,constant.RoleId.Admin) and (int(userId) == diagnose.adminId):
        resHtml = renderHtmlFromDiagnose(diagnose)

    if UserRole.checkRole(db_session,userId,constant.RoleId.Doctor) and (int(userId) == diagnose.doctorId):
        resHtml = renderHtmlFromDiagnose(diagnose)

    if UserRole.checkRole(db_session,userId,constant.RoleId.HospitalUser) and (int(userId) == diagnose.uploadUserId):
        resHtml = renderHtmlFromDiagnose(diagnose)

    if resHtml:
        return resHtml
    else:
        return redirect('/error')
def setConsultsResult(consutsDict, userId=0):
    if consutsDict is None:
        return
    for consutDict in consutsDict:
        type = consutDict.get('type')
        if type == 1:
            if consutDict.get('doctorId'):
                doctor = Doctor.getById(consutDict.get('doctorId'))
                if doctor:
                    consutDict['doctorName'] = doctor.username
                    consutDict['doctorTitle'] = doctor.title
                    if hasattr(
                            doctor,
                            'user') and doctor.user and doctor.user.imagePath:
                        consutDict['avartarUrl'] = doctor.user.imagePath
                consutDict["statusText"] = getStatusText(
                    consutDict.get("status"),
                    UserRole.checkRole(db_session, userId,
                                       constant.RoleId.Doctor))

        if type == 0:
            if consutDict.get('userId'):
                user = User.getById(consutDict.get('userId'))
                if user:
                    consutDict['userName'] = user.name
                    consutDict['avartarUrl'] = user.imagePath
                    consutDict["statusText"] = getStatusText(
                        consutDict.get("status"),
                        UserRole.checkRole(db_session, userId,
                                           constant.RoleId.Doctor))
        consutDict['amount'] = consutDict.get('count')
def setConsultsResult(consutsDict, userId=0):
    if consutsDict is None:
        return
    for consutDict in consutsDict:
        type=consutDict.get('type')
        if type==1:
            if consutDict.get('doctorId'):
                    doctor=Doctor.getById(consutDict.get('doctorId'))
                    if doctor:
                        consutDict['doctorName']=doctor.username
                        consutDict['doctorTitle']=doctor.title
                        if hasattr(doctor,'user') and doctor.user and doctor.user.imagePath:
                            consutDict['avartarUrl']= doctor.user.imagePath
                    consutDict["statusText"] = getStatusText(consutDict.get("status"),
                                                             UserRole.checkRole(db_session,userId,constant.RoleId.Doctor))

        if type==0:
            if consutDict.get('userId'):
                user=User.getById(consutDict.get('userId'))
                if user:
                    consutDict['userName']=user.name
                    consutDict['avartarUrl']=user.imagePath
                    consutDict["statusText"] = getStatusText(consutDict.get("status"),
                                                             UserRole.checkRole(db_session,userId,constant.RoleId.Doctor))
        consutDict['amount']=consutDict.get('count')
Example #4
0
 def test_add_patient(self):
     new_user = User("*****@*****.**", "123456")
     new_user.type = UserStatus.patent
     User.save(new_user)
     new_patient = Patient(new_user.id)
     Patient.save(new_patient)
     new_userrole = UserRole(new_user.id, RoleId.Patient)
     UserRole.save(new_userrole)
Example #5
0
 def test_add_patient(self):
     new_user = User("*****@*****.**", "123456")
     new_user.type = UserStatus.patent
     User.save(new_user)
     new_patient = Patient(new_user.id)
     Patient.save(new_patient)
     new_userrole = UserRole(new_user.id, RoleId.Patient)
     UserRole.save(new_userrole)
Example #6
0
    def test_addFenzhen(self):
        user=User('fenzhen','13426026573','123456')
        user.sex=0
        user.status=0
        user.email='*****@*****.**'
        user.address='四川省 通江县'
        user.phone = '13426026573'
        user.type = UserStatus.doctor
        user.name = "分诊医生"
        User.save(user)

        new_userrole2 = UserRole(user.id, RoleId.Admin)
        UserRole.save(new_userrole2)
Example #7
0
    def test_addKefu(self):
        user=User('kefu','77777777777','123456')
        user.sex=0
        user.status=0
        user.email='*****@*****.**'
        user.address='四川省 通江县'
        user.phone = '77777777777'
        user.type = UserStatus.doctor
        user.name = "客服人员"
        User.save(user)

        new_userrole2 = UserRole(user.id, RoleId.Kefu)
        UserRole.save(new_userrole2)
Example #8
0
def register_patient():
    form = RegisterFormPatent(request.form)
    form_result = form.validate()
    if form_result.status == rs.SUCCESS.status:
        new_user = User(form.nickname, form.name, form.password)
        new_user.type = UserStatus.patent
        User.save(new_user)
        new_userrole = UserRole(new_user.id, RoleId.Patient)
        UserRole.save(new_userrole)
        login_session(new_user)
        form_result.msg = request.host_url + 'homepage'
        return jsonify(form_result.__dict__,ensure_ascii=False)

    return jsonify(form_result.__dict__,ensure_ascii=False)
Example #9
0
def register_patient():
    form = RegisterFormPatent(request.form)
    form_result = form.validate()
    if form_result.status == rs.SUCCESS.status:
        new_user = User(form.nickname, form.name, form.password)
        new_user.type = UserStatus.patent
        User.save(new_user)
        new_userrole = UserRole(new_user.id, RoleId.Patient)
        UserRole.save(new_userrole)
        login_session(new_user)
        form_result.msg = request.host_url + "homepage"
        return jsonify(form_result.__dict__, ensure_ascii=False)

    return jsonify(form_result.__dict__, ensure_ascii=False)
Example #10
0
 def test_addPatient(self):
     user=User('liclu','15210892443','123456')
     user.sex=0
     user.status=0
     user.email='*****@*****.**'
     user.address='四川省 通江县'
     user.phone = '15210892443'
     User.save(user)
     patient=Patient()
     patient.gender=0
     patient.Name='程成'
     patient.status=0
     patient.userID=user.id
     Patient.save(patient)
     new_userrole = UserRole(user.id, RoleId.Patient)
     UserRole.save(new_userrole)
Example #11
0
    def test_addHospitalUser(self):
        new_user_1 = User('医院用户',"44444444444", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "44444444444"
        new_user_1.name = "医院用户"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.username = "******"
        new_doctor_1.hospitalId = 1
        new_doctor_1.status = 0
        new_doctor_1.type = DoctorType.HospitalUser
        Doctor.save(new_doctor_1)
        new_userrole = UserRole(new_user_1.id, RoleId.HospitalUser)
        UserRole.save(new_userrole)
Example #12
0
def homepage():

    resultData = {}
    pager = Pagger(1, 6)
    doctors = Doctor.get_doctor_list(0, 0, "", pager)
    doctorsList = dataChangeService.get_doctors_dict(doctors)
    resultData['doctorlist'] = doctorsList
    if len(doctorsList['doctor']) > 0:
        resultData['doctor'] = doctorsList['doctor'][0]
    diagnoseComments = Comment.getRecentComments()
    if diagnoseComments and len(diagnoseComments) > 0:
        diagnoseCommentsDict = object2dict.objects2dicts_2(diagnoseComments)
        dataChangeService.setDiagnoseCommentsDetailInfo(diagnoseCommentsDict)
        resultData['comments'] = diagnoseCommentsDict
    else:
        resultData['comments'] = None

    resultData['ishomepage'] = True
    if session.has_key('userId'):
        userId = session['userId']
        messageCount = Message.getMessageCountByReceiver(userId)
        resultData['messageCount'] = messageCount
        if UserRole.checkRole(db_session, userId, constant.RoleId.Patient):
            resultData['isPatient'] = True

    return render_template("home.html", data=resultData)
Example #13
0
def addOrUpdateReport():

    userId=session['userId']
    user=User.getById(userId)


    if user is None  :
        return  json.dumps(rs.NO_DATA.__dict__,ensure_ascii=False)
    #权限查看
    if  UserRole.checkRole(db_session,userId,constant.RoleId.Admin) == False:
        return  json.dumps(rs.PERMISSION_DENY.__dict__,ensure_ascii=False)

    form =  ReportForm(request.form)
    formResult=form.validate()
    if formResult.status==rs.SUCCESS.status:
        diagnose=Diagnose.getDiagnoseById(form.diagnoseId)
        if diagnose is None:
            return  json.dumps(rs.NO_DATA.__dict__,ensure_ascii=False)
        #session['remember_me'] = form.remember_me.data
        # login and validate the user...
        report = None
        if form.reportId:
            report=Report.getReportById(form.reportId)
            if report.type==constant.ReportType.Doctor:
                return  json.dumps(rs.PERMISSION_DENY.__dict__,ensure_ascii=False)
            Report.update(form.reportId,None,form.status,None,form.techDesc,form.imageDesc,form.diagnoseDesc)
        else:
            report=Report(form.techDesc,form.imageDesc,form.diagnoseDesc,form.fileUrl,ReportType.Admin,form.status)
            Report.save(report)

            diagnose.reportId=report.id
            Diagnose.save(diagnose)
        #flash('成功添加诊断评论')
        if form.status and form.status == constant.ReportStatus.Commited:
            diagnose=Diagnose.getDiagnoseById(form.diagnoseId)
            if diagnose:
                Diagnose.changeDiagnoseStatus(diagnose.id,constant.DiagnoseStatus.NeedDiagnose)
            if form.reportId is None and report:
                form.reportId = report.id
            Report.update(form.reportId,constant.ReportType.Doctor,status=constant.ReportStatus.Draft)
            if diagnose and hasattr(diagnose,'doctor'):
                doctor=diagnose.doctor
                if doctor and doctor.userId:
                    content=dataChangeService.getDoctorNeedDiagnoseMessageContent(diagnose,doctor)

                    #诊断通知
                    message=Message(constant.DefaultSystemAdminUserId,doctor.userId,'诊断通知',content,constant.MessageType.Diagnose)
                    Message.save(message)

                    #诊断日志
                    diagoseLog=DiagnoseLog(userId,form.diagnoseId,constant.DiagnoseLogAction.FetchDiagnoseEndAction)
                    DiagnoseLog.save(db_session,diagoseLog)

            return json.dumps(formResult.__dict__,ensure_ascii=False)
    return json.dumps(formResult.__dict__,ensure_ascii=False)
Example #14
0
def userCenter(userId):
    userRole=UserRole.getUserRole(db_session,userId)
    if userRole:
        if userRole.roleId==constant.RoleId.Admin:
            return redirect('/admin/fenzhen')
        if userRole.roleId==constant.RoleId.Doctor:
            return redirect('/doctorhome')
        if userRole.roleId==constant.RoleId.HospitalUser:
            return redirect('/hospital/user')
        if userRole.roleId==constant.RoleId.Patient:
            return redirect('/patienthome')
    return render_template("errorPage.html")
Example #15
0
def register_doctor():
    form = RegisterFormDoctor(request.form)
    form_result = form.validate()
    if form_result.status == rs.SUCCESS.status:
        new_user = User(form.real_name, form.username, form.password)
        new_user.email = form.email
        new_user.phone = form.cellphone
        new_user.type = UserStatus.doctor
        new_user.status = ModelStatus.Draft
        User.save(new_user)
        new_doctor = Doctor(new_user.id)
        new_doctor.username = form.real_name
        new_doctor.identityPhone = form.identity_phone
        Doctor.save(new_doctor)

        new_doctor2skill = Doctor2Skill(new_doctor.id, 1)
        Doctor2Skill.save(new_doctor2skill)

        new_userrole = UserRole(new_user.id, RoleId.Doctor)
        UserRole.save(new_userrole)

    return jsonify(form_result.__dict__)
Example #16
0
def register_doctor():
    form = RegisterFormDoctor(request.form)
    form_result = form.validate()
    if form_result.status == rs.SUCCESS.status:
        new_user = User(form.real_name, form.username, form.password)
        new_user.email = form.email
        new_user.phone = form.cellphone
        new_user.type = UserStatus.doctor
        new_user.status = ModelStatus.Draft
        User.save(new_user)
        new_doctor = Doctor(new_user.id)
        new_doctor.username = form.real_name
        new_doctor.identityPhone = form.identity_phone
        Doctor.save(new_doctor)

        new_doctor2skill = Doctor2Skill(new_doctor.id, 1)
        Doctor2Skill.save(new_doctor2skill)

        new_userrole = UserRole(new_user.id, RoleId.Doctor)
        UserRole.save(new_userrole)

    return jsonify(form_result.__dict__)
Example #17
0
def userCenter(userId):
    userRole = UserRole.getUserRole(db_session, userId)
    if userRole:
        if userRole.roleId == constant.RoleId.Admin:
            return redirect('/admin/fenzhen')
        if userRole.roleId == constant.RoleId.Doctor:
            return redirect('/doctorhome')
        if userRole.roleId == constant.RoleId.HospitalUser:
            return redirect('/hospital/user')
        if userRole.roleId == constant.RoleId.Patient:
            return redirect('/patienthome')
        if userRole.roleId == constant.RoleId.Kefu:
            return redirect('/admin/kefu')
    return render_template("errorPage.html")
Example #18
0
def generatorPdf(diagnoseId):

    diagnose = Diagnose.getDiagnoseById(diagnoseId)
    if session.has_key('userId'):
        userId = session['userId']
    if userId is None:
        return redirect('/loginPage')

    resHtml = None

    if UserRole.checkRole(
            db_session, userId,
            constant.RoleId.Patient) and Patient.is_patient_under_user(
                int(userId), diagnose.patientId):
        resHtml = renderHtmlFromDiagnose(diagnose)

    if UserRole.checkRole(db_session, userId,
                          constant.RoleId.Admin) and (int(userId)
                                                      == diagnose.adminId):
        resHtml = renderHtmlFromDiagnose(diagnose)

    if UserRole.checkRole(db_session, userId,
                          constant.RoleId.Doctor) and (int(userId)
                                                       == diagnose.doctorId):
        resHtml = renderHtmlFromDiagnose(diagnose)

    if UserRole.checkRole(
            db_session, userId,
            constant.RoleId.HospitalUser) and (int(userId)
                                               == diagnose.uploadUserId):
        resHtml = renderHtmlFromDiagnose(diagnose)

    if resHtml:
        return resHtml
    else:
        return redirect('/error')
Example #19
0
        def admin_wrapper(*args, **kwargs):
            userId = session.get('userId')

            if userId is None:
                return json.dumps(result_status.NO_LOGIN.__dict__,ensure_ascii=False)

            # if isinstance(userId,basestring):
            #     userId=string.atoi(userId)

            elif self.role and UserRole.checkRole(db_session,userId,self.role):
                return method(*args, **kwargs)
            #there have some bug needs to be fixed
            # elif self.role !=None and  userinfo and int(userinfo['cross_share_grade']) == self.role:
            #     return method(_self, *args, **kwargs)
            else:
                return json.dumps(result_status.PERMISSION_DENY.__dict__,ensure_ascii=False)
Example #20
0
        def adminPage_wrapper(*args, **kwargs):
            userId = session.get('userId')

            if userId is None:
                return redirect(NO_LOGIN_URL)

            # if isinstance(userId,basestring):
            #     userId=string.atoi(userId)

            elif self.role and UserRole.checkRole(db_session,userId,self.role):
                return method(*args, **kwargs)
            #there have some bug needs to be fixed
            # elif self.role !=None and  userinfo and int(userinfo['cross_share_grade']) == self.role:
            #     return method(_self, *args, **kwargs)
            else:
                return redirect(PERMISSION_DENY_URL)
Example #21
0
    def test_addSuperUser(self):
        user=User('zhoufan','13426026573','123456')
        user.sex=0
        user.status=0
        user.email='*****@*****.**'
        user.address='四川省 通江县'
        user.phone = '13426026573'
        user.type = UserStatus.doctor
        user.name = "张西"
        User.save(user)


        patient=Patient()
        patient.gender=0
        patient.Name='zf'
        patient.status=0
        patient.userID=user.id
        Patient.save(patient)
        new_userrole = UserRole(user.id, RoleId.Patient)
        UserRole.save(new_userrole)

        new_doctor_1 = Doctor(user.id)
        new_doctor_1.identityPhone = "029-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 10
        new_doctor_1.feedbackCount = 5
        new_doctor_1.goodFeedbackCount = 5
        new_doctor_1.hospitalId = 1
        new_doctor_1.departmentId = 1
        new_doctor_1.title = "副主任医师"
        new_doctor_1.status = 0


        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id,1)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_userrole1 = UserRole(user.id, RoleId.Doctor)
        UserRole.save(new_userrole1)
        new_userrole2 = UserRole(user.id, RoleId.Admin)
        UserRole.save(new_userrole2)
Example #22
0
def addOrUpdateReport():

    userId = session['userId']
    user = User.getById(userId)

    if user is None:
        return json.dumps(rs.NO_DATA.__dict__, ensure_ascii=False)
    #权限查看
    if UserRole.checkRole(db_session, userId, constant.RoleId.Admin) == False:
        return json.dumps(rs.PERMISSION_DENY.__dict__, ensure_ascii=False)

    form = ReportForm(request.form)
    formResult = form.validate()
    if formResult.status == rs.SUCCESS.status:
        diagnose = Diagnose.getDiagnoseById(form.diagnoseId)
        if diagnose is None:
            return json.dumps(rs.NO_DATA.__dict__, ensure_ascii=False)
        #session['remember_me'] = form.remember_me.data
        # login and validate the user...
        report = None
        if form.reportId:
            report = Report.getReportById(form.reportId)
            if report.type == constant.ReportType.Doctor:
                return json.dumps(rs.PERMISSION_DENY.__dict__,
                                  ensure_ascii=False)
            Report.update(form.reportId, None, form.status, None,
                          form.techDesc, form.imageDesc, form.diagnoseDesc)
        else:
            report = Report(form.techDesc, form.imageDesc, form.diagnoseDesc,
                            form.fileUrl, ReportType.Admin, form.status)
            Report.save(report)

            diagnose.reportId = report.id
            Diagnose.save(diagnose)

            #add report and diagnose to relation table
            reportDiagnoseRelation = ReportDiagnoseRelation(
                report.id, diagnose.id)
            ReportDiagnoseRelation.save(reportDiagnoseRelation)

        #flash('成功添加诊断评论')
        if form.status and form.status == constant.ReportStatus.Commited:
            diagnose = Diagnose.getDiagnoseById(form.diagnoseId)
            if diagnose:
                Diagnose.changeDiagnoseStatus(
                    diagnose.id, constant.DiagnoseStatus.NeedDiagnose)
            if form.reportId is None and report:
                form.reportId = report.id
            #copy a report and add to relation table
            newReport = Report(form.techDesc, form.imageDesc,
                               form.diagnoseDesc, form.fileUrl,
                               ReportType.Doctor, constant.ReportStatus.Draft)
            Report.save(newReport)

            reportDiagnoseRelation = ReportDiagnoseRelation(
                newReport.id, diagnose.id)
            ReportDiagnoseRelation.save(reportDiagnoseRelation)

            diagnose.reportId = newReport.id
            Diagnose.save(diagnose)
            #end copy

            if diagnose and hasattr(diagnose, 'doctor'):
                doctor = diagnose.doctor
                if doctor and doctor.userId:
                    content = dataChangeService.getDoctorNeedDiagnoseMessageContent(
                        diagnose, doctor)

                    #诊断通知
                    message = Message(constant.DefaultSystemAdminUserId,
                                      doctor.userId, '诊断通知', content,
                                      constant.MessageType.Diagnose)
                    Message.save(message)

                    #诊断日志
                    diagoseLog = DiagnoseLog(
                        userId, form.diagnoseId,
                        constant.DiagnoseLogAction.FetchDiagnoseEndAction)
                    DiagnoseLog.save(db_session, diagoseLog)

            return json.dumps(formResult.__dict__, ensure_ascii=False)
    return json.dumps(formResult.__dict__, ensure_ascii=False)
Example #23
0
    def test_addDoctor(self):
        new_user_1 = User('印弘',"11111111111", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "111111111111"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "029-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 10
        new_doctor_1.feedbackCount = 5
        new_doctor_1.goodFeedbackCount = 5
        new_doctor_1.hospitalId = 1
        new_doctor_1.departmentId = 1
        new_doctor_1.title = "主任医师"
        new_doctor_1.status = 0


        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id,1)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)




        new_user_2 = User('宦怡',"22222222222", "123456")
        new_user_2.email = "*****@*****.**"
        new_user_2.phone = "22222222222"
        new_user_2.type = UserStatus.doctor
        User.save(new_user_2)

        new_doctor_2 = Doctor(new_user_2.id)
        new_doctor_2.identityPhone = "029-12345567"
        new_doctor_2.username = "******"
        new_doctor_2.diagnoseCount = 8
        new_doctor_2.feedbackCount = 3

        new_doctor_2.hospitalId = 1
        new_doctor_2.departmentId = 1
        new_doctor_2.title = "主任医师"
        new_doctor_2.status = 0
        new_doctor_2.goodFeedbackCount = 2

        Doctor.save(new_doctor_2)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_2.id,2)
        Doctor2Skill.save(new_doctor2skill_1_2)
        new_userrole2 = UserRole(new_user_2.id, RoleId.Doctor)
        UserRole.save(new_userrole2)

        new_user_3 = User('张劲松',"33333333333", "123456")
        new_user_3.email = "*****@*****.**"
        new_user_3.phone = "33333333333"
        new_user_3.type = UserStatus.doctor
        User.save(new_user_3)

        new_doctor_3 = Doctor(new_user_3.id)
        new_doctor_3.identityPhone = "029-12345567"
        new_doctor_3.username = "******"
        new_doctor_3.diagnoseCount = 9
        new_doctor_3.feedbackCount = 4

        new_doctor_3.hospitalId = 1
        new_doctor_3.departmentId = 1
        new_doctor_3.title = "主任医师"
        new_doctor_3.status = 0
        new_doctor_3.goodFeedbackCount = 3

        Doctor.save(new_doctor_3)
        new_doctor2skill_1_3 = Doctor2Skill(new_doctor_3.id,3)
        Doctor2Skill.save(new_doctor2skill_1_3)
        new_userrole3 = UserRole(new_user_3.id, RoleId.Doctor)
        UserRole.save(new_userrole3)


        dp=DoctorProfile()
        dp.type=DoctorProfileType.Intro
        dp.description='从事影像诊断多年,对普通放射、CT以及血管造影的影像诊断有丰富的经验,能够综合各种诊断手段进行诊断。对磁共振的影像诊断有丰富的经验,尤其侧重神经系统疑难疾病的诊断,采用磁共振波谱等多项先进技术,对神经系统肿瘤,肌萎缩性侧索硬化、癫痫以及先天性发育异常、变性疾病等神经系统疾病进行诊断及预后评估,有独到的诊断特色。与神经外科合作,开展肿瘤术前功能定位定向,确保了手术的安全性以及有效性;与身心科合作,开展了精神疾病诊断及临床研究工作。'
        dp.userId= new_user_1.id
        DoctorProfile.save(dp)

        dp=DoctorProfile()
        dp.type=DoctorProfileType.Resume
        dp.userId= new_user_1.id
        dp.description='印弘, 西京医院放射科主任,教授,主任医师,博士,硕士研究生导师。 毕业于第四军医大学。先后在新加坡国立神经科学研究所及美国加州大学旧金山分校作为访问学者工作。承担或参加北京市自然科学基金,新加坡国家医学基金,国家十一五科技支撑项目等多项科研基金,任职期间发表学术论文20余篇,其中SCI 5篇。'
        DoctorProfile.save(dp)


        dp=DoctorProfile()
        dp.type=DoctorProfileType.Award
        dp.userId= new_user_1.id
        dp.description='担任国家自然科学基金委主办杂志《自然》杂志以及《实用放射学杂志》特约审稿专家'
        DoctorProfile.save(dp)


        dp=DoctorProfile()
        dp.type=DoctorProfileType.Other
        dp.userId= new_user_1.id
        dp.description='陕西省影像协会会长'
        DoctorProfile.save(dp)


        dp2=DoctorProfile()
        dp2.type=DoctorProfileType.Intro
        dp2.description='主要从事CT、MRI诊断及相关基础研究。90年代初在国内率先开展CT 影像后处理研究,在3D CE MRA、CTA成像,耳部HRCT、HRMRI影像及影像解剖基础研究,泌尿系疾患CT、MRI成像及前列腺癌的分子影像学方面做了较多的工作,并获得省及国家自然科学基金资助。'
        dp2.userId= new_user_2.id
        DoctorProfile.save(dp2)

        dp2=DoctorProfile()
        dp2.type=DoctorProfileType.Resume
        dp2.userId= new_user_2.id
        dp2.description='宦怡,主任医师,教授,博士生导师。先后共发表论文70余篇,主编副主编专著2部,参编的专著6部。承担国家自然科学基金、陕西省自然科学基金课题各1项,参与国家自然科学基金2项,国家“九五”科技公关攻关课题1项,军队青年基金课题1项。'
        DoctorProfile.save(dp2)


        dp2=DoctorProfile()
        dp2.type=DoctorProfileType.Award
        dp2.userId= new_user_2.id
        dp2.description='军队医疗成果二等奖1项,三等奖5项'
        DoctorProfile.save(dp2)


        dp3=DoctorProfile()
        dp3.type=DoctorProfileType.Intro
        dp3.description='长期坚持临床一线工作,历经放射科X线诊断组、CT组和磁共振组等部门工作,熟练掌握CT、MRI影像诊断。每年承担医疗系和口腔系5年制本科学员、8年制学员等的大课教学工作,发表教学论文4篇;指导进修生多人;参与指导硕士研究生及博士生多名。多次参加全国及省放射学会的专题讲座。'
        dp3.userId= new_user_3.id
        DoctorProfile.save(dp3)

        dp3=DoctorProfile()
        dp3.type=DoctorProfileType.Resume
        dp3.userId= new_user_3.id
        dp3.description='张劲松,男,副主任医师、副教授。1994年本科毕业于第四军医大学临床医学系(6年制本科),1997年获第四军医大学影像医学硕士学位,2005年获第四军医大学影像医学博士学位。2008年赴美国南加州大学放射科进修学习半年。'
        DoctorProfile.save(dp3)


        dp3=DoctorProfile()
        dp3.type=DoctorProfileType.Award
        dp3.userId= new_user_3.id
        dp3.description='获得省科技进步一等奖1项,全军医疗成果二等奖2项,全军医疗成果三等奖6项'
        DoctorProfile.save(dp3)
Example #24
0
    def test_addDoctor(self):
        new_user_1 = User('印弘',"1111111111", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "111111111111"
        new_user_1.type = UserStatus.doctor
        new_user_1.imagePath = config.AVATAR_PREFIX+'avatar/yinhong-xj.png'
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "029-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 10
        new_doctor_1.feedbackCount = 5
        new_doctor_1.goodFeedbackCount = 5
        new_doctor_1.hospitalId = 1
        new_doctor_1.departmentId = 1
        new_doctor_1.title = "主任医师"
        new_doctor_1.status = 0


        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id,1)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)




        new_user_2 = User('宦怡',"22222222222", "123456")
        new_user_2.email = "*****@*****.**"
        new_user_2.phone = "22222222222"
        new_user_2.imagePath = config.AVATAR_PREFIX+'avatar/huanyi-xj.jpg'

        new_user_2.type = UserStatus.doctor
        User.save(new_user_2)

        new_doctor_2 = Doctor(new_user_2.id)
        new_doctor_2.identityPhone = "029-12345567"
        new_doctor_2.username = "******"
        new_doctor_2.diagnoseCount = 8
        new_doctor_2.feedbackCount = 3

        new_doctor_2.hospitalId = 1
        new_doctor_2.departmentId = 1
        new_doctor_2.title = "主任医师"
        new_doctor_2.status = 0
        new_doctor_2.goodFeedbackCount = 2

        Doctor.save(new_doctor_2)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_2.id,2)
        Doctor2Skill.save(new_doctor2skill_1_2)
        new_userrole2 = UserRole(new_user_2.id, RoleId.Doctor)
        UserRole.save(new_userrole2)

        new_user_3 = User('张劲松',"33333333333", "123456")
        new_user_3.email = "*****@*****.**"
        new_user_3.phone = "33333333333"
        new_user_3.type = UserStatus.doctor
        new_user_3.imagePath = config.AVATAR_PREFIX+'avatar/zhangjinsong-xj.jpg'

        User.save(new_user_3)

        new_doctor_3 = Doctor(new_user_3.id)
        new_doctor_3.identityPhone = "029-12345567"
        new_doctor_3.username = "******"
        new_doctor_3.diagnoseCount = 9
        new_doctor_3.feedbackCount = 4

        new_doctor_3.hospitalId = 1
        new_doctor_3.departmentId = 1
        new_doctor_3.title = "副主任医师"
        new_doctor_3.status = 0
        new_doctor_3.goodFeedbackCount = 3

        Doctor.save(new_doctor_3)
        new_doctor2skill_1_3 = Doctor2Skill(new_doctor_3.id,3)
        Doctor2Skill.save(new_doctor2skill_1_3)
        new_userrole3 = UserRole(new_user_3.id, RoleId.Doctor)
        UserRole.save(new_userrole3)

        #doctor 4
        new_user_4 = User('孙立军',"88888888888", "123456")
        new_user_4.email = "*****@*****.**"
        new_user_4.phone = "88888888888"
        new_user_4.type = UserStatus.doctor
        new_user_4.imagePath = config.AVATAR_PREFIX+'avatar/sunlijun-xj.jpg'

        User.save(new_user_4)

        new_doctor_4 = Doctor(new_user_4.id)
        new_doctor_4.identityPhone = "029-12345567"
        new_doctor_4.username = "******"
        new_doctor_4.diagnoseCount = 9
        new_doctor_4.feedbackCount = 4

        new_doctor_4.hospitalId = 1
        new_doctor_4.departmentId = 1
        new_doctor_4.title = "主任医师"
        new_doctor_4.status = 0
        new_doctor_4.goodFeedbackCount = 3

        Doctor.save(new_doctor_4)
        new_doctor2skill_1_4 = Doctor2Skill(new_doctor_4.id,3)
        Doctor2Skill.save(new_doctor2skill_1_4)
        new_userrole4 = UserRole(new_user_4.id, RoleId.Doctor)
        UserRole.save(new_userrole4)



        #doctor 5
        new_user_5 = User('魏光全',"99999999999", "123456")
        new_user_5.email = "*****@*****.**"
        new_user_5.phone = "88888888888"
        new_user_5.type = UserStatus.doctor
        new_user_5.imagePath = config.AVATAR_PREFIX+'avatar/weiguangquan-xj.jpg'

        User.save(new_user_5)

        new_doctor_5 = Doctor(new_user_5.id)
        new_doctor_5.identityPhone = "029-12345567"
        new_doctor_5.username = "******"
        new_doctor_5.diagnoseCount = 9
        new_doctor_5.feedbackCount = 4

        new_doctor_5.hospitalId = 1
        new_doctor_5.departmentId = 1
        new_doctor_5.title = "副主任医师"
        new_doctor_5.status = 0
        new_doctor_5.goodFeedbackCount = 3

        Doctor.save(new_doctor_5)
        new_doctor2skill_1_5 = Doctor2Skill(new_doctor_5.id,3)
        Doctor2Skill.save(new_doctor2skill_1_5)
        new_userrole5 = UserRole(new_user_5.id, RoleId.Doctor)
        UserRole.save(new_userrole5)


        #doctor 6
        new_user_6 = User('郑敏文',"00000000000", "123456")
        new_user_6.email = "*****@*****.**"
        new_user_6.phone = "00000000000"
        new_user_6.type = UserStatus.doctor
        new_user_6.imagePath = config.AVATAR_PREFIX+'avatar/zhengminwen-xj.jpg'

        User.save(new_user_6)

        new_doctor_6 = Doctor(new_user_6.id)
        new_doctor_6.identityPhone = "029-12345567"
        new_doctor_6.username = "******"
        new_doctor_6.diagnoseCount = 9
        new_doctor_6.feedbackCount = 4

        new_doctor_6.hospitalId = 1
        new_doctor_6.departmentId = 1
        new_doctor_6.title = "副主任医师"
        new_doctor_6.status = 0
        new_doctor_6.goodFeedbackCount = 3

        Doctor.save(new_doctor_6)
        new_doctor2skill_1_6 = Doctor2Skill(new_doctor_6.id,3)
        Doctor2Skill.save(new_doctor2skill_1_6)
        new_userrole6 = UserRole(new_user_6.id, RoleId.Doctor)
        UserRole.save(new_userrole6)




        dp=DoctorProfile()
        dp.type=DoctorProfileType.Intro
        dp.description='从事影像诊断多年,对普通放射、CT以及血管造影的影像诊断有丰富的经验,能够综合各种诊断手段进行诊断。对磁共振的影像诊断有丰富的经验,尤其侧重神经系统疑难疾病的诊断,采用磁共振波谱等多项先进技术,对神经系统肿瘤,肌萎缩性侧索硬化、癫痫以及先天性发育异常、变性疾病等神经系统疾病进行诊断及预后评估,有独到的诊断特色。与神经外科合作,开展肿瘤术前功能定位定向,确保了手术的安全性以及有效性;与身心科合作,开展了精神疾病诊断及临床研究工作。'
        dp.userId= new_user_1.id
        DoctorProfile.save(dp)

        dp=DoctorProfile()
        dp.type=DoctorProfileType.Resume
        dp.userId= new_user_1.id
        dp.description='印弘, 西京医院放射科主任,教授,主任医师,博士,硕士研究生导师。 毕业于第四军医大学。先后在新加坡国立神经科学研究所及美国加州大学旧金山分校作为访问学者工作。承担或参加北京市自然科学基金,新加坡国家医学基金,国家十一五科技支撑项目等多项科研基金,任职期间发表学术论文20余篇,其中SCI 5篇。'
        DoctorProfile.save(dp)


        dp=DoctorProfile()
        dp.type=DoctorProfileType.Award
        dp.userId= new_user_1.id
        dp.description='担任国家自然科学基金委主办杂志《自然》杂志以及《实用放射学杂志》特约审稿专家'
        DoctorProfile.save(dp)


        # dp=DoctorProfile()
        # dp.type=DoctorProfileType.Other
        # dp.userId= new_user_1.id
        # dp.description='陕西省影像协会会长'
        # DoctorProfile.save(dp)


        dp2=DoctorProfile()
        dp2.type=DoctorProfileType.Intro
        dp2.description='主要从事CT、MRI诊断及相关基础研究。90年代初在国内率先开展CT 影像后处理研究,在3D CE MRA、CTA成像,耳部HRCT、HRMRI影像及影像解剖基础研究,泌尿系疾患CT、MRI成像及前列腺癌的分子影像学方面做了较多的工作,并获得省及国家自然科学基金资助。'
        dp2.userId= new_user_2.id
        DoctorProfile.save(dp2)

        dp2=DoctorProfile()
        dp2.type=DoctorProfileType.Resume
        dp2.userId= new_user_2.id
        dp2.description='宦怡,主任医师,教授,博士生导师。先后共发表论文70余篇,主编副主编专著2部,参编的专著6部。承担国家自然科学基金、陕西省自然科学基金课题各1项,参与国家自然科学基金2项,国家“九五”科技公关攻关课题1项,军队青年基金课题1项。'
        DoctorProfile.save(dp2)


        dp2=DoctorProfile()
        dp2.type=DoctorProfileType.Award
        dp2.userId= new_user_2.id
        dp2.description='军队医疗成果二等奖1项,三等奖5项'
        DoctorProfile.save(dp2)


        dp3=DoctorProfile()
        dp3.type=DoctorProfileType.Intro
        dp3.description='长期坚持临床一线工作,历经放射科X线诊断组、CT组和磁共振组等部门工作,熟练掌握CT、MRI影像诊断。每年承担医疗系和口腔系5年制本科学员、8年制学员等的大课教学工作,发表教学论文4篇;指导进修生多人;参与指导硕士研究生及博士生多名。多次参加全国及省放射学会的专题讲座。'
        dp3.userId= new_user_3.id
        DoctorProfile.save(dp3)

        dp3=DoctorProfile()
        dp3.type=DoctorProfileType.Resume
        dp3.userId= new_user_3.id
        dp3.description='张劲松,男,副主任医师、副教授。1994年本科毕业于第四军医大学临床医学系(6年制本科),1997年获第四军医大学影像医学硕士学位,2005年获第四军医大学影像医学博士学位。2008年赴美国南加州大学放射科进修学习半年。'
        DoctorProfile.save(dp3)


        dp3=DoctorProfile()
        dp3.type=DoctorProfileType.Award
        dp3.userId= new_user_3.id
        dp3.description='获得省科技进步一等奖1项,全军医疗成果二等奖2项,全军医疗成果三等奖6项'
        DoctorProfile.save(dp3)


        #doctor 4
        dp4=DoctorProfile()
        dp4.type=DoctorProfileType.Intro
        dp4.description='以第一作者或通讯作者发表论文近100余篇,其中2篇被SCI收录。主要研究方向为①微创与介入放射学以及心血管疾病影像诊断;②心肌缺血与梗死后促血管新生分子治疗学。'
        dp4.userId= new_user_4.id
        DoctorProfile.save(dp4)

        dp4=DoctorProfile()
        dp4.type=DoctorProfileType.Resume
        dp4.userId= new_user_4.id
        dp4.description='孙立军,男,1960年6月03日出生。博士,主任医师,教授。1983年毕业于第四军医大学空医系本科,1986~1989年攻读影像学硕士学位, 1992~1995年攻读影像学博士学位'
        DoctorProfile.save(dp4)


        dp4=DoctorProfile()
        dp4.type=DoctorProfileType.Award
        dp4.userId= new_user_4.id
        dp4.description='2006年度陕西省科技进步二等奖(第二名),2008年度军队医疗成果二等奖(第四名),2011年陕西省科技进步二等奖(第三名)'
        DoctorProfile.save(dp4)

        #doctor 5
        dp5=DoctorProfile()
        dp5.type=DoctorProfileType.Intro
        dp5.description='主要研究方向:分子影像学。以第一作者发表文章48篇,其中7篇被SCI收录,最高影响因子8.3.参编专著3部。主持国家自然科学基金2项,参与(第二作者) 国家自然科学基金7项,其中包括NSFC重大项目:肿瘤分子影像基础研究.参与“973”子课题1项。参编专著3。'
        dp5.userId= new_user_5.id
        DoctorProfile.save(dp5)

        dp5=DoctorProfile()
        dp5.type=DoctorProfileType.Resume
        dp5.userId= new_user_5.id
        dp5.description='魏光全,男,副教授,副主任医师,硕士研究生导师'
        DoctorProfile.save(dp5)


        dp5=DoctorProfile()
        dp5.type=DoctorProfileType.Award
        dp5.userId= new_user_5.id
        dp5.description='中国人民解放军总后勤部特殊岗位津贴获得者(2005);第四军医大学学术新人获得者(2005)'
        DoctorProfile.save(dp5)

        #doctor 6
        dp6=DoctorProfile()
        dp6.type=DoctorProfileType.Intro
        dp6.description='主要研究方向为心血管疾病影像诊断,在西北地区最早开展对冠心病等各种心血管疾病的CT诊断,积累了丰富的临床经验。发表论文60余篇,SCI收录6篇。参编专著3部。'
        dp6.userId= new_user_6.id
        DoctorProfile.save(dp6)

        dp6=DoctorProfile()
        dp6.type=DoctorProfileType.Resume
        dp6.userId= new_user_6.id
        dp6.description='郑敏文,女,第四军医大学西京医院放射科副主任。博士学历,副教授,副主任医师,硕士研究生导师'
        DoctorProfile.save(dp6)


        dp6=DoctorProfile()
        dp6.type=DoctorProfileType.Award
        dp6.userId= new_user_6.id
        dp6.description='获军队医疗成果二等奖2项,省级科技进步二等奖2项'
        DoctorProfile.save(dp6)
Example #25
0
    def test_add_doctor(self):


        new_location_1 = Location("西安_1")
        Skill.save(new_location_1)
        new_location_2 = Location("西安_2")
        Skill.save(new_location_2)
        new_location_3 = Location("西安_3")
        Skill.save(new_location_3)

        new_skill_1 = Skill("头部")
        Skill.save(new_skill_1)
        new_skill_2 = Skill("颈部")
        Skill.save(new_skill_2)
        new_skill_3 = Skill("胸部")
        Skill.save(new_skill_3)

        new_skill_1 = Position("头部")
        Skill.save(new_skill_1)
        new_skill_2 = Position("颈部")
        Skill.save(new_skill_2)
        new_skill_3 = Position("胸部")
        Skill.save(new_skill_3)

        new_hospital = Hospital("西22安西京医院", "地址——西22安西京医院", "描述-西22安西京医院", "22")
        Hospital.save(new_hospital)

        new_department_1 = Department("影像科")
        Skill.save(new_department_1)
        new_department_2 = Department("内科")
        Skill.save(new_department_2)
        new_department_3 = Department("外科")
        Skill.save(new_department_3)

        new_user_1 = User("18511134676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511134676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "010-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 777
        new_doctor_1.feedbackCount = 888

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师1"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)

        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)


        new_user_2 = User("18511122567", "123456")
        new_user_2.email = "*****@*****.**"
        new_user_2.phone = "18511122567"
        new_user_2.type = UserStatus.doctor
        User.save(new_user_2)

        new_doctor_2 = Doctor(new_user_2.id)
        new_doctor_2.identityPhone = "010-12345667"
        new_doctor_2.username = "******"
        new_doctor_2.diagnoseCount = 666
        new_doctor_2.feedbackCount = 777

        new_doctor_2.hospitalId = new_hospital.id
        new_doctor_2.departmentId = new_department_2.id
        new_doctor_2.title = "副主任医师2"

        Doctor.save(new_doctor_2)
        new_doctor2skill_2_1 = Doctor2Skill(new_doctor_2.id, new_skill_2.id)
        Doctor2Skill.save(new_doctor2skill_2_1)
        new_doctor2skill_2_2 = Doctor2Skill(new_doctor_2.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_2_2)

        new_userrole = UserRole(new_user_2.id, RoleId.Doctor)
        UserRole.save(new_userrole)

        new_user_3 = User("18511142567", "123456")
        new_user_3.email = "*****@*****.**"
        new_user_3.phone = "18511142567"
        new_user_3.type = UserStatus.doctor
        User.save(new_user_3)

        new_doctor_3 = Doctor(new_user_3.id)
        new_doctor_3.identityPhone = "020-12346678"
        new_doctor_3.username = "******"

        new_doctor_3.hospitalId = new_hospital.id
        new_doctor_3.departmentId = new_department_3.id
        new_doctor_3.title = "副主任医师2"
        new_doctor_3.diagnoseCount = 999
        new_doctor_3.feedbackCount = 1000
        Doctor.save(new_doctor_3)
        new_doctor2skill_3_1 = Doctor2Skill(new_doctor_3.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_3_1)
        new_doctor2skill_3_2 = Doctor2Skill(new_doctor_3.id, new_skill_2.id)
        Doctor2Skill.save(new_doctor2skill_3_2)
        new_userrole = UserRole(new_user_3.id, RoleId.Doctor)
        UserRole.save(new_userrole)


        new_user_1 = User("18511114676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511234676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "020-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 775
        new_doctor_1.feedbackCount = 788

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师2"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)

        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)


        new_user_1 = User("18511114676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511234676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "020-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 775
        new_doctor_1.feedbackCount = 788

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师2"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)
        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)


        new_user_1 = User("18511114676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511234676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "020-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 775
        new_doctor_1.feedbackCount = 788

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师2"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)
        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)



        new_user_1 = User("18511114676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511234676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "020-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 775
        new_doctor_1.feedbackCount = 788

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师2"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)

        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)


        new_user_1 = User("18511114676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511234676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "020-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 775
        new_doctor_1.feedbackCount = 788

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师2"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)

        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)
Example #26
0
    def test_add_doctor(self):

        new_location_1 = Location("西安_1")
        Skill.save(new_location_1)
        new_location_2 = Location("西安_2")
        Skill.save(new_location_2)
        new_location_3 = Location("西安_3")
        Skill.save(new_location_3)

        new_skill_1 = Skill("头部")
        Skill.save(new_skill_1)
        new_skill_2 = Skill("颈部")
        Skill.save(new_skill_2)
        new_skill_3 = Skill("胸部")
        Skill.save(new_skill_3)

        new_skill_1 = Position("头部")
        Skill.save(new_skill_1)
        new_skill_2 = Position("颈部")
        Skill.save(new_skill_2)
        new_skill_3 = Position("胸部")
        Skill.save(new_skill_3)

        new_hospital = Hospital("西22安西京医院", "地址——西22安西京医院", "描述-西22安西京医院",
                                "22")
        Hospital.save(new_hospital)

        new_department_1 = Department("影像科")
        Skill.save(new_department_1)
        new_department_2 = Department("内科")
        Skill.save(new_department_2)
        new_department_3 = Department("外科")
        Skill.save(new_department_3)

        new_user_1 = User("18511134676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511134676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "010-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 777
        new_doctor_1.feedbackCount = 888

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师1"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)

        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)

        new_user_2 = User("18511122567", "123456")
        new_user_2.email = "*****@*****.**"
        new_user_2.phone = "18511122567"
        new_user_2.type = UserStatus.doctor
        User.save(new_user_2)

        new_doctor_2 = Doctor(new_user_2.id)
        new_doctor_2.identityPhone = "010-12345667"
        new_doctor_2.username = "******"
        new_doctor_2.diagnoseCount = 666
        new_doctor_2.feedbackCount = 777

        new_doctor_2.hospitalId = new_hospital.id
        new_doctor_2.departmentId = new_department_2.id
        new_doctor_2.title = "副主任医师2"

        Doctor.save(new_doctor_2)
        new_doctor2skill_2_1 = Doctor2Skill(new_doctor_2.id, new_skill_2.id)
        Doctor2Skill.save(new_doctor2skill_2_1)
        new_doctor2skill_2_2 = Doctor2Skill(new_doctor_2.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_2_2)

        new_userrole = UserRole(new_user_2.id, RoleId.Doctor)
        UserRole.save(new_userrole)

        new_user_3 = User("18511142567", "123456")
        new_user_3.email = "*****@*****.**"
        new_user_3.phone = "18511142567"
        new_user_3.type = UserStatus.doctor
        User.save(new_user_3)

        new_doctor_3 = Doctor(new_user_3.id)
        new_doctor_3.identityPhone = "020-12346678"
        new_doctor_3.username = "******"

        new_doctor_3.hospitalId = new_hospital.id
        new_doctor_3.departmentId = new_department_3.id
        new_doctor_3.title = "副主任医师2"
        new_doctor_3.diagnoseCount = 999
        new_doctor_3.feedbackCount = 1000
        Doctor.save(new_doctor_3)
        new_doctor2skill_3_1 = Doctor2Skill(new_doctor_3.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_3_1)
        new_doctor2skill_3_2 = Doctor2Skill(new_doctor_3.id, new_skill_2.id)
        Doctor2Skill.save(new_doctor2skill_3_2)
        new_userrole = UserRole(new_user_3.id, RoleId.Doctor)
        UserRole.save(new_userrole)

        new_user_1 = User("18511114676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511234676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "020-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 775
        new_doctor_1.feedbackCount = 788

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师2"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)

        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)

        new_user_1 = User("18511114676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511234676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "020-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 775
        new_doctor_1.feedbackCount = 788

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师2"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)
        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)

        new_user_1 = User("18511114676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511234676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "020-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 775
        new_doctor_1.feedbackCount = 788

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师2"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)
        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)

        new_user_1 = User("18511114676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511234676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "020-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 775
        new_doctor_1.feedbackCount = 788

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师2"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)

        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)

        new_user_1 = User("18511114676", "123456")
        new_user_1.email = "*****@*****.**"
        new_user_1.phone = "18511234676"
        new_user_1.type = UserStatus.doctor
        User.save(new_user_1)

        new_doctor_1 = Doctor(new_user_1.id)
        new_doctor_1.identityPhone = "020-12345567"
        new_doctor_1.username = "******"
        new_doctor_1.diagnoseCount = 775
        new_doctor_1.feedbackCount = 788

        new_doctor_1.hospitalId = new_hospital.id
        new_doctor_1.departmentId = new_department_1.id
        new_doctor_1.title = "副主任医师2"

        Doctor.save(new_doctor_1)
        new_doctor2skill_1_1 = Doctor2Skill(new_doctor_1.id, new_skill_1.id)
        Doctor2Skill.save(new_doctor2skill_1_1)
        new_doctor2skill_1_2 = Doctor2Skill(new_doctor_1.id, new_skill_3.id)
        Doctor2Skill.save(new_doctor2skill_1_2)

        new_userrole = UserRole(new_user_1.id, RoleId.Doctor)
        UserRole.save(new_userrole)
Example #27
0
def applyDiagnoseForm(formid):
    if (int(formid) == 1) :
        form = DiagnoseForm3(request.form)
        form_result = form.validate()
        if form_result.status == rs.SUCCESS.status:
            if(form.diagnoseId):
                new_diagnose = Diagnose.getDiagnoseById(form.diagnoseId)
            else:
                new_diagnose = Diagnose.getNewDiagnoseByStatus(DiagnoseStatus.Draft, session['userId'])
            if(new_diagnose is None):
                new_diagnose = Diagnose()
                new_diagnose.status = DiagnoseStatus.Draft

            new_diagnose.doctorId = form.doctorId
            new_diagnose.uploadUserId = session['userId']

            Diagnose.save(new_diagnose)
            form_result.data = {'formId': 2, 'diagnoseId': new_diagnose.id}
        return jsonify(form_result.__dict__)
    elif (int(formid) == 2) :
        form = DiagnoseForm1(request.form)
        form_result = form.validate()
        if form_result.status == rs.SUCCESS.status:
            if form.diagnoseId is not None:
                new_diagnose = Diagnose.getDiagnoseById(form.diagnoseId)
            else:
                new_diagnose = Diagnose.getNewDiagnoseByStatus(DiagnoseStatus.Draft, int(session['userId']))
            if(new_diagnose is not None):
                # 去拿没有draft的用户
                if(form.exist):
                    new_patient = Patient.get_patient_by_id(form.patientid)
                else:
                    new_patient = Patient.get_patient_draft(new_diagnose.patientId)
                if new_patient is None:
                    new_patient = Patient()
                    new_patient.type = PatientStatus.diagnose
                    new_patient.userID = session['userId']
                    new_patient.realname = form.patientname
                    new_patient.gender = form.patientsex
                    new_patient.birthDate = datetime.strptime(form.birthdate, "%Y-%m-%d")
                    new_patient.identityCode = form.identitynumber
                    new_patient.locationId = form.locationId
                    new_patient.identityPhone = form.phonenumber
                    new_patient.status = ModelStatus.Draft
                    # new_patient.locationId = form.location
                    Patient.save(new_patient)
                new_diagnose.patientId = new_patient.id
                Diagnose.save(new_diagnose)

                # Hospital User 注册用户
                if(form.isHospitalUser):
                    new_user = User(form.phonenumber, random.sample('zyxwvutsrqponmlkjihgfedcba1234567890',6), False)
                    new_user.type = UserStatus.patent
                    new_user.status = ModelStatus.Draft
                    User.save(new_user)
                    new_patient.userID = new_user.id
                    Patient.save(new_patient)
                    new_userrole = UserRole(new_user.id, RoleId.Patient)
                    UserRole.save(new_userrole)

                form_result.data = {'formId': 3, }
            else:
                form_result = ResultStatus(FAILURE.status, "找不到第一步草稿")
        return jsonify(form_result.__dict__)
    elif (int(formid) == 3):
        form = DiagnoseForm2(request.form)
        form_result = form.validate()
        if form_result.status == rs.SUCCESS.status:

            if form.diagnoseId is not None:
                new_diagnose = Diagnose.getDiagnoseById(form.diagnoseId)
            else:
                new_diagnose = Diagnose.getNewDiagnoseByStatus(DiagnoseStatus.Draft, int(session['userId']))

            if new_diagnose is not None:

                if form.exist:
                    new_pathology = Pathology.getById(form.pathologyId)
                elif new_diagnose.pathologyId:
                    new_pathology = Pathology.getById(new_diagnose.pathologyId)
                else:
                    new_pathology = Pathology.getByPatientStatus(session['userId'], ModelStatus.Draft)

                if new_pathology is None:
                    new_pathology = Pathology(new_diagnose.patientId)

                new_pathology.diagnoseMethod = form.dicomtype
                new_pathology.status = ModelStatus.Draft
                new_pathology.save(new_pathology)

                PathologyPostion.deleteByPathologyId(new_pathology.id)
                for position in form.patientlocation:
                    new_position_id = PathologyPostion(new_pathology.id, position)
                    PathologyPostion.save(new_position_id)

                File.cleanDirtyFile(form.fileurl, new_pathology.id, FileType.Dicom)
                for fileurl in form.fileurl:
                    new_file = File.getFilebyId(int(fileurl))
                    new_file.pathologyId = new_pathology.id
                    File.save(new_file)

                new_diagnose.pathologyId = new_pathology.id
                Diagnose.save(new_diagnose)
                form_result.data = {'formId': 4}
            else:
                form_result = ResultStatus(FAILURE.status, "找不到上步的草稿")
        return jsonify(form_result.__dict__)
    elif (int(formid) == 4):
        form = DiagnoseForm4(request.form)
        form_result = form.validate()
        if form_result.status == rs.SUCCESS.status:
            if form.diagnoseId is not None:
                new_diagnose = Diagnose.getDiagnoseById(form.diagnoseId)
            else:
                new_diagnose = Diagnose.getNewDiagnoseByStatus(DiagnoseStatus.Draft, int(session['userId']))
            if(new_diagnose is not None):
                new_pathology = Pathology.getById(new_diagnose.pathologyId)
                if(new_pathology is not None):
                    new_pathology.caseHistory = form.illnessHistory
                    new_pathology.hospitalId = form.hospitalId
                    new_pathology.status = ModelStatus.Normal
                    Pathology.save(new_pathology)

                    File.cleanDirtyFile(form.fileurl, new_pathology.id, FileType.FileAboutDiagnose)
                    for fileurl in form.fileurl:
                        new_file = File.getFilebyId(int(fileurl))
                        new_file.pathologyId = new_pathology.id
                        File.save(new_file)

                    new_patient = Patient.get_patient_by_id(new_diagnose.patientId)
                    new_patient.status = PatientStatus.diagnose
                    new_diagnose.status = DiagnoseStatus.NeedPay
                    Diagnose.save(new_diagnose)
                    new_diagnoselog = DiagnoseLog(new_diagnose.uploadUserId, new_diagnose.id, DiagnoseLogAction.NewDiagnoseAction)
                    DiagnoseLog.save(db_session, new_diagnoselog)
                else:
                    form_result = ResultStatus(FAILURE.status, "找不到上步的草稿1")
            else:
                form_result = ResultStatus(FAILURE.status, "找不到上步的草稿2")
        form_result.data = {'isFinal': True}
        return jsonify(form_result.__dict__)
    else:
        return jsonify(ResultStatus(FAILURE.status, "错误的表单号").__dict__)
Example #28
0
def applyDiagnoseForm(formid):
    if (int(formid) == 1):
        form = DiagnoseForm3(request.form)
        form_result = form.validate()
        if form_result.status == rs.SUCCESS.status:
            if (form.diagnoseId):
                new_diagnose = Diagnose.getDiagnoseById(form.diagnoseId)
            else:
                new_diagnose = Diagnose.getNewDiagnoseByStatus(
                    DiagnoseStatus.Draft, session['userId'])
            if (new_diagnose is None):
                new_diagnose = Diagnose()
                new_diagnose.status = DiagnoseStatus.Draft

            new_diagnose.doctorId = form.doctorId
            new_diagnose.uploadUserId = session['userId']

            Diagnose.save(new_diagnose)
            form_result.data = {'formId': 2, 'diagnoseId': new_diagnose.id}
        return jsonify(form_result.__dict__)
    elif (int(formid) == 2):
        form = DiagnoseForm1(request.form)
        form_result = form.validate()
        if form_result.status == rs.SUCCESS.status:
            if form.diagnoseId is not None:
                new_diagnose = Diagnose.getDiagnoseById(form.diagnoseId)
            else:
                new_diagnose = Diagnose.getNewDiagnoseByStatus(
                    DiagnoseStatus.Draft, int(session['userId']))
            if (new_diagnose is not None):
                needcreateNewUserByHospitalUser = True
                # 去拿没有draft的用户
                if (form.exist):
                    #select exist patient , from list, when modify exist diagnose
                    new_patient = Patient.get_patient_by_id(form.patientid)
                else:
                    #update draft patient when modify exist diagnose
                    new_patient = Patient.getPatientDraftByPatienId(
                        new_diagnose.patientId)
                    if new_patient:
                        new_patient.realname = form.patientname
                        new_patient.gender = form.patientsex
                        new_patient.birthDate = datetime.strptime(
                            form.birthdate, "%Y-%m-%d")
                        new_patient.identityCode = form.identitynumber
                        new_patient.locationId = form.locationId
                        new_patient.identityPhone = form.phonenumber
                        Patient.save(new_patient)
                        needcreateNewUserByHospitalUser = False
                #create a new patient
                if new_patient is None:
                    new_patient = Patient()
                    new_patient.type = PatientStatus.diagnose
                    new_patient.userID = session['userId']
                    new_patient.realname = form.patientname
                    new_patient.gender = form.patientsex
                    new_patient.birthDate = datetime.strptime(
                        form.birthdate, "%Y-%m-%d")
                    new_patient.identityCode = form.identitynumber
                    new_patient.locationId = form.locationId
                    new_patient.identityPhone = form.phonenumber
                    new_patient.status = ModelStatus.Draft
                    # new_patient.locationId = form.location
                    Patient.save(new_patient)
                new_diagnose.patientId = new_patient.id
                Diagnose.save(new_diagnose)

                # Hospital User 注册用户
                if form.isHospitalUser and (
                        not form.exist) and needcreateNewUserByHospitalUser:
                    userQuery = User.getByPhone(form.phonenumber)
                    if userQuery.count() <= 0:
                        passwd = random.sample(
                            'zyxwvutsrqponmlkjihgfedcba1234567890', 6)
                        passwd = ''.join(passwd)
                        new_user = User(form.patientname, form.phonenumber,
                                        passwd, True)
                        new_user.type = UserStatus.patent
                        new_user.status = ModelStatus.Normal
                        User.save(new_user)
                        new_patient.userID = new_user.id
                        Patient.save(new_patient)
                        new_userrole = UserRole(new_user.id, RoleId.Patient)
                        UserRole.save(new_userrole)
                        sendRegisterMobileMessage(session.get('userId'),
                                                  new_diagnose, new_user.phone,
                                                  passwd)
                    else:
                        new_patient.userID = userQuery.first().id
                        Patient.save(new_patient)
                form_result.data = {
                    'formId': 3,
                }
            else:
                form_result = ResultStatus(FAILURE.status, "找不到第一步草稿")
        return jsonify(form_result.__dict__)
    elif (int(formid) == 3):
        form = DiagnoseForm2(request.form)
        form_result = form.validate()
        if form_result.status == rs.SUCCESS.status:

            if form.diagnoseId is not None:
                new_diagnose = Diagnose.getDiagnoseById(form.diagnoseId)
            else:
                new_diagnose = Diagnose.getNewDiagnoseByStatus(
                    DiagnoseStatus.Draft, int(session['userId']))

            if new_diagnose is not None:
                #直接选择的病例,不是新建或者更改
                isExistingPathology = False
                if form.exist:
                    new_pathology = Pathology.getById(form.pathologyId)
                    isExistingPathology = True
                elif new_diagnose.pathologyId:
                    new_pathology = Pathology.getById(new_diagnose.pathologyId)
                else:
                    new_pathology = Pathology.getByPatientStatus(
                        session['userId'], ModelStatus.Draft)

                if new_pathology is None:
                    new_pathology = Pathology(new_diagnose.patientId)
                if not isExistingPathology:
                    new_pathology.diagnoseMethod = form.dicomtype
                    new_pathology.status = ModelStatus.Draft
                    new_pathology.save(new_pathology)

                    PathologyPostion.deleteByPathologyId(new_pathology.id)
                    for position in form.patientlocation:
                        new_position_id = PathologyPostion(
                            new_pathology.id, position)
                        PathologyPostion.save(new_position_id)

                    File.cleanDirtyFile(form.fileurl, new_pathology.id,
                                        FileType.Dicom)
                    if form.fileurl and len(form.fileurl) > 0:
                        for fileurl in form.fileurl:
                            new_file = File.getFilebyId(int(fileurl))
                            new_file.pathologyId = new_pathology.id
                            File.save(new_file)
                new_diagnose.pathologyId = new_pathology.id
                Diagnose.save(new_diagnose)
                form_result.data = {'formId': 4}
            else:
                form_result = ResultStatus(FAILURE.status, "找不到上步的草稿")
        return jsonify(form_result.__dict__)
    elif (int(formid) == 4):
        form = DiagnoseForm4(request.form)
        form_result = form.validate()
        if form_result.status == rs.SUCCESS.status:
            if form.diagnoseId is not None:
                new_diagnose = Diagnose.getDiagnoseById(form.diagnoseId)
            else:
                new_diagnose = Diagnose.getNewDiagnoseByStatus(
                    DiagnoseStatus.Draft, int(session['userId']))
            if (new_diagnose is not None):
                new_pathology = Pathology.getById(new_diagnose.pathologyId)
                if (new_pathology is not None):
                    new_pathology.caseHistory = form.illnessHistory
                    new_pathology.hospitalId = form.hospitalId
                    new_pathology.status = ModelStatus.Normal
                    Pathology.save(new_pathology)

                    File.cleanDirtyFile(form.fileurl, new_pathology.id,
                                        FileType.FileAboutDiagnose)
                    if form.fileurl and len(form.fileurl) > 0:
                        for fileurl in form.fileurl:
                            new_file = File.getFilebyId(int(fileurl))
                            new_file.pathologyId = new_pathology.id
                            File.save(new_file)

                    new_patient = Patient.get_patient_by_id(
                        new_diagnose.patientId)
                    new_patient.status = PatientStatus.diagnose
                    #add for need update scenario
                    if new_diagnose.status == constant.DiagnoseStatus.NeedUpdate:
                        new_diagnoselog = DiagnoseLog(
                            new_diagnose.uploadUserId, new_diagnose.id,
                            DiagnoseLogAction.DiagnoseNeedUpateRecommitAction)
                        DiagnoseLog.save(db_session, new_diagnoselog)
                        new_diagnose.status = DiagnoseStatus.Triaging
                        Diagnose.save(new_diagnose)
                    #hospitalUser type=1
                    else:
                        if form.type == '1' and not checkFilesExisting(
                                new_diagnose):
                            new_diagnoselog = DiagnoseLog(
                                new_diagnose.uploadUserId, new_diagnose.id,
                                DiagnoseLogAction.NewDiagnoseAction)
                            DiagnoseLog.save(db_session, new_diagnoselog)
                            #update by lichuan , save diagnose and change to needPay
                            new_diagnose.status = DiagnoseStatus.HospitalUserDiagnoseNeedCommit
                            Diagnose.save(new_diagnose)
                            #end update
                        else:
                            #产生alipay,发送短消息
                            userId = session.get('userId')

                            new_diagnose.ossUploaded = constant.DiagnoseUploaed.Uploaded
                            new_diagnose.status = DiagnoseStatus.NeedPay

                            Diagnose.save(new_diagnose)
                            sendAllMessage(userId, new_diagnose)

                else:
                    form_result = ResultStatus(FAILURE.status, "找不到上步的草稿1")
            else:
                form_result = ResultStatus(FAILURE.status, "找不到上步的草稿2")
        form_result.data = {'isFinal': True}
        return jsonify(form_result.__dict__)
    else:
        return jsonify(ResultStatus(FAILURE.status, "错误的表单号").__dict__)