Пример #1
0
def create_profile_solr(data):
    print data
    request_type = "POST"
    url = "%s/createProfile" % get_base_url()
    barcode = get_barcode()
    args = json.loads(data)
    args["barcode"] = str(barcode)
    data = json.dumps(args)
    from phr.phr.phr_api import get_response
    response = get_response(url, data, request_type)
    res = json.loads(response.text)
    print res
    if res and res.get('returncode') == 101:
        data = json.loads(data)
        path = get_image_path(barcode, res['entityid'])
        print "============================="
        print data
        args = {
            "entityid": res.get('entityid'),
            "linking_id": data["linking_id"],
            "relationship": data["relationship"],
            "received_from": "Desktop"
        }
        request_type = "POST"
        url = "%s/linkprofile" % get_base_url()
        from phr.phr.phr_api import get_response
        response = get_response(url, json.dumps(args), request_type)
        res = json.loads(response.text)
        update_lphr_barcode(path, res.get('entityid'))
        return res
Пример #2
0
def create_profile_solr(data):
	request_type = "POST"
	url = "%s/createProfile"%get_base_url()
	args = json.loads(data)
	
	if args['mobile'] and not not_duplicate_contact(args['mobile']):
		return {"message_summary":"Contact Already Registered"}

	barcode = get_barcode()
	args["barcode"]=str(barcode)
	data=json.dumps(args)
	from phr.phr.phr_api import get_response
	response=get_response(url,data,request_type)
	res=json.loads(response.text)
	if res and res.get('returncode')==101:
		data = json.loads(data)
		path = get_image_path(barcode,res['entityid'])
		from phr.templates.pages.login import set_default_dashboard
		set_default_dashboard(res['entityid'])		
		args = {"entityid":res.get('entityid'),"linking_id":data["linking_id"],"relationship":data["relationship"],"received_from":"Desktop"}
		request_type="POST"
		url = "%s/linkprofile"%get_base_url()
		from phr.phr.phr_api import get_response
		response = get_response(url,json.dumps(args),request_type)
		res = json.loads(response.text)
		update_lphr_barcode(path,res.get('entityid'))
		return res
Пример #3
0
def create_profile_solr(data):
    request_type = "POST"
    # url="http://192.168.5.11:9090/phr-api/createProfile"
    url = "%s/createProfile" % get_base_url()
    # url="http://88.198.52.49:7974/phr-api/createProfile"
    from phr.phr.phr_api import get_response
    response = get_response(url, data, request_type)
    res = json.loads(response.text)
    print res
    if res and res.get('returncode') == 101:
        data = json.loads(data)
        print "============================="
        print data
        args = {
            "entityid": res.get('entityid'),
            "linking_id": data["linking_id"],
            "relationship": data["relationship"],
            "received_from": "Desktop"
        }
        request_type = "POST"
        # url="http://192.168.5.11:9090/phr/linkprofile"
        url = "%s/linkprofile" % get_base_url()
        # url="http://88.198.52.49:7974/phr/linkprofile"
        from phr.phr.phr_api import get_response
        response = get_response(url, json.dumps(args), request_type)
        res = json.loads(response.text)
        return res
Пример #4
0
def get_visit_data(data):
    print "-----------", data
    request_type = "POST"
    # url="http://192.168.5.12:9090/phr/phrdata/getprofilevisit"
    url = "%s/phrdata/getprofilevisit" % get_base_url()
    # url="http://88.198.52.49:7974/phr/phrdata/getprofilevisit"
    from phr.phr.phr_api import get_response

    fields, values, tab = get_data_to_render(data)

    pos = 0

    for filed_dict in fields:
        pos = +1
        if 'rows' in filed_dict.keys():
            rows = filed_dict.get('rows')
            break

    data = json.loads(data)

    response = get_response(url,
                            json.dumps({"profileId": data.get('profile_id')}),
                            request_type)
    res_data = json.loads(response.text)

    # url="http://192.168.5.12:9090/phr-api/phrdata/getprofilevisitfilecount"
    url = "%s/phrdata/getprofilevisitfilecount" % get_base_url()
    # url="http://88.198.52.49:7974/phr-api/phrdata/getprofilevisitfilecount"
    response = get_response(url,
                            json.dumps({"profile_id": data.get('profile_id')}),
                            request_type)
    res_data1 = json.loads(response.text)

    event_count_dict = {}
    get_event_wise_count_dict(res_data1.get('FileCountData'), event_count_dict)

    if isinstance(type(res_data), dict):
        res_data = res_data.get('phr')

    else:
        res_data = json.loads(res_data.get('phr'))

    if res_data.get('visitList'):
        for visit in res_data.get('visitList'):

            count_list = [0, 0, 0, 0, 0]

            data = [
                '<input  type="radio" name="visit" id = "%s">' %
                visit['entityid'], visit['str_visit_date'],
                visit['visit_descripton'], 'DOC', visit['doctor_name']
            ]

            event_list_updater(visit['entityid'], event_count_dict, count_list,
                               data)

            rows.extend([data])

    return {'rows': rows, 'listview': fields, 'page_size': 5}
