Compare commits

..

161 Commits

Author SHA1 Message Date
lcw
2ea84f248c lcw 2026-01-06 22:09:05 +08:00
lcw
953cb9943d lcw 2025-12-27 22:09:13 +08:00
lcw
3fb06e3847 lcw 2025-12-27 11:10:31 +08:00
lcw
596c9f99e4 Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-26 09:39:28 +08:00
lcw
e59b401828 lcw 2025-12-26 09:39:22 +08:00
669c8cb3b5 Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-25 11:07:09 +08:00
22c3e0253b 更新 2025-12-25 11:07:03 +08:00
lcw
6999c36c3a lcw 2025-12-25 10:38:17 +08:00
lcw
709ce4a1e9 lcw 2025-12-25 10:35:00 +08:00
23cc528707 更新 2025-12-25 09:45:07 +08:00
bc92cfa735 更新 2025-12-25 09:37:17 +08:00
1a7b27209f 更新 2025-12-24 09:27:05 +08:00
5ae5dc7224 更新 2025-12-23 18:58:47 +08:00
039e0ce421 提交 2025-12-23 11:42:42 +08:00
369fb4c00a 提交 2025-12-22 17:22:18 +08:00
ab9249479c 提交 2025-12-22 16:04:33 +08:00
c18dde1b43 大屏调整 2025-12-20 16:48:23 +08:00
d3110fb7b9 调整大屏跳转 2025-12-20 15:45:11 +08:00
a9959ce537 调整数据监测 2025-12-20 15:32:44 +08:00
d0b7e6c768 feat: 样式菜单更新 2025-12-19 15:54:20 +08:00
56000fdbdf feat: 文字调整 2025-12-19 14:12:57 +08:00
32d5e53b59 feat:战略研判修改 2025-12-19 14:11:16 +08:00
f6ce1455da feat: 增加一个blur事件 2025-12-19 13:21:56 +08:00
f9af7e060d feaet: 调整报告接口 2025-12-19 13:21:27 +08:00
198ee8f734 更新 2025-12-19 13:15:06 +08:00
97f7736081 Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-19 11:41:50 +08:00
f0910016ae 更新 2025-12-19 11:41:05 +08:00
fb9d399598 feat: 接口调整 2025-12-19 11:20:19 +08:00
7e61b43e5c feat: 战术研判-增加创建报告 2025-12-19 10:33:26 +08:00
05524353f4 feat:增加自建研判 2025-12-19 10:07:17 +08:00
c1fc037cdf feat:战术研判更新一次 2025-12-19 10:07:00 +08:00
9c179c71ca feat: jsdoc微调 2025-12-18 21:38:50 +08:00
26dfe3d6c0 feat: 更新 2025-12-18 21:29:33 +08:00
463051f109 feat: 更新 2025-12-18 21:26:39 +08:00
cfd6b5b140 feat: 按钮权限 2025-12-18 20:36:23 +08:00
901d7bab71 feat: 增加处置下发 2025-12-18 20:30:35 +08:00
3b8697e744 feat: 避免卡住 2025-12-18 20:14:32 +08:00
2ba8ac607e feat: 优化跳转 2025-12-18 20:08:37 +08:00
186d1e0d53 feat: 大屏-战术,战略研判对接 2025-12-18 19:58:12 +08:00
571518f1e5 feat:增加查看反馈 2025-12-18 19:33:13 +08:00
cc2bf59a19 feat:增加反馈内容 2025-12-18 19:20:57 +08:00
6ddecd72af 更新 2025-12-18 18:46:37 +08:00
34a1e4aefb Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-18 18:44:57 +08:00
244fcc1703 更新 2025-12-18 18:44:20 +08:00
bdde65f1c4 feat: 接口跟新 2025-12-18 18:26:58 +08:00
693695c178 Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-18 18:24:16 +08:00
2241222bb7 新增预警积分排名 2025-12-18 18:24:09 +08:00
a21192c47a feat: 仅格式,方便格式缩进 2025-12-18 18:10:01 +08:00
0c0c35316d feat:更新列表 2025-12-18 17:50:58 +08:00
504f3a328c feat: 接口更新 2025-12-18 17:42:33 +08:00
b18d8e9f25 feat: 更新一次 2025-12-18 17:41:40 +08:00
e581d9d5b3 feat:线索socket地址修改 2025-12-18 17:36:51 +08:00
5a42ab322f feat: 备用 2025-12-18 17:18:53 +08:00
c4f051d82c feat: 更新查询条件 2025-12-18 16:34:49 +08:00
75c34d983f 更新 2025-12-18 15:45:59 +08:00
9319ba65a7 Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-18 15:39:39 +08:00
3426b66dd5 新增本地预警 2025-12-18 15:39:31 +08:00
1b8655d2ee feat: 增加菜单【转会商列表】,【补充/续报列表】,【积分列表】 2025-12-18 15:10:13 +08:00
2bcab2abd6 Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-18 14:37:24 +08:00
783b01a514 更新 2025-12-18 14:36:07 +08:00
7307b6c5da feat: 文字调整 2025-12-18 11:58:26 +08:00
ca8c391d9f feat: 线索编号注释 2025-12-18 11:57:20 +08:00
c9c1bc1b2e Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-18 11:56:15 +08:00
060f2bedaa 更新 2025-12-18 11:55:54 +08:00
6ad95dcd36 feat: 加回关注部门 2025-12-18 11:32:49 +08:00
33a127ec16 feat: 移除无用,修改菜单名 2025-12-18 11:07:35 +08:00
a83e15ecbd feat: 信息采集-创建改打标签 2025-12-18 10:41:07 +08:00
5c4ca373e3 feat: 权限备用 2025-12-18 10:40:38 +08:00
9da3ae7e3c 更新 2025-12-18 10:24:21 +08:00
9f6f712e3d Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-18 10:23:25 +08:00
b754de7135 feat:增加一个权限判断 2025-12-18 10:23:05 +08:00
7917b9cd44 更新预警 2025-12-18 10:22:42 +08:00
dc5e5e5f43 feat: 内部列表和共享列表只有补充信息和详情 2025-12-18 09:59:34 +08:00
7750f239ec feat: 增加转会商续报功能 2025-12-17 21:20:41 +08:00
45a1a1ea17 feat: 接口更新 2025-12-17 20:07:03 +08:00
963cf54ec1 更新 2025-12-17 19:20:27 +08:00
791fd08277 更新 2025-12-17 19:11:51 +08:00
6f51e0e0d9 更新 2025-12-17 19:04:41 +08:00
299f6b8f02 更新 2025-12-17 19:03:38 +08:00
561aec8a90 更新 2025-12-17 18:53:27 +08:00
acdf6abdea Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-17 18:47:10 +08:00
7853672770 更新页面 2025-12-17 18:46:32 +08:00
ff8b4e5cba feat: 修改按钮权限 2025-12-17 17:32:59 +08:00
c0237acfff feat: 菜单调整 2025-12-17 16:56:48 +08:00
lcw
9fc4d227b3 Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-17 16:28:08 +08:00
lcw
6a80bddff3 lcw 2025-12-17 16:27:59 +08:00
032b35ec9e feat: 更细 2025-12-17 11:08:50 +08:00
a965b65dfc feat: 打包更细 2025-12-17 11:07:52 +08:00
9a34edb678 feat: 弄成中文的 2025-12-17 10:46:35 +08:00
5e9248a63f feat: 增加红色名字 2025-12-17 10:15:10 +08:00
69ddc7c007 feat: 增加导出功能 2025-12-16 21:28:17 +08:00
941bd6fe57 feat: 工具更细 2025-12-16 20:41:24 +08:00
d2e394a1bb 调整 2025-12-16 16:44:58 +08:00
82058b9de7 调整菜单 2025-12-16 12:15:09 +08:00
89751eb908 feat: 解决可能出错的地方 2025-12-16 09:57:07 +08:00
bb870644f3 feat: 增加详情 2025-12-15 22:20:23 +08:00
efbc27b7d5 feat: 增加详情 2025-12-15 22:16:02 +08:00
3d83be0c17 feat: 增加详情 2025-12-15 22:04:49 +08:00
ae4db70eed feat: 增加列详情 2025-12-15 21:54:51 +08:00
68f8363a6b feat: 调整接口和内容的问题 2025-12-15 21:44:13 +08:00
cd06aaf1be feat: 注销基础管理 2025-12-15 11:04:36 +08:00
476f711ac8 feat: 菜单备用 2025-12-13 20:35:58 +08:00
6c3134656d feat: 更细一次 2025-12-13 20:34:12 +08:00
5e0c88b70e feat: 菜单更细 2025-12-13 19:08:20 +08:00
185eb452cc feat: 颜色调整 2025-12-13 17:24:54 +08:00
cf431a19b1 feat: 置顶增加精品2字 2025-12-13 17:21:40 +08:00
1c0976eb88 feat: 格式化下 2025-12-13 17:18:20 +08:00
5ab71f95b0 feat:情报论坛-市情报指有置顶功能 2025-12-13 17:17:00 +08:00
93c9715e78 feat:搜索条件修改 2025-12-13 16:26:30 +08:00
cbe9fc9ead feat: 菜单备用 2025-12-13 11:04:17 +08:00
e26bacab0a feat:更细一次 2025-12-12 21:08:46 +08:00
8b56e84690 feat:增加一个车牌号搜索 2025-12-12 20:28:00 +08:00
dcab225362 feat: 再次调整 2025-12-12 19:41:31 +08:00
5fef40a152 feat: 接口调整 2025-12-12 19:39:27 +08:00
f1a1be33aa feat: 接口参数调整 2025-12-12 19:37:21 +08:00
fab2ff778a feat: 类型支持 2025-12-12 19:33:20 +08:00
2b96cd8a53 feat: 增加类型 2025-12-12 19:33:10 +08:00
18249d23a0 feat: 警告移除 2025-12-12 19:32:53 +08:00
29acd58a3d Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-12 18:17:32 +08:00
e73067aa9a 更新 2025-12-12 18:16:55 +08:00
55c066dadb feat: 搜索条件更新 2025-12-12 18:08:51 +08:00
b1e988080a feat: 添加菜单【人像预警】,车辆预警 2025-12-12 17:59:07 +08:00
48f857284e Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-12 17:31:01 +08:00
9699e6ee57 更新 2025-12-12 17:30:54 +08:00
b3bb67c9d2 feat: 警情管理 菜单调整 2025-12-12 16:53:47 +08:00
ef30bcd03c feat: 全息跳转不了的问题调整 2025-12-12 16:53:24 +08:00
ac0d801efb feat: 注释console 2025-12-12 16:36:26 +08:00
3ad392ef2e feat: console注释掉,信息太多了 2025-12-12 16:35:13 +08:00
b1f9d3f4f7 Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-12 16:29:42 +08:00
91fdf6dbe5 更新 2025-12-12 16:29:36 +08:00
9ddd9c2326 feat: 优化列表 2025-12-12 16:27:30 +08:00
0ab9216ed8 feat: 情报来源类型-增加表格。优秀信息员,优秀研判的列表 2025-12-12 16:25:24 +08:00
0ec9ead6d3 feat: 更新列表 2025-12-12 16:04:04 +08:00
b904aaba97 feat: 更新package.json 2025-12-12 15:56:31 +08:00
0e2f4806f5 更新 2025-12-12 15:52:45 +08:00
fe232cd046 Merge branch 'main' of http://61.139.16.27:26684/zy_oyj/sgxt_web 2025-12-12 15:20:17 +08:00
d85214bc62 更新页面 2025-12-12 15:19:45 +08:00
2cd2bedb3c feat: 解决没数据报错的问题 2025-12-12 14:45:18 +08:00
a5e8346a32 feat: 全息档案跳转-地址修改 2025-12-12 12:46:11 +08:00
ffdb0661e2 feat: 修改颜色 2025-12-12 10:32:19 +08:00
bdbde8f267 feat: 打包bat 2025-12-12 10:20:08 +08:00
3fbb4f9d4b feat: 情报流转-解决报错问题 2025-12-12 10:06:08 +08:00
6c08a68d4c feat: 移除pdf下载功能 2025-12-12 09:47:20 +08:00
7062604ba3 更新 2025-12-12 09:05:19 +08:00
383e88e5d2 更新 2025-12-12 09:04:26 +08:00
495ea21785 feat: 删除打包后的数据 2025-12-11 21:50:35 +08:00
a4a240d32b feat: 解决预警等级数量问题 2025-12-11 21:49:45 +08:00
4a590a720d feat: 颜色改深一点 2025-12-11 21:45:38 +08:00
f5b15b64eb feat: 忽略打包后的文件 2025-12-11 21:19:44 +08:00
ac392dd928 feat: 解决标颜色文字不显示的问题 2025-12-11 21:18:40 +08:00
403a10a940 feat: 大屏接口对接 2025-12-11 21:08:18 +08:00
47fc69d705 feat: 调宽一点 2025-12-11 21:00:48 +08:00
b5013244e5 feat:增加下载按钮微调样式 2025-12-11 20:59:26 +08:00
ba092529e6 feat:避免undefine错误 2025-12-11 20:50:32 +08:00
19391cb466 feat: 调整调整功能和导出名称 2025-12-11 20:44:33 +08:00
10204a0baf feat: 菜单调整 2025-12-11 20:31:46 +08:00
be2d2bbe31 feat: 增加状态显示 2025-12-11 19:35:19 +08:00
6960dc1651 feat: 全息档案按钮-都改成跳转gonga某网址 2025-12-11 19:15:57 +08:00
3b78393e54 feat: 下载调整 2025-12-11 18:44:06 +08:00
1ac4807851 feat: 导出先更新一次 2025-12-11 18:18:38 +08:00
10747e9158 更新 2025-12-11 18:13:40 +08:00
724 changed files with 17470 additions and 186768 deletions

