Exemplo n.º 1
0
def create_req(request):
    """Form for registering a new user.
    """
    if request.POST:
        mcid = normalize_mcid(request.POST['mcid'])

        form = CreateForm(request.POST)

        if form.is_valid():
            object = User()
            object.mcid = mcid
            object.updatetime = 0
            object.ccrlogupdatetime = 0
            object.acctype = 'SPONSORED'

            object.first_name = form.clean_data['first_name']
            object.last_name = form.clean_data['last_name']
            object.enable_simtrak = False
            object.enable_dod = False
            object.save()

            return submit_redirect(request,
                                   object,
                                   save_redirect='user?mcid=%(mcid)s',
                                   edit_redirect='edit?mcid=%(mcid)s')
    else:
        mcid = mcid_generator.next_mcid_str()
        form = CreateForm()

    return render_to_response('users/create.html',
                              default_context(request, form=form, mcid=mcid))
Exemplo n.º 2
0
def create_req(request):
    """Form for registering a new user.
    """
    if request.POST:
        mcid = normalize_mcid(request.POST["mcid"])

        form = CreateForm(request.POST)

        if form.is_valid():
            object = User()
            object.mcid = mcid
            object.updatetime = 0
            object.ccrlogupdatetime = 0
            object.acctype = "SPONSORED"

            object.first_name = form.clean_data["first_name"]
            object.last_name = form.clean_data["last_name"]
            object.enable_simtrak = False
            object.enable_dod = False
            object.save()

            return submit_redirect(
                request, object, save_redirect="user?mcid=%(mcid)s", edit_redirect="edit?mcid=%(mcid)s"
            )
    else:
        mcid = mcid_generator.next_mcid_str()
        form = CreateForm()

    return render_to_response("users/create.html", default_context(request, form=form, mcid=mcid))
Exemplo n.º 3
0
def create_group(name, email, url_root, owner):
	"""
	_name_		Name of group
	_email_		Email address for group (?)
	_url_root_	acSite
	_owner_		MCID of user/doctor that controls this group
	"""
	u = User()
	u.mcid = mcid_generator.next_mcid()
	u.email = email
	u.set_password(str(u.mcid))
	u.first_name = name
	u.last_name = 'Group'
	u.rolehack = 'rls'
	u.acctype = 'GROUP'
	u.updatetime = 0
	u.ccrlogupdatetime = 0
	u.save()

	g = Group()
	g.grouptypeid = 0
	g.name = name
	g.accid_id = u.mcid
	g.save()
	
	p = Practice()
	p.providergroupid = g
	p.practicename = name
	p.accid_id = u.mcid
	p.save()

	p.practiceRlsUrl = urljoin(url_root,
				   'acct/ws/R.php?pid=%d' % p.practiceid)
	p.save()

	g.parentid = p.practiceid
	g.save()

	ga = Groupadmin()
	ga.groupinstanceid = g.groupinstanceid
	ga.adminaccid = owner
	ga.save()

	add_to_group(g, owner)

	return g, p
Exemplo n.º 4
0
def create_group(name, email, url_root, owner):
    """
	_name_		Name of group
	_email_		Email address for group (?)
	_url_root_	acSite
	_owner_		MCID of user/doctor that controls this group
	"""
    u = User()
    u.mcid = mcid_generator.next_mcid()
    u.email = email
    u.set_password(str(u.mcid))
    u.first_name = name
    u.last_name = 'Group'
    u.rolehack = 'rls'
    u.acctype = 'GROUP'
    u.updatetime = 0
    u.ccrlogupdatetime = 0
    u.save()

    g = Group()
    g.grouptypeid = 0
    g.name = name
    g.accid_id = u.mcid
    g.save()

    p = Practice()
    p.providergroupid = g
    p.practicename = name
    p.accid_id = u.mcid
    p.save()

    p.practiceRlsUrl = urljoin(url_root, 'acct/ws/R.php?pid=%d' % p.practiceid)
    p.save()

    g.parentid = p.practiceid
    g.save()

    ga = Groupadmin()
    ga.groupinstanceid = g.groupinstanceid
    ga.adminaccid = owner
    ga.save()

    add_to_group(g, owner)

    return g, p
