7 changed files with 774 additions and 623 deletions
@ -1,251 +1,297 @@
|
||||
import { Component, OnInit, ViewChild, Inject } from '@angular/core'; |
||||
import { HttpClient } from '@angular/common/http' |
||||
import { MatTreeFlatDataSource, MatTreeFlattener } from '@angular/material/tree'; |
||||
import { MatPaginator } from '@angular/material/paginator'; |
||||
import { FlatTreeControl } from '@angular/cdk/tree'; |
||||
import { FormControl } from '@angular/forms'; |
||||
import { Router,ActivatedRoute } from '@angular/router' |
||||
import { PageEvent } from '@angular/material/paginator'; |
||||
import { MatDialogRef, MatDialog, MAT_DIALOG_DATA } from '@angular/material/dialog'; |
||||
import { MatSnackBar, MatSnackBarConfig } from '@angular/material/snack-bar'; |
||||
import { TreeService } from '../../http-interceptors/tree.service' |
||||
import { Viewer } from 'photo-sphere-viewer'; |
||||
declare var CryptoJS |
||||
import { Component, OnInit, ViewChild, Inject } from "@angular/core"; |
||||
import { HttpClient } from "@angular/common/http"; |
||||
import { |
||||
MatTreeFlatDataSource, |
||||
MatTreeFlattener, |
||||
} from "@angular/material/tree"; |
||||
import { MatPaginator } from "@angular/material/paginator"; |
||||
import { FlatTreeControl } from "@angular/cdk/tree"; |
||||
import { FormControl } from "@angular/forms"; |
||||
import { Router, ActivatedRoute } from "@angular/router"; |
||||
import { PageEvent } from "@angular/material/paginator"; |
||||
import { |
||||
MatDialogRef, |
||||
MatDialog, |
||||
MAT_DIALOG_DATA, |
||||
} from "@angular/material/dialog"; |
||||
import { MatSnackBar, MatSnackBarConfig } from "@angular/material/snack-bar"; |
||||
import { TreeService } from "../../http-interceptors/tree.service"; |
||||
import { Viewer } from "photo-sphere-viewer"; |
||||
declare var CryptoJS; |
||||
@Component({ |
||||
selector: 'app-reinforce-plan', |
||||
templateUrl: './reinforce-plan.component.html', |
||||
styleUrls: ['./reinforce-plan.component.scss'] |
||||
selector: "app-reinforce-plan", |
||||
templateUrl: "./reinforce-plan.component.html", |
||||
styleUrls: ["./reinforce-plan.component.scss"], |
||||
}) |
||||
export class ReinforcePlanComponent implements OnInit { |
||||
constructor( |
||||
private http: HttpClient, |
||||
private router: Router, |
||||
private route: ActivatedRoute, |
||||
private tree: TreeService, |
||||
public dialog: MatDialog, |
||||
public snackBar: MatSnackBar |
||||
) {} |
||||
|
||||
constructor(private http:HttpClient,private router:Router,private route:ActivatedRoute,private tree: TreeService,public dialog: MatDialog,public snackBar: MatSnackBar) { } |
||||
|
||||
private _transformer = (node, level: number) => { //初始化tree
|
||||
private _transformer = (node, level: number) => { |
||||
//初始化tree
|
||||
return { |
||||
expandable: !!node.children && node.children.length > 0, |
||||
name: node.name, |
||||
level: level, |
||||
id: node.id, |
||||
parentId: node.parentId, |
||||
children: node.children |
||||
children: node.children, |
||||
}; |
||||
} |
||||
treeControl = new FlatTreeControl<any>(node => node.level, node => node.expandable); |
||||
treeFlattener = new MatTreeFlattener(this._transformer, node => node.level, node => node.expandable, node => node.children); |
||||
}; |
||||
treeControl = new FlatTreeControl<any>( |
||||
(node) => node.level, |
||||
(node) => node.expandable |
||||
); |
||||
treeFlattener = new MatTreeFlattener( |
||||
this._transformer, |
||||
(node) => node.level, |
||||
(node) => node.expandable, |
||||
(node) => node.children |
||||
); |
||||
dataSource = new MatTreeFlatDataSource(this.treeControl, this.treeFlattener); |
||||
myControl = new FormControl(); |
||||
hasChild = (_: number, node: any) => node.expandable; |
||||
//分页
|
||||
@ViewChild(MatPaginator, {static: true})
|
||||
//分页
|
||||
@ViewChild(MatPaginator, { static: true }) |
||||
pageEvent: PageEvent; |
||||
paginator: MatPaginator; |
||||
length:any; //共多少条数据
|
||||
pageSize:any; //每页条数
|
||||
pageSizeOptions: number[] = [10] //设置每页条数
|
||||
PageNumber:any; //第几页
|
||||
length: any; //共多少条数据
|
||||
pageSize: any; //每页条数
|
||||
pageSizeOptions: number[] = [10]; //设置每页条数
|
||||
PageNumber: any; //第几页
|
||||
|
||||
displayedColumns: string[] = ['state','unitname','planname', 'addpeople','level','addtime','plantype','auditStatus','weihuStatus','openRange','projectlevel','operation']; |
||||
allorganizations:any //所有组织机构
|
||||
allunittype:any //所有单位类型
|
||||
tabledataSource:any //表格数据
|
||||
IsNewData='' //维护更新活新增
|
||||
displayedColumns: string[] = [ |
||||
"state", |
||||
"unitname", |
||||
"planname", |
||||
"addpeople", |
||||
"level", |
||||
"addtime", |
||||
"plantype", |
||||
"auditStatus", |
||||
"weihuStatus", |
||||
"openRange", |
||||
"projectlevel", |
||||
"operation", |
||||
]; |
||||
allorganizations: any; //所有组织机构
|
||||
allunittype: any; //所有单位类型
|
||||
tabledataSource: any; //表格数据
|
||||
IsNewData = ""; //维护更新活新增
|
||||
|
||||
preparelevels:any |
||||
ngOnInit(): void { |
||||
if(window.matchMedia("(max-width: 1400px)").matches){ |
||||
this.pcMore=false |
||||
this.padMore=true |
||||
this.pcfind=false |
||||
this.padjt=true |
||||
}else{ |
||||
this.pcfind=true |
||||
this.pcMore=true |
||||
this.padMore=false |
||||
this.padjt=false |
||||
preparelevels: any; |
||||
async ngOnInit(): Promise<void> { |
||||
if (window.matchMedia("(max-width: 1400px)").matches) { |
||||
this.pcMore = false; |
||||
this.padMore = true; |
||||
this.pcfind = false; |
||||
this.padjt = true; |
||||
} else { |
||||
this.pcfind = true; |
||||
this.pcMore = true; |
||||
this.padMore = false; |
||||
this.padjt = false; |
||||
} |
||||
this.getunitdata(); |
||||
this.getOrganizations(); |
||||
await this.getOrganizations(); |
||||
this.jsId = this.dataSource.data[0].id; |
||||
this.getUnittype(); |
||||
this.getAllPlanInfo(); |
||||
let level = sessionStorage.getItem("level"); |
||||
if(level == "0"){//如果是总队
|
||||
if (level == "0") { |
||||
//如果是总队
|
||||
this.preparelevels = [ |
||||
{name:"总队",value:"1"}, |
||||
{name:"支队",value:"2"}, |
||||
{name:"大队",value:"4"}, |
||||
{name:"中队",value:"8"} |
||||
] |
||||
{ name: "总队", value: "1" }, |
||||
{ name: "支队", value: "2" }, |
||||
{ name: "大队", value: "4" }, |
||||
{ name: "中队", value: "8" }, |
||||
]; |
||||
} |
||||
if(level == "1"){//如果是支队
|
||||
if (level == "1") { |
||||
//如果是支队
|
||||
this.preparelevels = [ |
||||
{name:"支队",value:"2"}, |
||||
{name:"大队",value:"4"}, |
||||
{name:"中队",value:"8"} |
||||
] |
||||
{ name: "支队", value: "2" }, |
||||
{ name: "大队", value: "4" }, |
||||
{ name: "中队", value: "8" }, |
||||
]; |
||||
} |
||||
if(level == "2"){//如果是大队
|
||||
if (level == "2") { |
||||
//如果是大队
|
||||
this.preparelevels = [ |
||||
{name:"大队",value:"4"}, |
||||
{name:"中队",value:"8"} |
||||
] |
||||
{ name: "大队", value: "4" }, |
||||
{ name: "中队", value: "8" }, |
||||
]; |
||||
} |
||||
if(level == "3"){//如果是中队
|
||||
this.preparelevels = [ |
||||
{name:"中队",value:"8"} |
||||
] |
||||
if (level == "3") { |
||||
//如果是中队
|
||||
this.preparelevels = [{ name: "中队", value: "8" }]; |
||||
} |
||||
} |
||||
pcMore//pc更多
|
||||
pcput=false//pc收起
|
||||
pcfind//pc查询
|
||||
padjt=false |
||||
padMore=true//pad收缩控制
|
||||
padput=false//pad收起按钮
|
||||
imgsrcopen="../../../assets/images/routdown2.png" |
||||
imgsrcdown="../../../assets/images/routup2.png" |
||||
pcInfo(){ |
||||
this.pcMore=!this.pcMore |
||||
this.pcput=!this.pcput |
||||
pcMore; //pc更多
|
||||
pcput = false; //pc收起
|
||||
pcfind; //pc查询
|
||||
padjt = false; |
||||
padMore = true; //pad收缩控制
|
||||
padput = false; //pad收起按钮
|
||||
imgsrcopen = "../../../assets/images/routdown2.png"; |
||||
imgsrcdown = "../../../assets/images/routup2.png"; |
||||
pcInfo() { |
||||
this.pcMore = !this.pcMore; |
||||
this.pcput = !this.pcput; |
||||
} |
||||
padInfo(){ |
||||
this.padMore=!this.padMore |
||||
this.padput=!this.padput |
||||
padInfo() { |
||||
this.padMore = !this.padMore; |
||||
this.padput = !this.padput; |
||||
} |
||||
|
||||
allPlanInfo:any //存储所有预案信息
|
||||
allPlanInfo: any; //存储所有预案信息
|
||||
//获得所有预案信息
|
||||
IsNewCompanyData=''//单位维护更新或者新增
|
||||
getAllPlanInfo(){ |
||||
let paramsdata:any = { |
||||
CompanyName: this.companyName || '', |
||||
OrganizationId: this.jsId || '', |
||||
HasChildrenOrganization:this.jscheck || '', |
||||
BuildingTypeId: this.unittype || '', |
||||
PlanType: this.reservePlanType || '', |
||||
AuditStatus:'', //审核状态
|
||||
PlanLevel: this.preparelevel || '', |
||||
HasChildrenPlanLevel: this.plcheck || '', |
||||
CreationTimeRangeStart:this.addtime||'', |
||||
CreationTimeRangeEnd:this.endtime||'', |
||||
PageNumber: this.PageNumber || '1', |
||||
PageSize: this.pageSizeOptions[0], |
||||
Sort: '', |
||||
IsNewData:this.IsNewData, |
||||
IsNewCompanyData:this.IsNewCompanyData |
||||
} |
||||
this.http.get("/api/ApprovedPlans/GetReinforcementPlanComponents",{params:paramsdata}).subscribe((data:any)=>{ |
||||
// console.log('增援预案列表',data)
|
||||
this.length = data.totalCount |
||||
this.allPlanInfo = data |
||||
this.tabledataSource = data.items
|
||||
}) |
||||
IsNewCompanyData = ""; //单位维护更新或者新增
|
||||
getAllPlanInfo() { |
||||
let paramsdata: any = { |
||||
CompanyName: this.companyName || "", |
||||
OrganizationId: this.jsId || "", |
||||
HasChildrenOrganization: this.jscheck || "", |
||||
BuildingTypeId: this.unittype || "", |
||||
PlanType: this.reservePlanType || "", |
||||
AuditStatus: "", //审核状态
|
||||
PlanLevel: this.preparelevel || "", |
||||
HasChildrenPlanLevel: this.plcheck || "", |
||||
CreationTimeRangeStart: this.addtime || "", |
||||
CreationTimeRangeEnd: this.endtime || "", |
||||
PageNumber: this.PageNumber || "1", |
||||
PageSize: this.pageSizeOptions[0], |
||||
Sort: "", |
||||
IsNewData: this.IsNewData, |
||||
IsNewCompanyData: this.IsNewCompanyData, |
||||
}; |
||||
this.http |
||||
.get("/api/ApprovedPlans/GetReinforcementPlanComponents", { |
||||
params: paramsdata, |
||||
}) |
||||
.subscribe((data: any) => { |
||||
// console.log('增援预案列表',data)
|
||||
this.length = data.totalCount; |
||||
this.allPlanInfo = data; |
||||
this.tabledataSource = data.items; |
||||
}); |
||||
} |
||||
|
||||
//得到当前单位信息
|
||||
getunitdata(){ |
||||
this.http.get("/api/Account/Profiles").subscribe( |
||||
(data:any)=>{ |
||||
this.organizationName = data.organizationName |
||||
} |
||||
) |
||||
getunitdata() { |
||||
this.http.get("/api/Account/Profiles").subscribe((data: any) => { |
||||
this.organizationName = data.organizationName; |
||||
}); |
||||
} |
||||
addtime//开始时间
|
||||
endtime//结束时间
|
||||
integrityScoreMin//完整度最小值
|
||||
integrityScoreMax//完整度最大值
|
||||
organizationName:any //当前单位组织机构名称
|
||||
treedata:any //组织机构树型数据
|
||||
newArr:any = [] |
||||
newallorganizations:any //用于存储在原始数据基础上的每个机构增加children字段
|
||||
addtime; //开始时间
|
||||
endtime; //结束时间
|
||||
integrityScoreMin; //完整度最小值
|
||||
integrityScoreMax; //完整度最大值
|
||||
organizationName: any; //当前单位组织机构名称
|
||||
treedata: any; //组织机构树型数据
|
||||
newArr: any = []; |
||||
newallorganizations: any; //用于存储在原始数据基础上的每个机构增加children字段
|
||||
//获得所有组织机构
|
||||
getOrganizations(){ |
||||
this.http.get('/api/Organizations').subscribe( |
||||
(data:any)=>{ |
||||
this.allorganizations = data |
||||
this.dataSource.data = this.tree.toTree(data); |
||||
} |
||||
) |
||||
getOrganizations() { |
||||
return new Promise<void>((resolve, reject) => { |
||||
this.http |
||||
.get("/api/Organizations", { |
||||
params: { |
||||
strict: "true", |
||||
}, |
||||
}) |
||||
.subscribe((data: any) => { |
||||
this.allorganizations = data; |
||||
this.dataSource.data = this.tree.toTree(data); |
||||
resolve(); |
||||
}); |
||||
}); |
||||
} |
||||
|
||||
//获得所有单位类型
|
||||
getUnittype(){ |
||||
this.http.get('/api/BuildingTypes/Simple').subscribe( |
||||
data=>{ |
||||
this.allunittype = data |
||||
} |
||||
) |
||||
getUnittype() { |
||||
this.http.get("/api/BuildingTypes/Simple").subscribe((data) => { |
||||
this.allunittype = data; |
||||
}); |
||||
} |
||||
//分页事件
|
||||
chagePage(e){ |
||||
this.PageNumber = e.pageIndex+1 |
||||
chagePage(e) { |
||||
this.PageNumber = e.pageIndex + 1; |
||||
this.getAllPlanInfo(); |
||||
} |
||||
|
||||
//辖区中队div是否显示
|
||||
isorganizationbox:boolean = false |
||||
isorganizationbox: boolean = false; |
||||
//点击辖区中队树,将选择的辖区中队添加到变量
|
||||
add(node) { |
||||
this.isorganizationbox = false |
||||
this.js = node.name |
||||
this.jsId = node.id |
||||
this.isorganizationbox = false; |
||||
this.js = node.name; |
||||
this.jsId = node.id; |
||||
} |
||||
//关闭辖区中队隐藏框
|
||||
closeorganizationbox() { |
||||
this.isorganizationbox = false |
||||
this.isorganizationbox = false; |
||||
} |
||||
//打开辖区中队隐藏框
|
||||
openorganizationbox() { |
||||
this.isorganizationbox = true |
||||
this.isorganizationbox = true; |
||||
} |
||||
//关闭出现的组织机构div
|
||||
closediv(){ |
||||
this.isorganizationbox = false |
||||
closediv() { |
||||
this.isorganizationbox = false; |
||||
} |
||||
//查询
|
||||
onSubmit (e) { |
||||
this.PageNumber = 1 |
||||
this.pageEvent.pageIndex = 0 |
||||
this.getAllPlanInfo() |
||||
onSubmit(e) { |
||||
this.PageNumber = 1; |
||||
this.pageEvent.pageIndex = 0; |
||||
this.getAllPlanInfo(); |
||||
} |
||||
companyName:any //单位名称
|
||||
js:any //所选组织机构
|
||||
jsId:any //所选组织机构的id
|
||||
jscheck:boolean //所选组织机构勾选框
|
||||
unittype:any //单位类型
|
||||
reservePlanType:any //预案类型
|
||||
preparelevel:any //编制级别
|
||||
plcheck:boolean //编制级别勾选框
|
||||
companyName: any; //单位名称
|
||||
js: any; //所选组织机构
|
||||
jsId: any; //所选组织机构的id
|
||||
jscheck: boolean; //所选组织机构勾选框
|
||||
unittype: any; //单位类型
|
||||
reservePlanType: any; //预案类型
|
||||
preparelevel: any; //编制级别
|
||||
plcheck: boolean; //编制级别勾选框
|
||||
//重置
|
||||
reset(){ |
||||
this.IsNewData='' |
||||
this.IsNewCompanyData='' |
||||
this.companyName = '' |
||||
this.js = '' |
||||
this.jsId = '' |
||||
this.jscheck = false |
||||
this.unittype = '' |
||||
this.reservePlanType = '' |
||||
this.preparelevel = '' |
||||
this.addtime='' |
||||
this.endtime='' |
||||
this.plcheck = false |
||||
reset() { |
||||
this.IsNewData = ""; |
||||
this.IsNewCompanyData = ""; |
||||
this.companyName = ""; |
||||
this.js = ""; |
||||
this.jsId = ""; |
||||
this.jscheck = false; |
||||
this.unittype = ""; |
||||
this.reservePlanType = ""; |
||||
this.preparelevel = ""; |
||||
this.addtime = ""; |
||||
this.endtime = ""; |
||||
this.plcheck = false; |
||||
//重新获取初始化列表
|
||||
this.pageEvent.pageIndex = 0 |
||||
this.PageNumber = 1 |
||||
this.pageEvent.pageIndex = 0; |
||||
this.PageNumber = 1; |
||||
this.getAllPlanInfo(); |
||||
|
||||
} |
||||
|
||||
//查看预案
|
||||
openPlan(e){ |
||||
openPlan(e) { |
||||
// console.log(e)
|
||||
let id = e.id
|
||||
sessionStorage.setItem("planId",id) |
||||
sessionStorage.setItem("companyId",e.companyId) |
||||
let id = e.id; |
||||
sessionStorage.setItem("planId", id); |
||||
sessionStorage.setItem("companyId", e.companyId); |
||||
//sessionStorage.setItem("buildingTypeId",this.unittypeId)
|
||||
sessionStorage.setItem("editable","0") |
||||
sessionStorage.setItem("planName",e.name) |
||||
let companyId = sessionStorage.getItem("companyId") |
||||
window.open(`/keyUnit/viewunitinfoplan?id=${companyId}&orName=${e.company.organizationName}&orId=${e.company.organizationId}`); |
||||
sessionStorage.setItem("editable", "0"); |
||||
sessionStorage.setItem("planName", e.name); |
||||
let companyId = sessionStorage.getItem("companyId"); |
||||
window.open( |
||||
`/keyUnit/viewunitinfoplan?id=${companyId}&orName=${e.company.organizationName}&orId=${e.company.organizationId}` |
||||
); |
||||
} |
||||
} |
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in new issue