2
.gitignore vendored
View File

@ -9,3 +9,5 @@ dist/
build/
.env.local
*.log
# 忽略 gsxt 文件夹(打包后的文件夹)
gsxt/

0
gsxt.zip Normal file
View File

View File

@ -1,738 +0,0 @@
(function(b, c, a) {
c[b] = a()
})("h337", this, function() {
var c = {
defaultRadius: 40,
defaultRenderer: "canvas2d",
defaultGradient: {
0.35: "rgb(0,0,255)",
0.45: "rgb(0,255,255)",
0.75: "rgb(0,255,0)",
0.85: "yellow",
1: "rgb(255,0,0)"
},
defaultMaxOpacity: 1,
defaultMinOpacity: 0,
defaultBlur: 0.85,
defaultXField: "x",
defaultYField: "y",
defaultValueField: "value",
plugins: {}
};
var g = (function l() {
var n = function n(o) {
this._coordinator = {};
this._data = [];
this._radi = [];
this._min = 0;
this._max = 1;
this._xField = o.xField || o.defaultXField;
this._yField = o.yField || o.defaultYField;
this._valueField = o.valueField || o.defaultValueField;
if (o.radius) {
this._cfgRadius = o.radius
}
};
var m = c.defaultRadius;
n.prototype = {
_organiseData: function(o, q) {
var u = o[this._xField];
var s = o[this._yField];
var z = this._radi;
var w = this._data;
var t = this._max;
var p = this._min;
var v = o[this._valueField] || 1;
var r = o.radius || this._cfgRadius || m;
if (!w[u]) {
w[u] = [];
z[u] = []
}
if (!w[u][s]) {
w[u][s] = v;
z[u][s] = r
} else {
w[u][s] += v
}
if (w[u][s] > t) {
if (!q) {
this._max = w[u][s]
} else {
this.setDataMax(w[u][s])
}
return false
} else {
return {
x: u,
y: s,
value: v,
radius: r,
min: p,
max: t
}
}
},
_unOrganizeData: function() {
var r = [];
var q = this._data;
var p = this._radi;
for (var o in q) {
for (var s in q[o]) {
r.push({
x: o,
y: s,
radius: p[o][s],
value: q[o][s]
})
}
}
return {
min: this._min,
max: this._max,
data: r
}
},
_onExtremaChange: function() {
this._coordinator.emit("extremachange", {
min: this._min,
max: this._max
})
},
addData: function() {
if (arguments[0].length > 0) {
var p = arguments[0];
var o = p.length;
while (o--) {
this.addData.call(this, p[o])
}
} else {
var q = this._organiseData(arguments[0], true);
if (q) {
this._coordinator.emit("renderpartial", {
min: this._min,
max: this._max,
data: [q]
})
}
}
return this
},
setData: function(q) {
var p = q.data;
var r = p.length;
this._data = [];
this._radi = [];
for (var o = 0; o < r; o++) {
this._organiseData(p[o], false)
}
this._max = q.max;
this._min = q.min || 0;
this._onExtremaChange();
this._coordinator.emit("renderall", this._getInternalData());
return this
},
removeData: function() {},
setDataMax: function(o) {
this._max = o;
this._onExtremaChange();
this._coordinator.emit("renderall", this._getInternalData());
return this
},
setDataMin: function(o) {
this._min = o;
this._onExtremaChange();
this._coordinator.emit("renderall", this._getInternalData());
return this
},
setCoordinator: function(o) {
this._coordinator = o
},
_getInternalData: function() {
return {
max: this._max,
min: this._min,
data: this._data,
radi: this._radi
}
},
getData: function() {
return this._unOrganizeData()
}
};
return n
})();
var h = (function j() {
var p = function(q) {
var s = q.gradient || q.defaultGradient;
var v = document.createElement("canvas");
var u = v.getContext("2d");
v.width = 256;
v.height = 1;
var t = u.createLinearGradient(0, 0, 256, 1);
for (var r in s) {
t.addColorStop(r, s[r])
}
u.fillStyle = t;
u.fillRect(0, 0, 256, 1);
return u.getImageData(0, 0, 256, 1).data
};
var o = function(s, t) {
var v = document.createElement("canvas");
var r = v.getContext("2d");
var q = s;
var w = s;
v.width = v.height = s * 2;
if (t == 1) {
r.beginPath();
r.arc(q, w, s, 0, 2 * Math.PI, false);
r.fillStyle = "rgba(0,0,0,1)";
r.fill()
} else {
var u = r.createRadialGradient(q, w, s * t, q, w, s);
u.addColorStop(0, "rgba(0,0,0,1)");
u.addColorStop(1, "rgba(0,0,0,0)");
r.fillStyle = u;
r.fillRect(0, 0, 2 * s, 2 * s)
}
return v
};
var n = function(u) {
var B = [];
var t = u.min;
var x = u.max;
var C = u.radi;
var u = u.data;
var q = Object.keys(u);
var r = q.length;
while (r--) {
var s = q[r];
var y = Object.keys(u[s]);
var A = y.length;
while (A--) {
var w = y[A];
var z = u[s][w];
var v = C[s][w];
B.push({
x: s,
y: w,
value: z,
radius: v
})
}
}
return {
min: t,
max: x,
data: B
}
};
function m(t) {
var q = t.element;
var u = this.shadowCanvas = document.createElement("canvas");
var s = this.canvas = t.canvas || document.createElement("canvas");
var r = this._renderBoundaries = [10000, 10000, 0, 0];
var v = getComputedStyle(t.element) || {};
s.className = "heatmap-canvas";
this._width = s.width = u.width = +(v.width.replace(/px/, ""));
this._height = s.height = u.height = +(v.height.replace(/px/, ""));
this.shadowCtx = u.getContext("2d");
this.ctx = s.getContext("2d");
s.style.cssText = u.style.cssText = "position:absolute;left:0;top:0;";
q.style.position = "relative";
q.appendChild(s);
this._palette = p(t);
this._templates = {};
this._setStyles(t)
}
m.prototype = {
renderPartial: function(q) {
this._drawAlpha(q);
this._colorize()
},
renderAll: function(q) {
this._clear();
this._drawAlpha(n(q));
this._colorize()
},
_updateGradient: function(q) {
this._palette = p(q)
},
updateConfig: function(q) {
if (q.gradient) {
this._updateGradient(q)
}
this._setStyles(q)
},
setDimensions: function(r, q) {
this._width = r;
this._height = q;
this.canvas.width = this.shadowCanvas.width = r;
this.canvas.height = this.shadowCanvas.height = q
},
_clear: function() {
this.shadowCtx.clearRect(0, 0, this._width, this._height);
this.ctx.clearRect(0, 0, this._width, this._height)
},
_setStyles: function(q) {
this._blur = (q.blur == 0) ? 0 : (q.blur || q.defaultBlur);
if (q.backgroundColor) {
this.canvas.style.backgroundColor = q.backgroundColor
}
this._opacity = (q.opacity || 0) * 255;
this._maxOpacity = (q.maxOpacity || q.defaultMaxOpacity) * 255;
this._minOpacity = (q.minOpacity || q.defaultMinOpacity) * 255;
this._useGradientOpacity = !!q.useGradientOpacity
},
_drawAlpha: function(v) {
var u = this._min = v.min;
var B = this._max = v.max;
var v = v.data || [];
var s = v.length;
var t = 1 - this._blur;
while (s--) {
var F = v[s];
var D = F.x;
var A = F.y;
var z = F.radius;
var E = Math.min(F.value, B);
var r = D - z;
var q = A - z;
var C = this.shadowCtx;
var w;
if (!this._templates[z]) {
this._templates[z] = w = o(z, t)
} else {
w = this._templates[z]
}
C.globalAlpha = (E - u) / (B - u);
C.drawImage(w, r, q);
if (r < this._renderBoundaries[0]) {
this._renderBoundaries[0] = r
}
if (q < this._renderBoundaries[1]) {
this._renderBoundaries[1] = q
}
if (r + 2 * z > this._renderBoundaries[2]) {
this._renderBoundaries[2] = r + 2 * z
}
if (q + 2 * z > this._renderBoundaries[3]) {
this._renderBoundaries[3] = q + 2 * z
}
}
},
_colorize: function() {
var w = this._renderBoundaries[0];
var u = this._renderBoundaries[1];
var B = this._renderBoundaries[2] - w;
var z = this._renderBoundaries[3] - u;
var G = this._width;
var A = this._height;
var r = this._opacity;
var I = this._maxOpacity;
var C = this._minOpacity;
var v = this._useGradientOpacity;
if (w < 0) {
w = 0
}
if (u < 0) {
u = 0
}
if (w + B > G) {
B = G - w
}
if (u + z > A) {
z = A - u
}
var J = this.shadowCtx.getImageData(w, u, B, z);
var H = J.data;
var E = H.length;
var F = this._palette;
for (var D = 3; D < E; D += 4) {
var s = H[D];
var t = s * 4;
if (!t) {
continue
}
var q;
if (r > 0) {
q = r
} else {
if (s < I) {
if (s < C) {
q = C
} else {
q = s
}
} else {
q = I
}
}
H[D - 3] = F[t];
H[D - 2] = F[t + 1];
H[D - 1] = F[t + 2];
H[D] = v ? F[t + 3] : q
}
J.data = H;
this.ctx.putImageData(J, w, u);
this._renderBoundaries = [1000, 1000, 0, 0]
},
getValueAt: function(r) {
var w;
var t = this.shadowCtx;
var s = t.getImageData(r.x, r.y, 1, 1);
var v = s.data[3];
var q = this._max;
var u = this._min;
w = (Math.abs(q - u) * (v / 255)) >> 0;
return w
},
getDataURL: function() {
return this.canvas.toDataURL()
}
};
return m
})();
var e = (function b() {
var m = false;
if (c.defaultRenderer === "canvas2d") {
m = h
}
return m
})();
var i = {
merge: function() {
var m = {};
var n = arguments.length;
for (var p = 0; p < n; p++) {
var q = arguments[p];
for (var o in q) {
m[o] = q[o]
}
}
return m
}
};
var f = (function k() {
var m = (function o() {
function q() {
this.cStore = {}
}
q.prototype = {
on: function(s, u, r) {
var t = this.cStore;
if (!t[s]) {
t[s] = []
}
t[s].push((function(v) {
return u.call(r, v)
}))
},
emit: function(u, t) {
var w = this.cStore;
if (w[u]) {
var r = w[u].length;
for (var s = 0; s < r; s++) {
var v = w[u][s];
v(t)
}
}
}
};
return q
})();
var p = function(r) {
var s = r._renderer;
var t = r._coordinator;
var q = r._store;
t.on("renderpartial", s.renderPartial, s);
t.on("renderall", s.renderAll, s);
t.on("extremachange", function(u) {
r._config.onExtremaChange && r._config.onExtremaChange({
min: u.min,
max: u.max,
gradient: r._config.gradient || r._config.defaultGradient
})
});
q.setCoordinator(t)
};
function n() {
var q = this._config = i.merge(c, arguments[0] || {});
this._coordinator = new m();
if (q.plugin) {
var s = q.plugin;
if (!c.plugins[s]) {
throw new Error("Plugin '" + s + "' not found. Maybe it was not registered.")
} else {
var r = c.plugins[s];
this._renderer = new r.renderer(q);
this._store = new r.store(q)
}
} else {
this._renderer = new e(q);
this._store = new g(q)
}
p(this)
}
n.prototype = {
addData: function() {
this._store.addData.apply(this._store, arguments);
return this
},
removeData: function() {
this._store.removeData && this._store.removeData.apply(this._store, arguments);
return this
},
setData: function() {
this._store.setData.apply(this._store, arguments);
return this
},
setDataMax: function() {
this._store.setDataMax.apply(this._store, arguments);
return this
},
setDataMin: function() {
this._store.setDataMin.apply(this._store, arguments);
return this
},
configure: function(q) {
this._config = i.merge(this._config, q);
this._renderer.updateConfig(this._config);
this._coordinator.emit("renderall", this._store._getInternalData());
return this
},
repaint: function() {
this._coordinator.emit("renderall", this._store._getInternalData());
return this
},
getData: function() {
return this._store.getData()
},
getDataURL: function() {
return this._renderer.getDataURL()
},
getValueAt: function(q) {
if (this._store.getValueAt) {
return this._store.getValueAt(q)
} else {
if (this._renderer.getValueAt) {
return this._renderer.getValueAt(q)
} else {
return null
}
}
}
};
return n
})();
var a = {
create: function(m) {
return new f(m)
},
register: function(n, m) {
c.plugins[n] = m
}
};
return a
});
var BMapLib = window.BMapLib = BMapLib || {};
(function() {
var a = BMapLib.HeatmapOverlay = function(c) {
this.conf = c;
this.conf.visible = c.visible === undefined ? true : c.visible;
this.heatmap = null;
this.latlngs = [];
this.bounds = null
};
a.prototype = new BMapGL.Overlay();
a.prototype.initialize = function(f) {
this._map = f;
var c = document.createElement("div");
c.style.position = "absolute";
c.style.top = 0;
c.style.left = 0;
c.style.border = 0;
c.style.width = this._map.getSize().width + "px";
c.style.height = this._map.getSize().height + "px";
this.conf.element = c;
if (!b()) {
return c
}
f.getPanes().floatPane.appendChild(c);
this.conf.valueField = this.conf.valueField || "count";
this.heatmap = h337.create(this.conf);
var e = this;
f.addEventListener("resize", function(h) {
var g = h.size;
c.style.width = g.width + "px";
c.style.height = g.height + "px";
e.heatmap._renderer.setDimensions(g.width, g.height);
e.draw()
});
this._div = c;
return c
};
a.prototype.draw = function() {
if (!b()) {
return
}
var k = this._map.getBounds();
if (k.equals(this.bounds)) {
return
}
this.bounds = k;
var j = this._map.pointToOverlayPixel(k.getNorthEast()),
p = this._map.pointToOverlayPixel(k.getSouthWest()),
c = j.y,
i = p.x,
l = p.y - j.y,
o = j.x - p.x;
this.conf.element.style.left = i + "px";
this.conf.element.style.top = c + "px";
this.conf.element.style.width = o + "px";
this.conf.element.style.height = l + "px";
if (this.latlngs.length > 0) {
this.heatmap.removeData();
var n = this.latlngs.length;
d = {
max: this.heatmap._store.getData().max,
data: []
};
while (n--) {
var f = this.latlngs[n].latlng;
if (!k.containsPoint(f)) {
continue
}
var g = this._map.pointToOverlayPixel(f),
i = this._map.pointToOverlayPixel(k.getSouthWest()).x,
c = this._map.pointToOverlayPixel(k.getNorthEast()).y,
e = new BMapGL.Pixel(g.x - i, g.y - c);
var m = this.pixelTransform(e);
d.data.push({
x: m.x,
y: m.y,
count: this.latlngs[n].c
})
}
if (this.conf.radiusChangeByZoom) {
this.heatmap._store._cfgRadius = this.conf.radiusChangeByZoom(this._map.getZoom())
}
this.heatmap.setData(d)
}
};
a.prototype.pixelTransform = function(f) {
var c = this.heatmap.width,
e = this.heatmap.height;
while (f.x < 0) {
f.x += c
}
while (f.x > c) {
f.x -= c
}
while (f.y < 0) {
f.y += e
}
while (f.y > e) {
f.y -= e
}
f.x = (f.x >> 0);
f.y = (f.y >> 0);
return f
};
a.prototype.setDataSet = function(j) {
this.data = j;
if (!b()) {
return
}
var i = this._map.getBounds();
var l = {
max: j.max,
data: []
};
var m = j.data,
k = m.length;
this.latlngs = [];
this.heatmap.removeData();
if (this.conf.radiusChangeByZoom) {
this.heatmap._store._cfgRadius = this.conf.radiusChangeByZoom(this._map.getZoom())
}
while (k--) {
var f = new BMapGL.Point(m[k].lng, m[k].lat);
this.latlngs.push({
latlng: f,
c: m[k].count
});
if (!i.containsPoint(f)) {
continue
}
var g = this._map.pointToOverlayPixel(f),
h = this._map.pointToOverlayPixel(i.getSouthWest()).x,
c = this._map.pointToOverlayPixel(i.getNorthEast()).y,
e = new BMapGL.Pixel(g.x - h, g.y - c);
var n = this.pixelTransform(e);
l.data.push({
x: n.x,
y: n.y,
count: m[k].count
})
}
this.heatmap.setData(l)
};
a.prototype.addDataPoint = function(e, g, f) {
if (!b()) {
return
}
if (this.data && this.data.data) {
this.data.data.push({
lng: e,
lat: g,
count: f
})
}
var h = new BMapGL.Point(e, g),
c = this.pixelTransform(this._map.pointToOverlayPixel(h));
this.heatmap.store.addDataPoint(c.x, c.y, f);
this.latlngs.push({
latlng: h,
c: f
})
};
a.prototype.toggle = function() {
if (!b()) {
return
}
if (this.conf.visible === true) {
this.conf.visible = false
} else {
this.conf.visible = true
}
if (this.conf.visible) {
this.conf.element.style.display = "block"
} else {
this.conf.element.style.display = "none"
}
};
a.prototype.setOptions = function(c) {
if (!b()) {
return
}
for (var e in c) {
if (e == "radius") {
this.heatmap._store._cfgRadius = c[e]
}
if (e == "opacity") {
c[e] = c[e] / 100
}
}
this.heatmap.configure(c);
if (this.data) {
this.setDataSet(this.data)
}
};
function b() {
var c = document.createElement("canvas");
return !!(c.getContext && c.getContext("2d"))
}
})();

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

