From c46646c9e63e464ccc6222fe47e5ae09b33318ec Mon Sep 17 00:00:00 2001 From: cwchen <1048842385@qq.com> Date: Fri, 13 Sep 2024 19:15:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B0=B4=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/publics/public.js | 2 + pages/dataAnalysis/dataAnalysis.html | 10 ++- pages/web/views/main.html | 6 +- plugin/watermark.js | 121 +++++++++++++++++++++++++++ 4 files changed, 136 insertions(+), 3 deletions(-) create mode 100644 plugin/watermark.js diff --git a/js/publics/public.js b/js/publics/public.js index 54fa218..dcc7700 100644 --- a/js/publics/public.js +++ b/js/publics/public.js @@ -22,6 +22,8 @@ if(!token){ const roleCode = JSON.parse(us).roleCode; const orgId = JSON.parse(us).orgId; const userId = JSON.parse(us).userId; +const nickName = JSON.parse(us).nickName; +const roleName = JSON.parse(us).roleName; /* 退出登录 */ function loginout(type) { diff --git a/pages/dataAnalysis/dataAnalysis.html b/pages/dataAnalysis/dataAnalysis.html index 93b5ad3..ebb91c1 100644 --- a/pages/dataAnalysis/dataAnalysis.html +++ b/pages/dataAnalysis/dataAnalysis.html @@ -16,10 +16,14 @@ - + + 数据分析应用 - +
@@ -34,6 +38,8 @@
  • 项目管理分析
  • 整体效能分析
  • 数据分析和报告
  • +
  • 穿戴设备监测设备指标分析
  • +
  • 延期原因分析
  • diff --git a/pages/web/views/main.html b/pages/web/views/main.html index c319579..0cd055b 100644 --- a/pages/web/views/main.html +++ b/pages/web/views/main.html @@ -20,6 +20,7 @@ + 首页 - +
    diff --git a/plugin/watermark.js b/plugin/watermark.js new file mode 100644 index 0000000..e8c6e95 --- /dev/null +++ b/plugin/watermark.js @@ -0,0 +1,121 @@ +(function(watermark){ + window.watermarkdivs = []; + // 加载水印 + var loadMark = function(settings) { + var defaultSettings={ + watermark_txt:"text", + watermark_x:20,//水印起始位置x轴坐标 + watermark_y:20,//水印起始位置Y轴坐标 + watermark_rows:0,//水印行数 + watermark_cols:0,//水印列数 + watermark_x_space:100,//水印x轴间隔 + watermark_y_space:50,//水印y轴间隔 + watermark_color:'#d2d2d2',//水印字体颜色 + watermark_alpha:0.5,//水印透明度,要求设置在大于等于0.005 + watermark_fontsize:'14px',//水印字体大小 + watermark_font:'微软雅黑',//水印字体 + watermark_width:150,//水印宽度 + watermark_height:100,//水印长度 + watermark_angle:30,//水印倾斜度数 + watermark_bg_alpha:0.5 //加透明度导致隐形水印无法读取 + }; + //采用配置项替换默认值,作用类似jquery.extend + if(arguments.length===1&&typeof arguments[0] ==="object" ) + { + var src=arguments[0]||{}; + for(key in src) + { + if(src[key]&&defaultSettings[key]&&src[key]===defaultSettings[key]) + continue; + else if(src[key]) + defaultSettings[key]=src[key]; + } + } + + if (window.watermarkdivs && window.watermarkdivs.length > 0) { + document.body.removeChild(document.getElementById("otdivid")); + window.watermarkdivs = []; + } + + //获取页面最大宽度 + var page_width = Math.max(document.body.scrollWidth,document.body.clientWidth); + //获取页面最大长度 + var page_height = Math.max(document.body.scrollHeight,document.body.clientHeight); + + // 创建文档碎片 + var oTemp = document.createDocumentFragment(); + //创建水印外壳div + var otdiv = document.getElementById("otdivid"); + if(!otdiv){ + otdiv =document.createElement('div'); + otdiv.id="otdivid"; + otdiv.style.pointerEvents = "none"; + document.body.appendChild(otdiv); + } + + //如果将水印列数设置为0,或水印列数设置过大,超过页面最大宽度,则重新计算水印列数和水印x轴间隔 + if (defaultSettings.watermark_cols == 0 || (parseInt(defaultSettings.watermark_x + defaultSettings.watermark_width *defaultSettings.watermark_cols + defaultSettings.watermark_x_space * (defaultSettings.watermark_cols - 1)) > page_width)) { + defaultSettings.watermark_cols = parseInt((page_width - defaultSettings.watermark_x + defaultSettings.watermark_x_space) / (defaultSettings.watermark_width + defaultSettings.watermark_x_space)); + defaultSettings.watermark_x_space = parseInt((page_width - defaultSettings.watermark_x - defaultSettings.watermark_width * defaultSettings.watermark_cols) / (defaultSettings.watermark_cols - 1)); + } + //如果将水印行数设置为0,或水印行数设置过大,超过页面最大长度,则重新计算水印行数和水印y轴间隔 + if (defaultSettings.watermark_rows == 0 || (parseInt(defaultSettings.watermark_y + defaultSettings.watermark_height * defaultSettings.watermark_rows + defaultSettings.watermark_y_space * (defaultSettings.watermark_rows - 1)) > page_height)) { + defaultSettings.watermark_rows = parseInt((defaultSettings.watermark_y_space + page_height - defaultSettings.watermark_y) / (defaultSettings.watermark_height + defaultSettings.watermark_y_space)); + defaultSettings.watermark_y_space = parseInt(((page_height - defaultSettings.watermark_y) - defaultSettings.watermark_height * defaultSettings.watermark_rows) / (defaultSettings.watermark_rows - 1)); + } + + var x; + var y; + for (var i = 0; i < defaultSettings.watermark_rows; i++) { + y = defaultSettings.watermark_y + (defaultSettings.watermark_y_space + defaultSettings.watermark_height) * i; + for (var j = 0; j < defaultSettings.watermark_cols; j++) { + x = defaultSettings.watermark_x + (defaultSettings.watermark_width + defaultSettings.watermark_x_space) * j; + + var mask_div = document.createElement('div'); + var oText=document.createTextNode(defaultSettings.watermark_txt); + mask_div.appendChild(oText); + // 设置一张水印相关属性start + mask_div.id = 'mask_div' + i + j; + //设置水印div倾斜显示 + mask_div.style.webkitTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)"; + mask_div.style.MozTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)"; + mask_div.style.msTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)"; + mask_div.style.OTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)"; + mask_div.style.transform = "rotate(-" + defaultSettings.watermark_angle + "deg)"; + mask_div.style.visibility = ""; + mask_div.style.position = "absolute"; + //选不中 + mask_div.style.left = x + 'px'; + mask_div.style.top = y + 'px'; + mask_div.style.overflow = "hidden"; + mask_div.style.zIndex = "9999"; + //mask_div.style.border="solid #eee 1px"; + mask_div.style.opacity = defaultSettings.watermark_alpha; + mask_div.style.fontSize = defaultSettings.watermark_fontsize; + mask_div.style.fontFamily = defaultSettings.watermark_font; + mask_div.style.color = defaultSettings.watermark_color; + mask_div.style.textAlign = "center"; + mask_div.style.width = defaultSettings.watermark_width + 'px'; + mask_div.style.height = defaultSettings.watermark_height + 'px'; + mask_div.style.display = "block"; + //设置一张水印相关属性end + //附加到文档碎片中 + otdiv.appendChild(mask_div); + + window.watermarkdivs.push(otdiv); //控制页面大小变化时水印字体 + }; + }; + //一次性添加到document中 + document.body.appendChild(oTemp); + }; + + watermark.load = function(settings) { + window.onload = function() { + loadMark(settings); + }; + window.onresize = function() { + loadMark(settings); + }; + }; + +})(window.watermark = {}); \ No newline at end of file