feat: 实现供水运营专题大屏BI可视化
- 新增OperationDashboard.vue全屏大屏组件 - 添加6个核心KPI指标卡片: 进水总量/出水总量/产销差率/营收额/平均水质/报警次数 - 实现6个ECharts图表: 供水趋势/水质分布/报警统计/管网空间/设备状态/营收分析 - 创建静态HTML版本operation-dashboard.html,使用CDN加载Vue3/ECharts/Element Plus - 更新路由配置,添加/operation路径支持 - 修复nextTick导入问题,优化build脚本 🚧 开发者: bot_dev1 📝 任务: #38 [BI] 运营仪表盘 + 供水专题大屏
This commit is contained in:
+59
@@ -0,0 +1,59 @@
|
||||
import { __extends } from "tslib";
|
||||
import Path from '../Path.js';
|
||||
var sin = Math.sin;
|
||||
var cos = Math.cos;
|
||||
var radian = Math.PI / 180;
|
||||
var RoseShape = (function () {
|
||||
function RoseShape() {
|
||||
this.cx = 0;
|
||||
this.cy = 0;
|
||||
this.r = [];
|
||||
this.k = 0;
|
||||
this.n = 1;
|
||||
}
|
||||
return RoseShape;
|
||||
}());
|
||||
export { RoseShape };
|
||||
var Rose = (function (_super) {
|
||||
__extends(Rose, _super);
|
||||
function Rose(opts) {
|
||||
return _super.call(this, opts) || this;
|
||||
}
|
||||
Rose.prototype.getDefaultStyle = function () {
|
||||
return {
|
||||
stroke: '#000',
|
||||
fill: null
|
||||
};
|
||||
};
|
||||
Rose.prototype.getDefaultShape = function () {
|
||||
return new RoseShape();
|
||||
};
|
||||
Rose.prototype.buildPath = function (ctx, shape) {
|
||||
var R = shape.r;
|
||||
var k = shape.k;
|
||||
var n = shape.n;
|
||||
var x0 = shape.cx;
|
||||
var y0 = shape.cy;
|
||||
var x;
|
||||
var y;
|
||||
var r;
|
||||
ctx.moveTo(x0, y0);
|
||||
for (var i = 0, len = R.length; i < len; i++) {
|
||||
r = R[i];
|
||||
for (var j = 0; j <= 360 * n; j++) {
|
||||
x = r
|
||||
* sin(k / n * j % 360 * radian)
|
||||
* cos(j * radian)
|
||||
+ x0;
|
||||
y = r
|
||||
* sin(k / n * j % 360 * radian)
|
||||
* sin(j * radian)
|
||||
+ y0;
|
||||
ctx.lineTo(x, y);
|
||||
}
|
||||
}
|
||||
};
|
||||
return Rose;
|
||||
}(Path));
|
||||
Rose.prototype.type = 'rose';
|
||||
export default Rose;
|
||||
Reference in New Issue
Block a user