您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
适配SPA页面,首次打开、跳转后无需刷新,自动插入填写按钮并完成全部描述填写操作。
// ==UserScript== // @name 六访辅助工具 // @namespace http://tampermonkey.net/ // @version 1.8 // @description 适配SPA页面,首次打开、跳转后无需刷新,自动插入填写按钮并完成全部描述填写操作。 // @author dengly // @license MIT // @match http://172.12.0.96:31465/liufangReport/* // @grant none // ==/UserScript== (function () { 'use strict'; const taskList = [ { buttonText: "仅我司金融渠道", sectionTitle: "渠道单一性", inputText: "该司主推我司金融产品,其他合作银行包括邮储/中信等银行,业务占比1/3以上。" }, { buttonText: "仅汽车销售/金融业务", sectionTitle: "其他经营业务", inputText: "该司仅经营奇瑞品牌业务;暂无经营其他品牌。" }, { buttonText: "经营无异常", sectionTitle: "经营连续性", inputText: "暂未发现工资代发异常/投诉等经营无异常情况。" }, { buttonText: "合规经营", sectionTitle: "合规经营", inputText: "该司人员稳定,经营合规、有专人负责消保处置工作。" }, { buttonText: "风险管理贯穿业务全流程,风险数据监控细化至业务人员及渠道,提前预警处理", sectionTitle: "风险管理", inputText: "该司风险能力尚可,暂未发现风险事件,由信贷专员管理业务风险。" }, { buttonText: "有初审且内容完整、全面", sectionTitle: "客户初审", inputText: "有销售经理进行客户初审,内容完整全面。" }, { buttonText: "零售贷款客户明细台账", sectionTitle: "业务台账检查", inputText: "由信贷专员管理客户台账,客户台账较为详细,暂无异常。" }, { buttonText: "放款归档资料及时归档", sectionTitle: "档案管理", inputText: "由信贷专员管理资料归档且及时。" }, { buttonText: "已检查,信贷专员子账号为本人使用", sectionTitle: "子账号管理", inputText: "该店子账号为本人使用,暂无异常。" }, { buttonText: "总经理", sectionTitle: "沟通对象", inputText: "与总经理沟通,重点围绕1季度金融活动开展,引导销售经理推荐我司至惠贷/置换贷产品,关注近期风险事件。" }, { buttonText: "近期无异常且无人员变动", sectionTitle: "组织架构人员", inputText: "员工较为稳定,暂未发现其他异常情况。" }, { buttonText: "已沟通,已制定达成渗透率目标的可行性具体措施", sectionTitle: "业务提升", inputText: "已与该店店总陈仁保沟通,结合我司展厅贷款要求,制定渗透率目标至50%" }, { buttonText: "合作商绩效考核内容全面", sectionTitle: "绩效管理", inputText: "该店已制定含有金融考核的绩效考核内容。" }, { buttonText: "近阶段业务开拓重点方向明确", sectionTitle: "经营方针", inputText: "该店近期业务方面明确,主要通过金融政策提升单笔利润,包装零首付等产品。" }, { buttonText: "对信贷专员进行能力评估,并反馈其上级人员", sectionTitle: "核心岗位招聘", inputText: "该店金融专员能力达标,并已向店总进行告知" }, { buttonText: "了解并向合作商分析对比竞品政策优劣势", sectionTitle: "竞品政策", inputText: "了解竞品政策,并分析竞品政策优劣势,该店主要与建行合作,5年起产品,总费率25返15,满2年还款无违约金。" }, { buttonText: "主推奇瑞汽金产品、开口率达到100%,销售流程中涵盖奇瑞汽金产品介绍内容", sectionTitle: "业务人员", inputText: "当前主推其他金融渠道产品,金融开口率普遍不足。" }, { buttonText: "具备产品包装能力,针对客户信息开展初审、系统操作熟练", sectionTitle: "信贷专员", inputText: "该司销售人员具备产品包装能力及系统操作熟练。" }, { buttonText: "已提出", sectionTitle: "业务改善建议", inputText: "适当放款审批尺度,提高审批通过率,恢复高融政策。" }, { buttonText: "常规培训-产品政策", sectionTitle: "培训内容(多选)", inputText: "主要培训内容为产品包装、系统操作、近期风险案列等内容" }, { buttonText: "未走访", sectionTitle: null, inputText: null } ]; function createStartButton() { if (document.getElementById("autofill-btn")) return; const btn = document.createElement("div"); btn.id = "autofill-btn"; btn.innerHTML = ` <button style="padding: 8px 14px; background-color: #409EFF; color: white; border: none; border-radius: 6px; cursor: pointer;"> 🚀 点击开始自动填写 </button> <span id="close-btn" style="margin-left:10px; cursor:pointer; color:#666;">✖</span> `; Object.assign(btn.style, { position: "fixed", top: "20px", right: "20px", background: "#fff", zIndex: 9999, padding: "8px", borderRadius: "8px", boxShadow: "0 2px 10px rgba(0,0,0,0.2)", display: "flex", alignItems: "center" }); document.body.appendChild(btn); btn.querySelector("button").onclick = () => { runAllTasks(); btn.querySelector("button").innerText = "✅ 已完成填写(3秒后自动关闭)"; btn.querySelector("button").style.backgroundColor = "#ccc"; setTimeout(() => btn.remove(), 3000); }; btn.querySelector("#close-btn").onclick = () => btn.remove(); } function runAllTasks() { taskList.forEach(({ buttonText, sectionTitle, inputText }) => { try { const buttonSpan = Array.from(document.querySelectorAll('span.el-radio__label')) .find(el => el.textContent.trim() === buttonText); if (buttonSpan) buttonSpan.click(); if (sectionTitle && inputText) { const sectionHeader = Array.from(document.querySelectorAll('.form-section-item-header')) .find(el => el.innerText.includes(sectionTitle)); if (sectionHeader) { const section = sectionHeader.closest('.form-section-item-header').parentElement; const textarea = section.querySelector('textarea'); if (textarea) { textarea.value = inputText; textarea.dispatchEvent(new Event('input', { bubbles: true })); } } } } catch (e) { console.error("❌ 出错:", buttonText, e); } }); } // 判断是否是目标页面 function isTargetPage() { return location.href.includes("/liufangReport/addReport"); } // 初始化函数,包含重试机制 function initAutoFillUI(retry = 0) { if (!isTargetPage()) return; const target = document.querySelector('span.el-radio__label'); if (target) { createStartButton(); } else if (retry < 20) { setTimeout(() => initAutoFillUI(retry + 1), 500); } else { console.warn("🚫 等待页面元素超时"); } } // 监听单页应用的路由变化 const originalPushState = history.pushState; history.pushState = function (...args) { originalPushState.apply(this, args); setTimeout(initAutoFillUI, 300); }; window.addEventListener("popstate", () => { setTimeout(initAutoFillUI, 300); }); // 页面初次加载也运行 initAutoFillUI(); })();