8.1、business

loginRip.py

from rip_dictionary.rip_datacreate.base.request_method import RequestMethod
from rip_dictionary.rip_datacreate.base.read_ini import ReadIni
import unittest,json,jsonpath

class LoginRipBusiness():
    def __init__(self):
        self.req =RequestMethod()
        self.rd = ReadIni('ApiAddressConfig','publicParameters')

    def login(self):
        url = self.rd.get_value("rip_addr")+"/api/sysmgr/main/login"
        data =json.loads(self.rd.get_value("login_data"))
        headers=json.loads(self.rd.get_value("login_header"))
        rs = json.loads(self.req.run_main('post_json', url, "json", data, headers))
        rs_cood = jsonpath.jsonpath(rs,"$..code")[0]
        rs_tooken = jsonpath.jsonpath(rs,"$..data.tokenVO.token")[0]
        try:
            if rs_cood == '10000':
                return rs_tooken,True
            else:
                return False
        except Exception:
            return "登录失败!",False

if __name__ == '__main__':
    aa = LoginRipBusiness()
    b = aa.login()[0]
    print(b)
    print(type(b))

createUrl.py

from rip_dictionary.rip_datacreate.base.request_method import RequestMethod
from rip_dictionary.rip_datacreate.base.read_ini import ReadIni
from rip_dictionary.rip_datacreate.base.random_method import randomMethod
from rip_dictionary.rip_datacreate.business.loginRip import LoginRipBusiness
from rip_dictionary.rip_datacreate.dbmysql.db import DbHandle
from rip_dictionary.rip_datacreate.base.find_element import FindElement
import json, jsonpath