Пример #5
0
def get_visit_data(data):
	request_type="POST"
	url="%s/phrdata/getprofilevisit"%get_base_url()
	from phr.phr.phr_api import get_response

	fields, values, tab = get_data_to_render(data)

	pos = 0

	for filed_dict in fields:
		pos =+ 1
		if 'rows' in filed_dict.keys(): 
			rows = filed_dict.get('rows')
			break

	data=json.loads(data)

	response=get_response(url, json.dumps({"profileId":data.get('profile_id')}), request_type)
	res_data = json.loads(response.text)

	url = "%s/phrdata/getprofilevisitfilecount"%get_base_url()

	response=get_response(url, json.dumps({"profile_id":data.get('profile_id')}), request_type)
	res_data1 = json.loads(response.text)

	event_count_dict = {}
	get_event_wise_count_dict(res_data1.get('FileCountData'), event_count_dict)
	
	if isinstance(type(res_data), dict):
		res_data = res_data.get('phr')

	else:
		res_data = json.loads(res_data.get('phr'))	

	if res_data.get('visitList'):
		for visit in res_data.get('visitList'):

			count_list = [0, 0, 0, 0, 0]

			data = ['<input  type="radio" name="visit" id = "%s"><div style="display:none">%s</div>'%(visit['entityid'], visit['entityid']),
					visit['event']['event_title'], visit['str_visit_date'], 
					visit['visit_descripton'], visit['doctor_name']]

			event_list_updater(visit['entityid'], event_count_dict, count_list, data)
			
			rows.extend([data])
	
	return {
		'rows': rows,
		'listview': fields,
		'page_size': 5
	}
Пример #6
0
def get_event_data(data):
	fields, values, tab = get_data_to_render(data)

	request_type="POST"
	url="%s/phrdata/getprofileevent"%get_base_url()
	from phr.phr.phr_api import get_response

	pos = 0

	for filed_dict in fields:
		pos =+ 1
		if 'rows' in filed_dict.keys(): 
			rows = filed_dict.get('rows')
			break

	data=json.loads(data)
	profile_id = data.get('profile_id')
	response=get_response(url, json.dumps({"profileId":data.get('profile_id')}), request_type)
	res_data = json.loads(response.text)

	url = "%s/phrdata/getprofilefilecount"%get_base_url()
	response=get_response(url, json.dumps({"profile_id":data.get('profile_id')}), request_type)
	res_data1 = json.loads(response.text)

	event_count_dict = {}
	get_event_wise_count_dict(res_data1.get('FileCountData'), event_count_dict)

	if isinstance(type(res_data), dict):
		res_data = res_data.get('phr')

	else:
		res_data = json.loads(res_data.get('phr'))	

	if res_data.get('eventList'):
		for visit in res_data.get('eventList'):
			count_list = [0, 0, 0, 0, 0]
			if not visit.get("event_diseasemontoring"):
				data = ['<input type="radio" name="event" id = "%s" "><div style="display:none">%s</div>'%(visit['entityid'], visit['entityid']), 
						"""<a nohref id="%(entityid)s" onclick="Events.prototype.open_form('%(entityid)s', '%(event_title)s', '%(profile_id)s')"> %(event_title)s </a>"""%{"entityid": visit['entityid'],"event_title": visit['event_title'], "profile_id":profile_id}, 
						datetime.datetime.fromtimestamp(cint(visit['event_date'])/1000.0).strftime('%d/%m/%Y'), 
						"<div style='word-wrap: break-word;width:60%%;'>%s</div>"%' ,'.join(visit['event_symptoms'])]
				
				event_list_updater(visit['entityid'], event_count_dict, count_list, data)
				
				rows.extend([data])

	return {
		'rows': rows,
		'listview': fields,
		'page_size': 5
	}
Пример #7
0
def create_event(data):
	response = ''
	request_type="POST"
	url = "%s/createEvent"%get_base_url()

	event_data={
			"event_title": data.get('event_title'),
			"profile_id": data.get('profile_id'),
			"str_event_date": data.get('event_date'),
			"received_from": "Desktop",
			"event_symptoms" : data.get('complaints'),
			"event_descripton": data.get('event_descripton')
		}

	event_date = datetime.datetime.strptime(event_data.get('str_event_date'), "%d/%m/%Y").strftime('%Y-%m-%d')
	
	if date_diff(event_date, nowdate()) > 0:
		frappe.msgprint("Event Date should be past or current")
		return {"exe":"Event Date should be past or current"}

	else:
		response=get_response(url, json.dumps(event_data), request_type)
		make_log(json.loads(response.text).get('entityid'),"Event","Create","Event Created")

	return json.loads(response.text)
Пример #8
0
def get_individual_visit_count_for_badges(visit_id,profile_id):
	request_type="POST"
	url=get_base_url()+'admin/getvisitfilecount'
	args={"profileId":profile_id}
	response=get_response(url,json.dumps(args),request_type)
	res=response.text
	event_list=[]
	event_dict={}
	sub_event_count={}
	if res:
		jsonobj=json.loads(res)
		if jsonobj["returncode"]==139:
			for visit in json.loads(jsonobj["list"]):
				if visit['visit']['entityid']==visit_id:
					event_wise_count_dict(visit['visitFileMapCount'], event_dict,sub_event_count)
					break

	for event in ["11","12","13","14","15"]:
		if not event_dict.has_key(event):
			event_dict[event]=0
	
	for sub_event in ["1151","1152","1153","1251","1252","1351","1352","1451","1452","1453","1551"]:
		if not sub_event_count.has_key(sub_event):
			sub_event_count[sub_event]=0

	return {
				"event_dict":event_dict,
				"sub_event_count":sub_event_count
			}
Пример #9
0
def create_event(data):
    response = ''
    request_type = "POST"
    # url="http://192.168.5.12:9090/phr/createEvent"
    url = "%s/createEvent" % get_base_url()
    # url="http://88.198.52.49:7974/phr/createEvent"
    event_data = {
        "event_title": data.get('event_title'),
        "profile_id": data.get('profile_id'),
        "str_event_date": data.get('event_date'),
        "received_from": "Desktop",
        "event_descripton": data.get('event_descripton')
    }

    import datetime
    frappe.errprint(['date_diff', data.get('event_date')])
    event_date = datetime.datetime.strptime(event_data.get('str_event_date'),
                                            "%d/%m/%Y").strftime('%Y-%m-%d')

    if date_diff(event_date, nowdate()) >= 0:
        frappe.msgprint("Please sect valid date")

    else:
        response = get_response(url, json.dumps(event_data), request_type)

    return json.loads(response.text)
