diff --git a/package-lock.json b/package-lock.json
index 1382c9c..381bb38 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -4874,7 +4874,7 @@
},
"ascli": {
"version": "1.0.1",
- "resolved": "https://registry.nlark.com/ascli/download/ascli-1.0.1.tgz",
+ "resolved": "https://registry.npm.taobao.org/ascli/download/ascli-1.0.1.tgz",
"integrity": "sha1-vPpZdKYvGOgcq660lzKrSoj5Brw=",
"requires": {
"colour": "~0.7.1",
@@ -5516,7 +5516,7 @@
"dependencies": {
"long": {
"version": "3.2.0",
- "resolved": "https://registry.npmmirror.com/long/download/long-3.2.0.tgz?cache=0&sync_timestamp=1635674102680&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Flong%2Fdownload%2Flong-3.2.0.tgz",
+ "resolved": "https://registry.npm.taobao.org/long/download/long-3.2.0.tgz",
"integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s="
}
}
@@ -5936,7 +5936,7 @@
},
"colour": {
"version": "0.7.1",
- "resolved": "https://registry.nlark.com/colour/download/colour-0.7.1.tgz",
+ "resolved": "https://registry.npm.taobao.org/colour/download/colour-0.7.1.tgz",
"integrity": "sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g="
},
"combined-stream": {
@@ -8226,7 +8226,7 @@
},
"grpc": {
"version": "1.24.2",
- "resolved": "https://registry.npmmirror.com/grpc/download/grpc-1.24.2.tgz",
+ "resolved": "https://registry.npm.taobao.org/grpc/download/grpc-1.24.2.tgz",
"integrity": "sha1-dtBHv6ewW2B8u+OruZBl3O/gwJk=",
"requires": {
"@types/bytebuffer": "^5.0.40",
@@ -8271,7 +8271,7 @@
},
"camelcase": {
"version": "2.1.1",
- "resolved": "https://registry.npmmirror.com/camelcase/download/camelcase-2.1.1.tgz?cache=0&sync_timestamp=1636945122112&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcamelcase%2Fdownload%2Fcamelcase-2.1.1.tgz",
+ "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-2.1.1.tgz",
"integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8="
},
"chownr": {
@@ -8280,7 +8280,7 @@
},
"cliui": {
"version": "3.2.0",
- "resolved": "https://registry.nlark.com/cliui/download/cliui-3.2.0.tgz",
+ "resolved": "https://registry.npm.taobao.org/cliui/download/cliui-3.2.0.tgz?cache=0&sync_timestamp=1573943458671&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcliui%2Fdownload%2Fcliui-3.2.0.tgz",
"integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
"requires": {
"string-width": "^1.0.1",
@@ -8396,7 +8396,7 @@
},
"invert-kv": {
"version": "1.0.0",
- "resolved": "https://registry.nlark.com/invert-kv/download/invert-kv-1.0.0.tgz?cache=0&sync_timestamp=1630996775723&other_urls=https%3A%2F%2Fregistry.nlark.com%2Finvert-kv%2Fdownload%2Finvert-kv-1.0.0.tgz",
+ "resolved": "https://registry.npm.taobao.org/invert-kv/download/invert-kv-1.0.0.tgz",
"integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY="
},
"is-fullwidth-code-point": {
@@ -8537,7 +8537,7 @@
},
"os-locale": {
"version": "1.4.0",
- "resolved": "https://registry.npmmirror.com/os-locale/download/os-locale-1.4.0.tgz?cache=0&sync_timestamp=1633618260196&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fos-locale%2Fdownload%2Fos-locale-1.4.0.tgz",
+ "resolved": "https://registry.npm.taobao.org/os-locale/download/os-locale-1.4.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fos-locale%2Fdownload%2Fos-locale-1.4.0.tgz",
"integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
"requires": {
"lcid": "^1.0.0"
@@ -8565,7 +8565,7 @@
},
"protobufjs": {
"version": "5.0.3",
- "resolved": "https://registry.nlark.com/protobufjs/download/protobufjs-5.0.3.tgz",
+ "resolved": "https://registry.npm.taobao.org/protobufjs/download/protobufjs-5.0.3.tgz",
"integrity": "sha1-5N/p+2fJCyYw0VhoJJvMSWFGehc=",
"requires": {
"ascli": "~1",
@@ -8694,7 +8694,7 @@
},
"yargs": {
"version": "3.32.0",
- "resolved": "https://registry.npmmirror.com/yargs/download/yargs-3.32.0.tgz",
+ "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-3.32.0.tgz?cache=0&sync_timestamp=1577940861093&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs%2Fdownload%2Fyargs-3.32.0.tgz",
"integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=",
"requires": {
"camelcase": "^2.0.1",
@@ -10875,7 +10875,7 @@
},
"lodash.clone": {
"version": "4.5.0",
- "resolved": "https://registry.nlark.com/lodash.clone/download/lodash.clone-4.5.0.tgz",
+ "resolved": "https://registry.npm.taobao.org/lodash.clone/download/lodash.clone-4.5.0.tgz",
"integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y="
},
"lodash.clonedeep": {
@@ -12053,7 +12053,7 @@
},
"optjs": {
"version": "3.2.2",
- "resolved": "https://registry.nlark.com/optjs/download/optjs-3.2.2.tgz",
+ "resolved": "https://registry.npm.taobao.org/optjs/download/optjs-3.2.2.tgz",
"integrity": "sha1-aabOicRCpEQDFBrS+bNwvVu29O4="
},
"ora": {
diff --git a/src/app/babylon/controller/mode-manager.ts b/src/app/babylon/controller/mode-manager.ts
index 92eb799..5038bc5 100644
--- a/src/app/babylon/controller/mode-manager.ts
+++ b/src/app/babylon/controller/mode-manager.ts
@@ -23,7 +23,7 @@ export class ModeManager {
/**
* 制作模式代表内部编辑人员,可新增单位、上传模型,查看模式代表交付的模式
*/
- public static s_isMakeMode = true;
+ public static s_isMakeMode = false;
/**
* 调试模式
diff --git a/src/app/babylon/model/data/mark/mark-plan-data.ts b/src/app/babylon/model/data/mark/mark-plan-data.ts
index 358dc28..916cf31 100644
--- a/src/app/babylon/model/data/mark/mark-plan-data.ts
+++ b/src/app/babylon/model/data/mark/mark-plan-data.ts
@@ -354,6 +354,7 @@ export class MarkNodeData {
/**
* 获取展示此节点所需要完整时间
+ * 最短3秒
*/
getShowTime() {
let textNum = 0;
@@ -361,9 +362,16 @@ export class MarkNodeData {
textNum = this.describe.length;
}
- let timeScale = 1;
+ let timeScale = 0.3;
- return textNum * timeScale;
+ let minTime = 3; //最短停留时间
+
+ let result = textNum * timeScale;
+ if (result < minTime) {
+ result = minTime;
+ }
+
+ return result;
}
}
diff --git a/src/app/babylon/view/mark-window/mark-window.ts b/src/app/babylon/view/mark-window/mark-window.ts
index 9e295f4..e7b6907 100644
--- a/src/app/babylon/view/mark-window/mark-window.ts
+++ b/src/app/babylon/view/mark-window/mark-window.ts
@@ -9,6 +9,7 @@ import { Event_GetAllMarkPlanData } from "../../controller/event-manager/events/
import { Event_KeyboardInput } from "../../controller/event-manager/events/event-keyboard-input";
import { Event_MarkInfoChange, MarkInfoChangeType } from "../../controller/event-manager/events/event-mark-info-change";
import { InputController } from "../../controller/inputController";
+import { ModeManager } from "../../controller/mode-manager";
import { SceneManager } from "../../controller/scene-manager";
import { BuildingStatus } from "../../controller/status/building-status";
import { IndoorStatus } from "../../controller/status/indoor-status";
@@ -149,6 +150,7 @@ export class MarkWindow extends UIBase {
instance.onUpdateShow();
})
+
}
diff --git a/src/app/pages/criminal-records-admin/criminal-records-admin.component.html b/src/app/pages/criminal-records-admin/criminal-records-admin.component.html
index 03256b2..a028105 100644
--- a/src/app/pages/criminal-records-admin/criminal-records-admin.component.html
+++ b/src/app/pages/criminal-records-admin/criminal-records-admin.component.html
@@ -110,7 +110,7 @@
预警类型
-
+
所属公司
@@ -119,7 +119,7 @@
-
+
加油站
@@ -128,6 +128,9 @@
预警时间
+
+ 状态
+
操作
@@ -153,7 +156,7 @@
{{item.violation.violationType}}
-
+
{{item.gasStation.companyName}}
@@ -162,7 +165,7 @@
-
+
{{item.gasStation.stationName}}
@@ -171,6 +174,10 @@
{{item.violateTime | date:"yyyy-MM-dd HH:mm:ss"}}
+
+ 已处置
+ 未处置
+
查看
diff --git a/src/app/pages/criminal-records-admin/criminal-records-admin.component.ts b/src/app/pages/criminal-records-admin/criminal-records-admin.component.ts
index d76adf5..f61f796 100644
--- a/src/app/pages/criminal-records-admin/criminal-records-admin.component.ts
+++ b/src/app/pages/criminal-records-admin/criminal-records-admin.component.ts
@@ -146,7 +146,7 @@ export class CriminalRecordsAdminComponent implements OnInit {
left: '42px',
right: '30px',
bottom: '38px',
- top: '60px'
+ top: '80px'
}
};
baroption2 = {
diff --git a/src/app/pages/criminal-records/criminal-records.component.html b/src/app/pages/criminal-records/criminal-records.component.html
index a10f121..847128d 100644
--- a/src/app/pages/criminal-records/criminal-records.component.html
+++ b/src/app/pages/criminal-records/criminal-records.component.html
@@ -106,10 +106,10 @@
预警级别
-
+
预警类型
-
+
预警信息
@@ -118,6 +118,9 @@
预警时间
+
+ 状态
+
操作
@@ -140,10 +143,10 @@
Ⅲ级
Ⅳ级
-
+
{{item.violation.violationType}}
-
+
{{item.violation.violationName}}
@@ -152,6 +155,10 @@
{{item.violateTime | date:"yyyy-MM-dd HH:mm:ss"}}
+
+ 已处置
+ 未处置
+
查看
diff --git a/src/app/pages/criminal-records/criminal-records.component.ts b/src/app/pages/criminal-records/criminal-records.component.ts
index b9c18f2..e3c2425 100644
--- a/src/app/pages/criminal-records/criminal-records.component.ts
+++ b/src/app/pages/criminal-records/criminal-records.component.ts
@@ -143,7 +143,7 @@ export class CriminalRecordsComponent implements OnInit {
left: '42px',
right: '30px',
bottom: '38px',
- top: '60px'
+ top: '80px'
}
};
baroption2 = {
diff --git a/src/app/pages/disposition/disposition.component.html b/src/app/pages/disposition/disposition.component.html
new file mode 100644
index 0000000..152f821
--- /dev/null
+++ b/src/app/pages/disposition/disposition.component.html
@@ -0,0 +1,21 @@
+
\ No newline at end of file
diff --git a/src/app/pages/disposition/disposition.component.scss b/src/app/pages/disposition/disposition.component.scss
new file mode 100644
index 0000000..b616fdb
--- /dev/null
+++ b/src/app/pages/disposition/disposition.component.scss
@@ -0,0 +1,85 @@
+.box {
+ .title {
+ font-family: sybold;
+ width: 100%;
+ height: 48px;
+ background: linear-gradient(270deg, rgba(35, 153, 255, 0) 0%, rgba(35, 153, 255, 0.57) 50%, rgba(35, 153, 255, 0) 100%);
+ display: flex;
+ align-items: center;
+ position: relative;
+
+ .titlecontent {
+ width: 100%;
+ height: 32px;
+ line-height: 32px;
+ background: linear-gradient(270deg, rgba(35, 153, 255, 0) 0%, rgba(35, 153, 255, 0.57) 50%, rgba(35, 153, 255, 0) 100%);
+ text-align: center;
+ color: #91CCFF;
+ font-size: 16px;
+ }
+
+ i {
+ position: absolute;
+ right: 12px;
+ color: #fff;
+ font-size: 18px;
+ cursor: pointer;
+ }
+ }
+
+ .form {
+ box-sizing: border-box;
+ padding: 0 17px;
+
+ p {
+ margin-bottom: 0;
+ color: #C4E2FC;
+ margin: 16px 0;
+ }
+
+ nz-form-item {
+ margin-bottom: 0;
+
+ textarea {
+ color: rgba(145, 204, 255, 0.95) !important;
+ width: 100%;
+ height: 300px;
+ background: #173d60;
+ }
+ }
+
+ nz-date-picker {
+ background-color: #143c61;
+ width: 100%;
+ }
+
+ .btnbox {
+ width: 100%;
+ margin-top: 24px;
+ margin-bottom: 17px;
+ display: flex;
+ justify-content: flex-end;
+
+ button {
+ border-radius: 0px;
+ color: #91CCFF;
+ }
+
+ button:nth-child(2) {
+ margin-left: 16px;
+ }
+
+ .ok {
+ background: rgba(0, 129, 255, 0.4);
+ }
+
+ .cancel {
+ border: 1px solid #C4E2FC;
+ background: #0c1e38;
+ color: rgba(99, 102, 105, 0.6);
+ box-shadow: 0 0 3px 0 #fff inset;
+ }
+ }
+ }
+
+}
diff --git a/src/app/pages/disposition/disposition.component.ts b/src/app/pages/disposition/disposition.component.ts
new file mode 100644
index 0000000..93ec6b3
--- /dev/null
+++ b/src/app/pages/disposition/disposition.component.ts
@@ -0,0 +1,33 @@
+import { Component, OnInit } from '@angular/core';
+import { NzModalRef } from 'ng-zorro-antd/modal';
+import { FormBuilder, FormGroup, Validators } from '@angular/forms';
+@Component({
+ selector: 'app-disposition',
+ templateUrl: './disposition.component.html',
+ styleUrls: ['./disposition.component.scss']
+})
+export class DispositionComponent implements OnInit {
+ validateForm!: FormGroup;
+ constructor(private modal: NzModalRef, private fb: FormBuilder) { }
+
+
+ peopleName:string
+
+ ngOnInit(): void {
+ if(sessionStorage.getItem('isGasStation') == 'true'){
+ this.peopleName = JSON.parse(sessionStorage.getItem('userdataOfgasstation')).name
+ }else{
+ this.peopleName = JSON.parse(sessionStorage.getItem('userdata')).name
+ }
+
+ this.validateForm = this.fb.group({
+ content: [null, [Validators.required]]
+ });
+ }
+ destroyModal(){
+ this.modal.destroy();
+ }
+ ok(){
+ this.modal.triggerOk()
+ }
+}
diff --git a/src/app/pages/home/home.component.html b/src/app/pages/home/home.component.html
index 46dc0cf..47eef40 100644
--- a/src/app/pages/home/home.component.html
+++ b/src/app/pages/home/home.component.html
@@ -59,4 +59,24 @@
-
\ No newline at end of file
+
+
+
+
+
+

+
+
+ 您有一条新的预警提醒!
+ {{item.id}}
+
+
+
+
\ No newline at end of file
diff --git a/src/app/pages/home/home.component.ts b/src/app/pages/home/home.component.ts
index a08734d..5d71b06 100644
--- a/src/app/pages/home/home.component.ts
+++ b/src/app/pages/home/home.component.ts
@@ -1,14 +1,14 @@
-import { Component, OnInit } from '@angular/core';
+import { Component, OnInit, ViewChild, TemplateRef } from '@angular/core';
import { Router, NavigationEnd, ActivatedRoute } from '@angular/router';
import { Title } from '@angular/platform-browser'
import { filter } from 'rxjs/operators';
-import { NavChangeService } from 'src/app/service/navChange.service';
+import { NavChangeService } from '../../service/navChange.service';
import { CacheTokenService } from '../../service/cache-token.service' //引入服务
import { CookieService } from 'ngx-cookie-service';
import { NzMessageService } from 'ng-zorro-antd/message';
import { SignalRAspNetCoreHelper } from '../../../shared/helpers/SignalRAspNetCoreHelper';
-
-
+import { NzNotificationService } from 'ng-zorro-antd/notification';
+declare var abp: any
@Component({
selector: 'app-home',
@@ -16,9 +16,10 @@ import { SignalRAspNetCoreHelper } from '../../../shared/helpers/SignalRAspNetCo
styleUrls: ['./home.component.scss']
})
export class HomeComponent implements OnInit {
-
+ @ViewChild('warning', { static: false }) template?: TemplateRef<{}>;
constructor(private router: Router, private navChangeService: NavChangeService, public token: CacheTokenService,
- private cookieService: CookieService, private message: NzMessageService) { }
+ private cookieService: CookieService, private message: NzMessageService, private notificationService: NzNotificationService) { }
+
isGasStationNav: boolean
isGasStation: boolean
isGasStationBack: boolean
@@ -78,13 +79,39 @@ export class HomeComponent implements OnInit {
this.userName = JSON.parse(sessionStorage.getItem('userdata')).userName
}
+
+
+ }
+ ngAfterViewInit() {
SignalRAspNetCoreHelper.initSignalR();
- abp.event.on('abp.notifications.received', function (userNotification) {
- console.log('abp.notifications.received成功收到了哈哈哈', userNotification);
+ abp.event.on('abp.notifications.received', (userNotification) => {
+ console.log('abp.notifications.received收到通知', userNotification);
+ this.receiptOfNotification(userNotification)
});
+ }
+ messageId=[]
+ receiptOfNotification(userNotification) {
+ let obj = {
+ id:'xxx',
+ messageId:this.notificationService.template(this.template!, {nzPlacement: 'bottomRight', nzClass: 'receiptOfNotification', nzDuration: 0, nzData: userNotification}).messageId
+ }
+ this.messageId.push(obj)
+ console.log(99999,this.messageId)
+ }
+
+ close(item){
+ this.messageId.forEach((element)=>{
+ if(element.id == 'xxx'){
+ this.notificationService.remove(element.messageId)
+ }
+ })
}
+
+ ngOnDestroy() {
+ abp.signalr.disconnect()
+ }
//获得时间
time: string
diff --git a/src/app/pages/login/login.component.html b/src/app/pages/login/login.component.html
index ce7ecf1..5fc7bb9 100644
--- a/src/app/pages/login/login.component.html
+++ b/src/app/pages/login/login.component.html
@@ -61,18 +61,3 @@
-
-
-
-

-
-
- 您有一条新的预警提醒!
- 这是详细描述这是详细描述这是详细描述...
-
-
-
-
-
-
-
diff --git a/src/app/pages/login/login.component.ts b/src/app/pages/login/login.component.ts
index 1fc96cf..7a6b72d 100644
--- a/src/app/pages/login/login.component.ts
+++ b/src/app/pages/login/login.component.ts
@@ -1,4 +1,4 @@
-import { Component, OnInit, AfterViewInit, ViewChild, TemplateRef } from '@angular/core';
+import { Component, OnInit } from '@angular/core';
import { HttpClient } from '@angular/common/http'
import { Router, ActivatedRoute } from '@angular/router'
import { CacheTokenService } from '../../service/cache-token.service'//引入服务
@@ -18,7 +18,6 @@ declare var abp: any
export class LoginComponent implements OnInit {
validateForm!: FormGroup;
- @ViewChild(TemplateRef, { static: false }) template?: TemplateRef<{}>;
constructor(private http: HttpClient, private router: Router, private route: ActivatedRoute, public token: CacheTokenService, private cookieService: CookieService, private fb: FormBuilder, private message: NzMessageService, private notificationService: NzNotificationService) { }
ngOnInit() {
@@ -149,10 +148,6 @@ export class LoginComponent implements OnInit {
)
}
- receiptOfNotification() {
- this.notificationService.template(this.template!, { nzPlacement: 'bottomRight', nzClass: 'receiptOfNotification', nzDuration: 0 });
- }
-
roleList = [
'管理员', '职工'
]
diff --git a/src/app/pages/pages.module.ts b/src/app/pages/pages.module.ts
index e176876..b50b995 100644
--- a/src/app/pages/pages.module.ts
+++ b/src/app/pages/pages.module.ts
@@ -49,11 +49,12 @@ import { NzTreeSelectModule } from 'ng-zorro-antd/tree-select';
import { PlanAdminComponent } from './plan-admin/plan-admin.component';
import { GetOutOfLineDetailsComponent } from './today-warning/get-out-of-line-details/get-out-of-line-details.component';
import { NzNotificationModule } from 'ng-zorro-antd/notification';
+import { DispositionComponent } from './disposition/disposition.component';
@NgModule({
declarations: [LoginComponent, RegisterComponent, HomeComponent, PlanComponent, TodayWarningComponent, CriminalRecordsComponent,
TodayWarningAdminComponent, CriminalRecordsAdminComponent, LeftDomainComponent, EquipmentInfoComponent, OilStationInfoComponent,
- AddequipmentComponent, EditequipmentComponent,PlanAdminComponent, GetOutOfLineDetailsComponent],
+ AddequipmentComponent, EditequipmentComponent,PlanAdminComponent, GetOutOfLineDetailsComponent, DispositionComponent],
imports: [
@@ -94,7 +95,7 @@ import { NzNotificationModule } from 'ng-zorro-antd/notification';
NzPopconfirmModule,
NzBadgeModule
],
- entryComponents: [AddequipmentComponent, EditequipmentComponent,GetOutOfLineDetailsComponent],
+ entryComponents: [AddequipmentComponent, EditequipmentComponent,GetOutOfLineDetailsComponent,DispositionComponent],
schemas: [CUSTOM_ELEMENTS_SCHEMA]
})
diff --git a/src/app/pages/plan-admin/plan-admin.component.html b/src/app/pages/plan-admin/plan-admin.component.html
index e30c6b0..97fec22 100644
--- a/src/app/pages/plan-admin/plan-admin.component.html
+++ b/src/app/pages/plan-admin/plan-admin.component.html
@@ -5,9 +5,9 @@
-
+
@@ -52,10 +52,12 @@
-
+
- 加油站名称 |
+ |
+ 加油站名称 |
区域 |
所属公司 |
联系人 |
@@ -70,7 +72,9 @@
- {{item.stationName}} |
+  |
+ {{item.stationName}} |
{{item.locationName}} |
{{item.companyName}} |
{{item.leaderName}} |
@@ -88,7 +92,7 @@
-
-
+
\ No newline at end of file
diff --git a/src/app/pages/plan-admin/plan-admin.component.ts b/src/app/pages/plan-admin/plan-admin.component.ts
index 8024f77..eea8d3c 100644
--- a/src/app/pages/plan-admin/plan-admin.component.ts
+++ b/src/app/pages/plan-admin/plan-admin.component.ts
@@ -181,7 +181,6 @@ export class PlanAdminComponent implements OnInit {
// this.list = this.list.concat(data.result.items);
this.list = [...data.result.items]
resolve(data)
- // console.log(999999, data)
})
})
}
diff --git a/src/app/pages/plan/plan.component.ts b/src/app/pages/plan/plan.component.ts
index 96ad152..2a6fde8 100644
--- a/src/app/pages/plan/plan.component.ts
+++ b/src/app/pages/plan/plan.component.ts
@@ -356,8 +356,8 @@ export class PlanComponent implements OnInit {
publicToggleNode() {
return new Promise((resolve, reject) => {
this.beforePlanNode = this.beforeEmergencyPlan.nodes[this.nzCurrent]
- this.isShowChildComponent && this.leftDomain? this.leftDomain.selectPlanId = this.beforeEmergencyPlan.id : null
- this.isShowChildComponent && this.leftDomain? this.leftDomain.selectNodeId = this.beforePlanNode.id : null
+ this.isShowChildComponent && this.leftDomain ? this.leftDomain.selectPlanId = this.beforeEmergencyPlan.id : null
+ this.isShowChildComponent && this.leftDomain ? this.leftDomain.selectNodeId = this.beforePlanNode.id : null
MarkWindow.instance.selectMarkNode(this.beforeEmergencyPlan.id, this.beforePlanNode.id, false, true)
this.beforePlanNode = MarkWindow.instance.currentMarkNodeInfo.nodeData
this.updateProgress() //更新进度条
@@ -369,10 +369,10 @@ export class PlanComponent implements OnInit {
selectChildNode(item: MarkPlanData) {
if (this.isShowChildComponent && this.leftDomain) {
if (item.nodes.length) {
- this.updateTimer? window.clearTimeout(this.updateTimer) : null //清除定时器
+ this.updateTimer ? window.clearTimeout(this.updateTimer) : null //清除定时器
this.nzCurrent = 0
this.beforeEmergencyPlan = item
- this.updateProgressList().then(res=>{
+ this.updateProgressList().then(res => {
this.publicToggleNode()
})
} else {
@@ -385,7 +385,7 @@ export class PlanComponent implements OnInit {
updateProgressList() {
return new Promise((resolve, reject) => {
this.progressList = []
- this.beforeEmergencyPlan.nodes.forEach(item=>{ this.progressList.push(0) })
+ this.beforeEmergencyPlan.nodes.forEach(item => { this.progressList.push(0) })
resolve(true)
})
}
@@ -395,14 +395,14 @@ export class PlanComponent implements OnInit {
if (this.progressList[this.nzCurrent] >= 100) {
this.progressList[this.nzCurrent] = 100
window.clearTimeout(this.updateTimer) //清除定时器
- !this.isSuspend? this.autoPlay() : null
+ !this.isSuspend ? this.autoPlay() : null
return
}
let time: number = this.beforePlanNode.getShowTime() || 1
- this.updateTimer = window.setTimeout(()=>{
+ this.updateTimer = window.setTimeout(() => {
this.progressList[this.nzCurrent] = this.progressList[this.nzCurrent] + Number((100 / time).toFixed(2)) / 10
this.updateProgress()
- },100)
+ }, 100)
}
//自动播放-切换接点
@@ -416,14 +416,14 @@ export class PlanComponent implements OnInit {
}
//切换预案节点
- changePlanNode(event){
+ changePlanNode(event) {
if (this.progressList.length != this.beforeEmergencyPlan.nodes.length) {
this.updateProgressList()
}
- this.updateTimer? window.clearTimeout(this.updateTimer) : null //清除定时器
+ this.updateTimer ? window.clearTimeout(this.updateTimer) : null //清除定时器
this.isSuspend = true //暂停
this.nzCurrent = event
- this.progressList.forEach((item,index)=>{ index >= this.nzCurrent? this.progressList[index] = 0 : this.progressList[index] = 100 })
+ this.progressList.forEach((item, index) => { index >= this.nzCurrent ? this.progressList[index] = 0 : this.progressList[index] = 100 })
this.publicToggleNode()
}
@@ -440,9 +440,9 @@ export class PlanComponent implements OnInit {
if (this.progressList.length != this.beforeEmergencyPlan.nodes.length) {
this.updateProgressList()
}
- this.updateTimer? window.clearTimeout(this.updateTimer) : null //清除定时器
+ this.updateTimer ? window.clearTimeout(this.updateTimer) : null //清除定时器
this.nzCurrent = this.nzCurrent - 1
- this.progressList.forEach((item,index)=>{ index >= this.nzCurrent? this.progressList[index] = 0 : this.progressList[index] = 100 })
+ this.progressList.forEach((item, index) => { index >= this.nzCurrent ? this.progressList[index] = 0 : this.progressList[index] = 100 })
this.publicToggleNode()
}
@@ -456,13 +456,13 @@ export class PlanComponent implements OnInit {
this.updateProgressList()
}
this.isSuspend = isSuspend
- let msg: string = this.isSuspend? "目前已暂停" : "目前已开始播放"
+ let msg: string = this.isSuspend ? "目前已暂停" : "目前已开始播放"
this.message.info(msg);
if (this.isSuspend) { //暂停
window.clearTimeout(this.updateTimer) //清除定时器
} else { //开启
- this.updateTimer? window.clearTimeout(this.updateTimer) : null //清除定时器
- this.progressList.forEach((item,index)=>{ index > this.nzCurrent? this.progressList[index] = 0 : null })
+ this.updateTimer ? window.clearTimeout(this.updateTimer) : null //清除定时器
+ this.progressList.forEach((item, index) => { index > this.nzCurrent ? this.progressList[index] = 0 : null })
this.updateProgress()
}
}
@@ -473,8 +473,8 @@ export class PlanComponent implements OnInit {
this.message.info('请选择节点');
return
}
- this.updateTimer? window.clearTimeout(this.updateTimer) : null //清除定时器
- this.updateProgressList().then(res=>{
+ this.updateTimer ? window.clearTimeout(this.updateTimer) : null //清除定时器
+ this.updateProgressList().then(res => {
this.nzCurrent = 0
this.publicToggleNode()
})
@@ -493,16 +493,16 @@ export class PlanComponent implements OnInit {
if (this.progressList.length != this.beforeEmergencyPlan.nodes.length) {
this.updateProgressList()
}
- this.updateTimer? window.clearTimeout(this.updateTimer) : null //清除定时器
+ this.updateTimer ? window.clearTimeout(this.updateTimer) : null //清除定时器
this.nzCurrent = this.nzCurrent + 1
- this.progressList.forEach((item,index)=>{ index >= this.nzCurrent? this.progressList[index] = 0 : this.progressList[index] = 100 })
+ this.progressList.forEach((item, index) => { index >= this.nzCurrent ? this.progressList[index] = 0 : this.progressList[index] = 100 })
this.publicToggleNode()
}
//获取进度条 flex分布
- getProgressFlex(e: MarkNodeData):string {
+ getProgressFlex(e: MarkNodeData): string {
let length: number = 0
- this.beforeEmergencyPlan.nodes.forEach(item=>{
+ this.beforeEmergencyPlan.nodes.forEach(item => {
length = length + (item.getShowTime() || 1)
})
let percentage: number = (e.getShowTime() || 1) / length
@@ -674,42 +674,33 @@ export class taskDialog {
//设备任务list
export class taskList {
character: any[] = [
- { taskName: "外部控火" },
- { taskName: "内部控火" },
- { taskName: "外部侦察" },
- { taskName: "内部侦察" },
- { taskName: "外部观察" },
- { taskName: "外部疏散救生" },
- { taskName: "询问知情人" },
- { taskName: "占领消控室" },
- { taskName: "水源引导" },
- { taskName: "断电气" },
+ { taskName: "加油" },
+ { taskName: "卸油" },
+ { taskName: "按下紧急切断按钮" },
+ { taskName: "呼喊示警" },
+ { taskName: "停止加油" },
+ { taskName: "关闭泄油阀" },
+ { taskName: "指挥疏通撤离" },
+ { taskName: "向运营、QHSE报告" },
+ { taskName: "撤离" },
+ { taskName: "119报警" },
+ { taskName: "110报警" },
+ { taskName: "120报警" },
+ { taskName: "使用灭火毯" },
+ { taskName: "使用灭火器" },
{ taskName: "灭火" },
- { taskName: "掩护" },
- { taskName: "警戒" },
- { taskName: "破拆" },
- { taskName: "排烟" },
- { taskName: "照明" },
- { taskName: "通信" },
+ { taskName: "协助灭火" },
+ { taskName: "确认安全" },
+ { taskName: "保持冷静" },
{ taskName: "待命" },
];
car: any[] = [
- { taskName: "内攻" },
- { taskName: "出枪掩护" },
- { taskName: "出枪冷却" },
- { taskName: "出枪灭火" },
- { taskName: "供水" },
- { taskName: "供泡沫" },
- { taskName: "连接消火栓" },
- { taskName: "遥控水炮冷却" },
- { taskName: "遥控水炮灭火" },
- { taskName: "抢险救援" },
- { taskName: "救人" },
- { taskName: "指挥" },
- { taskName: "排烟" },
- { taskName: "提供器材" },
- { taskName: "照明" },
- { taskName: "供电" },
+ { taskName: "加油" },
+ { taskName: "停止加油" },
+ { taskName: "灭火" },
+ { taskName: "逃逸" },
+ { taskName: "撤离" },
+ { taskName: "损毁" },
{ taskName: "待命" },
]
firemonitor: any[] = [
diff --git a/src/app/pages/today-warning-admin/today-warning-admin.component.html b/src/app/pages/today-warning-admin/today-warning-admin.component.html
index 28baa97..819d8a0 100644
--- a/src/app/pages/today-warning-admin/today-warning-admin.component.html
+++ b/src/app/pages/today-warning-admin/today-warning-admin.component.html
@@ -164,8 +164,9 @@
{{item.violateTime | date:"yyyy-MM-dd HH:mm:ss"}}
-
-
+
+
+ 已处置
diff --git a/src/app/pages/today-warning-admin/today-warning-admin.component.scss b/src/app/pages/today-warning-admin/today-warning-admin.component.scss
index 1f23f6d..e8ae4c0 100644
--- a/src/app/pages/today-warning-admin/today-warning-admin.component.scss
+++ b/src/app/pages/today-warning-admin/today-warning-admin.component.scss
@@ -95,7 +95,7 @@
background: linear-gradient(180deg, rgba(3, 0, 0, 0) 0%, rgba(0, 46, 91, 0.68) 100%);
box-sizing: border-box;
padding-left: 20px;
-
+ padding-right: 60px;
div {
font-size: 15px;
text-align: left;
diff --git a/src/app/pages/today-warning-admin/today-warning-admin.component.ts b/src/app/pages/today-warning-admin/today-warning-admin.component.ts
index 5ddb301..d6dcbda 100644
--- a/src/app/pages/today-warning-admin/today-warning-admin.component.ts
+++ b/src/app/pages/today-warning-admin/today-warning-admin.component.ts
@@ -2,15 +2,19 @@ import { Component, OnInit, ViewContainerRef } from '@angular/core';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
import { Router } from '@angular/router';
import { HttpClient } from '@angular/common/http';
-import { TreeService } from 'src/app/service/tree.service';
+
import { NzModalService } from 'ng-zorro-antd/modal';
import { GetOutOfLineDetailsComponent } from '../today-warning/get-out-of-line-details/get-out-of-line-details.component';
import * as moment from 'moment';
-import { NavChangeService } from 'src/app/service/navChange.service';
+// import { TreeService } from 'src/app/service/tree.service';
+// import { NavChangeService } from 'src/app/service/navChange.service';
+import { TreeService } from '../../service/tree.service';
+import { NavChangeService } from '../../service/navChange.service';
import 'linqjs';
-
+import { DispositionComponent } from '../disposition/disposition.component';
+import { NzMessageService } from 'ng-zorro-antd/message';
@Component({
selector: 'app-today-warning-admin',
@@ -20,7 +24,7 @@ import 'linqjs';
export class TodayWarningAdminComponent implements OnInit {
validateForm!: FormGroup;
- constructor(private http: HttpClient, private fb: FormBuilder, private router: Router, private toTree: TreeService, private modal: NzModalService, private viewContainerRef: ViewContainerRef, private navChangeService: NavChangeService) { }
+ constructor(private http: HttpClient, private fb: FormBuilder, private router: Router, private toTree: TreeService, private modal: NzModalService, private viewContainerRef: ViewContainerRef, private navChangeService: NavChangeService, private message: NzMessageService) { }
ngOnInit(): void {
this.validateForm = this.fb.group({
@@ -105,6 +109,8 @@ export class TodayWarningAdminComponent implements OnInit {
ViolateArea: this.validateForm.value.area,
organizationUnitId: this.validateForm.value.organization,
ViolateTime: (this.validateForm.value.datePickerEnd && this.validateForm.value.datePickerStart) ? [moment(this.validateForm.value.datePickerStart).format('yyyy-MM-DD HH:mm:ss'), moment(this.validateForm.value.datePickerEnd).format('yyyy-MM-DD HH:mm:ss')] : null,
+ // ViolateTime: ['2021-10-27', '2021-11-26'],
+ IsContainsChildren: 'true',
SkipCount: '0',
MaxResultCount: '9999'
}
@@ -155,6 +161,12 @@ export class TodayWarningAdminComponent implements OnInit {
look(item) {
+ let type
+ if (item.violation.violationType.indexOf('卸油')) {
+ type = 1
+ } else {
+ type = 0
+ }
const modal = this.modal.create({
nzContent: GetOutOfLineDetailsComponent,
nzViewContainerRef: this.viewContainerRef,
@@ -167,7 +179,8 @@ export class TodayWarningAdminComponent implements OnInit {
'background': '#000D21',
},
nzComponentParams: {
- data: item
+ data: item,
+ type: type
},
nzFooter: null,
nzOnOk: async () => {
@@ -176,4 +189,43 @@ export class TodayWarningAdminComponent implements OnInit {
});
const instance = modal.getContentComponent();
}
+
+ dispose(item) {
+ console.log(item)
+ const modal = this.modal.create({
+ nzContent: DispositionComponent,
+ nzViewContainerRef: this.viewContainerRef,
+ nzWidth: 380,
+ nzBodyStyle: {
+ 'border': '1px solid #91CCFF',
+ 'border-radius': '0px',
+ 'padding': '7px',
+ 'box-shadow': '0 0 8px 0 #fff',
+ 'background-image': 'linear-gradient(#003665, #000f25)'
+ },
+ nzComponentParams: {},
+ nzFooter: null,
+ nzClosable: false,
+ nzOnOk: async () => {
+ if (instance.validateForm.valid) {
+ await new Promise(resolve => {
+ let body = {
+ id: item.id,
+ handleRecord: instance.validateForm.value.content
+ }
+ this.http.post('/api/services/app/ViolateRecord/HandleViolateRecord', body).subscribe(data => {
+ resolve(data)
+ this.message.create('success', '处置成功!');
+ item.handleTime = new Date()
+ return true
+ })
+ })
+ } else {
+ this.message.create('warning', '请填写完整!');
+ return false
+ }
+ },
+ });
+ const instance = modal.getContentComponent();
+ }
}
diff --git a/src/app/pages/today-warning/get-out-of-line-details/get-out-of-line-details.component.html b/src/app/pages/today-warning/get-out-of-line-details/get-out-of-line-details.component.html
index eb1904f..1124d5e 100644
--- a/src/app/pages/today-warning/get-out-of-line-details/get-out-of-line-details.component.html
+++ b/src/app/pages/today-warning/get-out-of-line-details/get-out-of-line-details.component.html
@@ -19,7 +19,7 @@
diff --git a/src/app/pages/today-warning/today-warning.component.scss b/src/app/pages/today-warning/today-warning.component.scss
index 1707ad9..78a2db0 100644
--- a/src/app/pages/today-warning/today-warning.component.scss
+++ b/src/app/pages/today-warning/today-warning.component.scss
@@ -88,7 +88,7 @@
margin-bottom: 12px;
background: linear-gradient(180deg, rgba(3, 0, 0, 0) 0%, rgba(0, 46, 91, 0.68) 100%);
box-sizing: border-box;
- padding-right: 36px;
+ padding-right: 60px;
div {
font-size: 15px;
text-align: center;
diff --git a/src/app/pages/today-warning/today-warning.component.ts b/src/app/pages/today-warning/today-warning.component.ts
index e4c0bfe..be2c796 100644
--- a/src/app/pages/today-warning/today-warning.component.ts
+++ b/src/app/pages/today-warning/today-warning.component.ts
@@ -3,9 +3,13 @@ import { FormBuilder, FormGroup, Validators } from '@angular/forms';
import { HttpClient } from '@angular/common/http';
import { NzModalService } from 'ng-zorro-antd/modal';
import { GetOutOfLineDetailsComponent } from './get-out-of-line-details/get-out-of-line-details.component';
-import { TreeService } from 'src/app/service/tree.service';
-import { NavChangeService } from 'src/app/service/navChange.service';
+// import { TreeService } from 'src/app/service/tree.service';
+// import { NavChangeService } from 'src/app/service/navChange.service';
+import { TreeService } from '../../service/tree.service';
+import { NavChangeService } from '../../service/navChange.service';
import * as moment from 'moment';
+import { DispositionComponent } from '../disposition/disposition.component';
+import { NzMessageService } from 'ng-zorro-antd/message';
@Component({
selector: 'app-today-warning',
templateUrl: './today-warning.component.html',
@@ -13,7 +17,7 @@ import * as moment from 'moment';
})
export class TodayWarningComponent implements OnInit {
validateForm!: FormGroup;
- constructor(private http: HttpClient, private fb: FormBuilder, private toTree: TreeService, private modal: NzModalService, private viewContainerRef: ViewContainerRef, private navChangeService: NavChangeService) { }
+ constructor(private http: HttpClient, private fb: FormBuilder, private toTree: TreeService, private modal: NzModalService, private viewContainerRef: ViewContainerRef, private navChangeService: NavChangeService, private message: NzMessageService) { }
ngOnInit(): void {
this.validateForm = this.fb.group({
@@ -62,6 +66,8 @@ export class TodayWarningComponent implements OnInit {
ViolateArea: this.validateForm.value.area,
organizationUnitId: JSON.parse(sessionStorage.getItem('userdataOfgasstation')).organization.id,
ViolateTime: (this.validateForm.value.datePickerEnd && this.validateForm.value.datePickerStart) ? [moment(this.validateForm.value.datePickerStart).format('yyyy-MM-DD HH:mm:ss'), moment(this.validateForm.value.datePickerEnd).format('yyyy-MM-DD HH:mm:ss')] : null,
+ // ViolateTime: ['2021-10-27', '2021-11-26'],
+ IsContainsChildren: 'true',
SkipCount: '0',
MaxResultCount: '9999'
}
@@ -107,6 +113,12 @@ export class TodayWarningComponent implements OnInit {
look(item) {
+ let type
+ if (item.violation.violationType.indexOf('卸油')) {
+ type = 1
+ } else {
+ type = 0
+ }
const modal = this.modal.create({
nzContent: GetOutOfLineDetailsComponent,
nzViewContainerRef: this.viewContainerRef,
@@ -119,7 +131,8 @@ export class TodayWarningComponent implements OnInit {
'background': '#000D21',
},
nzComponentParams: {
- data: item
+ data: item,
+ // typy: type
},
nzFooter: null,
nzOnOk: async () => {
@@ -129,7 +142,47 @@ export class TodayWarningComponent implements OnInit {
const instance = modal.getContentComponent();
}
- disposition(item){
-
+ dispose(item) {
+ console.log(item)
+ if (item.isEnableHandle) {
+ const modal = this.modal.create({
+ nzContent: DispositionComponent,
+ nzViewContainerRef: this.viewContainerRef,
+ nzWidth: 380,
+ nzBodyStyle: {
+ 'border': '1px solid #91CCFF',
+ 'border-radius': '0px',
+ 'padding': '7px',
+ 'box-shadow': '0 0 8px 0 #fff',
+ 'background-image': 'linear-gradient(#003665, #000f25)'
+ },
+ nzComponentParams: {},
+ nzFooter: null,
+ nzClosable: false,
+ nzOnOk: async () => {
+ if (instance.validateForm.valid) {
+ await new Promise(resolve => {
+ let body = {
+ id: item.id,
+ handleRecord: instance.validateForm.value.content
+ }
+ this.http.post('/api/services/app/ViolateRecord/HandleViolateRecord', body).subscribe(data => {
+ resolve(data)
+ this.message.create('success', '处置成功!');
+ item.handleTime = new Date()
+ return true
+ })
+ })
+ } else {
+ this.message.create('warning', '请填写完整!');
+ return false
+ }
+ },
+ });
+ const instance = modal.getContentComponent();
+ } else {
+ this.message.create('warning', '无处置权限!');
+ }
+
}
}
diff --git a/src/assets/images/3d.png b/src/assets/images/3d.png
new file mode 100644
index 0000000..bcd6752
Binary files /dev/null and b/src/assets/images/3d.png differ
diff --git a/src/assets/js/abp.signalr-client.js b/src/assets/js/abp.signalr-client.js
index 3dc5018..f7dd8e1 100644
--- a/src/assets/js/abp.signalr-client.js
+++ b/src/assets/js/abp.signalr-client.js
@@ -84,7 +84,10 @@ var abp = abp || {};
abp.log.debug(error.message);
});
}
-
+ abp.signalr.disconnect = function() {
+ abp.signalr.autoReconnect = false
+ abp.signalr.hubs.common.stop()
+ };
// Starts a connection with transport fallback - if the connection cannot be started using
// the webSockets transport the function will fallback to the serverSentEvents transport and
// if this does not work it will try longPolling. If the connection cannot be started using
diff --git a/src/shared/helpers/SignalRAspNetCoreHelper.ts b/src/shared/helpers/SignalRAspNetCoreHelper.ts
index 269f3f2..44dd445 100644
--- a/src/shared/helpers/SignalRAspNetCoreHelper.ts
+++ b/src/shared/helpers/SignalRAspNetCoreHelper.ts
@@ -1,6 +1,6 @@
-
+declare var abp: any
export class SignalRAspNetCoreHelper {
- static initSignalR(callback?: () => void): void {
+ static initSignalR(callback?: () => void): void {
const encryptedAuthToken = sessionStorage.getItem("encryptedAccessToken");
let url = "http://39.106.78.171:8906";
abp.signalr = {
diff --git a/src/theme.less b/src/theme.less
index 7f7917c..97bb476 100644
--- a/src/theme.less
+++ b/src/theme.less
@@ -68,7 +68,7 @@
.receiptOfNotification {
height: 160px;
background-color: rgba(1, 13, 27, 0.9);
- box-shadow: 0 0 36px 3px #8f1622 inset;
+ box-shadow: 0 0 28px 3px #8f1622 inset;
display: flex;
flex-direction: column;
padding: 5px;
@@ -77,40 +77,48 @@
position: relative;
flex: 1;
display: flex;
-
+ align-items: center;
img {
- max-width: 64px;
- max-height: 64px;
+ max-width:70px;
+ max-height: 62px;
}
-
.text {
display: flex;
flex-direction: column;
- color: white;
justify-content: center;
+ span{
+ // display: inline-block;
+ margin: 6px 0;
+ }
+ .name{
+ font-size: 16px;
+ color: #ffaaaa;
+ }
+ .details{
+ font-size: 14px;
+ color: white;
+ }
}
}
.btnbox {
- height: 30px;
+ height: 36px;
+ line-height: 36px;
display: flex;
justify-content: center;
align-items: center;
margin: 12px 0;
-
- button {
- margin: 0 5px;
+ div{
+ width: 80px;
+ height: 32px;
+ line-height: 32px;
+ text-align: center;
+ margin: 0 8px;
+ color: #FFFFFF;
+ cursor: pointer;
}
}
- button {
- width: 64px;
- height: 30px;
- line-height: 30px;
- background-color: rgba(1, 13, 27, 0.9);
- color: white;
- border: 0px;
- }
.look {
box-shadow: 0 0 12px #8f1622 inset;