This commit is contained in:
shijing 2024-01-16 15:41:08 +08:00
parent 5e1990c1a0
commit 88fcbe4518
8 changed files with 127 additions and 137 deletions

View File

@ -5,6 +5,7 @@ NODE_ENV = production
# VUE_APP_TITLE = '曲阳金隅安全智能管控平台' # VUE_APP_TITLE = '曲阳金隅安全智能管控平台'
# VUE_APP_TITLE = '托克逊能源管理平台' # VUE_APP_TITLE = '托克逊能源管理平台'
VUE_APP_TITLE = '中建材光子科技有限公司' VUE_APP_TITLE = '中建材光子科技有限公司'
# VUE_APP_TITLE = '超低排放系统'
# 接口地址 # 接口地址

2
.gitignore vendored
View File

@ -1,6 +1,6 @@
.DS_Store .DS_Store
node_modules node_modules
/ignore/ /public/img/ignore/
/dist /dist
.VSCodeCounter/ .VSCodeCounter/

View File

@ -132,35 +132,33 @@ export default {
padding: 0 20px 20px; padding: 0 20px 20px;
} }
// //
.el-popper{ // .el-popper{
border-radius: 0; // border-radius: 0;
} // }
.el-popper[data-popper-placement^=bottom]>.el-popper__arrow { // .el-popper[data-popper-placement^=bottom]>.el-popper__arrow {
top: -5px; // top: -5px;
display: none !important; // display: none !important;
} // }
.el-popper.is-light{ // .el-popper.is-light{
// display: block !important;; // background: linear-gradient(to right, #116a7c, #92f2ff);
background: linear-gradient(to right, #116a7c, #92f2ff); // border-image-source: linear-gradient(to right, #92f2ff, #116a7c);
border-image-source: linear-gradient(to right, #92f2ff, #116a7c); // }
// background: linear-gradient(to right, #053949, #107b90); // .el-dropdown-menu{
} // padding: 0.7vh 0.7vh 0.2vh;
.el-dropdown-menu{ // background: linear-gradient(to right, #053949, #107b90);
padding: 0.7vh 0.7vh 0.2vh; // }
background: linear-gradient(to right, #053949, #107b90); // .el-dropdown-menu__item{
} // margin-bottom: 0.5vh;
.el-dropdown-menu__item{ // background: linear-gradient(to right, #1b8fa4, #107b90 );
margin-bottom: 0.5vh; // }
background: linear-gradient(to right, #1b8fa4, #107b90 ); // .el-dropdown-menu__item:not(.is-disabled):focus{
} // background: linear-gradient(to right, #053949, #107b90);
.el-dropdown-menu__item:not(.is-disabled):focus{ // color: #ffffff;
background: linear-gradient(to right, #053949, #107b90); // }
color: #ffffff; // .el-dropdown-menu__item{
} // color: #ffffff;
.el-dropdown-menu__item{ // }
color: #ffffff; //
}
</style> </style>

View File

@ -408,7 +408,7 @@ export default {
base: { base: {
name: "账户信息", name: "账户信息",
req: async function(project){ req: async function(project){
return await http.get(`${config.API_URL}/system/base_config/${project}`); return await http.get(`${config.API_URL}/system/base_config${project}`);
} }
}, },
getInfo: { getInfo: {

View File

@ -2141,7 +2141,7 @@ const routes = [
"meta": { "meta": {
"title": "数据大屏Enp", "title": "数据大屏Enp",
"icon": "el-icon-platform", "icon": "el-icon-platform",
"perms": ["bigScreenP"], "perms": ["bigScreenEnp"],
"fullpage": true, "fullpage": true,
}, },
"component": "bigScreen/index_enp" "component": "bigScreen/index_enp"

View File

@ -7,7 +7,7 @@
<div :class="bindClass(0)" @click="menuClick(0)"> <div :class="bindClass(0)" @click="menuClick(0)">
<div class="menuItem">首页</div> <div class="menuItem">首页</div>
</div> </div>
<div :class="bindClass(1)" @click="menuClick(1)"> <div :class="bindClass(1)">
<div class="menuItem"> <div class="menuItem">
<el-dropdown class="dropdown" trigger="click" @command="handleClick"> <el-dropdown class="dropdown" trigger="click" @command="handleClick">
<span class="el-dropdown-link"> <span class="el-dropdown-link">
@ -24,7 +24,7 @@
</el-dropdown> </el-dropdown>
</div> </div>
</div> </div>
<div :class="bindClass(2)" @click="menuClick(2)"> <div :class="bindClass(2)">
<div class="menuItem"> <div class="menuItem">
<el-dropdown class="dropdown" trigger="click" @command="handleClick2"> <el-dropdown class="dropdown" trigger="click" @command="handleClick2">
<span class="el-dropdown-link"> <span class="el-dropdown-link">
@ -46,7 +46,7 @@
</div> </div>
<div style="position: absolute;top:0.9vh;right: 8px;height: 65px;"> <div style="position: absolute;top:0.9vh;right: 8px;height: 65px;">
<div style="display: flex;padding-top: 1.4vh;padding-right: 1vw;justify-content: flex-end;"> <div style="display: flex;padding-top: 1.4vh;padding-right: 1vw;justify-content: flex-end;">
<div :class="bindClass(3)" @click="menuClick(3)"> <div :class="bindClass(3)">
<div class="menuItem"> <div class="menuItem">
<el-dropdown class="dropdown" trigger="click" @command="handleClick3"> <el-dropdown class="dropdown" trigger="click" @command="handleClick3">
<span class="el-dropdown-link"> <span class="el-dropdown-link">
@ -62,10 +62,10 @@
</div> </div>
<div class="menuItem">运输清洁</div> <div class="menuItem">运输清洁</div>
</div> </div>
<div :class="bindClass(4)" @click="menuClick(4)"> <div :class="bindClass(4)">
<div class="menuItem">环保管理</div> <div class="menuItem">环保管理</div>
</div> </div>
<div :class="bindClass(5)" @click="menuClick(5)"> <div :class="bindClass(5)">
<div class="menuItem">台账管理</div> <div class="menuItem">台账管理</div>
</div> </div>
<div class="wraning_icon"></div> <div class="wraning_icon"></div>
@ -88,29 +88,29 @@
<div v-show="activeIndex==0" class="left_other animate__animated animate__backInLeft"> <div v-show="activeIndex==0" class="left_other animate__animated animate__backInLeft">
<div class="panel"> <div class="panel">
<div class="chart" id="chart1"> <div class="chart" id="chart1">
<img src="/img/ignore/left1.png" style="width: 100%;height: 100%;"> <img src="img/ignore/left1.png" style="width: 100%;height: 100%;">
</div> </div>
</div> </div>
<div class="panel"> <div class="panel">
<div class="chart" id="chart2"> <div class="chart" id="chart2">
<img src="/img/ignore/left2.png" style="width: 100%;height: 100%;"> <img src="img/ignore/left2.png" style="width: 100%;height: 100%;">
</div> </div>
</div> </div>
<div class="panel"> <div class="panel">
<div class="chart" id="chart3"> <div class="chart" id="chart3">
<img src="/img/ignore/left3.png" style="width: 100%;height: 100%;"> <img src="img/ignore/left3.png" style="width: 100%;height: 100%;">
</div> </div>
</div> </div>
</div> </div>
<div v-show="activeIndex==0" class="right_other animate__animated animate__backInRight"> <div v-show="activeIndex==0" class="right_other animate__animated animate__backInRight">
<div class="panel"> <div class="panel">
<div class="chart" id="chart4"> <div class="chart" id="chart4">
<img src="/img/ignore/right1.png" style="width: 100%;height: 100%;"> <img src="img/ignore/right1.png" style="width: 100%;height: 100%;">
</div> </div>
</div> </div>
<div class="panel"> <div class="panel">
<div class="chart" id="chart5"> <div class="chart" id="chart5">
<img src="/img/ignore/right2.png" style="width: 100%;height: 100%;"> <img src="img/ignore/right2.png" style="width: 100%;height: 100%;">
</div> </div>
</div> </div>
</div> </div>
@ -320,8 +320,8 @@
} }
return classInfo return classInfo
}, },
menuClick(index){ menuClick(){
// this.activeIndex = index; this.activeIndex = 0;
}, },
handleClick(command){ handleClick(command){
this.activeIndex = 1; this.activeIndex = 1;
@ -447,7 +447,7 @@
ground.material = groundMaterial; ground.material = groundMaterial;
ground.position.y = -0.1 ground.position.y = -0.1
// //
const backgroundImage = new BABYLON.Layer('', 'img/backgroundEnp.jpg', scene, true); const backgroundImage = new BABYLON.Layer('', 'img/ignore/backgroundEnp.jpg', scene, true);
const camera = new BABYLON.ArcRotateCamera("camera", that.initialAlpha, that.initialBeta, that.initialRadius, new BABYLON.Vector3(0, 0, 1.2)); const camera = new BABYLON.ArcRotateCamera("camera", that.initialAlpha, that.initialBeta, that.initialRadius, new BABYLON.Vector3(0, 0, 1.2));
that.initialTarget = camera.getTarget(); that.initialTarget = camera.getTarget();
camera.upperBetaLimit = Math.PI / 2.3; // camera.upperBetaLimit = Math.PI / 2.3; //
@ -508,14 +508,17 @@
mesh_rect.addControl(mesh_name); mesh_rect.addControl(mesh_name);
var remoteGlbUrl = process.env.VUE_APP_BASEURL + "/media/model/factory.glb"; var remoteGlbUrl = process.env.VUE_APP_BASEURL + "/media/model/factory.glb";
BABYLON.SceneLoader.Append(remoteGlbUrl, "", scene, function (scene) { BABYLON.SceneLoader.Append(remoteGlbUrl, "", scene, function (scene) {
// debugger;
// console.log(scene)
// console.table(scene.meshes)
// ------ /[\u4E00-\u9FA5]+/g.test(str)
for (let key in that.sectionNames) { for (let key in that.sectionNames) {
const value = that.sectionNames[key]; const value = that.sectionNames[key];
const mesh = scene.getMeshByName(key); const mesh = scene.getMeshByName(key);
if (mesh) { if (mesh) {
const img = new BABYLON_GUI.Image('img', 'img/ignore/qm_enp.png');
img.width = '50px';
img.height = '50px';
img.top = '50%';
img.left = '50%';
img.horizontalAlignment = 10;
img.verticalAlignment = 10;
// //
const rect1 = new BABYLON_GUI.Rectangle(value + '_rect'); const rect1 = new BABYLON_GUI.Rectangle(value + '_rect');
rect1.width = "60px"; rect1.width = "60px";
@ -525,30 +528,12 @@
rect1.thickness = 2; rect1.thickness = 2;
rect1.background = "green"; rect1.background = "green";
rect1.isPointerBlocker = true; // 穿 rect1.isPointerBlocker = true; // 穿
advancedTexture.addControl(rect1); advancedTexture.addControl(img);
var label = new BABYLON_GUI.TextBlock(value + '_label'); var label = new BABYLON_GUI.TextBlock(value + '_label');
label.text = value; label.text = value;
label.color = 'white'; label.color = 'white';
label.fontSize = '14px'; label.fontSize = '14px';
rect1.addControl(label); img.linkWithMesh(mesh);
rect1.linkWithMesh(mesh);
rect1.linkOffsetY = -30;
if (value == '电石渣') {
rect1.linkOffsetY = -200;
var line = new BABYLON_GUI.Line();
line.lineWidth = 4;
line.color = "Orange";
line.y1 = 10;
line.y2 = 15;
line.linkOffsetY = -15;
line.dash = [3, 3];
advancedTexture.addControl(line);
line.linkWithMesh(mesh);
let connectedControl = advancedTexture.getControlByName('电石渣_rect')
line.connectedControl = connectedControl;
// line.connectedControl = rect1;
// line.connectedControl = data_view;
}
rect1.onPointerDownObservable.add(() => { rect1.onPointerDownObservable.add(() => {
const mesh = rect1.linkedMesh; const mesh = rect1.linkedMesh;
@ -612,38 +597,38 @@
for (let j = 0; j < hd; j++) { for (let j = 0; j < hd; j++) {
grid.addColumnDefinition(1 / hd); grid.addColumnDefinition(1 / hd);
} }
for (let i = 0; i < wd; i++) { // for (let i = 0; i < wd; i++) {
for (let j = 0; j < hd; j++) { // for (let j = 0; j < hd; j++) {
var rc = new BABYLON_GUI.TextBlock("rc" + i + j); // var rc = new BABYLON_GUI.TextBlock("rc" + i + j);
rc.width = "100%"; // rc.width = "100%";
// rc.height = "100%"; // // rc.height = "100%";
rc.thickness = 0; // rc.thickness = 0;
if (j == 0 && i == 0) { // if (j == 0 && i == 0) {
rc.width = "120px"; // rc.width = "120px";
rc.text = "产品产量:"; // rc.text = "";
rc.color = "white"; // rc.color = "white";
rc.fontSize = '16px'; // rc.fontSize = '16px';
} else if (j == 0 && i == 1) { // } else if (j == 0 && i == 1) {
rc.width = "120px"; // rc.width = "120px";
rc.color = "white"; // rc.color = "white";
rc.fontSize = '16px'; // rc.fontSize = '16px';
rc.text = "单位产品电耗:"; // rc.text = "";
} else if (j == 1 && i == 0) { // } else if (j == 1 && i == 0) {
// rc.text = that.mgroupValues[value].total; // // rc.text = that.mgroupValues[value].total;
rc.text = "123"; // rc.text = "123";
rc.width = "80px"; // rc.width = "80px";
rc.fontSize = '18px'; // rc.fontSize = '18px';
rc.color = "rgb(44,237,255)"; // rc.color = "rgb(44,237,255)";
} else if (j == 1 && i == 1) { // } else if (j == 1 && i == 1) {
// rc.text = that.mgroupValues[value].total; // // rc.text = that.mgroupValues[value].total;
rc.text = "456"; // rc.text = "456";
rc.width = "80px"; // rc.width = "80px";
rc.fontSize = '18px'; // rc.fontSize = '18px';
rc.color = "rgb(44,237,255)"; // rc.color = "rgb(44,237,255)";
} // }
grid.addControl(rc, i, j); // grid.addControl(rc, i, j);
} // }
} // }
data_view.addControl(grid); data_view.addControl(grid);
var mgroup_close = BABYLON_GUI.Button.CreateSimpleButton("mgroup_close" + value, '关闭'); var mgroup_close = BABYLON_GUI.Button.CreateSimpleButton("mgroup_close" + value, '关闭');
mgroup_close.width = "70px" mgroup_close.width = "70px"
@ -657,9 +642,9 @@
console.log('data_view', data_view) console.log('data_view', data_view)
data_view.isVisible = false; data_view.isVisible = false;
}) })
data_view.addControl(mgroup_close); // data_view.addControl(mgroup_close);
// StackPanelGUI // StackPanelGUI
advancedTexture.addControl(data_view); // advancedTexture.addControl(data_view);
data_view.linkWithMesh(mesh); data_view.linkWithMesh(mesh);
data_view.linkOffsetY = -120; data_view.linkOffsetY = -120;
if (value == '电石渣') { if (value == '电石渣') {
@ -701,36 +686,36 @@
header.color = "white"; header.color = "white";
control_main.addControl(header); control_main.addControl(header);
// checkbox // checkbox
var checkbox1 = new BABYLON_GUI.Checkbox(); // var checkbox1 = new BABYLON_GUI.Checkbox();
checkbox1.width = "20px"; // checkbox1.width = "20px";
checkbox1.height = "20px"; // checkbox1.height = "20px";
checkbox1.isChecked = true; // checkbox1.isChecked = true;
checkbox1.marginLeft = '16px' // checkbox1.marginLeft = '16px'
checkbox1.color = "green"; // checkbox1.color = "green";
checkbox1.onIsCheckedChangedObservable.add(function (value) { // checkbox1.onIsCheckedChangedObservable.add(function (value) {
if (value) { // if (value) {
for (let key in that.sectionNames) { // for (let key in that.sectionNames) {
let name = that.sectionNames[key] + '_data_view'; // let name = that.sectionNames[key] + '_data_view';
console.log(name) // console.log(name)
let dataView = advancedTexture.getControlByName(name); // let dataView = advancedTexture.getControlByName(name);
dataView.isVisible = true; // dataView.isVisible = true;
} // }
} else { // } else {
for (let key in that.sectionNames) { // for (let key in that.sectionNames) {
let name = that.sectionNames[key] + '_data_view'; // let name = that.sectionNames[key] + '_data_view';
console.log(name) // console.log(name)
let dataView = advancedTexture.getControlByName(name); // let dataView = advancedTexture.getControlByName(name);
dataView.isVisible = false; // dataView.isVisible = false;
} // }
} // }
}); // });
control_main.addControl(checkbox1); // control_main.addControl(checkbox1);
var header1 = new BABYLON_GUI.TextBlock(); // var header1 = new BABYLON_GUI.TextBlock();
header1.text = "工段数据"; // header1.text = "";
header1.width = "80px"; // header1.width = "80px";
header1.textHorizontalAlignment = BABYLON_GUI.Control.HORIZONTAL_ALIGNMENT_LEFT; // header1.textHorizontalAlignment = BABYLON_GUI.Control.HORIZONTAL_ALIGNMENT_LEFT;
header1.color = "white"; // header1.color = "white";
control_main.addControl(header1); // control_main.addControl(header1);
// //
canvas.addEventListener('mousemove', (event) => { canvas.addEventListener('mousemove', (event) => {
// 使 scene.pick // 使 scene.pick

View File

@ -175,6 +175,10 @@ export default {
this.$router.replace({ this.$router.replace({
path: "/dashboard_photon", path: "/dashboard_photon",
}); });
}else if(base_name_short=='超低排放'){
this.$router.replace({
path: "/bigScreenEnp",
});
} }
// if(this.$TOOL.data.get('BASE_INFO').base.base_name_short==''){// // if(this.$TOOL.data.get('BASE_INFO').base.base_name_short==''){//
// this.$router.replace({ // this.$router.replace({

View File

@ -18,7 +18,7 @@
<div class="login-form"> <div class="login-form">
<div class="login-header"> <div class="login-header">
<div class="logo" v-if="baseConfig.name=='photon'"> <div class="logo" v-if="baseConfig.name=='photon'">
<img id="photonImg" :alt="baseConfig.base_login_img" :src="baseConfig.base_login_img"> <img id="photonImg" :alt="baseConfig.base_login" :src="baseConfig.base_login">
</div> </div>
<div class="logo" v-else> <div class="logo" v-else>
<img :alt="baseConfig.base_name_short" :src="baseConfig.base_logo"> <img :alt="baseConfig.base_name_short" :src="baseConfig.base_logo">
@ -155,8 +155,10 @@
getDept(){ getDept(){
let that = this; let that = this;
let project = ''; let project = '';
if(that.project_code==undefined){}else{ if(that.project_code==undefined){
project = '?project='+that.project_code; project = '/';
}else{
project = '?project_code='+that.project_code;
} }
that.$API.system.config.base.req(project).then((res) => { that.$API.system.config.base.req(project).then((res) => {
that.baseConfig = res.base; that.baseConfig = res.base;