Пример #10
0
def get_individual_visit_count_for_badges(visit_id,profile_id, req_id=None):
	if req_id:
		req_id = frappe.get_doc('Shared Requests', req_id)
		event_dict = json.loads(req_id.event_dict)
		sub_event_count = json.loads(req_id.sub_event_count)

	else:
		request_type="POST"
		url=get_base_url()+'admin/getvisitfilecount'
		args={"profileId":profile_id}
		response=get_response(url,json.dumps(args),request_type)
		res=response.text
		event_list=[]
		event_dict={}
		sub_event_count={}
		if res:
			jsonobj=json.loads(res)
			if jsonobj["returncode"]==139:
				for visit in json.loads(jsonobj["list"]):
					frappe.errprint([visit['visit']['entityid'], visit_id])
					if visit['visit']['entityid']==visit_id:
						event_wise_count_dict(visit['visitFileMapCount'], event_dict,sub_event_count)
						break

	return get_count_dict(event_dict, sub_event_count)	
Пример #11
0
def update_event(data):
    response = ''
    request_type = "POST"
    # url="http://192.168.5.12:9090/phr-api/createupdateevent"
    url = "%s/createupdateevent" % get_base_url()
    # url="http://88.198.52.49:7974/phr-api/createupdateevent"
    event_data = {
        "entityid": data.get('entityid'),
        "status": "active",
        "event_diseasemontoring": False,
        "event_symptoms": ["Dengue", "Headache", "Chest Pain"],
        "event_title": data.get('event_title'),
        "profile_id": data.get('doctor_id'),
        "str_event_date": data.get('event_date'),
        "event_descripton": data.get('event_descripton'),
        "visit_files": data.get('dms_file_list'),
        "doctor_id": "1421767671044-180707",
        "doctor_name": data.get("doctor_name"),
        "visit_descripton": data.get('event_descripton'),
        "received_from": "Desktop",
        "str_visit_date": data.get('event_date'),
        "diagnosis_desc": data.get('diagnosis')
    }
    import datetime
    event_date = datetime.datetime.strptime(event_data.get('str_event_date'),
                                            "%d/%m/%Y").strftime('%Y-%m-%d')

    if date_diff(event_date, nowdate()) >= 0:
        frappe.msgprint("Please sect valid date")

    else:
        response = get_response(url, json.dumps(event_data), request_type)

    return json.loads(response.text)
Пример #12
0
    def create_solr_profile(self):
        request_type = "POST"
        url = get_base_url() + 'createProvider'

        data = {
            "provider_type": self.provider_type,
            "name": self.provider_name,
            "specialization": self.specialization,
            "mobile": self.mobile_number,
            "email": self.email,
            "comments": '',
            "address1": self.address,
            "country": self.country,
            "city": self.city,
            "visiting_hours": '',
            "address2": self.address_2,
            "state": self.state,
            "pincode": self.pincode,
            'received_from': 'Desktop',
            "provider": True
        }

        from phr.phr.phr_api import get_response
        response = get_response(url, json.dumps(data), request_type)
        res = json.loads(response.text)

        if res['returncode'] == 129:
            self.provider_id = res['entityid']
Пример #13
0
def get_image_details(data):
	request_type="POST"
	url="%smobile/dms/getalleventfiles"%get_base_url()
	
	response=get_response(url, json.dumps({"profile_id":data.get('profile_id'), "event_id": data.get("event_id")}), request_type)
	res_data = json.loads(response.text)

	return res_data.get('filelist')
Пример #14
0
def get_visit_data(data):
	request_type="POST"
	url="%s/searchVisitByFilterparam"%get_base_url()
	from phr.phr.phr_api import get_response

	fields, values, tab= get_data_to_render(data)

	pos = 0

	for filed_dict in fields:
		pos =+ 1
		if 'rows' in filed_dict.keys(): 
			rows = filed_dict.get('rows')
			break

	data=json.loads(data)

	response=get_response(url, json.dumps({"profileId":data.get('profile_id'), "visit_date_from": data.get('visit_date_from'), "visit_date_to": data.get('visit_date_to')}), request_type)
	res_data = json.loads(response.text)

	url = "%s/phrdata/getprofilevisitfilecount"%get_base_url()

	response=get_response(url, json.dumps({"profile_id":data.get('profile_id')}), request_type)
	res_data1 = json.loads(response.text)

	event_count_dict = {}
	get_event_wise_count_dict(res_data1.get('FileCountData'), event_count_dict)

	if res_data.get('list'):
		for visit in res_data.get('list'):

			count_list = [0, 0, 0, 0, 0]

			data = ['<input  type="radio" name="visit" id = "%s"><div style="display:none">%s</div>'%(visit['entityid'], visit['entityid']),
					visit['visit_title'], visit['str_visit_date'], 
					visit['visit_descripton'], visit['doctor_name']]

			event_list_updater(visit['entityid'], event_count_dict, count_list, data)
			
			rows.extend([data])
	
	return {
		'rows': rows,
		'listview': fields,
		'page_size': 5
	}
