# -*- encoding=utf8 -*-
from air_case.public1.public1.public1 import get_branch_id, check_mcms_pur_sql, get_id, get_prov_id, get_create_time, \
    get_login_user_uxid_bydb, get_process_list2, compare_text_index
from common.db.sql.sql_get_info import sql_get_info
from common.fileUtls import FileUtils
from common.run_cmd_script import execute_command
from common.timeUtils import timeUtils

__author__ = "xiaohesheng"

"""
case_tag:api,b6_spd3_core_business_flow_database_check,a_a1_流程一外网企业注册审批,id2303,id2303-1,sit,on
内网:a_a1_流程一外网企业注册审批
python runner_test.py tag id2303-1 debug mdm3
"""

from common.common_func import commonFuc
from air_case.b1_herp3_login.登录内网系统.登录内网系统 import login_system
from airtest.core.api import using
import sys

def  check_company_regist_bill(type=1):
    if type==1:
        print('检查企业注册信息数据')
        branch_id = get_branch_id()
        sql1 = "select * from spd_ybtest_hdi.company_regist_bill order by create_time desc limit 1;"
        actual = check_mcms_pur_sql(sql1)
        print('actual', actual)
        id = get_id("select id from spd_ybtest_hdi.company_regist_bill order by create_time desc limit 1;")
        hos_id = get_id("select hos_id from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        prov_id = get_prov_id()
        sub_prov_id = get_id("select sub_prov_id from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        contact_way = get_id("select contact_way from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        contact_user = get_id("select contact_user from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        create_time = get_create_time("select create_time from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        # last_modified = get_create_time("select last_modified from spd_ybtest_hdi.supply_relation where id='%s';" % id)
        # username = commonFuc().get_business_data('b2_herp3_bs', "username")
        auditor = get_id("select auditor from spd_ybtest_hdi.supply_relation where id='%s';" % id)
        create_user = get_login_user_uxid_bydb(
            FileUtils().r_info8('b5_spd3_core_business_flow', '供货关系申请2', 'message')["e_username"])
        last_modified_user = get_id("select id from spd_ybtest_hdi.sys_user where user_code='test_1';")
        audit_time = get_create_time("select audit_time from spd_ybtest_hdi.supply_relation where id='%s';" % id)
        last_modified = get_create_time("select last_modified from spd_ybtest_hdi.supply_relation where id='%s';" % id)
        expected = commonFuc().get_business_data('b6_spd3_core_business_flow_database_check',
                                                 'company_regist_bill', id, hos_id, prov_id, sub_prov_id, contact_way
                                                 , contact_user, auditor, audit_time, create_user, create_time,
                                                 last_modified_user, last_modified)

        actual_value1 = get_process_list2(actual)
        expected_value1 = get_process_list2(expected)
        actual_value2 = actual_value1.replace(" ", "")
        expected_value2 = expected_value1.replace(" ", "")
        # print('actual_value2',actual_value2)
        print('expected_value2')
        print(expected_value2)
        print('actual_value2')
        print(actual_value2)
        result = (compare_text_index(actual_value2, expected_value2))
        print('result', result)
        if actual_value2 == expected_value2:
            print('ok')
            commonFuc().check_text_exist_result_text('succees', 'succees')
        else:
            print('error')
            commonFuc().check_text_exist_result_text('error', 'succees')
    else:
        print('检查医院注册信息数据')
        branch_id = get_branch_id()
        sql1 = "select * from spd_ybtest_hdi.company_regist_bill order by create_time desc limit 1;"
        actual = check_mcms_pur_sql(sql1)
        print('actual', actual)
        id = get_id("select id from spd_ybtest_hdi.company_regist_bill order by create_time desc limit 1;")
        hos_id = get_id("select hos_id from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        prov_id = get_prov_id()
        sub_prov_id = get_id("select sub_prov_id from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        contact_way = get_id("select contact_way from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        contact_user = get_id("select contact_user from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        create_time = get_create_time("select create_time from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        # last_modified = get_create_time("select last_modified from spd_ybtest_hdi.supply_relation where id='%s';" % id)
        # username = commonFuc().get_business_data('b2_herp3_bs', "username")
        auditor = get_id("select auditor from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        create_user = get_login_user_uxid_bydb(
            FileUtils().r_info8('b5_spd3_core_business_flow', '供货关系申请2', 'message')["e_username"])
        last_modified_user = get_id("select id from spd_ybtest_hdi.sys_user where user_code='test_1';")
        audit_time = get_create_time("select audit_time from spd_ybtest_hdi.supply_relation where id='%s';" % id)
        last_modified = get_create_time("select last_modified from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
        expected = commonFuc().get_business_data('b6_spd3_core_business_flow_database_check',
                                                 'company_regist_bill2', id, hos_id, prov_id, sub_prov_id, contact_way
                                                 , contact_user, auditor, audit_time, create_user, create_time,
                                                 last_modified_user, last_modified)

        actual_value1 = get_process_list2(actual)
        expected_value1 = get_process_list2(expected)
        actual_value2 = actual_value1.replace(" ", "")
        expected_value2 = expected_value1.replace(" ", "")
        # print('actual_value2',actual_value2)
        print('expected_value2')
        print(expected_value2)
        print('actual_value2')
        print(actual_value2)
        result = (compare_text_index(actual_value2, expected_value2))
        print('result', result)
        if actual_value2 == expected_value2:
            print('ok')
            commonFuc().check_text_exist_result_text('succees', 'succees')
        else:
            print('error')
            commonFuc().check_text_exist_result_text('error', 'succees')
def check_bas_company_info():
    print('检查bas_company_info数据')
    branch_id = get_branch_id()
    sql1 = "select * from spd_ybtest_hdi.bas_company_info order by create_time desc limit 1;"
    actual = check_mcms_pur_sql(sql1)
    print('actual', actual)
    id = get_id("select id from spd_ybtest_hdi.bas_company_info order by create_time desc limit 1;")
    hos_id = get_id("select hos_id from spd_ybtest_hdi.bas_company_info where id='%s';" % id)
    prov_id = get_prov_id()
    sub_prov_id = get_id("select sub_prov_id from spd_ybtest_hdi.bas_company_info where id='%s';" % id)
    contact_way = get_id("select contact_way from spd_ybtest_hdi.bas_company_info where id='%s';" % id)
    contact_user = get_id("select contact_user from spd_ybtest_hdi.bas_company_info where id='%s';" % id)
    create_time = get_create_time("select create_time from spd_ybtest_hdi.bas_company_info where id='%s';" % id)
    # last_modified = get_create_time("select last_modified from spd_ybtest_hdi.supply_relation where id='%s';" % id)
    # username = commonFuc().get_business_data('b2_herp3_bs', "username")
    auditor = get_id("select auditor from spd_ybtest_hdi.bas_company_info where id='%s';" % id)
    create_user = get_login_user_uxid_bydb(
        FileUtils().r_info8('b5_spd3_core_business_flow', '供货关系申请2', 'message')["e_username"])
    last_modified_user = get_id("select id from spd_ybtest_hdi.sys_user where user_code='test_1';")
    audit_time = get_create_time("select audit_time from spd_ybtest_hdi.supply_relation where id='%s';" % id)
    last_modified = get_create_time("select last_modified from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
    expected = commonFuc().get_business_data('b6_spd3_core_business_flow_database_check',
                                             'bas_company_info2', id, hos_id, prov_id, sub_prov_id, contact_way
                                             , contact_user, auditor, audit_time, create_user, create_time,
                                             last_modified_user, last_modified)

    actual_value1 = get_process_list2(actual)
    expected_value1 = get_process_list2(expected)
    actual_value2 = actual_value1.replace(" ", "")
    expected_value2 = expected_value1.replace(" ", "")
    # print('actual_value2',actual_value2)
    print('expected_value2')
    print(expected_value2)
    print('actual_value2')
    print(actual_value2)
    result = (compare_text_index(actual_value2, expected_value2))
    print('result', result)
    if actual_value2 == expected_value2:
        print('ok')
        commonFuc().check_text_exist_result_text('succees', 'succees')
    else:
        print('error')
        commonFuc().check_text_exist_result_text('error', 'succees')
def check_sys_org():
    print('检查sys_org数据')
    branch_id = get_branch_id()
    sql1 = "select * from spd_ybtest_hdi.sys_org order by create_time desc limit 1;"
    actual = check_mcms_pur_sql(sql1)
    print('actual', actual)
    id = get_id("select id from spd_ybtest_hdi.sys_org order by create_time desc limit 1;")
    hos_id = get_id("select hos_id from spd_ybtest_hdi.sys_org where id='%s';" % id)
    prov_id = get_prov_id()
    sub_prov_id = get_id("select sub_prov_id from spd_ybtest_hdi.sys_org where id='%s';" % id)
    contact_way = get_id("select contact_way from spd_ybtest_hdi.sys_org where id='%s';" % id)
    contact_user = get_id("select contact_user from spd_ybtest_hdi.sys_org where id='%s';" % id)
    create_time = get_create_time("select create_time from spd_ybtest_hdi.sys_org where id='%s';" % id)
    # last_modified = get_create_time("select last_modified from spd_ybtest_hdi.supply_relation where id='%s';" % id)
    # username = commonFuc().get_business_data('b2_herp3_bs', "username")
    auditor = get_id("select auditor from spd_ybtest_hdi.sys_org where id='%s';" % id)
    create_user = get_login_user_uxid_bydb(
        FileUtils().r_info8('b5_spd3_core_business_flow', '供货关系申请2', 'message')["e_username"])
    last_modified_user = get_id("select id from spd_ybtest_hdi.sys_user where user_code='test_1';")
    audit_time = get_create_time("select audit_time from spd_ybtest_hdi.sys_org where id='%s';" % id)
    last_modified = get_create_time("select last_modified from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
    expected = commonFuc().get_business_data('b6_spd3_core_business_flow_database_check',
                                             'sys_org2', id, hos_id, prov_id, sub_prov_id, contact_way
                                             , contact_user, auditor, audit_time, create_user, create_time,
                                             last_modified_user, last_modified)

    actual_value1 = get_process_list2(actual)
    expected_value1 = get_process_list2(expected)
    actual_value2 = actual_value1.replace(" ", "")
    expected_value2 = expected_value1.replace(" ", "")
    # print('actual_value2',actual_value2)
    print('expected_value2')
    print(expected_value2)
    print('actual_value2')
    print(actual_value2)
    result = (compare_text_index(actual_value2, expected_value2))
    print('result', result)
    if actual_value2 == expected_value2:
        print('ok')
        commonFuc().check_text_exist_result_text('succees', 'succees')
    else:
        print('error')
        commonFuc().check_text_exist_result_text('error', 'succees')
def check_sys_user():
    print('检查sys_user数据')
    branch_id = get_branch_id()
    sql1 = "select * from spd_ybtest_hdi.sys_user order by create_time desc limit 1;"
    actual = check_mcms_pur_sql(sql1)
    print('actual', actual)
    id = get_id("select id from spd_ybtest_hdi.sys_user order by create_time desc limit 1;")
    hos_id = get_id("select hos_id from spd_ybtest_hdi.sys_user where id='%s';" % id)
    prov_id = get_prov_id()
    sub_prov_id = get_id("select sub_prov_id from spd_ybtest_hdi.sys_user where id='%s';" % id)
    contact_way = get_id("select contact_way from spd_ybtest_hdi.sys_user where id='%s';" % id)
    contact_user = get_id("select contact_user from spd_ybtest_hdi.sys_user where id='%s';" % id)
    create_time = get_create_time("select create_time from spd_ybtest_hdi.sys_user where id='%s';" % id)
    # last_modified = get_create_time("select last_modified from spd_ybtest_hdi.supply_relation where id='%s';" % id)
    # username = commonFuc().get_business_data('b2_herp3_bs', "username")
    auditor = get_id("select auditor from spd_ybtest_hdi.sys_user where id='%s';" % id)
    create_user = get_login_user_uxid_bydb(
        FileUtils().r_info8('b5_spd3_core_business_flow', '供货关系申请2', 'message')["e_username"])
    last_modified_user = get_id("select id from spd_ybtest_hdi.sys_user where user_code='test_1';")
    audit_time = get_create_time("select audit_time from spd_ybtest_hdi.sys_user where id='%s';" % id)
    last_modified = get_create_time("select last_modified from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
    expected = commonFuc().get_business_data('b6_spd3_core_business_flow_database_check',
                                             'sys_user2', id, hos_id, prov_id, sub_prov_id, contact_way
                                             , contact_user, auditor, audit_time, create_user, create_time,
                                             last_modified_user, last_modified)

    actual_value1 = get_process_list2(actual)
    expected_value1 = get_process_list2(expected)
    actual_value2 = actual_value1.replace(" ", "")
    expected_value2 = expected_value1.replace(" ", "")
    # print('actual_value2',actual_value2)
    print('expected_value2')
    print(expected_value2)
    print('actual_value2')
    print(actual_value2)
    result = (compare_text_index(actual_value2, expected_value2))
    print('result', result)
    if actual_value2 == expected_value2:
        print('ok')
        commonFuc().check_text_exist_result_text('succees', 'succees')
    else:
        print('error')
        commonFuc().check_text_exist_result_text('error', 'succees')

def check_sys_user_role():
    print('检查sys_user_role数据')
    branch_id = get_branch_id()
    sql1 = "select * from spd_ybtest_hdi.sys_user_role order by create_time desc limit 1;"
    actual = check_mcms_pur_sql(sql1)
    print('actual', actual)
    id = get_id("select id from spd_ybtest_hdi.sys_user_role order by create_time desc limit 1;")
    hos_id = get_id("select hos_id from spd_ybtest_hdi.sys_user_role where id='%s';" % id)
    prov_id = get_prov_id()
    sub_prov_id = get_id("select sub_prov_id from spd_ybtest_hdi.sys_user_role where id='%s';" % id)
    contact_way = get_id("select contact_way from spd_ybtest_hdi.sys_user_role where id='%s';" % id)
    contact_user = get_id("select contact_user from spd_ybtest_hdi.sys_user_role where id='%s';" % id)
    create_time = get_create_time("select create_time from spd_ybtest_hdi.sys_user_role where id='%s';" % id)
    # last_modified = get_create_time("select last_modified from spd_ybtest_hdi.supply_relation where id='%s';" % id)
    # username = commonFuc().get_business_data('b2_herp3_bs', "username")
    auditor = get_id("select auditor from spd_ybtest_hdi.sys_user_role where id='%s';" % id)
    create_user = get_login_user_uxid_bydb(
        FileUtils().r_info8('b5_spd3_core_business_flow', '供货关系申请2', 'message')["e_username"])
    last_modified_user = get_id("select id from spd_ybtest_hdi.sys_user_role where user_code='test_1';")
    audit_time = get_create_time("select audit_time from spd_ybtest_hdi.sys_user_role where id='%s';" % id)
    last_modified = get_create_time("select last_modified from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
    expected = commonFuc().get_business_data('b6_spd3_core_business_flow_database_check',
                                             'sys_user_role2', id, hos_id, prov_id, sub_prov_id, contact_way
                                             , contact_user, auditor, audit_time, create_user, create_time,
                                             last_modified_user, last_modified)

    actual_value1 = get_process_list2(actual)
    expected_value1 = get_process_list2(expected)
    actual_value2 = actual_value1.replace(" ", "")
    expected_value2 = expected_value1.replace(" ", "")
    # print('actual_value2',actual_value2)
    print('expected_value2')
    print(expected_value2)
    print('actual_value2')
    print(actual_value2)
    result = (compare_text_index(actual_value2, expected_value2))
    print('result', result)
    if actual_value2 == expected_value2:
        print('ok')
        commonFuc().check_text_exist_result_text('succees', 'succees')
    else:
        print('error')
        commonFuc().check_text_exist_result_text('error', 'succees')
def check_sys_user_org():
    print('检查sys_user_org数据')
    branch_id = get_branch_id()
    sql1 = "select * from spd_ybtest_hdi.sys_user_org order by create_time desc limit 1;"
    actual = check_mcms_pur_sql(sql1)
    print('actual', actual)
    id = get_id("select id from spd_ybtest_hdi.sys_user_org order by create_time desc limit 1;")
    hos_id = get_id("select hos_id from spd_ybtest_hdi.sys_user_org where id='%s';" % id)
    prov_id = get_prov_id()
    sub_prov_id = get_id("select sub_prov_id from spd_ybtest_hdi.sys_user_org where id='%s';" % id)
    contact_way = get_id("select contact_way from spd_ybtest_hdi.sys_user_org where id='%s';" % id)
    contact_user = get_id("select contact_user from spd_ybtest_hdi.sys_user_org where id='%s';" % id)
    create_time = get_create_time("select create_time from spd_ybtest_hdi.sys_user_org where id='%s';" % id)
    # last_modified = get_create_time("select last_modified from spd_ybtest_hdi.supply_relation where id='%s';" % id)
    # username = commonFuc().get_business_data('b2_herp3_bs', "username")
    auditor = get_id("select auditor from spd_ybtest_hdi.sys_user_org where id='%s';" % id)
    create_user = get_login_user_uxid_bydb(
        FileUtils().r_info8('b5_spd3_core_business_flow', '供货关系申请2', 'message')["e_username"])
    last_modified_user = get_id("select id from spd_ybtest_hdi.sys_user_org where user_code='test_1';")
    audit_time = get_create_time("select audit_time from spd_ybtest_hdi.sys_user_org where id='%s';" % id)
    last_modified = get_create_time("select last_modified from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
    expected = commonFuc().get_business_data('b6_spd3_core_business_flow_database_check',
                                             'sys_user_org2', id, hos_id, prov_id, sub_prov_id, contact_way
                                             , contact_user, auditor, audit_time, create_user, create_time,
                                             last_modified_user, last_modified)

    actual_value1 = get_process_list2(actual)
    expected_value1 = get_process_list2(expected)
    actual_value2 = actual_value1.replace(" ", "")
    expected_value2 = expected_value1.replace(" ", "")
    # print('actual_value2',actual_value2)
    print('expected_value2')
    print(expected_value2)
    print('actual_value2')
    print(actual_value2)
    result = (compare_text_index(actual_value2, expected_value2))
    print('result', result)
    if actual_value2 == expected_value2:
        print('ok')
        commonFuc().check_text_exist_result_text('succees', 'succees')
    else:
        print('error')
        commonFuc().check_text_exist_result_text('error', 'succees')


def check_sys_user_login():
    print('检查sys_user_login数据')
    branch_id = get_branch_id()
    sql1 = "select * from spd_ybtest_hdi.sys_user_login order by create_time desc limit 1;"
    actual = check_mcms_pur_sql(sql1)
    print('actual', actual)
    id = get_id("select id from spd_ybtest_hdi.sys_user_login order by create_time desc limit 1;")
    hos_id = get_id("select hos_id from spd_ybtest_hdi.sys_user_login where id='%s';" % id)
    prov_id = get_prov_id()
    sub_prov_id = get_id("select sub_prov_id from spd_ybtest_hdi.sys_user_login where id='%s';" % id)
    contact_way = get_id("select contact_way from spd_ybtest_hdi.sys_user_login where id='%s';" % id)
    contact_user = get_id("select contact_user from spd_ybtest_hdi.sys_user_login where id='%s';" % id)
    create_time = get_create_time("select create_time from spd_ybtest_hdi.sys_user_login where id='%s';" % id)
    # last_modified = get_create_time("select last_modified from spd_ybtest_hdi.supply_relation where id='%s';" % id)
    # username = commonFuc().get_business_data('b2_herp3_bs', "username")
    auditor = get_id("select auditor from spd_ybtest_hdi.sys_user_login where id='%s';" % id)
    create_user = get_login_user_uxid_bydb(
        FileUtils().r_info8('b5_spd3_core_business_flow', '供货关系申请2', 'message')["e_username"])
    last_modified_user = get_id("select id from spd_ybtest_hdi.sys_user_login where user_code='test_1';")
    audit_time = get_create_time("select audit_time from spd_ybtest_hdi.sys_user_login where id='%s';" % id)
    last_modified = get_create_time("select last_modified from spd_ybtest_hdi.company_regist_bill where id='%s';" % id)
    expected = commonFuc().get_business_data('b6_spd3_core_business_flow_database_check',
                                             'sys_user_login2', id, hos_id, prov_id, sub_prov_id, contact_way
                                             , contact_user, auditor, audit_time, create_user, create_time,
                                             last_modified_user, last_modified)

    actual_value1 = get_process_list2(actual)
    expected_value1 = get_process_list2(expected)
    actual_value2 = actual_value1.replace(" ", "")
    expected_value2 = expected_value1.replace(" ", "")
    # print('actual_value2',actual_value2)
    print('expected_value2')
    print(expected_value2)
    print('actual_value2')
    print(actual_value2)
    result = (compare_text_index(actual_value2, expected_value2))
    print('result', result)
    if actual_value2 == expected_value2:
        print('ok')
        commonFuc().check_text_exist_result_text('succees', 'succees')
    else:
        print('error')
        commonFuc().check_text_exist_result_text('error', 'succees')
pro_path = commonFuc().get_pro_path2()
print('pro_path', pro_path)
sys.path.append(pro_path + r'/air_case/b5_spd3_core_business_flow/a_a1_流程一外网企业注册审批.air')
using(pro_path + r'//air_case/b5_spd3_core_business_flow/a_a1_流程一外网企业注册审批.air')
from a_a1_流程一外网企业注册审批 import test1,test2,test3

def main():
    test1()
    check_company_regist_bill(1)
    check_bas_company_info()
    test2()
    check_company_regist_bill(2)
    test3()
try:
    main()
    commonFuc().check_text_exist_result_text('succees','succees')
except:
    commonFuc().check_text_exist_result_text('error','succees')