上架助手2024-油猴插件

上架助手2024

目前為 2024-12-29 提交的版本,檢視 最新版本

// ==UserScript==
// @name         上架助手2024-油猴插件
// @namespace    http://tampermonkey.net/
// @version      2024-12-29_01
// @description  上架助手2024
// @license      MIT
// @author       Beerspume
// @match        https://*.soluxemall.com/*

// @icon         https://www.google.com/s2/favicons?sz=64&domain=benefits.soluxemall.com
// @grant        GM_addElement
// @grant        GM_log
// @grant        GM_setClipboard
// @grant        GM_download
// @grant        GM_xmlhttpRequest
// @connect *
// ==/UserScript==

(function() {
    'use strict';

    //取得易采网站后台请求的授权信息
    function getAuthorization(){
        //从localStorage中取得授权信息
        const json_jdcloud=localStorage.getItem("jdcloud");
        let Authorization=undefined;
        if(json_jdcloud){
            try{
                const jdcloud=JSON.parse(json_jdcloud);
                Authorization=jdcloud.token;
                //console.log(`Authorization: ${Authorization}`);
            }catch(e){
                console.log("jdcloud解析失败,请查看localStorage中的jdcloud是否正确");
            }
        }
        return Authorization;
    }

    //复制内容到剪贴板
    function copyToClipboard(text) {
        navigator.clipboard.writeText(text)
            .then(function() {
            console.log('Text copied to clipboard');
        })
            .catch(function(err) {
            console.error('Failed to copy text: ', err);
        });
    }

    //将秒转化为小时
    const fn_formatSeconds=(seconds)=>{
        if(seconds===Infinity){
            return "";
        }else{
            return `${Math.floor(seconds/3600)}小时${Math.floor(seconds%3600/60)}分钟${Math.floor(seconds%3600%60)}秒`;
        }
    };

    function sleep(seconds){
        return new Promise((resolve,reject)=>{
            window.setTimeout(()=>{
                resolve();
            },seconds*1000);
        });
    }

    const TimeSample=[];
    const fn_timeSample=()=>{
        TimeSample.push(new Date().getTime());
        while(TimeSample.lenth>11){
            TimeSample.shift();
        }
        let average=Infinity;
        if(TimeSample.length>0){
            average=(Math.max(...TimeSample)-Math.min(...TimeSample))/TimeSample.length/1000;
        }
        return average;

    };

    // 访问后台服务的统一接口
    const api=(api_name,data)=>{
        return new Promise((resolve,reject)=>{
            GM_xmlhttpRequest({
                url:"http://43.143.136.44/hysm/api/api.asp",
                method:'POST',
                responseType:"json",
                headers:{i:api_name,"Content-Type":"application/x-www-form-urlencoded"},
                data:ObjToParams(data),
                onload:(event)=>{
                    if(event.status==200){
                        if(event.response.success){
                            resolve(event.response.data);
                        }else{
                            reject(event.response);
                        }
                    }else{
                        reject(event);
                    }
                },
                onerror:(event)=>{
                    reject(event);
                }
            });
        });
    }
    //转换请求参数格式
    function ObjToParams(obj){
        let ret="";
        Object.keys(obj).forEach((k)=>{
            let v=obj[k];
            if(typeof(v)==="object"){
                v=JSON.stringify(v);
            }
            ret+=`${k}=${encodeURIComponent(v)}&`;
        });
        if(ret.length>1){
            ret=ret.substring(0,ret.length-1)
        }
        return ret;
    }
    //显示信息
    function msgDisplay(str){
        let el_msg=document.querySelector(".hy_msg1");
        if(el_msg){
            el_msg.innerText=str;
        }
    }


    //下载图片存放到Blob
    const fn_download_photo=function(photo_url){
        return new Promise((resolve,reject)=>{
            const re_photo_filename=/\/([^\/]+)$/;
            const m_photo_filename=photo_url.match(re_photo_filename);
            let photo_filename='noname.jpg';
            if(m_photo_filename){
                photo_filename=m_photo_filename[1];
            }

            GM_xmlhttpRequest({
                url:photo_url,
                method:'GET',
                responseType:'blob',
                onload:(event)=>{
                    const phpto_data=event.response;
                    resolve(phpto_data);
                },
                onerror:(event)=>{
                    reject(event);
                }
            });
        });
    };
       //取得商品详情
        const getGoodsDetail=(shopSkuId)=>{
            return new Promise((resolve,reject)=>{
                const post_data={shopSkuId: shopSkuId};
                const post_headers={
                    "Content-Type":"application/json;charset=UTF-8",
                    "Authorization":getAuthorization(),
                };
                GM_xmlhttpRequest({
                    url:"https://benefits.soluxemall.com/proxy/item-center/energynet/platform/shopDataFilling/seachSupplierEnergyDataDetail",
                    method:'POST',
                    data:JSON.stringify(post_data),
                    headers:post_headers,
                    onload:(event)=>{
                        try{
                            if(event.status==200){
                                const response=JSON.parse(event.responseText);
                                if(response.code=="0"){
                                    resolve(response.data);
                                }else{
                                    reject(response.msg);
                                }
                            }else{
                                reject(event);
                            }
                        }catch(e){
                            reject(e);
                        }
                    },
                    onerror:(event)=>{
                        reject(event);
                    }
                });
            });
        };

    //-------------------------------------------- 石油易采->供应商中心->商品管理->能源一号网 ----------------------------------------------------------------------------
    //订单列表页面,检查订单是否为新订单
    const fn_initOrderList=()=>{
        console.log('进入订单列表页面');
         let el_menubar=document.querySelector(".hy_menubarorder");
        if(!el_menubar){
            // 插件功能区
            el_menubar=document.createElement("div");
            el_menubar.classList.add("hy_menubarorder");
            el_menubar.style="z-index:999;width:10em;background-color:lightblue;position:fixed;top:10px;right:5px;border-radius:5px;font-size:larger; box-shadow: 0px 0px 10px;";

            //主功能区
            const el_mainContainer=document.createElement("div");
            el_menubar.append(el_mainContainer);
            el_mainContainer.style="height:100%;display:flex;flex-direction: column;justify-content:center;align-items:center;padding:5px 5px 5px 5px;";
            //主功能区标题
            const el_title=document.createElement("div");
            el_mainContainer.append(el_title);
            el_title.innerText="订单助手";
            el_title.style="width:100%;text-align: center;margin-bottom:5px;font-weight: bolder;";
            //导入输入商品按钮
            const el_b3=document.createElement("button");
            el_mainContainer.append(el_b3);
            el_b3.style="width:90%;margin-bottom:5px;";
            el_b3.textContent="检查新订单";
            el_b3.addEventListener("click",(event)=>{doCheckOrders()});
            el_b3.classList.add("hy_btn_check_neworder");
            //查询消息显示区
            const el_msg1=document.createElement("div");
            el_mainContainer.append(el_msg1);
            el_msg1.style="width:100%;color:red;display:block;margin-bottom:5px;";
            el_msg1.innerText="";
            el_msg1.classList.add("hy_msg1");
            //将助手工具添加到页面
            document.body.insertAdjacentElement("afterBegin",el_menubar);
        }

        //取得订单详情
        const getOrderDetail=(orderno)=>{
            return new Promise((resolve,reject)=>{
                const post_headers={
                    "Content-Type":"application/json;charset=UTF-8",
                    "Authorization":getAuthorization(),
                };
                GM_xmlhttpRequest({
                    url:`https://benefits.soluxemall.com/proxy/order/seller/order/getPurchaseInfo?platformId=20&orderNo=${orderno}&handle=2`,
                    method:'GET',
                    headers:post_headers,
                    onload:(event)=>{
                        try{
                            if(event.status==200){
                                const response=JSON.parse(event.responseText);
                                if(response.code=="0"){
                                    resolve(response.data);
                                }else{
                                    reject(response.msg);
                                }
                            }else{
                                reject(event);
                            }
                        }catch(e){
                            reject(e);
                        }
                    },
                    onerror:(event)=>{
                        reject(event);
                    }
                });
            });
        };
        //从华远平台获取订单信息
        const getHYSMOrderDetail=(nyoneOrderNo)=>{
            return new Promise((resolve,reject)=>{
                const post_headers={
                    "Content-Type":"application/json;charset=UTF-8",
                };
                GM_xmlhttpRequest({
                    url:`http://43.143.136.44/hysm/ajax_checkorderbh.asp?orderbh=${nyoneOrderNo}`,
                    method:'GET',
                    headers:post_headers,
                    onload:(event)=>{
                        try{
                            if(event.status==200){
                                const response=JSON.parse(event.responseText);
                                resolve(response);
                            }else{
                                reject(event);
                            }
                        }catch(e){
                            reject(e);
                        }
                    },
                    onerror:(event)=>{
                        reject(event);
                    }
                });
            });
        };
        //导入新订单
       const doImportOrders=(orderno)=>{
            (async()=>{
            //开始导入订单
                console.log(`开始导入订单${orderno}`);
                const order=await getOrderDetail(orderno);
                console.log(order);
                const data={
                    orderfrom:0,
                    orderbh:order.nyoneOrderNo,
                    ordertime:order.orderTime,
                    compamy:"",
                    personname:order.receiverName,
                    tell:order.mobile,
                    address:order.address,
                    note:(order.remark||"").replace("null",""),
                    totalprice:order.totalPrice,
                };
                let has_error=false;
                let has_goods=false;
                let totalAmount=0;
                let goods_index=0;
                let errmsg="";
                for(let i=0;i<order.subOrderInfoResultVoList[0].subSkuDemandInfo.length;i++){
                    const goodsitem=order.subOrderInfoResultVoList[0].subSkuDemandInfo[i];
                    //console.log(goodsitem.itemId);
                    const goodsdetail = await getGoodsDetail(goodsitem.skuId);
                    console.log(goodsdetail);
                    has_goods=true;
                    data[`spbm${goods_index}`]=goodsitem.skuId; //商品sku
                    data[`sppp${goods_index}`]=goodsdetail.brandCnName; //商品品牌
                    data[`spmc${goods_index}`]=goodsdetail.shopBaseSkuName; //商品名称
                    data[`scjg${goods_index}`]=goodsitem.sellPrice; //商品单价
                    data[`cgsl${goods_index}`]=goodsitem.skuNums; //采购数量
                    data[`spdw${goods_index}`]=goodsdetail.sourceSkuUnit; //商品单位
                    totalAmount+=goodsitem.sellPrice*goodsitem.skuNums;
                    goods_index++;
                }
                totalAmount = totalAmount.toFixed(2);
                data.orderamount=totalAmount;
                data.ordergoodsnum=goods_index;
                if(totalAmount!=order.totalPrice){
                    console.log(`计算出的订单金额:${totalAmount}- ${order.totalPrice}`);
                    console.log('订单金额对比错误');
                    errmsg = `订单金额对比错误:${totalAmount}- ${order.totalPrice}`;
                    has_error =true;

                }
                if(!has_goods){
                    has_error =true;
                    errmsg = '订单中没有商品信息';
                }
                //构造提交的表单
                if(!has_error){
                    const el_form=document.createElement("form");
                    el_form.style.display="none";
                    el_form.setAttribute("target","hy-system-importorder");
                    el_form.setAttribute("action","http://43.143.136.44/hysm/doimport_order.asp");
                    el_form.setAttribute("method","post")
                    Object.keys(data).forEach((k)=>{
                        let v=data[k];
                        if(typeof(v)==="object"){
                            v=JSON.stringify(v);
                        }
                        const el_input=document.createElement("input");
                        el_input.setAttribute("name",k);
                        el_input.setAttribute("value",v);
                        el_form.append(el_input);
                        //ret+=`${k}=${encodeURIComponent(v)}&`;
                    });
                    document.body.append(el_form);
                    console.log(el_form);
                    el_form.submit();
                    el_form.remove();
                }else{
                    console.log(`导入订单失败,${errmsg}`);
                    msgDisplay(`导入订单失败,${errmsg}`);
                }

            })();
        };

   //检查新订单

       const doCheckOrders=()=>{
            (async()=>{
                console.log('检查页面中的订单是否有新订单');
                msgDisplay(`检查页面中的订单是否有新订单`);
                const el_btn=document.querySelector(".hy_btn_check_neworder");
                if(el_btn){
                    el_btn.setAttribute("disabled",true);
                }
                const orderDiv = document.querySelector(".layui-tab-item.layui-show");
                const trTitleList = orderDiv.querySelectorAll("tr.trTitle")||[];
                let newordernum=0;
                for(let i=0;i<trTitleList.length;i++){
                    try{
                        msgDisplay(`检查订单${i+1}/${trTitleList.length}`);
                        const orderno=trTitleList[i].querySelector("input.table-checkbox").getAttribute('data-order-no');
                        const order=await getOrderDetail(orderno);
                        console.log(order);
                        const hycheckOrder = await getHYSMOrderDetail(order.nyoneOrderNo);
                        console.log(hycheckOrder);
                        if(hycheckOrder.found=="yes"){
                            //发现新订单
                            console.log(`发现新订单${orderno}-${order.nyoneOrderNo}`);
                            const el_button=document.createElement("a");
                            //el_button.classList.add("a-to-button");
                            el_button.style="background:#ffb800;cursor: pointer;";
                            el_button.innerText="导入华远系统";
                            el_button.addEventListener("click",(event)=>{
                                            const el_button=event.target;
                                            const order_id=el_button.dataset.orderid
                                            doImportOrders(orderno);
                                        });
                            const tdarray= trTitleList[i].querySelectorAll("td")||[];
                            if (tdarray.length>0){
                                tdarray[tdarray.length-1].insertAdjacentElement("beforeEnd",el_button);
                            }
                            newordernum+=1;
                        }

                    }catch(e){
                        console.error(`检查订单出现错误`);
                        msgDisplay(`检查订单出现错误`);
                        console.error(e);
                    }
                }
                if(trTitleList.length==0){
                    msgDisplay(`没有订单列表`);
                }
                if(newordernum>0){
                    msgDisplay(`找到新订单${newordernum}个,请导入`);
                }
                if(el_btn){
                    el_btn.removeAttribute("disabled");
                }
            })();
        };
    }


    //初始化添加商品页面
    const fn_initNumberOne=()=>{
        let el_menubar=document.querySelector(".hy_menubar");
        if(!el_menubar){
            // 插件功能区
            el_menubar=document.createElement("div");
            el_menubar.classList.add("hy_menubar");
            el_menubar.style="z-index:999;width:10em;background-color:lightblue;position:fixed;top:10px;right:5px;border-radius:5px;font-size:larger; box-shadow: 0px 0px 10px;";

            //主功能区
            const el_mainContainer=document.createElement("div");
            el_menubar.append(el_mainContainer);
            el_mainContainer.style="height:100%;display:flex;flex-direction: column;justify-content:center;align-items:center;padding:5px 5px 5px 5px;";


            //主功能区标题
            const el_title=document.createElement("div");
            el_mainContainer.append(el_title);
            el_title.innerText="上架助手";
            el_title.style="width:100%;text-align: center;margin-bottom:5px;font-weight: bolder;";
           //商品sku输入框
            const el_input=document.createElement("input");
            el_mainContainer.append(el_input);
            el_input.style="width:100%;margin-bottom:5px;";
            el_input.setAttribute("placeholder","填入商品9开头sku");
            el_input.classList.add("hy_input_shopskucodes");
            //导入输入商品按钮
            const el_b3=document.createElement("button");
            el_mainContainer.append(el_b3);
            el_b3.style="width:90%;margin-bottom:5px;";
            el_b3.textContent="上传商品";
            el_b3.addEventListener("click",(event)=>{doUploadGoodsListBySKU()});
            el_b3.classList.add("hy_btn_import_goodsbysku");

            //导入全部商品按钮
            const el_b1=document.createElement("button");
            el_mainContainer.append(el_b1);
            el_b1.style="width:90%;margin-bottom:5px;";
            el_b1.textContent="上传全部商品";
            el_b1.addEventListener("click",(event)=>{doUploadGoodsListByPage(1,200)});
            el_b1.classList.add("hy_btn_importALL_goods");
            //上传响应商品按钮
            const el_b2=document.createElement("button");
            el_mainContainer.append(el_b2);
            el_b2.style="width:90%;margin-bottom:5px;";
            el_b2.textContent="上传响应商品";
            el_b2.addEventListener("click",(event)=>{doUploadApplyGoodsListByPage(1,200)});
            el_b2.classList.add("hy_btn_importapply_goods");
            //查询消息显示区
            const el_msg1=document.createElement("div");
            el_mainContainer.append(el_msg1);
            el_msg1.style="width:100%;color:red;display:block;margin-bottom:5px;";
            el_msg1.innerText="";
            el_msg1.classList.add("hy_msg1");

            //完成信息显示区
            const el_msg2=document.createElement("div");
            el_mainContainer.append(el_msg2);
            el_msg2.style="width:100%;color:red;display:none;margin-bottom:5px;color:green";
            el_msg2.innerText="完成!可点击保存提交产品";
            el_msg2.classList.add("hy_msg2");

        //将助手工具添加到页面
        document.body.insertAdjacentElement("afterBegin",el_menubar);
        };

        //取得商品列表
        const getGoodsListByPage=(pageNum,pageSize,status)=>{
            return new Promise((resolve,reject)=>{
                let post_data={pageNum: pageNum, pageSize: pageSize}
                if(status>0 ){
                    post_data.status=status;
                };
                //console.log(post_data);
                const post_headers={
                    "Content-Type":"application/json;charset=UTF-8",
                    "Authorization":getAuthorization(),
                };
                GM_xmlhttpRequest({
                    url:"https://benefits.soluxemall.com/proxy/item-center/energynet/platform/shopDataFilling/selectPageListByStatus",
                    method:'POST',
                    data:JSON.stringify(post_data),
                    headers:post_headers,
                    onload:(event)=>{
                        try{
                            if(event.status==200){

                                const response=JSON.parse(event.responseText);
                                if(response.code=="0"){
                                    resolve(response.data);
                                }else{
                                    reject(response.msg);
                                }
                            }else{
                                reject(event);
                            }
                        }catch(e){
                            reject(e);
                        }
                    },
                    onerror:(event)=>{
                        reject(event);
                    }
                });
            });
        };


 
        //两次请求的最小间隔时间
        const minReuestInterval=2000;

        //输入的sku商品上传
        const doUploadGoodsListBySKU=()=>{
            (async()=>{
                const el_btn=document.querySelector(".hy_btn_import_goodsbysku");
                if(el_btn){
                    el_btn.setAttribute("disabled",true);
                }
                const shopSkuId=document.querySelector(".hy_input_shopskucodes").value;
                try{
                    const goods=await getGoodsDetail(shopSkuId);
                    await postGoodsToHYMS(goods);
                    console.log(`已上传商品${shopSkuId}`)
                     msgDisplay(`已上传商品${shopSkuId}`);
                }catch(e){
                    console.error(`提交商品出现错误${shopSkuId}`);
                    msgDisplay(`提交商品出现错误${shopSkuId}`);
                    console.error(e);
                }
                if(el_btn){
                    el_btn.removeAttribute("disabled");
                }
            })();
        };
       let uploadApplyGoodsSucessNum=0; //成功上传数目
       let uploadApplyGoodsFailNum=0; //失败上传数目
       //遍历响应的商品并上传响应信息,采用递归方式遍历所有页
        const doUploadApplyGoodsListByPage=(pn,ps)=>{
            (async()=>{
                const el_btn=document.querySelector(".hy_btn_importapply_goods");
                if(el_btn){
                    el_btn.setAttribute("disabled",true);
                }
                const response=await getGoodsListByPage(pn,ps,3);
                //console.log(response);
                const pageNum=response.pageNum;
                const pageSize=response.pageSize;
                const totalPageCount=response.totalPageCount;
                const totalCount=response.totalCount;
                const result=response.result;
                for(let i=0;i<result.length;i++){
                    const t0=(new Date()).getTime();
                    const currentNum=(pageNum-1)*pageSize+i+1;
                    const shopSkuId=result[i].shopSkuId;
                    try{
                        await postApplyGoodsToHYMS(result[i]);
                        uploadApplyGoodsSucessNum+=1;
                        console.log(`已上传响应商品${shopSkuId}(${currentNum}/${totalCount} at page:${pageNum})`)
                    }catch(e){
                        uploadApplyGoodsFailNum+=1;
                        console.error(`提交响应商品出现错误${shopSkuId}(${currentNum}/${totalCount} at page:${pageNum})`);
                        console.error(result[i]);
                        console.error(e);
                    }
                    const t1=(new Date()).getTime();
                    if(t1-t0<minReuestInterval){
                        const sleepSeconds=(minReuestInterval-(t1-t0))/1000;
                        //console.log(`sleep ${sleepSeconds}秒`);
                        //await sleep(sleepSeconds);
                    }
                     msgDisplay(`上传成功${uploadApplyGoodsSucessNum}条失败${uploadApplyGoodsFailNum}条`);
                }
                if(pageNum<totalPageCount){
                    doUploadApplyGoodsListByPage(pageNum+1,pageSize);
                }else{
                    console.log("上传结束");
                    msgDisplay(`上传成功${uploadApplyGoodsSucessNum}条失败${uploadApplyGoodsFailNum}条 上传结束` );
                    if(el_btn){
                        el_btn.removeAttribute("disabled");
                    }
                }

            })();
        };
       let uploadGoodsSucessNum=0; //成功上传数目
       let uploadGoodsFailNum=0; //失败上传数目
        //遍历商品并上传,采用递归方式遍历所有页
        const doUploadGoodsListByPage=(pn,ps)=>{
            (async()=>{
                const el_btn=document.querySelector(".hy_btn_importALL_goods");
                if(el_btn){
                    el_btn.setAttribute("disabled",true);
                }
                const response=await getGoodsListByPage(pn,ps,0);
                const pageNum=response.pageNum;
                const pageSize=response.pageSize;
                const totalPageCount=response.totalPageCount;
                const totalCount=response.totalCount;
                const result=response.result;
                for(let i=0;i<result.length;i++){
                    const t0=(new Date()).getTime();
                    const currentNum=(pageNum-1)*pageSize+i+1;
                    const shopSkuId=result[i].shopSkuId;
                    try{

                        const goods=await getGoodsDetail(shopSkuId);
                        await postGoodsToHYMS(goods);
                        console.log(`已上传商品${shopSkuId}(${currentNum}/${totalCount} at page:${pageNum})`)
                        uploadGoodsSucessNum +=1;
                    }catch(e){
                        console.error(`提交商品出现错误${shopSkuId}(${currentNum}/${totalCount} at page:${pageNum})`);
                        console.error(result[i]);
                        uploadGoodsFailNum +=1;
                        console.error(e);
                    }
                    msgDisplay(`上传成功${uploadGoodsSucessNum}条失败${uploadGoodsFailNum}条`);
                    const t1=(new Date()).getTime();
                    if(t1-t0<minReuestInterval){
                        const sleepSeconds=(minReuestInterval-(t1-t0))/1000;
                        //console.log(`sleep ${sleepSeconds}秒`);
                        await sleep(sleepSeconds);
                    }

                }
                if(pageNum<totalPageCount){
                    doUploadGoodsListByPage(pageNum+1,pageSize);
                }else{
                    msgDisplay(`上传成功${uploadGoodsSucessNum}条失败${uploadGoodsFailNum}条 上传结束`);
                    console.log("上传结束");
                    if(el_btn){
                        el_btn.removeAttribute("disabled");
                    }
                }
            })();
        };

        //上传商品响应到HYMS
        const postApplyGoodsToHYMS=(goods)=>{
            return new Promise((resolve,reject)=>{
                //console.log(goods);
                const post_data={
                    "isagree":1,
                    "sellarea":goods.areaNames||[],
                    "agreeprice":goods.supplierSupplyPrice,
                    "shopSkuId":goods.shopSkuId
                };
                //console.log("post_data="+JSON.stringify(post_data));
                const post_headers={
                    "Content-Type":"application/x-www-form-urlencoded",
                };
               GM_xmlhttpRequest({
                    url:"http://43.143.136.44/hysm/importapplygoods.asp",
                    method:'POST',
                    data:"param="+JSON.stringify(post_data),
                    headers:post_headers,
                    onload:(event)=>{
                        try{
                            const response=JSON.parse(event.responseText);
                            if(response.returncode==0){
                                resolve();
                            }else{
                                reject(response);
                            }
                        }catch(e){
                            reject(e);
                        }
                    },
                    onerror:(event)=>{
                        reject(event);
                    }
                });
            });
        }


        //上传商品到HYMS
        const postGoodsToHYMS=(goods)=>{
            return new Promise((resolve,reject)=>{
                //console.log(goods);
                let goodsimgs = new Array();
                let dataapplyItemAnnexRequestVoList = goods.applyItemAnnexRequestVoList||[];
                for(let i=0;i<dataapplyItemAnnexRequestVoList.length;i++){
                    goodsimgs.push(dataapplyItemAnnexRequestVoList[i].annexUrl);
                }
                const post_data={
                    "brandCnName":goods.brandCnName,
                    "brandEnName":goods.brandEnName,
                    "detail":goods.detail,
                    "energySellPrice":goods.energySellPrice,
                    "goodsCode":goods.goodsCode,
                    "goodsName":goods.goodsName,
                    "itemCode":goods.itemCode,
                    "marketPrice":goods.marketPrice,
                    "param":goods.param,
                    "paramJson":goods.paramJson,
                    "shopSkuId":goods.shopSkuId,
                    "shopBaseSkuName":goods.shopBaseSkuName,
                    "sourceSkuUnit":goods.sourceSkuUnit,
                    "taxCode":goods.taxCode,
                    "taxRate":goods.taxRate,
                    "sellPrice":goods.sellPrice,
                    "goodsimgs":goodsimgs||[],
                };
                console.log(JSON.stringify(post_data));
                const post_headers={
                    "Content-Type":"application/x-www-form-urlencoded",
                };
               GM_xmlhttpRequest({
                    url:"http://43.143.136.44/hysm/importenergynetgoods.asp",
                    method:'POST',
                    data:"param="+JSON.stringify(post_data),
                    headers:post_headers,
                    onload:(event)=>{
                        try{
                            const response=JSON.parse(event.responseText);
                            if(response.returncode==0){
                                resolve();
                            }else{
                                reject(response);
                            }
                        }catch(e){
                            reject(e);
                        }
                    },
                    onerror:(event)=>{
                        reject(event);
                    }
                });
            });
        }

    };


    /*----------------------------------访问页面到功能入口的路由---------------------------------------------*/
    const href=document.location.href;
    const match=[
        {
            "re":/shop-view\/goods\//,
            "fn":fn_initNumberOne,
        },
        {
            "re":/shop-view\/order\/order-list/,
            "fn":fn_initOrderList,
        },

    ];

    const param={};
    (href.match(/(?<=[\?\&])([^\?\&]+)/g)||[]).forEach((s)=>{
        let p=s.indexOf("=");
        p=p>=0?p:s.length;
        const key=s.substring(0,p);
        const value=s.substring(p+1);
        if(key){
            param[key]=value;
        }
    });
    for(let i=0;i<match.length;i++){
        const m=match[i];
        if(m.re.test(href)){
            m.fn({param:param});
            break;
        }
    }

})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址