Пример #15
0
def get_event_data(data):
	fields, values, tab = get_data_to_render(data)

	request_type="POST"
	url="%s/searchEventByFilterParam"%get_base_url()
	from phr.phr.phr_api import get_response

	pos = 0

	for filed_dict in fields:
		pos =+ 1
		if 'rows' in filed_dict.keys(): 
			rows = filed_dict.get('rows')
			break

	data=json.loads(data)
	profile_id = data.get('profile_id')
	
	response=get_response(url, json.dumps({"profileId":data.get('profile_id'),"event_date_from":data.get('event_date_from'),"event_date_to":data.get('event_date_to')}), request_type)
	res_data = json.loads(response.text)

	url = "%s/phrdata/getprofilefilecount"%get_base_url()
	response=get_response(url, json.dumps({"profile_id":data.get('profile_id')}), request_type)
	res_data1 = json.loads(response.text)

	event_count_dict = {}
	get_event_wise_count_dict(res_data1.get('FileCountData'), event_count_dict)

	if res_data.get('list'):
		for visit in res_data.get('list'):
			count_list = [0, 0, 0, 0, 0]
			if not visit.get("event_diseasemontoring"):
				data = ['<input type="radio" name="event" id = "%s" "><div style="display:none">%s</div>'%(visit['entityid'], visit['entityid']), 
						"""<a nohref id="%(entityid)s" onclick="Events.prototype.open_form('%(entityid)s', '%(event_title)s', '%(profile_id)s')"> %(event_title)s </a>"""%{"entityid": visit['entityid'],"event_title": visit['event_title'], "profile_id":profile_id}, 
						datetime.datetime.fromtimestamp(cint(visit['event_date'])/1000.0).strftime('%d/%m/%Y'), 
						"<div style='word-wrap: break-word;width:60%%;'>%s</div>"%' ,'.join(visit['event_symptoms'])]
				
				event_list_updater(visit['entityid'], event_count_dict, count_list, data)
				
				rows.extend([data])

	return {
		'rows': rows,
		'listview': fields,
		'page_size': 5
	}
Пример #16
0
def update_profile_solr(data):
	request_type="POST"
	url = "%s/updateProfile"%get_base_url()
	from phr.phr.phr_api import get_response
	response=get_response(url,data,request_type)
	res=json.loads(response.text)
	if res['returncode']=="102":
		return "Profile Updated Successfully"
Пример #17
0
def get_image_details(data):
	request_type="POST"
	url="%smobile/dms/getalleventfiles"%get_base_url()
	
	response=get_response(url, json.dumps({"profile_id":data.get('profile_id'), "event_id": data.get("event_id")}), request_type)
	res_data = json.loads(response.text)

	return res_data.get('filelist')
Пример #18
0
def create_profile_in_solr(args):
	request_type="POST"
	url = "%s/createProfile"%get_base_url()
	data=json.dumps(args)
	from phr.phr.phr_api import get_response
	response=get_response(url,data,request_type)
	print response
	return response.text
Пример #19
0
def write_file(data):
	print "write_file"
	request_type="POST"
	url="%sdms/getvisitsinglefile"%get_base_url()
	
	response=get_response(url, json.dumps(data), request_type)
	res_data = json.loads(response.text)

	return res_data
Пример #20
0
def write_file(data):
	print "write_file"
	request_type="POST"
	url="%sdms/getvisitsinglefile"%get_base_url()
	
	response=get_response(url, json.dumps(data), request_type)
	res_data = json.loads(response.text)

	return res_data
Пример #21
0
def update_profile_solr(data):
    request_type = "POST"
    url = "%s/updateProfile" % get_base_url()
    from phr.phr.phr_api import get_response
    response = get_response(url, data, request_type)
    res = json.loads(response.text)
    print res
    if res['returncode'] == "102":
        return "Profile Updated Successfully"
Пример #22
0
def search_profile_data_from_solr(profile_id):
    solr_op = 'admin/searchlinkprofile'
    url = get_base_url() + solr_op
    request_type = 'POST'
    data = {"profileId": profile_id}
    from phr.phr.phr_api import get_response
    response = get_response(url, json.dumps(data), request_type)
    res = json.loads(response.text)
    if res['returncode'] == 120:
        return res['list']
Пример #23
0
def create_profile_in_solr(args):
    request_type = "POST"
    # url="http://192.168.5.11:9090/phr/createProfile"
    url = "%s/createProfile" % get_base_url()
    # url="http://88.198.52.49:7974/phr/createProfile"
    data = json.dumps(args)
    print data
    from phr.phr.phr_api import get_response
    response = get_response(url, data, request_type)
    print response
    return response.text
Пример #24
0
def update_profile_solr(data):
    request_type = "POST"
    # url="http://192.168.5.11:9090/phr/updateProfile"
    url = "%s/updateProfile" % get_base_url()
    # url="http://88.198.52.49:7974/phr/updateProfile"
    from phr.phr.phr_api import get_response
    response = get_response(url, data, request_type)
    res = json.loads(response.text)
    print res
    if res['returncode'] == "102":
        return "Profile Updated Successfully"
Пример #25
0
def save_data_to_solr(args):
	request_type = "POST"
	url = get_base_url()+'updatedismonitoring'
	response = get_response(url,args,request_type)
	res = response.text
	if res:
		jsonobj=json.loads(res)
		if jsonobj['returncode']==132 or jsonobj['returncode']==133:
			dm=json.loads(args)
			sub="Disease Monitoring created"
			make_log(dm['profile_id'],"Disease Monitoring (CR)","create",sub)
Пример #26
0
def save_data_to_solr(args):
    request_type = "POST"
    url = get_base_url() + 'updatedismonitoring'
    response = get_response(url, args, request_type)
    res = response.text
    if res:
        jsonobj = json.loads(res)
        if jsonobj['returncode'] == 132 or jsonobj['returncode'] == 133:
            return "true"
        else:
            return "false"
