コード例 #1
0
ファイル: __init__.py プロジェクト: SOLOSOFTMA/frappe_ioe_api
def remove(name):
    try:
        valid_auth_code()

        update_doc("Cloud Company", {"name": name, "enabled": 0})
        frappe.response.update({"ok": True, "message": "company_updated"})
    except Exception as ex:
        frappe.response.update({"ok": False, "error": str(ex)})
コード例 #2
0
ファイル: __init__.py プロジェクト: srdgame/frappe_ioe_api
def update():
    try:
        valid_auth_code()
        data = get_post_json_data()
        update_doc("IOT Device", data)
        frappe.response.update({"ok": True, "message": "device_updated"})
    except Exception as ex:
        frappe.response.update({"ok": False, "error": str(ex)})
コード例 #3
0
def update():
    try:
        valid_auth_code()
        data = get_post_json_data()

        companies = list_admin_companies(frappe.session.user)
        if frappe.get_value("IOT Application", data.get('name'),
                            'company') not in companies:
            throw("invalid_permission")
        update_doc("IOT Application", data)
        frappe.response.update({"ok": True, "message": "application_updated"})
    except Exception as ex:
        frappe.response.update({"ok": False, "error": str(ex)})
コード例 #4
0
def update(name, group_name, description, enabled=1):  #, user_list=None):
    try:
        valid_auth_code()
        if 'Company Admin' not in frappe.get_roles():
            throw("only_admin_can_update_group")

        company_name = frappe.get_value("Cloud Company Group", name, "company")
        if not company_name:
            throw("invalid_name")
        if frappe.get_value("Cloud Company", company_name,
                            "admin") != frappe.session.user:
            throw("not_admin_of_this_company")

        data = {
            "name": name,
            "group_name": group_name,
            "description": description,
            "enabled": enabled
        }
        post_data = get_post_json_data()
        user_list = post_data.get('user_list')
        if user_list is not None:
            data.update({"user_list": user_list})

        if user_list is not None and group_name == "root":
            company = frappe.get_value("Cloud Company Group", name, "company")
            users = [d.user for d in user_list]
            org_users = [
                d.name for d in frappe.get_all("Cloud Employee",
                                               filters={"company": company})
            ]

            for user in org_users:
                if user not in users:
                    frappe.delete_doc("Cloud Employee", user)
            for user in users:
                if user not in org_users:
                    doc = frappe.get_doc({
                        "doctype": "Cloud Employee",
                        "user": user,
                        "company": company
                    })
                    doc.insert(ignore_permissions=True)

        update_doc("Cloud Company Group", data)
        frappe.response.update({
            "ok": True,
            "message": "company_group_updated"
        })
    except Exception as ex:
        frappe.response.update({"ok": False, "error": str(ex)})
コード例 #5
0
ファイル: __init__.py プロジェクト: SOLOSOFTMA/frappe_ioe_api
def update(name, full_name, address, contact):
    try:
        valid_auth_code()

        update_doc(
            "Cloud Company", {
                "name": name,
                "full_name": full_name,
                "address": address,
                "contact": contact
            })
        frappe.response.update({"ok": True, "message": "company_updated"})
    except Exception as ex:
        frappe.response.update({"ok": False, "error": str(ex)})
コード例 #6
0
def update():
    try:
        valid_auth_code()
        data = get_post_json_data()
        if not data.get("name"):
            throw("object_name_missing")

        if not frappe.get_value("Cloud Company Requisition", data.get("name"),
                                "name"):
            throw("object_not_found")

        update_doc("Cloud Company Requisition", data)
        frappe.response.update({"ok": True, "message": "company_updated"})
    except Exception as ex:
        frappe.response.update({"ok": False, "error": str(ex)})
コード例 #7
0
def update():
    try:
        valid_auth_code()
        data = get_post_json_data()

        if 'star' in data:
            data.pop('star')

        if frappe.get_value("IOT Application", data.get('name'),
                            'developer') != frappe.session.user:
            throw("invalid_permission")

        update_doc("IOT Application", data)
        frappe.response.update({"ok": True, "message": "application_updated"})
    except Exception as ex:
        frappe.response.update({"ok": False, "error": str(ex)})
コード例 #8
0
def update():
    try:
        if frappe.request.method != "POST":
            throw("method_must_be_post")

        if 'Company Admin' not in frappe.get_roles():
            throw("not_company_admin")

        data = get_post_json_data()
        validate_owner(data.get("name"))

        update_doc("IOT User Application", data)
        frappe.response.update({
            "ok": True,
            "message": "configuration_updated"
        })
    except Exception as ex:
        frappe.response.update({"ok": False, "error": str(ex)})
コード例 #9
0
ファイル: groups.py プロジェクト: SOLOSOFTMA/frappe_ioe_api
def remove(name):
	try:
		valid_auth_code()
		if 'Company Admin' not in frappe.get_roles():
			throw("only_admin_can_remove_group")

		update_doc("Cloud Company Group", {
			"name": name,
			"enabled": 0
		})
		frappe.response.update({
			"ok": True,
			"message": "company_group_updated"
		})
	except Exception as ex:
		frappe.response.update({
			"ok": False,
			"error": str(ex)
		})
コード例 #10
0
def remove(name):
    try:
        valid_auth_code()
        if 'Company Admin' not in frappe.get_roles():
            throw("only_admin_can_remove_group")

        company_name = frappe.get_value("Cloud Company Group", name, "company")
        if not company_name:
            throw("invalid_name")
        if frappe.get_value("Cloud Company", company_name,
                            "admin") != frappe.session.user:
            throw("not_admin_of_this_company")

        update_doc("Cloud Company Group", {"name": name, "enabled": 0})
        frappe.response.update({
            "ok": True,
            "message": "company_group_updated"
        })
    except Exception as ex:
        frappe.response.update({"ok": False, "error": str(ex)})
コード例 #11
0
def update(name, title, comment):
    try:
        if frappe.request.method != "POST":
            throw("method_must_be_post")
        comment = str(comment).replace('\n', '<br>')

        doc = update_doc("IOT Application Comment", {
            "name": name,
            "title": title,
            "comment": comment
        })

        frappe.response.update({"ok": True, "data": as_dict(doc)})
    except Exception as ex:
        frappe.response.update({"ok": False, "error": str(ex)})
コード例 #12
0
def update(name, group_name, role):  #, users=None, devices=None):
    try:
        valid_auth_code()

        # TODO: Enable all employee to create/edit/delete for now!
        # if 'Company Admin' not in frappe.get_roles():
        # 	throw("only_admin_can_update_shared_group")

        data = {"name": name, "group_name": group_name, "role": role}
        post_data = get_post_json_data()
        users = post_data.get('users')
        if users is not None:
            data.update({"users": users})
        devices = post_data.get('devices')
        if devices is not None:
            data.update({"devices": devices})

        update_doc("IOT Share Group", data)
        frappe.response.update({
            "ok": True,
            "message": "company_shared_group_updated"
        })
    except Exception as ex:
        frappe.response.update({"ok": False, "error": str(ex)})