Commit 732e62a5 authored by zhuangzhuang's avatar zhuangzhuang

牛舍详情页-水槽,照明

parent 7115de25
......@@ -42,9 +42,9 @@ const routes: Routes = [
component: EnvDetailPage,
children: [
{path: 'fan', component: EnvFanPage},
{path: 'shower', component: EnvShowerPage},
{path: 'light', component: EnvLightPage},
{path: 'waterchannel', component: EnvWaterchannelPage},
{path: 'shower/:fieldRegionNo', component: EnvShowerPage},
{path: 'light/:fieldRegionNo', component: EnvLightPage},
{path: 'waterchannel/:fieldRegionNo', component: EnvWaterchannelPage},
{path: '', redirectTo: 'fan', pathMatch : 'prefix'},
]
},
......
......@@ -5,10 +5,11 @@
</ion-buttons>
<ion-title mode="ios" class="title">{{item.fieldRegionName}}详情</ion-title>
</ion-toolbar>
<div style="padding-top: 5px; padding-bottom: 7px; background-color: #F0F0F0">
<div class="top">
<span [ngClass]="{'online': item.online, 'offline': !item.online}">{{item.online ? '在线' : '离线'}} </span>
<span *ngIf="item.operationModel" class="online">{{item.operationModel ? '平控' :'现控'}} </span>
<span *ngIf="item.operationModel" [ngClass]="{'online': item.isWisdomModel, 'offline': !item.isWisdomModel}" class="online">智控 </span>
<span *ngIf="item.ts" class="right">{{item.ts | date: 'yyyy-MM-dd HH:mm'}}</span>
</div>
<div style="background-color: #F0F0F0;" align="center">
<v-kanban class="home-bar" name="温度" [inData]="item.temp" iconClass="vo v-wendu" iconColor="#285B90" iconSize="14px"></v-kanban>
......@@ -20,21 +21,29 @@
<ion-content style="background-color: #F3F4F4;">
<ion-router-outlet></ion-router-outlet>
<ion-tabs>
<!-- Tab bar -->
<ion-tab-bar slot="top">
<ion-tab-button tab="fan">
<ion-label>风机</ion-label>
</ion-tab-button>
<ion-tab-button tab="shower">
<ion-tab-button tab="shower" routerLink="/env-detail/shower/{{fieldRegionNo}}"> <!--[rootParams]="fieldRegionNo"-->
<ion-label>喷淋</ion-label>
</ion-tab-button>
<ion-tab-button tab="light">
<ion-tab-button tab="light" routerLink="/env-detail/light/{{fieldRegionNo}}">
<ion-label>照明</ion-label>
</ion-tab-button>
<ion-tab-button tab="waterchannel">
<ion-tab-button tab="waterchannel" routerLink="/env-detail/waterchannel/{{fieldRegionNo}}">
<ion-label>水槽</ion-label>
</ion-tab-button>
</ion-tab-bar>
</ion-tabs>
</ion-content>
<!--<ion-tabs>-->
<!--<ion-tab [root]="fan" [rootParams]="fieldRegionNo" tabTitle="风机">-->
<!--</ion-tab>-->
<!--<ion-tab [root]="shower" [rootParams]="fieldRegionNo" tabTitle="风机">-->
<!--</ion-tab>-->
<!--<ion-tab [root]="light" [rootParams]="fieldRegionNo" tabTitle="风机">-->
<!--</ion-tab>-->
<!--</ion-tabs>-->
......@@ -38,6 +38,11 @@
margin-left: 5px;
}
.top {
padding: 7px 5px;
background-color: #F0F0F0
}
.warmColor1 {
color: #71fa1d;
}
......
......@@ -24,6 +24,10 @@ export class EnvDetailPage implements OnInit {
isLoading: true
};
fan = '/env-detail/fan';
shower = '/env-detail/shower';
light = '/env-detail/light';
ngOnInit() {
this.comm.isLoading = false;
this.comm.remain = 0;
......@@ -44,7 +48,7 @@ export class EnvDetailPage implements OnInit {
// TODO 测试用准备数据
this.item = {
// 3-重度热应激 在线 平控 非智控(自控) 有报警
fieldRegionName: '测试用4号牛舍',
fieldRegionName: '1号牛舍',
temp: '23.5',
humi: '82.8',
heatStressLevel: '3',
......
......@@ -54,15 +54,15 @@ export class EnvFanPage implements OnInit {
this.devices = data.param;
// TODO 测试用准备数据
this.fieldRegionNo = 'FRN136641006052720640';
this.fieldDeviceType = '风机';
this.controlModel = 0;
this.devices = [{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'A号风机组', state: 1},
{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'B号风机组', state: 0},
{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'C号风机组', state: 1},
{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'D号风机组', state: 0},
{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'E号风机组', state: 1},
{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'F号风机组', state: 1}];
// this.fieldRegionNo = 'FRN136641006052720640';
// this.fieldDeviceType = '风机';
// this.controlModel = 0;
// this.devices = [{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'A号风机组', state: 1},
// {fieldDeviceNo: '136641005998194688', fieldDeviceName: 'B号风机组', state: 0},
// {fieldDeviceNo: '136641005998194688', fieldDeviceName: 'C号风机组', state: 1},
// {fieldDeviceNo: '136641005998194688', fieldDeviceName: 'D号风机组', state: 0},
// {fieldDeviceNo: '136641005998194688', fieldDeviceName: 'E号风机组', state: 1},
// {fieldDeviceNo: '136641005998194688', fieldDeviceName: 'F号风机组', state: 1}];
// 获取一键控制信息
this.allCheck(this.batchSwitch);
......@@ -93,7 +93,6 @@ export class EnvFanPage implements OnInit {
// batchSwitch.state = false;
}]);
// TODO 测试用准备数据
this.batchSwitch.op = 0;
// this.batchSwitch.op = 0;
}
}
......@@ -55,7 +55,7 @@
<span [ngClass]="{'online': item.online, 'offline': !item.online}">{{item.online ? '在线' : '离线'}} </span>
<span *ngIf="item.operationModel" class="online">{{item.operationModel ? '平控' :'现控'}} </span>
<span *ngIf="item.operationModel" [ngClass]="{'online': item.isWisdomModel, 'offline': !item.isWisdomModel}" class="online">智控 </span>
<span *ngIf="item.ts" class="right">{{item.ts}}</span>
<span *ngIf="item.ts" class="right">{{item.ts | date: 'yyyy-MM-dd HH:mm'}}</span>
</div>
</div>
</ion-item>
......
......@@ -73,7 +73,7 @@ export class EnvHomePage implements OnInit {
{
// 0-无热应激 离线 无报警
fieldRegionNo: 'FRN136641006052720640',
fieldRegionName: '测试用1号牛舍',
fieldRegionName: '1号牛舍',
temp: '23.5',
humi: '82',
heatStressLevel: '0',
......@@ -85,7 +85,7 @@ export class EnvHomePage implements OnInit {
{
// 1-轻度热应激 在线 现控 无报警
fieldRegionNo: 'FN108050436279648256',
fieldRegionName: '测试用2号牛舍',
fieldRegionName: '2号牛舍',
temp: '23.5',
humi: '82',
heatStressLevel: '1',
......@@ -98,7 +98,7 @@ export class EnvHomePage implements OnInit {
{
// 2-中度热应激 在线 平控 非智控(手控) 有报警
fieldRegionNo: 'FN108050436279648256',
fieldRegionName: '测试用3号牛舍',
fieldRegionName: '3号牛舍',
temp: '23.5',
humi: '82',
heatStressLevel: '2',
......@@ -112,7 +112,7 @@ export class EnvHomePage implements OnInit {
{
// 3-重度热应激 在线 平控 非智控(自控) 有报警
fieldRegionNo: 'FN108050436279648256',
fieldRegionName: '测试用4号牛舍',
fieldRegionName: '4号牛舍',
temp: '23.5',
humi: '82',
heatStressLevel: '3',
......
......@@ -23,8 +23,8 @@
line-height: 25px;
margin-bottom: 5px;">时间模式</h1>
<ion-item lines="full">
<i class="vo v-yue"></i>
<span style="margin-left: 60px;font-size:15px"> 开启时间 {{on}}<br><br>关闭时间 {{off}}</span>
<i class="vo v-yue{{curDate}}"></i>
<span style="margin-left: 100px; font-size:15px"> 开启时间 {{on}}<br><br>关闭时间 {{off}}</span>
</ion-item>
<h1 style="
font-size: 16px;
......@@ -36,17 +36,32 @@
<ion-label>一键控制</ion-label>
<ion-toggle slot="end" [checked]="batchSwitch.op"></ion-toggle>
</ion-item>
<div>
<ion-card *ngFor="let a of workarea.param" class="card" color="white">
<ion-card *ngFor="let device of devices" class="card" color="white">
<ion-card-header>
<ion-card-subtitle>{{a.name}}</ion-card-subtitle>
<ion-card-subtitle align="center">{{device.fieldDeviceName}}</ion-card-subtitle>
</ion-card-header>
<ion-card-content>
<v-switch [value]="a.runningState" (click)="toggle(a)" style="float: none;display: inline-block;margin-top: 5px"></v-switch>
<ion-toggle slot="middle" [checked]="device.state"></ion-toggle>
</ion-card-content>
</ion-card>
</div>
<!--<ion-item *ngIf="batchSwitch" lines="full" insert="false">-->
<!--<ion-label>一键控制</ion-label>-->
<!--<ion-toggle slot="end" [checked]="batchSwitch.op"></ion-toggle>-->
<!--</ion-item>-->
<!--<div>-->
<!--<ion-card *ngFor="let a of workarea.param" class="card" color="white">-->
<!--<ion-card-header>-->
<!--<ion-card-subtitle>{{a.name}}</ion-card-subtitle>-->
<!--</ion-card-header>-->
<!--<ion-card-content>-->
<!--<v-switch [value]="a.runningState" (click)="toggle(a)" style="float: none;display: inline-block;margin-top: 5px"></v-switch>-->
<!--</ion-card-content>-->
<!--</ion-card>-->
<!--</div>-->
</ion-content>
i.vo.v-yue {
i.vo {
padding-top: 5px;
padding-bottom: 5px;
font-size: 55px;
color: #199ED8;
}
......@@ -8,4 +10,6 @@ i.vo.v-yue {
display: inline-block;
width:28%;
margin: 10px 10px 5px 5px;
}
\ No newline at end of file
}
import { Component, OnInit } from '@angular/core';
import {Component, Input, OnInit} from '@angular/core';
import {Api} from '../../service/api';
import {ActivatedRoute} from '@angular/router';
import {Load} from '../../service/load';
......@@ -10,6 +10,7 @@ import {Load} from '../../service/load';
})
export class EnvLightPage implements OnInit {
// @Input() fieldRegionNo: string;
/* 照明 */
// 牧场区域编号
fieldRegionNo = '';
......@@ -25,6 +26,8 @@ export class EnvLightPage implements OnInit {
on = '';
// 关闭时间
off = '';
// 当前月份
curDate = 0;
// 各设备信息
devices = [];
......@@ -68,20 +71,25 @@ export class EnvLightPage implements OnInit {
// ]
// };
constructor(private api: Api, private ac: ActivatedRoute, private load: Load) { }
constructor(private api: Api, private ac: ActivatedRoute, private load: Load, private route: ActivatedRoute) { }
ngOnInit() {
this.ac.queryParams.subscribe((data) => {
this.fieldRegionNo = data.no;
});
// this.ac.queryParams.subscribe((data) => {
// this.fieldRegionNo = data.no;
// });
this.fieldRegionNo = this.route.snapshot.paramMap.get('fieldRegionNo');
this.getData(0);
}
toggle(a) {
console.log("123");
console.log('123');
}
getData(time) {
this.curDate = +new Date().getMonth();
this.ac.queryParams.subscribe((data) => {
this.fieldRegionNo = data.no;
});
if (time) {
this.load.toLoad('加载中...', false);
}
......@@ -90,35 +98,35 @@ export class EnvLightPage implements OnInit {
this.fieldRegionNo = data.fieldRegionNo;
this.fieldDeviceType = data.fieldDeviceType;
this.controlModel = data.controlModel;
this.startDate = data.startDate;
this.stopDate = data.stopDate;
this.on = data.on;
this.off = data.off;
this.startDate = data.controlConfig.startDate;
this.stopDate = data.controlConfig.stopDate;
this.on = data.controlConfig.on;
this.off = data.controlConfig.off;
this.devices = data.param;
// TODO 测试用准备数据
this.fieldRegionNo = 'FRN136641006052720640';
this.fieldDeviceType = '照明';
this.controlModel = 2;
// this.fieldRegionNo = 'FRN136641006052720640';
this.startDate = '05-01';
this.stopDate = '08-31';
// this.fieldDeviceType = '照明';
// this.controlModel = 2;
this.on = '19:00';
this.off = '05:00';
this.devices = [{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'A号照明组', state: 1},
{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'B号照明组', state: 0},
{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'C号照明组', state: 1},
{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'D号照明组', state: 0},
{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'E号照明组', state: 1},
{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'F号照明组', state: 1}];
// this.devices = [{fieldDeviceNo: '136641005998194688', fieldDeviceName: 'A号照明组', state: 1},
// {fieldDeviceNo: '136641005998194688', fieldDeviceName: 'B号照明组', state: 0},
// {fieldDeviceNo: '136641005998194688', fieldDeviceName: 'C号照明组', state: 1},
// {fieldDeviceNo: '136641005998194688', fieldDeviceName: 'D号照明组', state: 0},
// {fieldDeviceNo: '136641005998194688', fieldDeviceName: 'E号照明组', state: 1},
// {fieldDeviceNo: '136641005998194688', fieldDeviceName: 'F号照明组', state: 1}];
// 获取一键控制信息
this.allCheck(this.batchSwitch);
}
}]);
}
allCheck(batchSwitch) {
batchSwitch.type = this.fieldDeviceType;
const req = {
fieldRegionNo: this.fieldRegionNo,
op: batchSwitch.op, // op: batchSwitch.op ? 0 : 1,
......@@ -138,7 +146,7 @@ export class EnvLightPage implements OnInit {
// batchSwitch.state = false;
}]);
// TODO 测试用准备数据
this.batchSwitch.op = 0;
// this.batchSwitch.op = 0;
}
}
......@@ -11,10 +11,8 @@
margin-bottom: 5px;">模式状态</h1>
<ion-item lines="full">
<ion-label>运行模式</ion-label>
<ion-select multiple="false" cancelText="取消" okText="确认" [(ngModel)]="workModeSetting.workMode" [(value)]="workModeSetting.workMode" (ionChange)="workModeEvent()">
<ion-select-option value="0">手控模式</ion-select-option>
<ion-select-option value="1">自控模式</ion-select-option>
<ion-select-option value="2">智慧模式</ion-select-option>
<ion-select multiple="false" cancelText="取消" okText="确认" [(ngModel)]="controlModel" disabled="true">
<ion-select-option *ngFor="let option of controlModelOptions" [value]="option.modelId">{{option.modelValue}}</ion-select-option>
</ion-select>
</ion-item>
......@@ -26,8 +24,8 @@
margin-bottom: 5px;">供液泵状态</h1>
<ion-item lines="full">
<div [ngClass]="{'sucCir': bump.online, 'errCir': !bump.online}"></div>&nbsp;
<span style="font-size: 13px">{{bump.online ? '在线' : '离线'}}</span>
<span style="font-size: 13px; margin-left: 30px">压力: {{bump.press}} Mpa</span>
<span class="content">{{bump.online ? '在线' : '离线'}}</span>
<span class="content" style="margin-left: 30px">压力: {{bump.press}} Mpa</span>
</ion-item>
<h1 style="
font-size: 16px;
......@@ -35,33 +33,32 @@
border-left: 5px solid #28c9bd;
line-height: 25px;
margin-bottom: 5px;">时间参数</h1>
<ion-item lines="full" *ngFor="let a of workarea.param" insert="false">
<span style="font-size: 13px;">{{a.name}}喷淋时间 {{a.workTime}} 秒</span>
<ion-item lines="full" *ngIf="controlConfig.a" insert="false">
<span class="content">A区喷淋时间 {{controlConfig.a}} 秒</span>
</ion-item>
<ion-item lines="full" insert="false">
<span style="font-size: 13px;">间隔时间 {{workarea.Interval}} 秒</span>
<ion-item lines="full" *ngIf="controlConfig.b" insert="false">
<span class="content">B区喷淋时间 {{controlConfig.b}} 秒</span>
</ion-item>
<ion-item lines="full" *ngIf="controlConfig.interval" insert="false">
<span class="content">间隔时间 {{controlConfig.interval}} 秒</span>
</ion-item>
<h1 style="
font-size: 16px;
padding-left: 5px;
border-left: 5px solid #28c9bd;
line-height: 25px;
margin-bottom: 5px;">控制/状态</h1>
<!--<ion-item *ngFor="let a of allBtns" lines="full" insert="false" >-->
<!--&lt;!&ndash;<v-switch [value]="a.value" (click)="toggle(a)" [loading]="a.loading"></v-switch>&ndash;&gt;-->
<!--<ion-label>一键控制{{a.l}}</ion-label>-->
<!--<v-switch [value]="a.v" (click)="allCheck(a)" [loading]="a.d"></v-switch>-->
<!--</ion-item>-->
<div>
<ion-card *ngFor="let a of workarea.param" class="card" color="white">
<ion-card *ngFor="let a of param" class="card" color="white">
<ion-card-header>
<ion-card-title>{{a.name}}</ion-card-title>
<ion-card-title class="card-title">{{a.fieldDeviceName}}</ion-card-title>
</ion-card-header>
<ion-card-content>
<span>压力 {{a.press}} MPa</span><br>
<v-switch [value]="a.runningState" (click)="toggle(a)" style="float: none;display: inline-block;margin-top: 5px"></v-switch>
<ion-card-content style="margin: 0px; padding-top:0px;">
<span class="content">压力 {{a.press}} MPa</span><br>
<ion-toggle [checked]="a.state"></ion-toggle>
</ion-card-content>
</ion-card>
</div>
</ion-content>
\ No newline at end of file
</ion-content>
......@@ -2,6 +2,14 @@
float: none;
display: inline-block;
width:42%;
margin: 10px 10px 5px 5px;
margin: 10px 10px 5px 10px;
text-align: center;
}
\ No newline at end of file
}
.card-title {
font-size: 20px;
}
.content {
font-size: 13px;
}
import { Component, OnInit } from '@angular/core';
import {Api} from '../../service/api';
import {ActivatedRoute} from '@angular/router';
import {Load} from '../../service/load';
@Component({
selector: 'v-env-shower',
......@@ -17,30 +20,52 @@ export class EnvShowerPage implements OnInit {
isLoading : true
};
bump = {online:true,
press:0.4};
workarea = {
Interval: 25, //间隔时间
param: [
{
name: 'A区',
workTime:25, //工作时长
press:0.3, //水压
runningState:true, // 是否开启
},
{
name: 'B区',
workTime:25,
press:0.4,
runningState:false,
},
]
};
// 牧场区域编号
fieldRegionNo = '';
// 牧场设备类型
fieldDeviceType = '';
// 模式状态
controlModel = 0;
// 供液泵状态
bump = {online: true, press: 0};
// 时间参数
controlConfig = {
name: '',
interval: 0, // 间隔时间
a: '', // A区喷淋时间
t: '',
b: '', // A区喷淋时间
};
// 各设备信息
param = [];
controlModelOptions = [
{modelId: 0, modelValue: '手控模式'},
{modelId: 1, modelValue: '自控模式'},
{modelId: 2, modelValue: '智慧控制'}];
constructor(private api: Api, private ac: ActivatedRoute, private load: Load, private route: ActivatedRoute) { }
constructor() { }
ngOnInit() {
this.fieldRegionNo = this.route.snapshot.paramMap.get('fieldRegionNo');
this.getData(0);
}
ngOnInit() {
}
getData(time) {
if (time) {
this.load.toLoad('加载中...', false);
}
this.api.cowshedApp.getPenLinData([{'fieldRegionNo' : this.fieldRegionNo}, (data) => {
if (data) {
debugger;
this.fieldRegionNo = data.fieldRegionNo;
this.fieldDeviceType = data.fieldDeviceType;
this.controlModel = data.controlModel;
this.bump = data.bump;
this.controlConfig = data.controlConfig;
this.param = data.param;
}
}]);
}
}
......@@ -8,15 +8,14 @@
border-left: 5px solid #28c9bd;
line-height: 25px;
margin-bottom: 5px;">状态</h1>
<ion-card *ngFor="let a of workarea.param" class="card" color="white">
<ion-card *ngFor="let device of devices" class="card" color="white">
<ion-card-header>
<ion-card-title> <span [ngClass]="{'sucCir': a.online, 'errCir': !a.online}"></span>&nbsp; {{a.name}}</ion-card-title>
<ion-card-title> <span [ngClass]="{'sucCir': device.online, 'errCir': !device.online}"></span>&nbsp; {{device .fieldDeviceName}}</ion-card-title>
</ion-card-header>
<ion-card-content>
<span>当前功率 </span> <span> {{a.kw}} KW<br></span>
<span>估计加热设备台数 </span> <span> {{a.deviceOnLineNum}} 台</span>
<span>当前功率 </span> <span> {{device.kw}} KW<br></span>
<span>估计加热设备台数 </span> <span> {{device.deviceOnlineNum}} 台</span>
</ion-card-content>
</ion-card>
</ion-content>
import { Component, OnInit } from '@angular/core';
import {Api} from '../../service/api';
import {ActivatedRoute} from '@angular/router';
import {Load} from '../../service/load';
@Component({
selector: 'v-env-waterchannel',
......@@ -6,10 +9,10 @@ import { Component, OnInit } from '@angular/core';
styleUrls: ['./env-waterchannel.page.scss'],
})
export class EnvWaterchannelPage implements OnInit {
workModeSetting = { 'workMode' : '1',
'DeviceNo' : '',
'workModeOld' : '1'};
// 牧场区域编号
fieldRegionNo = '';
// 牧场设备
devices = [];
// 发送指令延时判断
comm = {
......@@ -17,32 +20,25 @@ export class EnvWaterchannelPage implements OnInit {
isLoading : true
};
workarea = {
param: [
{
name: '1号组',
kw:0.3, //当前功率
deviceOnLineNum:3, //估计加热设备台数
online:true,
},
{
name: '2号组',
kw:3, //当前功率
deviceOnLineNum:2, //估计加热设备台数
online:true,
},
{
name: '3号组',
kw:15, //当前功率
deviceOnLineNum:10, //估计加热设备台数
online:true,
},
]
};
constructor(private api: Api, private ac: ActivatedRoute, private load: Load, private route: ActivatedRoute) { }
constructor() { }
ngOnInit() {
// this.ac.queryParams.subscribe((data) => {
// this.fieldRegionNo = data.no;
// });
this.fieldRegionNo = this.route.snapshot.paramMap.get('fieldRegionNo');
this.getData(0);
}
ngOnInit() {
}
getData(time) {
if (time) {
this.load.toLoad('加载中...', false);
}
this.api.cowshedApp.getShuiCaoData([{'fieldRegionNo' : this.fieldRegionNo}, (data) => {
if (data) {
this.devices = data.param;
}
}]);
}
}
......@@ -45,13 +45,14 @@ export class Api {
// 获取照明信息
getZhaoMingData: (data) => this.trans('post', '/cowshedApp/getZhaoMingData', data),
// 获取水槽信息
getShuiCaoData: (data) => this.trans('post', '/cowshedApp/getShuiCaoData', data),
};
public alert = {
//获取告警列表的数据
getAll: (data)=> this.trans('post', '/alert/getAll', data),
//获取告警列表的数据
getByTerm: (data)=> this.trans('post', '/alert/getByTerm', data),
// 获取告警列表的数据
getAll: (data) => this.trans('post', '/alert/getAll', data),
// 获取告警列表的数据
getByTerm: (data) => this.trans('post', '/alert/getByTerm', data),
}
......
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment