Browse Source

完善正式登录逻辑

dev
刘向辉 3 years ago
parent
commit
4a7aa78e9c
  1. 16
      src/app/babylon/controller/serve-manager.ts
  2. 3
      src/app/babylon/view/mark-window/mark-window.ts
  3. 36
      src/app/pages/plan/plan.component.ts
  4. 6
      src/app/service/babylon/building-basic-infos.service.ts
  5. 99
      src/assets/configs/markplan-1.json
  6. 0
      src/assets/images/mark/inside/tcmhq.png

16
src/app/babylon/controller/serve-manager.ts

@ -245,6 +245,22 @@ export class ServeManager {
//#region 本地json 加载
/**
* Json
* @param path "assets/configs/markplan-1.json"
* @param onSuccess
*/
loadJson(path: string, onSuccess: (data) => void) {
this.buildingBISrv.http.get(path)
.subscribe(data => {
console.log("loadJson", data);
onSuccess(data);
});
}
//#endregion

3
src/app/babylon/view/mark-window/mark-window.ts

@ -11,6 +11,7 @@ import { Event_KeyboardInput } from "../../controller/event-manager/events/event
import { Event_MarkInfoChange, MarkInfoChangeType } from "../../controller/event-manager/events/event-mark-info-change";
import { InputController } from "../../controller/inputController";
import { SceneManager } from "../../controller/scene-manager";
import { ServeManager } from "../../controller/serve-manager";
import { BuildingStatus } from "../../controller/status/building-status";
import { IndoorStatus } from "../../controller/status/indoor-status";
import { StatusManager } from "../../controller/status/status-manager";
@ -125,6 +126,7 @@ export class MarkWindow extends UIBase {
onInit() {
super.onInit();
MarkWindow.instance = this;
let instance = this;
instance.initPickEvent();
@ -141,6 +143,7 @@ export class MarkWindow extends UIBase {
instance.onGetAllMarkPlanData(data);
MarkWindow.instance.selectMarkNode(null, null, true); //模拟选中空节点,创建游离节点
console.log("标绘信息", data);
console.log(JSON.stringify(data));
});
this.weatherTool = new WeatherTool(SceneManager.Instance.defaultCamera, SceneManager.Instance.scene);

36
src/app/pages/plan/plan.component.ts

@ -71,25 +71,30 @@ export class PlanComponent implements OnInit {
ngAfterViewInit(): void {
let simpleData: InsitutionDataSimple = new InsitutionDataSimple();
simpleData.id = 1;
simpleData.key = "ceshi";
simpleData.name = "测试";
simpleData.id = 1; //来自选中的单位的信息 ,测试:1
simpleData.key = "ceshi"; //正式: id.tostring(),测试:"ceshi"
simpleData.name = "测试"; //来自选中的单位的信息 ,测试:"测试"
let has3dData = true;//是否有三维数据,来自选中单位的信息
let loginStatus = StatusManager.getStatus<LoginSatus>(LoginSatus);
//loginStatus.getInstitutionListFromServe((result: InsitutionDataSimple[], data: any) => {
if (ModeManager.institutionDemoKey == ModeManager.c_demoKey_null) { //无指定测试单位,则为正式启动,根据当前单位key寻找
let key = 'ceshi';
//let find = data.find(item => { return item.key === key })
let find = simpleData;
if (find) { //如果在data中找到了对应的单位key,则表示已经有三维数据,直接进入
if (has3dData) { //如果已经有三维数据,直接进入
this.beforeOneSatus = StatusManager.getStatus<LoginSatus>(LoginSatus);
this.beforeOneSatus.onSelectInsSuccess(find)
} else { //如果没有找到对应的单位key,则调用新建单位
let isAdd = confirm('没有单位' + key + ',是否进行初始化?')
if (isAdd) {
let name = key;
let id = 2;// 单位id
loginStatus.createInsitution(key, name, id);
this.beforeOneSatus.onSelectInsSuccess(simpleData)
} else { //如果没有三维数据
if (ModeManager.s_isMakeMode) //内部制作模式下,询问新建
{
let isAdd = confirm('没有单位' + simpleData.key + ',是否进行初始化?')
if (isAdd) {
let name = simpleData.key;
let id = 2;// 单位id
loginStatus.createInsitution(simpleData.key, name, id);
}
}
else //非内部制作模式,不开启
{
console.log("没有单位" + simpleData.key);
}
}
} else {
@ -103,7 +108,6 @@ export class PlanComponent implements OnInit {
//this.modelInit(data) //开发模式 选择单位 弹窗
}
}
//});
}
ngOnDestroy(): void { //组件销毁前 销毁canvas

6
src/app/service/babylon/building-basic-infos.service.ts

@ -9,7 +9,7 @@ import { catchError, retry } from 'rxjs/operators';
export class BuildingBasicInfosService {
constructor(
private http: HttpClient
public http: HttpClient
) { }
@ -103,6 +103,10 @@ export class BuildingBasicInfosService {
}
//#endregion
//#region 错误捕捉
private handleError(error: HttpErrorResponse) {

99
src/assets/configs/markplan-1.json

@ -0,0 +1,99 @@
{
"datas": [
{
"index": 0,
"nodes": [
{
"index": 0,
"id": 1,
"name": "333",
"cameraData": {
"target": {
"_isDirty": true,
"_x": 10.469921166171673,
"_y": -4.215635415935357,
"_z": 2.8616421593814403
},
"beta": 0.9213049244407263,
"alpha": 0.7991533333147679,
"radius": 21.332012959053195
},
"environmentData": [
{
"markDatas": [],
"id": 0,
"buildingId": null,
"isOutdoor": true,
"floorId": null,
"isNow": true
},
{
"markDatas": [],
"id": 1,
"buildingId": null,
"isOutdoor": true,
"floorId": null
}
],
"natureData": {
"weather": "Sun",
"temperature": 26,
"windDirection": "East",
"windPower": 3
},
"showZP": false
},
{
"index": 0,
"id": 2,
"name": "444",
"cameraData": {
"target": {
"_isDirty": true,
"_x": 10.469921166171673,
"_y": -4.215635415935357,
"_z": 2.8616421593814403
},
"beta": 0.9213049244407263,
"alpha": 0.7991533333147679,
"radius": 21.332012959053195
},
"environmentData": [
{
"markDatas": [],
"id": 0,
"buildingId": null,
"isOutdoor": true,
"floorId": null,
"isNow": true
},
{
"markDatas": [],
"id": 1,
"buildingId": null,
"isOutdoor": true,
"floorId": null
},
{
"markDatas": [],
"id": 2,
"buildingId": null,
"isOutdoor": true,
"floorId": null
}
],
"natureData": {
"weather": "Sun",
"temperature": 26,
"windDirection": "East",
"windPower": 3
},
"showZP": false
}
],
"id": 0,
"name": "111"
}
],
"institutionID": "ceshi"
}

0
src/assets/images/mark/inside/stcmhq.png → src/assets/images/mark/inside/tcmhq.png

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

Loading…
Cancel
Save