Пример #27
0
def get_data_from_solr(profile_id):
    solr_op = 'getlatesteventvisitlistbyprofileid'
    url = get_base_url() + solr_op
    request_type = 'POST'
    data = {"profileId": profile_id, "rowCountLimit": 5}
    from phr.phr.phr_api import get_response
    response = get_response(url, json.dumps(data), request_type)
    res = json.loads(response.text)
    if res['returncode'] == 105:
        #frappe.errprint(res['actualdata'])
        return res['actualdata']
Пример #28
0
def get_existing_records_from_solr(profile_id, event_master_id):
    request_type = "POST"
    url = get_base_url() + 'getdiseasemtreventvisit'
    args = {"profile_id": profile_id, "event_master_id": event_master_id}
    response = get_response(url, json.dumps(args), request_type)
    res = response.text
    if res:
        jsonobj = json.loads(res)
        if jsonobj["returncode"] == 105:
            actdata = jsonobj["actualdata"]
            dmlist = json.loads(actdata)
            return dmlist[0]["disease_mtr_visit_List"]
Пример #29
0
def get_existing_records_from_solr(profile_id,event_master_id):
	request_type="POST"
	url=get_base_url()+'getdiseasemtreventvisit'
	args={"profile_id":profile_id,"event_master_id":event_master_id}
	response=get_response(url,json.dumps(args),request_type)
	res=response.text
	if res:
		jsonobj=json.loads(res)
		if jsonobj["returncode"]==105:
			actdata=jsonobj["actualdata"]
			dmlist=json.loads(actdata)
			return dmlist[0]["disease_mtr_visit_List"]
Пример #30
0
def get_linked_phrs(profile_id):
    from phr.templates.pages.patient import get_base_url
    solr_op = 'searchchildprofile'
    url = get_base_url() + solr_op
    request_type = 'POST'
    data = {"to_profile_id": profile_id}
    from phr.phr.phr_api import get_response
    response = get_response(url, json.dumps(data), request_type)
    res = json.loads(response.text)
    print res
    if res['returncode'] == 120:
        return res
Пример #31
0
def create_provider_in_solr(data):
    request_type = "POST"
    url = get_base_url() + 'createProvider'
    from phr.phr.phr_api import get_response
    response = get_response(url, data, request_type)
    res = json.loads(response.text)
    print res
    print res['returncode']
    if res['returncode'] == 129:
        link_provider(res, data)
        create_provider_master_entry(res, data)
        return res
Пример #32
0
def get_dm_data(dm):
    #conditions = get_conditions(filters)
    request_type = "POST"
    url = get_base_url() + 'admin/getalldiseasemtreventvisit'
    args = {"event_master_id": dm.name}
    response = get_response(url, json.dumps(args), request_type)
    res = response.text
    if res:
        jsonobj = json.loads(res)
        if jsonobj["returncode"] == 105:
            actdata = jsonobj["list"]
            #dmlist=json.loads(actdata)
            return actdata[0]["disease_mtr_visit_List"]
Пример #33
0
def get_dm_data(dm):
	#conditions = get_conditions(filters)
	request_type="POST"
	url=get_base_url()+'admin/getalldiseasemtreventvisit'
	args={"event_master_id":dm.name}
	response=get_response(url,json.dumps(args),request_type)
	res=response.text
	if res:
		jsonobj=json.loads(res)
		if jsonobj["returncode"]==105:
			actdata=jsonobj["list"]
			#dmlist=json.loads(actdata)
			return actdata[0]["disease_mtr_visit_List"]
Пример #34
0
def get_linked_phrs(profile_id):
    from phr.templates.pages.patient import get_base_url
    solr_op = 'phrdata/searchchildphr'
    url = get_base_url() + solr_op
    #url="http://192.168.5.11:9090/phr/phrdata/searchchildphr"
    request_type = 'POST'
    data = {"to_profile_id": profile_id}
    from phr.phr.phr_api import get_response
    response = get_response(url, json.dumps(data), request_type)
    res = json.loads(response.text)
    print res
    if res['returncode'] == 106:
        return res
Пример #35
0
def save_data_to_solr(args):
    request_type = "POST"
    url = get_base_url() + 'updatedismonitoring'
    response = get_response(url, args, request_type)
    res = response.text
    if res:
        jsonobj = json.loads(res)
        if jsonobj['returncode'] == 132 or jsonobj['returncode'] == 133:
            dm = json.loads(args)
            sub = "Disease Monitoring created"
            make_log(dm['profile_id'], "Disease Monitoring", "create", sub)
            return "true"
        else:
            return "false"
Пример #36
0
def create_provider_in_solr(data,profile_id):
	request_type="POST"
	url=get_base_url()+'createProvider'
	from phr.phr.phr_api import get_response
	response=get_response(url,data,request_type)
	res=json.loads(response.text)
	if res['returncode']==129:
		link_provider(res, data, profile_id)
		create_provider_master_entry(res, data)
		provider=json.loads(data)
		sub="created provider "+provider.get('name')
		make_log(profile_id,"provider","create",sub)
		return res
	return res
Пример #37
0
def get_patients_ids(doctype, txt, searchfield, start, page_len, filters):
    solr_op = 'admin/searchallprofile'
    url = get_base_url() + solr_op
    request_type = 'POST'
    data = {}
    from phr.phr.phr_api import get_response
    response = get_response(url, json.dumps(data), request_type)
    res = json.loads(response.text)
    profile_list = []
    profile_dic = {}
    if res['returncode'] == 120:
        for data in res['list']:
            profile_list.append(
                [data['entityid'], data['email'], data['person_firstname']])
    return profile_list
