您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
方便抖音订单查看,必须要打开抖音小店的订单管理界面,才能显示
当前为
// ==UserScript== // @name 抖音小店订单管理3.4 // @namespace 大师兄 // @match *://fxg.jinritemai.com/ffa/morder/order/list // @date 05/27/2021 // @version 3.4 // @author 大师兄 [email protected] // @description 方便抖音订单查看,必须要打开抖音小店的订单管理界面,才能显示 // @icon https://mms0.baidu.com/it/u=685985501,228922170&fm=27&gp=0.jpg&fmt=auto // @note 2.5 @updateURL/@installURL/@downloadURL https://greasyfork.org/zh-CN/scripts/431480 // @require https://code.jquery.com/jquery-3.6.0.min.js // @require https://greasyfork.org/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').html(``).DataTable({ data: dataSet, columns: datehead, "orderFixed": [ 0, 'desc' ],//第一列降序 //scrollY: 300, //scrollCollapse: true, language: { lengthMenu : "每页显示 _MENU_记录", zeroRecords : "没有匹配的数据", info : "显示 _START_ - _END_ 条/共 _TOTAL_ 条", infoEmpty : "没有符合条件的记录", search : "查找", infoFiltered : "(从 _MAX_条记录中过滤)", paginate : { "first" : "首页 ", "last" : "末页", "next" : "下一页", "previous" : "上一页"} }, "search": { "regex": true }, "scrollY": "600px", "scrollCollapse": true, "paging": false });//.row.add( ["1","1","1","1","1","1","1"]).draw();; }, 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.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 shuliang = dsx.shuju.length; let xinshujushuliang = obj.length; let xiangtong; for(let i=xinshujushuliang-1; i >= 0; i--){ xiangtong = false; if(shuliang >= xinshujushuliang){ for(let k=0; k < xinshujushuliang; k++){ if(obj[i].shop_order_id == dsx.shuju[k].shop_order_id){ dsx.shuju[k].order_status_info = obj[i].order_status_info; xiangtong = true; break; }; }; }else{ for(let k=0; k < shuliang; k++){ if(obj[i].shop_order_id == dsx.shuju[k].shop_order_id){ dsx.shuju[k].order_status_info = obj[i].order_status_info; xiangtong = true; break; }; }; } if(!xiangtong){ dsx.shuju.push(obj[i]); }; }; dsx.chongxinhuizhibiaoge(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(); })();