Exemplo n.º 5
0
def create_data(url_root):
	gateway = urljoin(url_root, 'router/')

	transaction.enter_transaction_management()

	doctor = User()
	doctor.mcid = mcid_generator.next_mcid()
	doctor.first_name = 'Demo'
	doctor.last_name = 'Doctor'
	doctor.email = '*****@*****.**'
	doctor.updatetime = 0
	doctor.ccrlogupdatetime = 0
	doctor.save()

	physician = User()
	physician.mcid = mcid_generator.next_mcid()
	physician.first_name = 'Demo'
	physician.last_name = 'Physician'
	physician.email = '*****@*****.**'
	physician.updatetime = 0
	physician.ccrlogupdatetime = 0
	physician.save()

	g, p = create_group('Demo Group Worklist',
			    '*****@*****.**', url_root,
			    doctor.mcid)

	add_to_group(g, physician.mcid)

	patients = []
	for first_name, last_name, email, currentccr, reason, ccrs in PATIENTS:
		user = User()
		user.first_name = first_name
		user.last_name = last_name
		user.email = email
		user.mcid = mcid_generator.next_mcid()
		user.acctype = 'USER'
		user.rolehack = 'ccrlhm'
		user.updatetime = 0
		user.ccrlogupdatetime = 0
		user.save()

		patients.append(user)

		# Set worklist
		sql_execute(ACCOUNT_RLS_SQL, user.mcid, p.practiceRlsUrl)

		if not currentccr:
			continue

		sql_execute(DOCUMENT_TYPE_SQL, user.mcid, currentccr)

		ev = Practiceccrevent()
		ev.practiceid = p
		ev.PatientGivenName = user.first_name
		ev.PatientFamilyName = user.last_name
		ev.PatientIdentifier = user.mcid
		ev.PatientIdentifierSource = 'Patient Medcommons ID'
		ev.Guid = currentccr
		ev.Purpose = reason
		ev.SenderProviderId = 'idp'
		ev.ReceiverProviderId = 'idp'
		ev.DOB = '16 Jan 1968 05:00:00 GMT'
		ev.CXPServerURL = ''
		ev.CXPServerVendor = 'Medcommons'
		ev.ViewerURL = urljoin(gateway, 'access?g=%s' % currentccr)
		ev.Comment = '\n            3D Imaging Consult\n            '
		ev.CreationDateTime = 1162365858
		ev.ConfirmationCode = tn_generator.next_tracking_number()
		ev.RegistrySecret = ''
		ev.PatientSex = 'Female'
		ev.PatientAge = ''
		ev.Status = 'New'
		ev.ViewStatus = 'Visible'
		ev.save()

		sql_execute(CCRLOG_SQL, user.mcid, currentccr, 'CCR',
			    ev.ConfirmationCode)

		for ccr in ccrs:
			sql_execute(CCRLOG_SQL, user.mcid, ccr, 'CCR',
				    tn_generator.next_tracking_number())

	sql_execute(TODIR_SQL, g.groupinstanceid, doctor.email,
		    doctor.email, doctor.mcid)

	sql_execute(TODIR_SQL, g.groupinstanceid, physician.email,
		    physician.email, physician.mcid)

	demoCCR = 'fdfbbb9cf53f8577b420ed72567cd2104589fb0d'

	sql_execute(CCRLOG_SQL, doctor.mcid, demoCCR, 'DICOM Import',
		    tn_generator.next_tracking_number())

	sql_execute(CCRLOG_SQL, patients[0].mcid, demoCCR, 'DICOM Import',
		    tn_generator.next_tracking_number())

	sql_execute(CCRLOG_SQL, patients[0].mcid, PATIENTS[0][3],
		    'DICOM Import',
		    tn_generator.next_tracking_number())


	# Secondary group
	if 0:
		g2, p2 = create_group('Healthy Doctors',
				      '*****@*****.**',
				      url_root, doctor.mcid)

	p = MCProperty()
	p.property = 'acDemoDoctor'
	p.value = doctor.mcid
	p.save()

	transaction.leave_transaction_management()
