def tearDown_test_QYTXL_0004():
        """恢复环境"""

        fail_time = 0
        while fail_time < 5:
            try:
                Preconditions.make_already_in_message_page()
                mp = MessagePage()
                mp.open_workbench_page()
                wbp = WorkbenchPage()
                Preconditions.delete_department_by_name("admin_department1")
                Preconditions.delete_department_by_name("admin_department2")
                workbench_name = wbp.get_workbench_name()
                # 查找并点击所有展开元素
                wbp.find_and_click_open_element()
                # 解决用户部门变更后不能及时刷新的问题
                wbp.click_company_contacts()
                ecp = EnterpriseContactsPage()
                ecp.wait_for_page_load()
                if ecp.is_exist_department_by_name(workbench_name):
                    ecp.click_corporate_by_name(workbench_name)
                time.sleep(2)
                ecp.click_back()
                time.sleep(2)
                if ecp.is_exist_department_name():
                    ecp.click_back()
                wbp.wait_for_workbench_page_load()
                return
            except:
                fail_time += 1
    def test_QYTXL_0003(self):
        """用户在企业部门下又在企业子一层级中,直接进入企业层级"""

        wbp = WorkbenchPage()
        # 添加本机号码到指定部门
        department_name = "admin_department"
        Preconditions.add_phone_number_to_department(department_name)
        # 添加本机号码到和通讯录
        Preconditions.add_phone_number_to_he_contacts()
        workbench_name = wbp.get_workbench_name()
        # 解决用户部门变更后不能及时刷新的问题
        wbp.click_company_contacts()
        ecp = EnterpriseContactsPage()
        ecp.wait_for_page_load()
        time.sleep(2)
        ecp.click_back()
        time.sleep(2)
        if ecp.is_exist_department_name():
            ecp.click_back()
        wbp.wait_for_workbench_page_load()
        wbp.click_company_contacts()
        ecp.wait_for_page_load()
        # 1.是否直接进入企业层级:企业+部门名称
        self.assertEquals(ecp.is_exist_corporate_grade(), False)
        self.assertEquals(ecp.is_exist_department_by_name(workbench_name),
                          True)
        self.assertEquals(ecp.is_exist_department_by_name(department_name),
                          True)
        ecp.click_back()
        wbp.wait_for_workbench_page_load()
    def test_QYTXL_0004(self):
        """用户同时在两个部门下直接进入企业层级"""

        wbp = WorkbenchPage()
        # 添加本机号码到指定部门1
        department_name1 = "admin_department1"
        Preconditions.add_phone_number_to_department(department_name1)
        # 添加本机号码到指定部门2
        department_name2 = "admin_department2"
        Preconditions.add_phone_number_to_department(department_name2)
        workbench_name = wbp.get_workbench_name()
        # 解决用户部门变更后不能及时刷新的问题
        wbp.click_company_contacts()
        ecp = EnterpriseContactsPage()
        ecp.wait_for_page_load()
        time.sleep(2)
        ecp.click_back()
        time.sleep(2)
        if ecp.is_exist_department_name():
            ecp.click_back()
        wbp.wait_for_workbench_page_load()
        wbp.click_company_contacts()
        ecp.wait_for_page_load()
        # 1.跳转后是否显示企业层级:企业+部门名称(部门随机显示一个)
        self.assertEquals(ecp.is_exist_corporate_grade(), False)
        self.assertEquals(ecp.is_exist_department_by_name(workbench_name),
                          True)
        self.assertEquals(
            (ecp.is_exist_department_by_name(department_name1)
             or ecp.is_exist_department_by_name(department_name2)), True)
        ecp.click_back()
        wbp.wait_for_workbench_page_load()
    def test_QYTXL_0002(self):
        """用户在企业部门下直接进入企业层级"""

        wbp = WorkbenchPage()
        # 添加本机号码到指定部门
        department_name = "admin_department"
        Preconditions.add_phone_number_to_department(department_name)
        workbench_name = wbp.get_workbench_name()
        # 解决用户部门变更后不能及时刷新的问题
        wbp.click_company_contacts()
        ecp = EnterpriseContactsPage()
        ecp.wait_for_page_load()
        time.sleep(2)
        ecp.click_back()
        time.sleep(2)
        if ecp.is_exist_department_name():
            ecp.click_back()
        wbp.wait_for_workbench_page_load()
        wbp.click_company_contacts()
        ecp.wait_for_page_load()
        # 1.是否直接进入企业层级:企业+部门名称
        self.assertEquals(ecp.is_text_present(workbench_name), True)
        result = ecp.is_text_present(department_name)
        self.assertEquals(result, True)