class createUrlBusiness():
    def __init__(self):
        self.req = RequestMethod()
        self.rd = ReadIni('ApiAddressConfig', 'publicParameters')
        self.random = randomMethod()
        self.token = LoginRipBusiness().login()[0]
        self.fd = json.loads(FindElement().get_configVal('db_rip','DBConnectConfig'))
        self.db = DbHandle(self.fd['host'],
                           self.fd['port'],
                           self.fd['user'],
                           self.fd['password'],
                           self.fd['database']
                          )

    def saveBaseInfo(self):
        url = self.rd.get_value("rip_addr") + "/api/datain/service/saveBaseInfo"
        data = {
            "serviceCode": self.random.get_random_code(),
            "serviceName": self.random.get_random_name(),
            "dataSourceId": 48,
            "providerName": "提供方测试",
            "serviceClass": "third",
            "accessType": "1",
            "accessWay": "1",
            "serviceLockConf": {
                "lockDimension": ""
            },
            "serviceInnerConfList": [{
                "paramName": "idCard",
                "paramType": "java.lang.String",
                "isMust": "0",
                "chineseName": "身份证号",
                "valueThird": "1"
            }, {
                "paramName": "name",
                "paramType": "java.lang.String",
                "isMust": "0",
                "chineseName": "姓名",
                "valueThird": "1"
            }, {
                "paramName": "mobile",
                "paramType": "java.lang.String",
                "isMust": "0",
                "chineseName": "手机号码",
                "valueThird": "1"
            }],
            "minValidity": 168
        }
        headers = {
            "Content-Type": "application/json",
            "X-AUTH-TOKEN": self.token,
            "token": self.token
        }
        rs = json.loads(self.req.run_main('post_json', url, "json", data, headers))
        self.rs_id = jsonpath.jsonpath(rs, "$..data.id")[0]
        rs_cood = jsonpath.jsonpath(rs, "$..code")[0]
        try:
            if rs_cood == '10000':
                return True
            else:
                return "得助url接入:saveBaseInfo接口调用失败!",False
        except Exception:
            return "得助url接入:saveBaseInfo接口调用失败!", False
    def accessconf(self):
        url = self.rd.get_value("rip_addr") + "/api/datain/service/accessConf/save/{}/1".format(self.rs_id)
        data = {
            "serviceAccessConf": {
                "isAuth": 0,
                "microserviceId": None,
                "connectTimeout": 3000,
                "readTimeout": 10000,
                "httpMethod": "1",
                "url": "www.baidu.com"
            },
            "outParmListMap": {
                "QueryString": [],
                "json": [],
                "Header": [{
                    "paramType": "java.lang.String",
                    "valueThird": "1",
                    "paramName": "uniqueId",
                    "chineseName": "唯一id",
                    "encodeType": "1",
                    "valueType": "1",
                    "valueCurrency": "applyNo",
                    "readonly": True,
                    "saved": True
                }],
                "plugin": [],
                "bodykv": []
            },
            "serviceResult": {
                "saveType": "0",
                "mysqlSaveTime": "",
                "thirdMsgScript": "test",
                "templateParam": None,
                "convertScript": "",
                "thirdCodeScript": "test",
                "serialNumber": "test",
                "resConvert": ""
            },
            "convertTableVoList": [{
                "tableName": "TEST_ABCDEF_BASIC",
                "tableSource": "2",
                "tableType": "single",
                "_tableName": "TEST_ABCDEF_BASIC",
                "tableChineseName": "1234567890",
                "resultConvertList": [{
                    "valueConvert": "$.idunqf",
                    "tableField": "id_unqf",
                    "fieldDescribe": "报告id",
                    "fieldType": "java.lang.String",
                    "readonly": True
                }, {
                    "valueConvert": "$.serialNumber",
                    "tableField": "serial_number",
                    "fieldDescribe": "查询流水号",
                    "fieldType": "java.lang.String",
                    "readonly": True
                }, {
                    "valueConvert": "$.codeValid",
                    "tableField": "code_valid",
                    "fieldDescribe": "查询有效标识",
                    "fieldType": "java.lang.String",
                    "readonly": True
                }, {
                    "valueConvert": "$.thirdpartCode",
                    "tableField": "code",
                    "fieldDescribe": "三方响应码",
                    "fieldType": "java.lang.String",
                    "readonly": True
                }, {
                    "valueConvert": "$.thirdpartMsg",
                    "tableField": "message",
                    "fieldDescribe": "三方响应码描述",
                    "fieldType": "java.lang.String",
                    "readonly": True
                }, {
                    "valueConvert": "func(arg):{ return now(\"yyyy-MM-dd HH:mm:ss\"); }",
                    "tableField": "time_inst",
                    "fieldDescribe": "创建时间",
                    "fieldType": "java.lang.String",
                    "readonly": True
                }]
            }, {
                "tableName": "TEST_ABCDEF_REF",
                "tableSource": "3",
                "tableType": "single",
                "_tableName": "TEST_ABCDEF_REF",
                "tableChineseName": "123456789",
                "resultConvertList": [{
                    "valueConvert": "$.basicRowkey",
                    "tableField": "transId",
                    "fieldDescribe": "basic表rowkey",
                    "fieldType": "java.lang.String",
                    "readonly": True
                }]
            }, {
                "tableName": "TEST_ABCDEF_RESULT",
                "tablePath": "$",
                "tableSource": "1",
                "tableType": "single",
                "_tableName": "TEST_ABCDEF_RESULT",
                "tableChineseName": "12345678",
                "resultConvertList": [{
                    "valueConvert": "$.pk_id",
                    "tableField": "pk_id",
                    "keyIndex": "PK",
                    "fieldDescribe": "主键",
                    "fieldType": "java.lang.String",
                    "readonly": False
                }, {
                    "valueConvert": "$.idunqf",
                    "tableField": "id_unqf",
                    "fieldDescribe": "报告id",
                    "fieldType": "java.lang.String",
                    "readonly": False
                }, {
                    "valueConvert": "$.data.name",
                    "tableField": "name",
                    "fieldMapping": "ss",
                    "fieldDescribe": "姓名",
                    "fieldType": "java.lang.String",
                    "fieldPrecision": "1",
                    "readonly": False
                }, {
                    "valueConvert": "$.data.idCard",
                    "tableField": "idCard",
                    "fieldMapping": "ss",
                    "fieldDescribe": "身份证号",
                    "fieldType": "java.lang.String",
                    "fieldPrecision": "1",
                    "readonly": False
                }, {
                    "valueConvert": "$data.mobile",
                    "tableField": "mobile",
                    "fieldMapping": "ss",
                    "fieldDescribe": "手机号",
                    "fieldType": "java.lang.String",
                    "fieldPrecision": "1",
                    "readonly": False
                }, {
                    "valueConvert": "$data.mobile2",
                    "tableField": "mobile2",
                    "fieldMapping": "ss",
                    "fieldDescribe": "手机号",
                    "fieldType": "java.lang.String",
                    "fieldPrecision": "1",
                    "readonly": False
                }, {
                    "valueConvert": "func(arg):{ return now(\"yyyy-MM-dd HH:mm:ss\"); }",
                    "tableField": "time_inst",
                    "fieldDescribe": "创建时间",
                    "fieldType": "java.lang.String",
                    "readonly": False
                }]
            }, {
                "tableName": "TEST_ABCDEF_RESULT_01",
                "tablePath": "$",
                "tableSource": "1",
                "tableType": "single",
                "_tableName": "TEST_ABCDEF_RESULT_01",
                "tableChineseName": "1234567",
                "resultConvertList": [{
                    "valueConvert": "$.pk_id",
                    "tableField": "pk_id",
                    "keyIndex": "PK",
                    "fieldDescribe": "主键",
                    "fieldType": "java.lang.String",
                    "readonly": False
                }, {
                    "valueConvert": "$.idunqf",
                    "tableField": "id_unqf",
                    "fieldDescribe": "报告id",
                    "fieldType": "java.lang.String",
                    "readonly": False
                }, {
                    "valueConvert": "$.data.content.ruleDecision.inout.qq",
                    "tableField": "qq",
                    "fieldMapping": "aa",
                    "fieldDescribe": "借款人QQ",
                    "fieldType": "java.lang.String",
                    "fieldPrecision": "1",
                    "readonly": False
                }, {
                    "valueConvert": "$.data.idUnqp",
                    "tableField": "data_id_unqp",
                    "fieldMapping": "bb",
                    "fieldDescribe": "单号",
                    "fieldType": "java.lang.String",
                    "fieldPrecision": "1",
                    "readonly": False
                }, {
                    "valueConvert": "func(arg):{ return now(\"yyyy-MM-dd HH:mm:ss\"); }",
                    "tableField": "time_inst",
                    "fieldDescribe": "创建时间",
                    "fieldType": "java.lang.String",
                    "readonly": False
                }]
            }],
            "serviceResultMappings": [{
                "statusCode": "10000",
                "chineseName": "成功有数据",
                "valueThird": "1",
                "convertScript": "test"
            }, {
                "statusCode": "10001",
                "chineseName": "成功无数据",
                "valueThird": "1",
                "convertScript": "test"
            }],
            "serviceAccess4AuthVo": {
                "serviceAccessConf": {
                    "connectTimeout": 3000,
                    "readTimeout": 10000,
                    "authRetryCount": 2,
                    "authValidity": 0,
                    "microserviceId": None,
                    "httpMethod": "1",
                    "url": ""
                },
                "serviceResultMappings": [{}],
                "serviceAuthResults": [{}],
                "outParmListMap": {
                    "QueryString": [],
                    "json": [],
                    "Header": [],
                    "bodykv": []
                }
            },
            "servicePropConfs": [],
            "accessType": "1"
        }

        headers = {"Content-Type": "application/json", "X-AUTH-TOKEN": self.token, "token": self.token}
        rs = json.loads(self.req.run_main('post_json', url, "json", data, headers))
        rs_cood = jsonpath.jsonpath(rs, "$..code")[0]
        try:
            if rs_cood == '10000':
                return True
            else:
                return "得助url接入:accessconf接口调用失败!",False
        except Exception:
            return "得助url接入:accessconf接口调用失败!", False
    def resultexample(self):
        url = self.rd.get_value("rip_addr") + "/api/datain/service/resultExample/save/{}".format(self.rs_id)
        data = {
            "id": self.rs_id,
            "resultDemo": "{\"code\":10000,\"message\":\"成功\",\"data\":{\"TEST_ABCDEFG_BASIC\":{\"id_unqf\":\"\",\"serial_number\":\"\",\"code_valid\":\"\",\"code\":\"\",\"message\":\"\",\"time_inst\":\"\"},\"TEST_ABCDEFG_REF\":{\"transId\":\"\"},\"TEST_ABCDEFG_RESULT_01\":{\"pk_id\":\"\",\"id_unqf\":\"\",\"qq\":\"\",\"data_id_unqp\":\"\",\"time_inst\":\"\"},\"TEST_ABCDEFG_RESULT\":{\"pk_id\":\"\",\"id_unqf\":\"\",\"name\":\"\",\"idCard\":\"\",\"mobile\":\"\",\"mobile2\":\"\",\"time_inst\":\"\"}}}"
        }
        headers = {"Content-Type": "application/json", "X-AUTH-TOKEN": self.token, "token": self.token}
        rs = json.loads(self.req.run_main('post_json', url, "json", data, headers))
        rs_cood = jsonpath.jsonpath(rs, "$..code")[0]
        try:
            if rs_cood == '10000':
                return True
            else:
                return "得助url接入:resultexample接口调用失败!",False
        except Exception:
            return "得助url接入:resultexample接口调用失败!", False
    def creaturl(self):
        flag_saveBase = self.saveBaseInfo()
        if flag_saveBase:
            flag_accessconf = self.accessconf()
            if flag_accessconf:
                fLag_resultexampl = self.resultexample()
                if fLag_resultexampl:
                    return True
                else:
                    return False
            else:
                return False
        else:
            return False
    def rip_sql(self):
        rip_id =self.db.ripdata()
        if rip_id == self.rs_id:
            return True
        else:
            return False

if __name__ == '__main__':
    aa = createUrlBusiness()
    ab = aa.creaturl()
    cc = aa.rip_sql()
    print(cc)

 

posted @ 2021-10-26 13:55  东北小酱  阅读(67)  评论(0)    收藏  举报