Exemplo n.º 6
0
def create_data(url_root):
    gateway = urljoin(url_root, 'router/')

    transaction.enter_transaction_management()

    doctor = User()
    doctor.mcid = mcid_generator.next_mcid()
    doctor.first_name = 'Demo'
    doctor.last_name = 'Doctor'
    doctor.email = '*****@*****.**'
    doctor.updatetime = 0
    doctor.ccrlogupdatetime = 0
    doctor.save()

    physician = User()
    physician.mcid = mcid_generator.next_mcid()
    physician.first_name = 'Demo'
    physician.last_name = 'Physician'
    physician.email = '*****@*****.**'
    physician.updatetime = 0
    physician.ccrlogupdatetime = 0
    physician.save()

    g, p = create_group('Demo Group Worklist',
                        '*****@*****.**', url_root,
                        doctor.mcid)

    add_to_group(g, physician.mcid)

    patients = []
    for first_name, last_name, email, currentccr, reason, ccrs in PATIENTS:
        user = User()
        user.first_name = first_name
        user.last_name = last_name
        user.email = email
        user.mcid = mcid_generator.next_mcid()
        user.acctype = 'USER'
        user.rolehack = 'ccrlhm'
        user.updatetime = 0
        user.ccrlogupdatetime = 0
        user.save()

        patients.append(user)

        # Set worklist
        sql_execute(ACCOUNT_RLS_SQL, user.mcid, p.practiceRlsUrl)

        if not currentccr:
            continue

        sql_execute(DOCUMENT_TYPE_SQL, user.mcid, currentccr)

        ev = Practiceccrevent()
        ev.practiceid = p
        ev.PatientGivenName = user.first_name
        ev.PatientFamilyName = user.last_name
        ev.PatientIdentifier = user.mcid
        ev.PatientIdentifierSource = 'Patient Medcommons ID'
        ev.Guid = currentccr
        ev.Purpose = reason
        ev.SenderProviderId = 'idp'
        ev.ReceiverProviderId = 'idp'
        ev.DOB = '16 Jan 1968 05:00:00 GMT'
        ev.CXPServerURL = ''
        ev.CXPServerVendor = 'Medcommons'
        ev.ViewerURL = urljoin(gateway, 'access?g=%s' % currentccr)
        ev.Comment = '\n            3D Imaging Consult\n            '
        ev.CreationDateTime = 1162365858
        ev.ConfirmationCode = tn_generator.next_tracking_number()
        ev.RegistrySecret = ''
        ev.PatientSex = 'Female'
        ev.PatientAge = ''
        ev.Status = 'New'
        ev.ViewStatus = 'Visible'
        ev.save()

        sql_execute(CCRLOG_SQL, user.mcid, currentccr, 'CCR',
                    ev.ConfirmationCode)

        for ccr in ccrs:
            sql_execute(CCRLOG_SQL, user.mcid, ccr, 'CCR',
                        tn_generator.next_tracking_number())

    sql_execute(TODIR_SQL, g.groupinstanceid, doctor.email, doctor.email,
                doctor.mcid)

    sql_execute(TODIR_SQL, g.groupinstanceid, physician.email, physician.email,
                physician.mcid)

    demoCCR = 'fdfbbb9cf53f8577b420ed72567cd2104589fb0d'

    sql_execute(CCRLOG_SQL, doctor.mcid, demoCCR, 'DICOM Import',
                tn_generator.next_tracking_number())

    sql_execute(CCRLOG_SQL, patients[0].mcid, demoCCR, 'DICOM Import',
                tn_generator.next_tracking_number())

    sql_execute(CCRLOG_SQL, patients[0].mcid, PATIENTS[0][3], 'DICOM Import',
                tn_generator.next_tracking_number())

    # Secondary group
    if 0:
        g2, p2 = create_group('Healthy Doctors',
                              '*****@*****.**', url_root,
                              doctor.mcid)

    p = MCProperty()
    p.property = 'acDemoDoctor'
    p.value = doctor.mcid
    p.save()

    transaction.leave_transaction_management()