抖音小店订单管理3.5

方便抖音订单查看,必须要打开抖音小店的订单管理界面,才能显示

目前為 2021-10-10 提交的版本,檢視 最新版本

// ==UserScript==
// @name         抖音小店订单管理3.5
// @version      3.5
// @author       大师兄 [email protected]
// @namespace    https://gf.qytechs.cn/zh-CN/users/724782-caogen1207
// @match        *://fxg.jinritemai.com/ffa/morder/order/list
// @date         05/27/2021
// @description  方便抖音订单查看,必须要打开抖音小店的订单管理界面,才能显示
// @icon         https://mms0.baidu.com/it/u=685985501,228922170&fm=27&gp=0.jpg&fmt=auto
// @note         2.5  @updateURL/@installURL/@downloadURL https://gf.qytechs.cn/zh-CN/scripts/431480
// @require      https://code.jquery.com/jquery-3.6.0.min.js
// @require      https://gf.qytechs.cn/scripts/433637-datatables-1-11-3/code/DataTables%201113.js?version=977644
// @resource     dashixiongCSS https://gitee.com/da-shixiong/ajax/raw/master/hs/dataTables/min.css
// @grant        GM_addStyle
// @grant        GM_getResourceText
// @grant        GM_getValue
// @grant        GM_setValue
// @grant        GM_deleteValue
// ==/UserScript==
(function() {
    "use strict";

    GM_addStyle(GM_getResourceText("dashixiongCSS"));
    var dsx = {
        formatDate: function(data) {
            //时间戳转格式
            let timestamp = new Date(data * 1000);
            let year = timestamp.getFullYear();
            let month = timestamp.getMonth() + 1;
            let date = timestamp.getDate();
            let hour = timestamp.getHours();
            let minute = timestamp.getMinutes();
            let second = timestamp.getSeconds();
            return (year + "-" + th(month) + "-" + th(date) + " " + th(hour) + ":" + th(minute) + ":" + th(second));
            function th(num) {
                return num < 10 ? "0" + num : num;
            }
        },

        Toast: function(msg, duration) {
            duration = isNaN(duration) ? 3000 : duration;
            let m = document.createElement('div');
            m.innerHTML = msg;
            m.style.cssText = "max-width:60%;min-width: 150px;padding:0 14px;height: 40px;color: rgb(255, 255, 255);line-height: 40px;text-align: center;border-radius: 4px;position: fixed;top: 50%;left: 50%;transform: translate(-50%, -50%);z-index: 999999;background: rgba(0, 0, 0,.7);font-size: 16px;";
            document.body.appendChild(m);
            setTimeout(function() {
                let d = 0.5;
                m.style.webkitTransition = '-webkit-transform ' + d + 's ease-in, opacity ' + d + 's ease-in';
                m.style.opacity = '0';
                setTimeout(function() {
                    document.body.removeChild(m)
                },d * 1000);
            },duration);
        },

        tianjiawangluojianting:function (callback) {
            window.addEventListener('ajaxReadyStateChange', function(e){
                //console.log(e.detail, e.detail._byted_method, e.detail.responseURL, e.detail.responseText, e.detail._data); // XMLHttpRequest Object
                if(e.detail.readyState == 4 && e.detail.status >= 200 && e.detail.status < 300){
                    callback(e);
                }
            });
        },

        panduanshuju:function(e){
            if(e.detail.responseURL.indexOf("/fxg.jinritemai.com/api/order/searchlist?tab=all") != -1){
                let obj = JSON.parse(e.detail.responseText).data;
                console.log("监听到的订单数据是:",obj);
                dsx.chulidingdanshuju(obj);
            }else if(e.detail.responseURL.indexOf("/fxg.jinritemai.com/api/order/receiveinfo") != -1){
                let obj = JSON.parse(e.detail.responseText);
                console.log("监听到的用户数据是:",obj);

            };
        },


        shuju:{},

        saveshuju:function(obj){
            dsx.shuju = obj;
            GM_setValue("dingdanshuju", dsx.shuju);
        },

        getshuju:function(){
            dsx.shuju = GM_getValue("dingdanshuju", "没有储存数据");
            return dsx.shuju;
        },

        tiqushuju:function(obj,i) {
            let kehunicheng = obj[i].user_nickname;
            let dingdanjine = obj[i].pay_amount / 100;
            let dingdanzhuangtai = obj[i].order_status_info.order_status_text;
            let xiadanshijian = this.formatDate(obj[i].create_time);
            let dingdanbianhao = obj[i].shop_order_id;
            let lianjiebiaoti = obj[i].product_item[0].product_name;
            let kehushoujianren = obj[i].receiver_info.post_receiver;
            let shoujihao = obj[i].receiver_info.post_tel;
            let dizhi = obj[i].receiver_info.post_addr.province.name + obj[i].receiver_info.post_addr.city.name + obj[i].receiver_info.post_addr.town.name + obj[i].receiver_info.post_addr.street.name;
            let daihuodaren;
            try{daihuodaren = obj[i].product_item[0].properties[2].text}catch(e){daihuodaren = "没有"};
            return {kehunicheng:kehunicheng,dingdanjine:dingdanjine,dingdanzhuangtai:dingdanzhuangtai,xiadanshijian:xiadanshijian,dingdanbianhao:dingdanbianhao,lianjiebiaoti:lianjiebiaoti,kehushoujianren:kehushoujianren,shoujihao:shoujihao,dizhi:dizhi,daihuodaren:daihuodaren};
        },

        duquhuizhidingdanshuju:function(){
            let obj = dsx.getshuju();
            if(obj !== "没有储存数据"){
                dsx.shaixuanshujuhuizhibiaoge(obj);
            };
        },

        shaixuanshujuhuizhibiaoge:function(obj){
            let shuzu = [];
            let dlength = obj.length;
            for (let i = 0; i < dlength; i++) {
                let d = dsx.tiqushuju(obj,i);
                shuzu[i] = [dlength-i,d.kehunicheng,d.dingdanjine,d.dingdanzhuangtai,d.xiadanshijian,d.lianjiebiaoti,d.dingdanbianhao];
            };
            dsx.huizhibiaoge([{ title: "序号" },{ title: "昵称" },{ title: "金额" },{ title: "状态" },{ title: "下单时间" },{ title: "链接标题" },{ title: "订单编号" }],shuzu);
        },



        table:{},

        huizhibiaoge : function(datehead,dataSet) {
            dsx.table = $('#dashixiongtable').DataTable({
                data: dataSet,
                columns: datehead,
                language: {
                    lengthMenu : "每页显示 _MENU_记录",
                    zeroRecords : "没有匹配的数据",
                    info : "显示 _START_ - _END_ 条/共 _TOTAL_ 条",
                    infoEmpty : "没有符合条件的记录",
                    search : "查找",
                    infoFiltered : "(从 _MAX_条记录中过滤)",
                    paginate : { "first" : "首页 ", "last" : "末页", "next" : "下一页", "previous" : "上一页"}
                }
            });//.row.add( ["1","1","1","1","1","1","1"]).draw();
            console.log(dsx.table);

            dsx.table.sScrollY = $(window).height() - 300;//是否开启垂直滚动(否=disabled)
        },

        chongxinhuizhibiaoge: function (obj) {
            let shuzu = [];
            let dlength = obj.length;
            for (let i = 0; i < dlength; i++) {
                let d = dsx.tiqushuju(obj,i);
                shuzu[i] = [dlength-i,d.kehunicheng,d.dingdanjine,d.dingdanzhuangtai,d.xiadanshijian,d.lianjiebiaoti,d.dingdanbianhao];
            };
            //dsx.table.data(shuzu).draw();
            dsx.table.clear();
            dsx.table.rows.add(shuzu).draw();
        },

        chulidingdanshuju : function(obj) {
            if(!($("#dashixiongtable tbody tr").length > 0)){
                //第一次运行
                dsx.saveshuju(obj);
                dsx.shaixuanshujuhuizhibiaoge(obj);
            }else{
                this.gengxinshuju(obj);
            }
        },

        gengxinshuju : function(obj) {
            let result;
            obj.sort((a,b) => {return b.exp_ship_time - a.exp_ship_time});
            obj.forEach((objitem) => {
                result = dsx.shuju.some((shujuitem) => {
                    if (shujuitem.shop_order_id == objitem.shop_order_id) {
                        shujuitem.order_status_info = objitem.order_status_info;
                        return true;
                    };
                });
                if (!result){dsx.shuju.unshift(objitem);};

            });
            dsx.shuju.sort((a,b) => {return b.exp_ship_time - a.exp_ship_time});
            dsx.chongxinhuizhibiaoge(dsx.shuju);
            dsx.saveshuju(dsx.shuju);
            this.Toast("更新完毕", 1000);
        },

        xiangyingshijian : function () {
            $("#dashixiongXuanFu").click(function() {
                $(".auxo-btn.auxo-btn-primary.auxo-btn-sm").click();
            });
            $("#dashixiongXuanFu").mouseenter(function() {
                $("#dashixiongDIV").stop(true, false).show();
            });
            $("#dashixiong-main").mouseleave(function() {
                $("#dashixiongDIV").stop(true, false).hide();
            });

            /*             window.setInterval(function() {
                $("#dashixiongXuanFu").click();
            },120000); */
        },

        addhtml:function(){
            let a = `
<div id="dashixiong-main">
  <div id="dashixiongXuanFu"></div>
  <div id="dashixiongDIV">
    <table id="dashixiongtable"></table>
  </div>
</div>
		`;
            $("body").eq(0).prepend(a);
        },

        addcss:function(){
            let a = `<style>
#dashixiongDIV {
	position: fixed;
	top: 10px;
	right: 0px;
	z-index: 9998;
	margin-top: 4px;
	line-height: 34px;
	border-radius: 15px;
 /*盒子圆弧角*/
	background-color: rgba(255, 255, 255, 1);
	color: #000;
	font-size: 15px;
	padding: 15px 15px;
	overflow-x: auto;
	/*overflow-y: auto;*/
}

#dashixiongtable {
	width: 100%;
	height: 100%;
	white-space: nowrap;
        /*-webkit-overflow-scrolling: touch;  移动端手指滚动更流畅*/
}

     /* 悬浮标 */
#dashixiongXuanFu {
	position: fixed;
	top: 60px;
	right: 10px;
	text-align: center;
	z-index: 9999;
	cursor: pointer;
	vertical-align: middle;
	margin-top: 4px;
	height: 34px;
	width: 34px;
	line-height: 34px;
	display: inline-block;
	border-radius: 50px;
	background-color: rgba(0, 0, 0, 0.5);
}

</style>`;
            $("body").eq(0).prepend(a);
        },
        addscript:function(){
            let a = `
<script>
(function () {
    function ajaxEventTrigger(event) {
        var ajaxEvent = new CustomEvent(event, { detail: this });
        window.dispatchEvent(ajaxEvent);
    }
    var oldXHR = window.XMLHttpRequest;
    function newXHR() {
        var realXHR = new oldXHR();

        realXHR.addEventListener('abort', function () { ajaxEventTrigger.call(this, 'ajaxAbort'); }, false);

        realXHR.addEventListener('error', function () { ajaxEventTrigger.call(this, 'ajaxError'); }, false);

        realXHR.addEventListener('load', function () { ajaxEventTrigger.call(this, 'ajaxLoad'); }, false);

        realXHR.addEventListener('loadstart', function () { ajaxEventTrigger.call(this, 'ajaxLoadStart'); }, false);

        realXHR.addEventListener('progress', function () { ajaxEventTrigger.call(this, 'ajaxProgress'); }, false);

        realXHR.addEventListener('timeout', function () { ajaxEventTrigger.call(this, 'ajaxTimeout'); }, false);

        realXHR.addEventListener('loadend', function () { ajaxEventTrigger.call(this, 'ajaxLoadEnd'); }, false);

        realXHR.addEventListener('readystatechange', function() { ajaxEventTrigger.call(this, 'ajaxReadyStateChange'); }, false);

        return realXHR;
    };
    window.XMLHttpRequest = newXHR;
})();
</script>`;
            $("body").eq(0).prepend(a);

        }


    };
    //GM_deleteValue("dingdanshuju");
    console.log("读取数据",dsx.getshuju());
    dsx.addhtml();
    dsx.addcss();
    dsx.addscript();
    dsx.duquhuizhidingdanshuju();
    dsx.tianjiawangluojianting((d) => {dsx.panduanshuju(d)});
    dsx.xiangyingshijian();

})();

QingJ © 2025

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