from TestData.automation.rule_test_data import ruleData rule_select_sql = f'select * from `rule_define` where brand_id = {ruleData.brandId} and status != 3 and tpl_id = "{ruleData.rule_parent_template_id}" and child_rule = 0' rule_select_result = ruleData.rule_db.select_many_value(sql=rule_select_sql) if rule_select_result: rule_num = len(rule_select_result) rule = rule_select_result[0] select_rule_id = rule['rule_id'] select_rule_name = rule['rule_name'] select_rule_status = rule['status'] select_rule_sort = str(rule['sorts']) select_rule_describe = rule['rule_describe'] else: insert_rule_raw = '{"ruleId":"%s","tplId":"%s","brandId":%s,"eventId":"%s","ruleName":"%s","status":%s,"ruleLogic":{"logicIf":{"ruleCond":{"condType":2,"robId":"%s","objName":"IncomingMessage","objType":"bool","compOperatorType":"eq","compOperatorValue":"true","logicType":"and"},"result":[{"ruleId":"%s","robId":"cjerr94uvd8ufj7e2os0","objName":"MarkAsSpam","objType":"bool","objKind":2,"objDescribe":"Mark as spam","objValue":"true","resultType":1}],"index":1}}}'%(ruleData.insert_rule_id,ruleData.rule_parent_template_id,ruleData.brandId,ruleData.rule_name,ruleData.rule_status,ruleData.event_id,ruleData.insert_rule_id) rule_insert_sql = f"""INSERT INTO willdesk.rule_define (rule_id,tpl_id,brand_id,event_id,rule_name,rule_describe,rule_dsl,rule_raw,sorts,parent_ruleid,child_rule,dsl_version,json_version,status,create_at,update_at) VALUES ('{ruleData.insert_rule_id}','{ruleData.rule_parent_template_id}',{ruleData.brandId},'{ruleData.event_id}','{ruleData.rule_name}','','cnVsZSAiY3A2M3VpdWVvbGE0amZqbGJoa2ciICJhdXRvdGVzdF9ydWxlIiBzYWxpZW5jZSAgJFJVTEVfU09SVFNfUExBQ0UkCmJlZ2luCmlmIGNoZWNrUnVsZUluZGV4KGRhdGEuUnVuSW5kZXhzLDEpIHx8ICgoZGF0YS5DaGVja0RhdGEoIkluY29taW5nTWVzc2FnZSIpICYmIGVxdWFsKGRhdGEuR2V0RGF0YSgiSW5jb21pbmdNZXNzYWdlIiksInRydWUiKSkpIHsKICByZXR1cm4gIlczc2ljblZzWlVsa0lqb2lZM0EyTTNWcGRXVnZiR0UwYW1acWJHSm9hMmNpTENKeWIySkpaQ0k2SW1OcVpYSnlPVFIxZG1RNGRXWnFOMlV5YjNNd0lpd2liMkpxVG1GdFpTSTZJazFoY210QmMxTndZVzBpTENKdlltcFVlWEJsSWpvaVltOXZiQ0lzSW05aWFrdHBibVFpT2pJc0ltOWlha1JsYzJOeWFXSmxJam9pVFdGeWF5QmhjeUJ6Y0dGdElpd2liMkpxVm1Gc2RXVWlPaUowY25WbElpd2ljbVZ6ZFd4MFZIbHdaU0k2TVgxZCIKfQpyZXR1cm4gIlczc2libTlrWlVsdVpHVjRJam94TENKeWRXeGxTV1FpT2lKamNEWXpkV2wxWlc5c1lUUnFabXBzWW1oclp5SXNJbkp2WWtsa0lqb2lZMnh6YldoamJqY3pkWFoyTm10eWNEaHNOVEFpTENKdlltcE9ZVzFsSWpvaVNXNWpiMjFwYm1kTlpYTnpZV2RsSWl3aWIySnFWSGx3WlNJNkltSnZiMndpTENKdlltcExhVzVrSWpveExDSnlaWE4xYkhSVWVYQmxJam94ZlYwPSIKZW5kCg==','{insert_rule_raw}',36180000,'',0,'v2','v2',{ruleData.rule_status},'2024-05-21 14:29:31','2024-05-21 14:30:02'); """ ruleData.rule_db.execute_sql(sql=rule_insert_sql) select_rule_id = ruleData.insert_rule_id select_rule_name = ruleData.rule_name select_rule_status = ruleData.rule_status rule_num = 1 select_rule_sort = '36180000' select_rule_describe = ruleData.rule_describe setattr(ruleData, 'select_rule_id', select_rule_id) setattr(ruleData, 'rule_num', rule_num) setattr(ruleData, 'select_rule_name', select_rule_name) setattr(ruleData, 'select_rule_status', select_rule_status) setattr(ruleData, 'select_rule_sort', select_rule_sort) setattr(ruleData, 'select_rule_describe', select_rule_describe) setattr(ruleData, 'rule_num_less', rule_num - 1) if getattr(ruleData, 'create_rule_id'): pass else: ruleData.create_rule_id = select_rule_id ruleData.rule_db.close_db()