|
@@ -0,0 +1,175 @@
|
|
|
+//执行一个创建黑岩链接任务
|
|
|
+const CMD = {}
|
|
|
+const axios = require('axios');
|
|
|
+let get_hy_recharge_template = require('../src/api/hy/get_hy_recharge_template')
|
|
|
+let get_hy_paid_point = require('../src/api/hy/get_hy_paid_point')
|
|
|
+let get_hy_call_back_template = require('../src/api/hy/get_hy_call_back_template');
|
|
|
+const tools = require('../tools');
|
|
|
+const HttpClient = require('../src/HttpClient');
|
|
|
+const helper = require('../src/helper');
|
|
|
+const config = require('../etc/config.json')
|
|
|
+//卡点
|
|
|
+function get_paid_point(book_id,kadian_name,call_back){
|
|
|
+ let chapter_num = parseInt(kadian_name)
|
|
|
+ if(chapter_num==0||chapter_num>10){
|
|
|
+ return call_back("")
|
|
|
+ }
|
|
|
+ get_hy_paid_point.get_hy_paid_point(book_id,(data)=>{
|
|
|
+ if(chapter_num>=data.rows.length){
|
|
|
+ call_back("")
|
|
|
+ }else{
|
|
|
+ call_back(""+chapter_num)
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+//回传
|
|
|
+function get_call_back(huichuan_name,call_back){
|
|
|
+ get_hy_call_back_template.get_callback_template((data)=>{
|
|
|
+ if(data.code==200){
|
|
|
+ let is_find = false
|
|
|
+ for (let index = 0; index < data.data.length; index++) {
|
|
|
+ const obj = data.data[index];
|
|
|
+ if(obj.value==huichuan_name){
|
|
|
+ is_find = true
|
|
|
+ call_back(obj.key)
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(!is_find){
|
|
|
+ call_back('6')
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ call_back('6')
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+function get_recharge_template(book_id,chongzhi_name,call_back){
|
|
|
+ get_hy_recharge_template.get_recharge_template(book_id,(data)=>{
|
|
|
+ if(data.code==200){
|
|
|
+ let is_find = false
|
|
|
+ for (let index = 0; index < data.data.length; index++) {
|
|
|
+ const obj = data.data[index];
|
|
|
+ if(obj.value==chongzhi_name){
|
|
|
+ is_find = true
|
|
|
+ call_back(obj.key)
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(!is_find){
|
|
|
+ call_back('0')
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ call_back('0')
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+CMD.runTask = function(data,main_info,PlatformInfo,call_back){
|
|
|
+ let group_id = main_info.group_id
|
|
|
+ if(group_id==null||group_id==""){
|
|
|
+ group_id = "35"
|
|
|
+ }
|
|
|
+ let tg_link_config = JSON.parse(main_info.tg_link_config)
|
|
|
+ let kadian_id = tg_link_config['kadian_id']
|
|
|
+ // let chongzhi_id = tg_link_config['chongzhi_id']
|
|
|
+ let huichuan_id = tg_link_config['huichuan_id']
|
|
|
+ // let chongzhi_list = JSON.parse(PlatformInfo.chongzhi)
|
|
|
+ let huichuan_list = JSON.parse(PlatformInfo.huichuan)
|
|
|
+ let kadian_list = JSON.parse(PlatformInfo.kadian)
|
|
|
+ let chongzhi_name = null
|
|
|
+ let huichuan_name = null
|
|
|
+ let kadian_name = null
|
|
|
+ let tg_config = {
|
|
|
+ chongzhi_key:'',
|
|
|
+ huichuan_key:'',
|
|
|
+ kadian_key:''
|
|
|
+ }
|
|
|
+
|
|
|
+ for (let index = 0; index < huichuan_list.length; index++) {
|
|
|
+ const hc_obj = huichuan_list[index];
|
|
|
+ if(hc_obj.id==huichuan_id){
|
|
|
+ huichuan_name = hc_obj.name
|
|
|
+ tg_config.huichuan_key = hc_obj.value
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ for (let index = 0; index < kadian_list.length; index++) {
|
|
|
+ const kd_obj = kadian_list[index];
|
|
|
+ if(kd_obj.id==kadian_id){
|
|
|
+ kadian_name = kd_obj.name
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ let create_hy_link = async () =>{
|
|
|
+
|
|
|
+ let passBackTemplateId = tg_config.huichuan_key; //回传模板
|
|
|
+ let paidPoint = tg_config.kadian_key; //卡点
|
|
|
+ console.log("tg_config:",tg_config,group_id)
|
|
|
+ try{
|
|
|
+ let clinet = new HttpClient()
|
|
|
+ const postData = {
|
|
|
+ cmd:"create_link",
|
|
|
+ name:data.product_name,
|
|
|
+ bookId:data.product_id,
|
|
|
+ adpassBackTemplateId:passBackTemplateId,
|
|
|
+ paidPoint:paidPoint,
|
|
|
+ token:await tools.getHyToken()
|
|
|
+ };
|
|
|
+ let t_data = {
|
|
|
+ "name": `${postData.name}_${main_info.id}`,
|
|
|
+ "bookId": postData.bookId,
|
|
|
+ "passBackTemplateId": "",
|
|
|
+ "adPassbackTemplateId": postData.adpassBackTemplateId,
|
|
|
+ "topUpTemplateId": '0',
|
|
|
+ "mediaChannel": "1",
|
|
|
+ "group": group_id,
|
|
|
+ "paidPoint": postData.paidPoint,
|
|
|
+ "site": PlatformInfo.mini_program_platform_id==config.wx?"7": "5"
|
|
|
+ }
|
|
|
+
|
|
|
+ console.log("t_data:",t_data)
|
|
|
+
|
|
|
+ let res = await clinet.otherPost( helper.getHyCreateLinkOpt(postData.token) ,t_data)
|
|
|
+ if(res['code']==500){
|
|
|
+ throw res
|
|
|
+ }
|
|
|
+
|
|
|
+ if(res['code']==10001){
|
|
|
+ console.log("作品不存在:",data)
|
|
|
+ throw res
|
|
|
+ }
|
|
|
+ if(res['code']!=200){
|
|
|
+ throw res
|
|
|
+ }
|
|
|
+
|
|
|
+ let response = {
|
|
|
+ "message": "create_link successfully",
|
|
|
+ "received_data":{
|
|
|
+ "appId":res["data"]["appId"],
|
|
|
+ "launchPath":res["data"]["launchPath"],
|
|
|
+ "fullPath":res["data"]["fullPath"],
|
|
|
+ "wxMountLink":res["data"]["wxMountLink"]}
|
|
|
+ }
|
|
|
+ let params = response.received_data.fullPath.split('?')
|
|
|
+ let start_page = params[0]
|
|
|
+ let start_param = params[1]
|
|
|
+ const linkId = start_param.match(/linkId=([^&]*)/)[1];
|
|
|
+ data.promotion_id = linkId
|
|
|
+ data.start_page = start_page
|
|
|
+ data.start_param = start_param
|
|
|
+ call_back(data)
|
|
|
+ }catch(e){
|
|
|
+ call_back(data,e)
|
|
|
+ console.error('There was an error!', e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ get_paid_point(data.book_id,kadian_name,(kadian_key)=>{
|
|
|
+ tg_config.kadian_key = kadian_key
|
|
|
+ create_hy_link()
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+module.exports = CMD;
|