Пример #38
0
def update_profile_solr(data, dashboard=None):
    request_type = "POST"
    #url="http://88.198.52.49:7974/phr-api/updateProfile"
    url = get_base_url() + "/updateProfile"
    from phr.phr.phr_api import get_response
    response = get_response(url, data, request_type)
    res = json.loads(response.text)
    print res['returncode']
    p = json.loads(data)
    if res['returncode'] == 102:
        sub = "Profile Updated Successfully"
        make_log(p.get('entityid'), "profile", "update", sub)
        update_user_details(p)
        return "Profile Updated Successfully"
    else:
        return "Error While Updating Profile"
Пример #39
0
def create_provider_in_solr(data, profile_id):
    request_type = "POST"
    url = get_base_url() + 'createProvider'
    from phr.phr.phr_api import get_response
    response = get_response(url, data, request_type)
    res = json.loads(response.text)
    print res
    print res['returncode']
    if res['returncode'] == 129:
        link_provider(res, data, profile_id)
        create_provider_master_entry(res, data)
        provider = json.loads(data)
        sub = "created provider " + provider.get('name')
        make_log(profile_id, "provider", "create", sub)
        return res
    return res
Пример #40
0
def update_event(data):
	response = ''
	request_type="POST"
	url="%s/createupdateevent"%get_base_url()

	event_data =	{
			"entityid":data.get('entityid'),
			"event_complaint_list":[],
			"profile_owner_name": frappe.db.get_value('User', {'profile_id':data.get('profile_id')}, 'first_name'),
			"status": "active",
			"event_diseasemontoring": False,
			"event_symptoms" :data.get('complaints'),
			"event_title": data.get('event_title'),
			"profile_id": data.get('profile_id'),
			"str_event_date": data.get('event_date'),
			"event_descripton": data.get('event_descripton'),
			"visit_files": data.get('dms_file_list'),
			"doctor_id": data.get('doctor_id'),
			"doctor_name": data.get("doctor_name"),
			"visit_descripton": data.get('event_descripton'),
			"received_from": "Desktop",
			"str_visit_date": data.get('visit_date'),
			"diagnosis_desc": data.get('diagnosis_desc')
	}

	import datetime
	event_date = datetime.datetime.strptime(event_data.get('str_event_date'), "%d/%m/%Y").strftime('%Y-%m-%d')
	visit_date = datetime.datetime.strptime(event_data.get('str_visit_date'), "%d/%m/%Y").strftime('%Y-%m-%d')

	if date_diff(visit_date, nowdate()) > 0:
		frappe.msgprint("Visit Date could not be greater than current date")
		return {"exe":"Visit Date could not be greater than current date"}

	elif date_diff(visit_date, event_date) < 0:
		frappe.msgprint("Visit Date should not be less than Event Date")
		return {"exe":"Event Date should be past or current"}

	else:
		response=get_response(url, json.dumps(event_data), request_type)
		make_log(data.get('entityid'),"Event","Update","Event Updated")
		if data.get('cname'):
			text_msg = "%s Has Updated Event,\n\n Team Healthsnapp"%data.get('cname')
			email_msg = ""
			from phr.templates.pages.profile import notify_about_linked_phrs
			notify_about_linked_phrs(data.get('pid'),email_msg,text_msg,"Event",data.get('cname'))

	return json.loads(response.text)
Пример #41
0
def get_profile_list(data):
	print "in provider page p1"
	print data

	# fields, values, tab = get_data_to_render(data)

	# print fields


	request_type="POST"
	url="%s/sharephr/getprofilelistSharedFrom"%get_base_url()
	from phr.phr.phr_api import get_response

	pos = 0

	for filed_dict in fields:
		print filed_dict 
		pos =+ 1
		if 'rows' in filed_dict.keys(): 
			rows = filed_dict.get('rows')
			break

	data=json.loads(data)

	response=get_response(url, json.dumps({"to_profile_id":data.get('profile_id')}), request_type)

	print response.text
	if response.text:
		res_data = json.loads(response.text)

		to_profile = data.get('profile_id')

		if res_data.get('visitshareProfileList'):
			for profile in res_data.get('visitshareProfileList'):
				print profile.get("entityid"), profile.get("person_firstname"), profile.get("person_lastname")
				data = ['<a nohref id="%s"> %s %s </a>'%(profile.get("entityid"), profile.get("person_firstname"), profile.get("person_lastname"))]
				rows.extend([data])

	rows = get_dm_profiles(rows, to_profile)

	return {
		'rows': rows,
		'listview': fields,
		'page_size': 5
	}
Пример #42
0
def get_visit_data(filters):
	request_type="POST"
	url=get_base_url()+'admin/getvisitfilecount'
	args={"profileId":filters.profile_id}
	response=get_response(url,json.dumps(args),request_type)
	res=response.text
	visit_list=[]
	if res:
		jsonobj=json.loads(res)
		if jsonobj["returncode"]==139:
			for event in json.loads(jsonobj["list"]):
				event_count_dict={}
				visit_dic={}
				frappe.errprint(event)
				get_event_wise_count_dict(event.get('visitFileMapCount'), event_count_dict)
				count_list=event_list_updater(event['visit']['entityid'],event_count_dict)
				visit_dic={"event_name":event['visit']['event']['event_title'],"date":datetime.datetime.fromtimestamp(event['visit']['visit_date']/1e3).strftime('%d-%m-%Y'),"desc":event['visit']['visit_descripton'],"doc":event['visit']['doctor_name'],"1":count_list[0],"2":count_list[1],"3":count_list[2],"4":count_list[3],"5":count_list[4]}
				visit_list.append(visit_dic)
			return visit_list
