From fdfbe8d6e8de107890f6a4b851470c195fc3da7f Mon Sep 17 00:00:00 2001 From: cpf <1105965053@qq.com> Date: Thu, 18 Nov 2021 10:15:41 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9D=83=E9=99=90=E9=99=90=E5=88=B6=E5=AE=8C?= =?UTF-8?q?=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../left-domain/left-domain.component.html | 44 +++++++++---------- .../left-domain/left-domain.component.ts | 10 ++++- src/app/pages/plan/plan.component.html | 20 ++++----- src/app/pages/plan/plan.component.scss | 2 +- src/app/pages/plan/plan.component.ts | 12 ++++- 5 files changed, 52 insertions(+), 36 deletions(-) diff --git a/src/app/pages/left-domain/left-domain.component.html b/src/app/pages/left-domain/left-domain.component.html index 9f246ed..a8d5ca9 100644 --- a/src/app/pages/left-domain/left-domain.component.html +++ b/src/app/pages/left-domain/left-domain.component.html @@ -23,7 +23,7 @@ <div class="positionLeftTop" *ngIf="selectFacilityId === item.getID()"></div><div class="positionLeftBottom" *ngIf="selectFacilityId === item.getID()"></div> <div class="positionRightTop" *ngIf="selectFacilityId === item.getID()"></div><div class="positionRightBottom" *ngIf="selectFacilityId === item.getID()"></div> <!-- 选中样式 --> - <p class="title"><input type="text" class="tableInput" [(ngModel)]="item.getPropertyData().name"></p> + <p class="title"><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().name"></p> <div class="table"> <div class="tableHeader"> <p>品牌</p> @@ -33,12 +33,12 @@ <p>油泵类型</p> </div> <div class="tableContent"> - <p><input type="text" class="tableInput" [disabled]="!editModel" [(ngModel)]="item.getPropertyData().brand"></p> - <p><input type="text" class="tableInput" [disabled]="!editModel" [(ngModel)]="item.getPropertyData().superBrand"></p> - <p><input type="text" class="tableInput" [disabled]="!editModel" [(ngModel)]="item.getPropertyData().oilGunNum"></p> - <p><input type="text" class="tableInput" [disabled]="!editModel" [(ngModel)]="item.getPropertyData().oilProductNo"></p> + <p><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().brand"></p> + <p><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().superBrand"></p> + <p><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().oilGunNum"></p> + <p><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().oilProductNo"></p> <p style="padding-left: 8px;"> - <nz-select class="tableSelect" [nzBorderless]="true" [nzDisabled]="!editModel" [(ngModel)]="item.getPropertyData().oilPumpType"> + <nz-select class="tableSelect" [nzBorderless]="true" [nzDisabled]="!editMode" [(ngModel)]="item.getPropertyData().oilPumpType"> <nz-option nzValue="zxb" nzLabel="自吸泵"></nz-option> <nz-option nzValue="qyb" nzLabel="潜油泵"></nz-option> </nz-select> @@ -55,7 +55,7 @@ <div class="positionLeftTop" *ngIf="selectFacilityId === item.getID()"></div><div class="positionLeftBottom" *ngIf="selectFacilityId === item.getID()"></div> <div class="positionRightTop" *ngIf="selectFacilityId === item.getID()"></div><div class="positionRightBottom" *ngIf="selectFacilityId === item.getID()"></div> <!-- 选中样式 --> - <p class="title"><input type="text" class="tableInput" [(ngModel)]="item.getPropertyData().name"></p> + <p class="title"><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().name"></p> <div class="table"> <div class="tableHeader"> <p>油品品号</p> @@ -66,13 +66,13 @@ <p>油罐类型</p> </div> <div class="tableContent"> - <p><input type="text" class="tableInput" [disabled]="!editModel" [(ngModel)]="item.getPropertyData().oilProductNo"></p> - <p><input type="text" class="tableInput" [disabled]="!editModel" [(ngModel)]="item.getPropertyData().oilTankVolume"></p> - <p><input type="text" class="tableInput" [disabled]="!editModel" [(ngModel)]="item.getPropertyData().safeVolume"></p> - <p><input type="text" class="tableInput" [disabled]="!editModel" [(ngModel)]="item.getPropertyData().quantity"></p> - <p><input type="text" class="tableInput" [disabled]="!editModel" [(ngModel)]="item.getPropertyData().tankFarm"></p> + <p><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().oilProductNo"></p> + <p><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().oilTankVolume"></p> + <p><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().safeVolume"></p> + <p><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().quantity"></p> + <p><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().tankFarm"></p> <p style="padding-left: 8px;"> - <nz-select class="tableSelect" [nzBorderless]="true" [nzDisabled]="!editModel" [(ngModel)]="item.getPropertyData().oilTankType"> + <nz-select class="tableSelect" [nzBorderless]="true" [nzDisabled]="!editMode" [(ngModel)]="item.getPropertyData().oilTankType"> <nz-option nzValue="scg" nzLabel="双层罐"></nz-option> <nz-option nzValue="dcg" nzLabel="单层罐"></nz-option> <nz-option nzValue="fsgc" nzLabel="防渗罐池"></nz-option> @@ -98,7 +98,7 @@ <div class="positionLeftTop" *ngIf="selectFacilityId === item.getID()"></div><div class="positionLeftBottom" *ngIf="selectFacilityId === item.getID()"></div> <div class="positionRightTop" *ngIf="selectFacilityId === item.getID()"></div><div class="positionRightBottom" *ngIf="selectFacilityId === item.getID()"></div> <!-- 选中样式 --> - <p class="title"><input type="text" class="tableInput" [(ngModel)]="item.getPropertyData().name"></p> + <p class="title"><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().name"></p> <div class="table"> <div class="tableHeader"> <p class="tableImg">图片</p> @@ -106,7 +106,7 @@ <div class="tableContent"> <p class="tableImg"> <img *ngIf="item.getPropertyData().img" [src]="item.getPropertyData().img"> - <a href="javascript:;" class="bottomPlanUpload uploadImgBox" [ngStyle]="{'float': item.getPropertyData().img? 'right' : 'left'}"><input type="file"><i nz-icon nzType="plus" nzTheme="outline"></i></a> + <a href="javascript:;" class="bottomPlanUpload uploadImgBox" [ngStyle]="{'float': item.getPropertyData().img? 'right' : 'left'}" *ngIf="editMode"><input type="file"><i nz-icon nzType="plus" nzTheme="outline"></i></a> </p> </div> </div> @@ -120,7 +120,7 @@ <div class="positionLeftTop" *ngIf="selectFacilityId === item.getID()"></div><div class="positionLeftBottom" *ngIf="selectFacilityId === item.getID()"></div> <div class="positionRightTop" *ngIf="selectFacilityId === item.getID()"></div><div class="positionRightBottom" *ngIf="selectFacilityId === item.getID()"></div> <!-- 选中样式 --> - <p class="title"><input type="text" class="tableInput" [(ngModel)]="item.getPropertyData().name"></p> + <p class="title"><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().name"></p> <div class="table"> <div class="tableHeader"> <p>油气回收系统类型</p> @@ -129,15 +129,15 @@ </div> <div class="tableContent"> <p style="padding-left: 8px;"> - <nz-select class="tableSelect" [nzBorderless]="true" [nzDisabled]="!editModel" [(ngModel)]="item.getPropertyData().VRUType"> + <nz-select class="tableSelect" [nzBorderless]="true" [nzDisabled]="!editMode" [(ngModel)]="item.getPropertyData().VRUType"> <nz-option nzValue="fss" nzLabel="分散式"></nz-option> <nz-option nzValue="jzs" nzLabel="集中式"></nz-option> </nz-select> </p> - <p><input type="text" class="tableInput" [disabled]="!editModel" [(ngModel)]="item.getPropertyData().VRUPumpType"></p> + <p><input type="text" class="tableInput" [disabled]="!editMode" [(ngModel)]="item.getPropertyData().VRUPumpType"></p> <p class="tableImg"> <img *ngIf="item.getPropertyData().img" [src]="item.getPropertyData().img"> - <a href="javascript:;" class="bottomPlanUpload uploadImgBox" [ngStyle]="{'float': item.getPropertyData().img? 'right' : 'left'}"><input type="file"><i nz-icon nzType="plus" nzTheme="outline"></i></a> + <a href="javascript:;" class="bottomPlanUpload uploadImgBox" [ngStyle]="{'float': item.getPropertyData().img? 'right' : 'left'}" *ngIf="editMode"><input type="file"><i nz-icon nzType="plus" nzTheme="outline"></i></a> </p> </div> </div> @@ -148,12 +148,12 @@ <div class="publicBox disposalPlan" *ngIf="beforeFence === 7 && allMarkPlanData"> <div class="interval" *ngFor="let item of allMarkPlanData.datas;let key = index;"> <div class="publicDisposal disposalHeader"> - {{item.name}}<label><i nz-icon nzType="plus-circle" nzTheme="outline" (click)="addNodePop = item.id;"></i><i nz-icon nzType="delete" nzTheme="outline" (click)="deleteDisposal(item)"></i></label> + {{item.name}}<label *ngIf="editMode"><i nz-icon nzType="plus-circle" nzTheme="outline" (click)="addNodePop = item.id;"></i><i nz-icon nzType="delete" nzTheme="outline" (click)="deleteDisposal(item)"></i></label> </div> <ul> <li class="publicDisposal disposalContent" *ngFor="let items of item.nodes;let keys = index;"> <span (click)='selectNode(item,items)' [ngClass]="{'selectNode': selectNodeId == items.id && selectPlanId == item.id}">{{items.name}}</span> - <label><i nz-icon nzType="save" nzTheme="outline" (click)="saveDisposal(item.id,items.id)"></i><i nz-icon nzType="delete" nzTheme="outline" (click)="deleteDisposal(item,items)"></i></label> + <label *ngIf="editMode"><i nz-icon nzType="save" nzTheme="outline" (click)="saveDisposal(item.id,items.id)"></i><i nz-icon nzType="delete" nzTheme="outline" (click)="deleteDisposal(item,items)"></i></label> </li> </ul> </div> @@ -204,7 +204,7 @@ <!-- 弹窗 --> </div> - <div class="childBottom" *ngIf="beforeFence === 0"> + <div class="childBottom" *ngIf="beforeFence === 0 && editMode"> <button (click)="editInfo()"><i nz-icon nzType="edit" nzTheme="outline"></i>编辑信息</button> <button (click)="deriveExcel()"><i nz-icon nzType="file-excel" nzTheme="outline"></i>导出Excel</button> </div> diff --git a/src/app/pages/left-domain/left-domain.component.ts b/src/app/pages/left-domain/left-domain.component.ts index 3dfb457..c00ffb3 100644 --- a/src/app/pages/left-domain/left-domain.component.ts +++ b/src/app/pages/left-domain/left-domain.component.ts @@ -21,10 +21,16 @@ export class LeftDomainComponent implements OnInit { constructor(private message: NzMessageService) { } ngOnInit(): void { + let editMode = sessionStorage.getItem('isGasStation') + if (editMode == 'false') { + this.editMode = true + } else { + this.editMode = false + } this.initComponent() } - editModel: boolean = true; //编辑/查看模式 + editMode: boolean = true; //编辑/查看模式 beforeFence: number; //当前选中功能栏 FacilityList: FacilityInfoUIItem[] = []; //统计设备 list selectFacilityId: string = null; //选中设备 ID @@ -107,7 +113,7 @@ export class LeftDomainComponent implements OnInit { } }) //编辑模式 - if (this.editModel) { + if (this.editMode) { let isFind = this.treeData.find(item=>{ return item.key === 'XF_MHQ' }) if (!isFind) { let primaryNode = { title: '灭火器', key: 'XF_MHQ', selectable: false, } diff --git a/src/app/pages/plan/plan.component.html b/src/app/pages/plan/plan.component.html index 2585b0e..ea53268 100644 --- a/src/app/pages/plan/plan.component.html +++ b/src/app/pages/plan/plan.component.html @@ -16,10 +16,10 @@ <canvas id="center"></canvas> <!-- 左侧子组件 --> - <div class="leftChildComponent" *ngIf="isShowChildComponent && selectFence != 4" [ngStyle]="{ 'left': isShowLeftBuilding? '15%' : null }" [ngClass]="{'publicMoveUp': selectFence === 7}"> + <div class="leftChildComponent" *ngIf="isShowChildComponent && selectFence != 4" [ngStyle]="{ 'left': isShowLeftBuilding && !editMode && !userMode? '15%' : null }" [ngClass]="{'publicMoveUp': selectFence === 7}"> <div class="leftChildHeader"> <div><i nz-icon nzType="star" nzTheme="outline"></i></div> - <div>{{allFence[selectFence]}}<i nz-icon nzType="plus-circle" nzTheme="outline" *ngIf="selectFence === 7" (click)="noticeChildComponent(true)"></i><i nz-icon nzType="save" nzTheme="outline" *ngIf="selectFence === 7" (click)="noticeChildComponent(false)"></i></div> + <div>{{allFence[selectFence]}}<i nz-icon nzType="plus-circle" nzTheme="outline" *ngIf="selectFence === 7 && editMode" (click)="noticeChildComponent(true)"></i><i nz-icon nzType="save" nzTheme="outline" *ngIf="selectFence === 7 && editMode" (click)="noticeChildComponent(false)"></i></div> <div (click)="toggleHeaderFence(selectFence)" title="关闭"><i nz-icon nzType="close-circle" nzTheme="outline"></i></div> </div> <div class="leftChildCenter"><app-left-domain #leftDomain></app-left-domain></div> @@ -27,8 +27,8 @@ <!-- 左侧子组件 --> <!-- 左侧建筑栏 --> - <div class="showLeftBuilding" title="显示" *ngIf="!isShowLeftBuilding" (click)="toggleLeftBuilding(true)"><i nz-icon nzType="right" nzTheme="outline"></i></div> - <div class="leftBuilding" [ngClass]="{'isShowLeftBuilding': isShowLeftBuilding === false, 'publicMoveUp': selectFence === 7}"> + <div class="showLeftBuilding" title="显示" *ngIf="!isShowLeftBuilding && editMode && userMode" (click)="toggleLeftBuilding(true)"><i nz-icon nzType="right" nzTheme="outline"></i></div> + <div class="leftBuilding" *ngIf="editMode && userMode" [ngClass]="{'isShowLeftBuilding': isShowLeftBuilding === false, 'publicMoveUp': selectFence === 7}"> <div class="hideLeft"><i nz-icon nzType="close" nzTheme="outline" title="隐藏" (click)="toggleLeftBuilding(false)"></i></div> <div class="leftHeader"> <h1><label>模型列表</label></h1> @@ -72,19 +72,19 @@ <!-- 右上角快捷栏 --> <div class="rightTopFast"> - <div class="publicFast leftFunction"> + <div class="publicFast leftFunction" *ngIf="editMode && userMode"> <button title="获取设备" (click)="getDevice()">获</button> <button title="清空设备" (click)="clearDevice()">清</button> </div> - <div class="publicFast leftFast"> + <div class="publicFast leftFast" *ngIf="editMode && selectFence === 7"> <button title="平移" (click)="translation()" [ngClass]="{'selectRightTopFast': selectRightTopFast == 0}"></button> <button title="旋转" (click)="revolve()" [ngClass]="{'selectRightTopFast': selectRightTopFast == 1}"></button> <button title="缩放" (click)="scale()" [ngClass]="{'selectRightTopFast': selectRightTopFast == 2}"></button> - <button title="吸附" (click)="adsorb()" [ngClass]="{'leftFastIsTure': selectAdsorb }"></button> - <button title="切换至顶视图" (click)="toggleTopLevelView()" [ngClass]="{'leftFastIsTure': topLevelView }"></button> + <!-- <button title="吸附" (click)="adsorb()" [ngClass]="{'leftFastIsTure': selectAdsorb }"></button> + <button title="切换至顶视图" (click)="toggleTopLevelView()" [ngClass]="{'leftFastIsTure': topLevelView }"></button> --> </div> - <div class="save"> - <button (click)="preserve(false)" title="保存模块"><i nz-icon nzType="file-done" nzTheme="outline"></i></button> + <div class="save" *ngIf="editMode"> + <button (click)="preserve(false)" title="保存模块" *ngIf="userMode"><i nz-icon nzType="file-done" nzTheme="outline"></i></button> <button (click)="preserve(true)" title="保存"><i nz-icon nzType="save" nzTheme="outline"></i></button> </div> </div> diff --git a/src/app/pages/plan/plan.component.scss b/src/app/pages/plan/plan.component.scss index 6b10bb4..e555389 100644 --- a/src/app/pages/plan/plan.component.scss +++ b/src/app/pages/plan/plan.component.scss @@ -219,7 +219,7 @@ //右上角快捷栏 .rightTopFast{ - width: 400px; + max-width: 400px; height: 38px; position: absolute; right: 1px; diff --git a/src/app/pages/plan/plan.component.ts b/src/app/pages/plan/plan.component.ts index e2aeadb..b3e8b17 100644 --- a/src/app/pages/plan/plan.component.ts +++ b/src/app/pages/plan/plan.component.ts @@ -3,7 +3,7 @@ import { Game } from 'src/app/babylon/game'; import { LoginSatus } from 'src/app/babylon/controller/status/login-status'; import { StatusManager } from 'src/app/babylon/controller/status/status-manager'; import { InsitutionDataSimple } from 'src/app/babylon/model/data/institution/institution-data-simple'; -import { ModeManager } from 'src/app/babylon/controller/mode-manager'; +import { ModeManager, ModeType } from 'src/app/babylon/controller/mode-manager'; import { ServeManager } from 'src/app/babylon/controller/serve-manager'; import { BuildingBasicInfosService } from 'src/app/service/babylon/building-basic-infos.service'; import { ObjectsService } from 'src/app/service/objects.service'; @@ -38,6 +38,8 @@ export class PlanComponent implements OnInit { public game: Game = new Game(); public beforeOneSatus; //当前 satus public canvas: HTMLCanvasElement; //canvas 实例 + public editMode: boolean = true; //编辑/查看 模式 + public userMode: boolean = ModeManager.s_isMakeMode; //是否为 内部权限 public isShowLoading: boolean = false; //显隐 loading加载条 ngOnInit(): void { @@ -45,6 +47,14 @@ export class PlanComponent implements OnInit { ServeManager.Init(this.buildingBISrv, this.objectsSrv); this.canvas = this.element.nativeElement.querySelector('#center') as HTMLCanvasElement; this.game.init(this.canvas); + let editMode = sessionStorage.getItem('isGasStation') + if (editMode == 'false') { + this.editMode = true + ModeManager.currentMode = ModeType.Edit + } else { + this.editMode = false + ModeManager.currentMode = ModeType.Look + } //监听 delete键盘事件 this.eventManager.addGlobalEventListener('window', 'keydown', (event: any) => { if (event.keyCode == 46) { //delete