{"version":3,"sources":["tplus-api/../src/api/TplusApi.ts"],"names":[],"mappings":"AAoEA,QAAA,MAAM,QAAQ,UAAgB,MAAM,UAAS,MAAM,iBAAgB,OAAO,WAAU,OAAO,UAAS,MAAM,uBAAuB,GAAG,KAAE,OAAO,CAAC,MAAM,GAAC,MAAM,CAY1J,CAAA;AAED,eAAe,QAAQ,CAAC","file":"TplusApi.d.ts","sourcesContent":["import axios from 'axios';\nvar QS = require('qs');\nimport tools from '../util/tools';\nimport User from '../model/User';\nimport UIConfirm from '../components/UIConfirm';\n//param post参数  method 方法  isJsonString 是否转换为json字符串  isFree 是否需要认证信息\nconst tplusAjaxReq = (param:object, method:string, isJsonString?:boolean, isFree?:boolean, query?:string , axiosRequestConfig?:any) =>{\n    param = param || {};\n    method = method || '';\n    isJsonString = isJsonString || false;\n\n    let requestObj = {};\n    //调用REST  传递的是单参数  String类型\n    if(true==isJsonString) {\n      requestObj = QS.stringify({\n        'Apis':JSON.stringify({\n          'Args':{\n            'Param':JSON.stringify(param)\n          },\n          'Method':method\n        })\n      });\n    } else {\n      requestObj = QS.stringify({\n          'Apis': JSON.stringify({\n              'Args': param,\n              'Method': method\n          })\n      });\n    }\n    \n    if(!User.isLogined()){\n      UIConfirm.show(`用户信息丢失,请保存当前操作数据后，重新登录!`,()=>{\n        User.logout(null,false);\n      });\n      return;\n    }\n    const user = User.restore();\n    let config = {baseURL: user.channel.targetURL};\n    if(axiosRequestConfig){\n      config = {...config,...axiosRequestConfig}\n    }\n    var ajax = axios.create(config);\n    var url = 'api/rest';\n    if(isFree){\n      url = url + '?IsFree=1&methodName='+method+'&userId='+user.userId +'&orgId='+user.orgId;\n    }else{\n      url = url + '?methodName='+method+'&userId='+user.userId +'&orgId='+user.orgId;\n    }\n    var user_req_id =`${user.userId}x${new Date().getTime().toString(16)}`;\n    url +=  '&user_req_id=' + user_req_id;\n    \n    if(query){\n      url += '&' + query;\n    }\n    const startTime = new Date().getTime();\n    return  ajax.post(url, requestObj)\n        .then(resp=>{\n            const endTime = new Date().getTime();\n            console.log(`tApi:请求接口[${method}]成功,消耗时间${endTime - startTime}ms,时间${tools.sysTime()}`);\n            return Promise.resolve(resp);\n        }).catch(err => {\n            const endTime = new Date().getTime();\n            console.error(`tApi:请求接口[${method}]失败,消耗时间${endTime - startTime}ms,时间${tools.sysTime()},错误信息->`,err);\n            return Promise.reject(err);\n        });\n}\n\nconst tplusApi = async (param:object, method:string, isJsonString?:boolean, isFree?:boolean, query?:string , axiosRequestConfig?:any):Promise<object|string> => {\n  const resp = await tplusAjaxReq(param,method,isJsonString,isFree, query, axiosRequestConfig);\n  if(resp == undefined){\n    return \"\";\n  }\n  let json = resp.data.Value;\n  if(typeof(json) == 'string'){\n    if(tools.isJsonStr(json)){\n      json = JSON.parse(resp.data.Value);\n    }\n  }\n  return json;\n}\n\nexport default tplusApi;"]}