Пример #43
0
def delink_phr_solr(data, id, profile_id, res):
    args = json.loads(res)
    solr_op = 'unlinkProfile'
    url = get_base_url() + solr_op
    request_type = 'POST'
    data["recieved_from"] = "Desktop"
    jsonobj = {
        "entityid": id,
        "linking_id": profile_id,
        "received_from": "Desktop",
        "mobile": args["mobile"],
        "email": args["email"]
    }
    from phr.phr.phr_api import get_response
    response = get_response(url, json.dumps(jsonobj), request_type)
    res = json.loads(response.text)
    print res
    if res['returncode'] == 121:
        return res
Пример #44
0
def get_visit_data(filters):
    request_type = "POST"
    url = get_base_url() + 'admin/getvisitfilecount'
    args = {"profileId": filters.profile_id}
    response = get_response(url, json.dumps(args), request_type)
    res = response.text
    visit_list = []
    if res:
        jsonobj = json.loads(res)
        if jsonobj["returncode"] == 139:
            for event in json.loads(jsonobj["list"]):
                event_count_dict = {}
                visit_dic = {}
                frappe.errprint(event)
                get_event_wise_count_dict(event.get('visitFileMapCount'),
                                          event_count_dict)
                count_list = event_list_updater(event['visit']['entityid'],
                                                event_count_dict)
                visit_dic = {
                    "event_name":
                    event['visit']['event']['event_title'],
                    "date":
                    datetime.datetime.fromtimestamp(
                        event['visit']['visit_date'] /
                        1e3).strftime('%d-%m-%Y'),
                    "desc":
                    event['visit']['visit_descripton'],
                    "doc":
                    event['visit']['doctor_name'],
                    "1":
                    count_list[0],
                    "2":
                    count_list[1],
                    "3":
                    count_list[2],
                    "4":
                    count_list[3],
                    "5":
                    count_list[4]
                }
                visit_list.append(visit_dic)
            return visit_list
Пример #45
0
def update_event(data):
	print "---------------update event---------------------"
	print data
	print "------------------------------------------------"
	response = ''
	request_type="POST"
	url="%s/createupdateevent"%get_base_url()

	event_data =	{
			"entityid":data.get('entityid'),
			"event_complaint_list":[],
			"profile_owner_name": frappe.db.get_value('User', {'profile_id':data.get('profile_id')}, 'first_name'),
			"status": "active",
			"event_diseasemontoring": False,
			"event_symptoms" :data.get('complaints'),
			"event_title": data.get('event_title'),
			"profile_id": data.get('profile_id'),
			"str_event_date": data.get('event_date'),
			"event_descripton": data.get('event_descripton'),
			"visit_files": data.get('dms_file_list'),
			"doctor_id": data.get('doctor_id'),
			"doctor_name": data.get("doctor_name"),
			"visit_descripton": data.get('event_descripton'),
			"received_from": "Desktop",
			"str_visit_date": data.get('visit_date'),
			"diagnosis_desc": data.get('diagnosis_desc')
	}

	import datetime
	event_date = datetime.datetime.strptime(event_data.get('str_event_date'), "%d/%m/%Y").strftime('%Y-%m-%d')
	
	if date_diff(event_date, nowdate()) > 0:
		frappe.msgprint("Please sect valid date")

	else:
		response=get_response(url, json.dumps(event_data), request_type)
		make_log(data.get('entityid'),"Event","Update","Event Updated")

	return json.loads(response.text)
Пример #46
0
def get_individual_event_count_for_badges(event_id,profile_id, req_id=None):
	if req_id:
		req_id = frappe.get_doc('Shared Requests', req_id)
		event_dict = json.loads(req_id.event_dict)
		sub_event_count = json.loads(req_id.sub_event_count)

	else:
		request_type="POST"
		url=get_base_url()+'admin/geteventfilecount'
		args={"profileId":profile_id,"eventId":event_id}
		response=get_response(url,json.dumps(args),request_type)
		res=response.text
		event_list=[]
		event_dict={}
		sub_event_count={}
		if res:
			jsonobj=json.loads(res)
			if jsonobj["returncode"]==139:
				event=json.loads(jsonobj["list"])
				event_wise_count_dict(event[0]['eventFileMapCount'], event_dict,sub_event_count)

	return get_count_dict(event_dict, sub_event_count)		
Пример #47
0
def get_profile_list(data):
	
	request_type="POST"
	url="%s/sharephr/getprofilelistSharedFrom"%get_base_url()
	from phr.phr.phr_api import get_response

	pos = 0

	for filed_dict in fields:
		print filed_dict 
		pos =+ 1
		if 'rows' in filed_dict.keys(): 
			rows = filed_dict.get('rows')
			break

	data=json.loads(data)

	response=get_response(url, json.dumps({"to_profile_id":data.get('profile_id')}), request_type)

	print response.text
	if response.text:
		res_data = json.loads(response.text)

		to_profile = data.get('profile_id')

		if res_data.get('visitshareProfileList'):
			for profile in res_data.get('visitshareProfileList'):
				print profile.get("entityid"), profile.get("person_firstname"), profile.get("person_lastname")
				data = ['<a nohref id="%s"> %s %s </a>'%(profile.get("entityid"), profile.get("person_firstname"), profile.get("person_lastname"))]
				rows.extend([data])

	rows = get_dm_profiles(rows, to_profile)

	return {
		'rows': rows,
		'listview': fields,
		'page_size': 5
	}