Binary file not shown.

View File

@ -1,3 +0,0 @@

Microsoft YaHei 10240-10495

View File

@ -1,3 +0,0 @@

Microsoft YaHei 10496-10751

View File

@ -1,3 +0,0 @@

Microsoft YaHei 10752-11007

View File

@ -1,3 +0,0 @@

Microsoft YaHei 11008-11263

View File

@ -1,3 +0,0 @@

Microsoft YaHei 11264-11519

View File

@ -1,3 +0,0 @@

Microsoft YaHei 11520-11775

View File

@ -1,3 +0,0 @@

Microsoft YaHei 1280-1535

View File

@ -1,3 +0,0 @@

Microsoft YaHei 1536-1791

View File

@ -1,3 +0,0 @@

Microsoft YaHei 1792-2047

View File

@ -1,3 +0,0 @@

Microsoft YaHei 2048-2303

File diff suppressed because one or more lines are too long

View File

@ -1,3 +0,0 @@

Microsoft YaHei 2304-2559

View File

@ -1,3 +0,0 @@

Microsoft YaHei 2560-2815

View File

@ -1,3 +0,0 @@

Microsoft YaHei 2816-3071

View File

@ -1,3 +0,0 @@

Microsoft YaHei 3072-3327

Some files were not shown because too many files have changed in this diff Show More