Пример #48
0
def get_patient_data(data):
	dms_files = []
	filelist = frappe.db.sql("select files_list from `tabShared Requests` where name = '%s'"%data.get('other_param').get('req_id'), as_list=1)[0][0]
	filelist = json.loads(filelist)

	data_dict ={"to_profile_id":data.get('profile_id'), 
		"received_from": "desktop", "from_profile_id": data.get('other_param').get('patient_profile_id'), 
		"event_tag_id": data.get('other_param').get('event_id')}
	
	for fl in filelist:
		fl = fl.split('files/')[1].split('/')
		file_dict = {"entityid": fl[4],
			"profile_id": fl[0],
			"event_id": fl[1]}

		file_dict['tag_id'] = fl[4] + '-' +  fl[2].split('-')[1] + fl[3].split('_')[1]
		file_dict["file_id"] = [fl[5].replace('-watermark', '')]

		file_dict['file_location'] = [os.path.join(os.getcwd(), get_site_path().replace('.',"")
									.replace('/', ""), 'public', 'files',
									data_dict.get('to_profile_id'), 
									data.get('other_param').get('req_id'), fl[1], fl[2], fl[3], fl[4])]

		frappe.create_folder(file_dict['file_location'][0])

		file_dict['file_location'] = [file_dict['file_location'][0] + '/' + file_dict["file_id"][0]]

		if not  os.path.exists(file_dict['file_location'][0]):
			dms_files.append(file_dict)

		request_type="POST"
		url="%s/dms/getvisitmultiplefile"%get_base_url()
		from phr.phr.phr_api import get_response
		print dms_files
		param = {"filelist": dms_files}
		response=get_response(url, json.dumps(param), request_type)
Пример #49
0
def get_event_info(event_id):
	request_type="POST"
	url = "%ssearchEvent"%get_base_url()
	response=get_response(url, json.dumps({"entityid":event_id}), request_type)
	return json.loads(response.text)["list"][0].get('event_title')
Пример #50
0
def share_via_providers_account(data):
	# frappe.errprint([data.get('files'), not data.get('files')])
	event_dict = {}
	sub_event_count = {}
	# return [event_dict, sub_event_count] 

	patient_name = frappe.db.get_value("User", {"profile_id":data.get('profile_id')}, 'concat(first_name, " ", last_name)') or  data.get('lphr_name')
	if not data.get('files'):
		event_data =	{
				"sharelist": [
						{
							"to_profile_id": data.get('doctor_id'),
							"received_from":"desktop",
							"from_profile_id": data.get('profile_id'),
							"event_tag_id": data.get('entityid') if not data.get('event_id') else data.get('event_id'),
							"access_type": "RDW",
							"str_start_date": datetime.datetime.strptime(nowdate(), '%Y-%m-%d').strftime('%d/%m/%Y'),
							"str_end_date": data.get('sharing_duration')
						}
					]
				}

		if data.get('event_id'):
			for shared_meta in event_data.get('sharelist'):
		 		shared_meta["visit_tag_id"] = data.get('entityid')
		 	url="%s/sharephr/sharemultiplevisit"%get_base_url()

		else:
			url="%s/sharephr/sharemultipleevent"%get_base_url()
		request_type="POST"
		
		response=get_response(url, json.dumps(event_data), request_type)
		
		files_list = get_files_doc(event_data, data, None, event_dict, sub_event_count)
		make_sharing_request(event_data, data, files_list, event_dict, sub_event_count)
		make_log(data.get('profile_id'),"Event","Shared Via Provider","Event Shared Via Provider")
		args = {"patient":patient_name,"duration":data.get('sharing_duration')}
		email_msg = "%(patient)s has shared Event with You which is accesible upto %(duration)s. \n\n Thank you. \n Team HealthSnapp."%args
		notify_provider(data.get('doctor_id'),data.get('profile_id'),"Event Share",args,email_msg)
		return eval(json.loads(response.text).get('sharelist'))[0].get('message_summary')

	else:
		sharelist = []
		file_path = []
		print "\n\n\n\n share event files \n\n\n", data.get('files')
		for fl in data.get('files'):
			file_path.append(fl)
			file_details = fl.split('/')
			sharelist.append({
				"to_profile_id": data.get('doctor_id'),
				"received_from":"desktop",
				"from_profile_id": data.get('profile_id'),
				"visit_tag_id": file_details[4],
				"event_tag_id": data.get('entityid') if not data.get('event_id') else data.get('event_id'),
				"tag_id": file_details[4] + '-' + cstr(file_details[2].split('-')[1]) + cstr(file_details[3].split('_')[1]) ,
				"file_id": [file_details[5].replace('-watermark', '')],
				"file_access": ['RW'],
				"str_start_date": datetime.datetime.strptime(nowdate(), '%Y-%m-%d').strftime('%d/%m/%Y'),
				"str_end_date": data.get('sharing_duration')
			})
			
		request_type="POST"
		url = "%s/sharephr/sharemultiplevisitfiles"%get_base_url()
		event_data = {'sharelist': sharelist}
		
		response=get_response(url, json.dumps(event_data), request_type)
		event_data['file_path'] = file_path

		files_list = get_files_doc(event_data, data, None, event_dict, sub_event_count)
		make_sharing_request(event_data, data, files_list, event_dict, sub_event_count)
		make_log(data.get('profile_id'),"Event","Shared Via Provider","Event Shared Via Provider")
		args = {"patient":patient_name,"duration":data.get('sharing_duration')}
		email_msg = "%(patient)s has shared Event with You which is accesible upto %(duration)s. \n\n Thank you.\n Team HealthSnapp."%args
		notify_provider(data.get('doctor_id'),data.get('profile_id'),"Event Share",args,email_msg)

		return json.loads(json.loads(response.text).get('sharelist'))[0].get('message_summary')