diff --git a/src/app/key-unit/key-unit-management/key-unit-management.component.ts b/src/app/key-unit/key-unit-management/key-unit-management.component.ts
index 8d4ffff..15f23fd 100644
--- a/src/app/key-unit/key-unit-management/key-unit-management.component.ts
+++ b/src/app/key-unit/key-unit-management/key-unit-management.component.ts
@@ -763,6 +763,7 @@ export class KeyUnitManagementComponent implements OnInit {
}
//撤销审核
cancelAudit(element){
+ this.deleteAll=[]
this.http.delete(`/api/ContentVerifies/${element.contentVerify.id}`).subscribe(data=>{
this.getAllKeyUnit()
},
diff --git a/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.html b/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.html
index 428438f..4ad8d73 100644
--- a/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.html
+++ b/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.html
@@ -181,6 +181,54 @@
+
@@ -395,8 +443,9 @@
+ text-align: center;" >
{{element.tableth[tablethi]}}
+
|
@@ -414,7 +463,7 @@
+ text-align: center;">
{{itemtr.tabletd[tabletdi]}}
|
@@ -435,16 +484,21 @@
[(ngModel)]="itemthj.head" *ngIf="pattern == 'edit'">
+
{{itemthj.head}} |
+ text-align: center; white-space:pre-wrap; width: 185px;">
+ {{itemthj.head}}
+
{{itemthj.body}} |
+ text-align: center;white-space:pre-wrap;width: 185px;">
+ {{itemthj.body}}
+
@@ -846,12 +900,13 @@
height: 40px;
background-color: #ffd91d;
text-align: center;">
-
-
+
+
@@ -862,15 +917,18 @@
{{parts.body[0].name}} |
+ text-align: center;height: 40px;width: 185px;">
+ {{parts.body[0].name}}
+
+
{{parts.body[0].value}} |
+ text-align: center;">
+ {{parts.body[0].value}}
+
+
@@ -880,15 +938,20 @@
{{parts.body[1].name}} |
+ text-align: center;">
+ {{parts.body[1].name}}
+
+
{{parts.body[1].value}} |
+ text-align: center;">
+ {{parts.body[1].value}}
+
+
@@ -900,15 +963,19 @@
{{parts.body[2].name}} |
+ text-align: center;">
+ {{parts.body[2].name}}
+
+
{{parts.body[2].value}} |
+ text-align: center;">
+ {{parts.body[2].value}}
+
+
@@ -918,15 +985,19 @@
{{parts.body[3].name}} |
+ text-align: center;">
+ {{parts.body[3].name}}
+
+
{{parts.body[3].value}} |
+ text-align: center;">
+ {{parts.body[3].value}}
+
+
@@ -937,15 +1008,19 @@
{{parts.body[4].name}} |
+ text-align: center;">
+ {{parts.body[4].name}}
+
+
{{parts.body[4].value}} |
+ text-align: center;">
+ {{parts.body[4].value}}
+
+
diff --git a/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.scss b/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.scss
index aa4a66e..dc5c5aa 100644
--- a/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.scss
+++ b/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.scss
@@ -220,6 +220,135 @@
}
}
}
+ .leftnew{
+ position: fixed;
+ width: 14%;
+ height: 85%;
+ background-color: white;
+ top: 66px;
+ min-width: 300px;
+ overflow-y: auto;
+ display: flex;
+ flex-direction: column;
+ .newHead{
+ width: 100%;
+ height: 40px;
+ text-align: center;
+ background-color: #e1f1ff;
+ span{
+ text-align: center;
+ font-size: 16px;
+ color: #2196F3;
+ height: 40px;
+ line-height: 40px;
+ }
+ }
+ .newBody{
+ width: 100%;
+ height: 100%;
+ display: flex;
+ flex-direction: column;
+ .search{
+ margin: 10px;
+ width: 280px;
+ height: 32px;
+ background-color: #E8E9E9;
+ border-radius: 20px;
+ display: flex;
+ .searchChoose{
+ width: 30%;
+ height: 70%;
+ margin-top: 2%;
+ border-right: 1px solid #9EAAB4;
+ //text-align: center;
+ select{
+ background-color: transparent;
+ border: 0;
+ outline: none;
+ margin-left: 5px;
+ //height: 22px;
+ width: 85%;
+ font-size: 14px;
+ position: relative;
+ bottom: 3px;
+ }
+ }
+ .searchText{
+ width: 65%;
+ height: 100%;
+ input {
+ margin-left: 2%;
+ width: 90%;
+ height: 100%;
+ border: none;
+ outline: none;
+ background-color: #E8E9E9;
+ //line-height: 32px;
+ //border-radius: 3px;
+ }
+ .queryField {
+ height: 32px;
+ //margin: 0 10px;
+
+ }
+ .ordiv{
+ position: relative;
+ .organizationbox{
+ width:280px;
+ height: 600px;
+ background: white;
+ position: absolute;
+ top: 38px;
+ right: -40px;
+ z-index: 999;
+ border: 1px solid grey;
+ overflow-y: auto;
+ li{
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ }
+ mat-tree-node{
+ cursor: pointer;
+ white-space:pre;
+ }
+ mat-tree-node:hover{
+ background: rgba(225, 225, 225, 0.8);
+ }
+ .closediv{
+ z-index: 100;
+ position: absolute;
+ right: 0;
+ top: 0;
+ width: 30px;
+ height: 30px;
+ cursor: pointer;
+ line-height: 30px;
+ text-align: center;
+ }
+ .closediv:hover{
+ background:rgba(225, 225, 225, 0.8);
+ }
+ }
+
+ }
+ .zdy{
+ width: 100%;
+ height: 100%;
+ }
+ }
+ .searImg{
+ width: 15%;
+ height: 100%;
+ img{
+ position: relative;
+ top: 20%;
+ left: 10%;
+ }
+ }
+ }
+ }
+ }
.mainbox {
background-color: white;
width: 745px;
diff --git a/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.ts b/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.ts
index b1906fa..16b32bf 100644
--- a/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.ts
+++ b/src/app/plan-management/create-plan-online-five/create-plan-online-five.component.ts
@@ -4,14 +4,21 @@
* @Author: sueRimn
* @Date: 2021-06-16 13:56:54
* @LastEditors: sueRimn
- * @LastEditTime: 2021-07-30 14:56:55
+ * @LastEditTime: 2021-08-05 16:24:21
*/
import { HttpClient } from '@angular/common/http';
import { Component, Inject, OnInit, Renderer2, ViewChild, Input } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
import { MatSnackBar, MatSnackBarConfig } from '@angular/material/snack-bar';
+import { MatPaginator } from '@angular/material/paginator';
+import { FlatTreeControl } from '@angular/cdk/tree';
+import { FormControl } from '@angular/forms';
+import { MatTreeFlatDataSource, MatTreeFlattener } from '@angular/material/tree';
+import { PageEvent } from '@angular/material/paginator';
+import { TreeService } from '../../http-interceptors/tree.service'
import Viewer from 'viewerjs';
+import { async } from 'rxjs/internal/scheduler/async';
declare var $: any
@Component({
selector: 'app-create-plan-online-five',
@@ -20,8 +27,31 @@ declare var $: any
})
export class CreatePlanOnlineFiveComponent implements OnInit {
- constructor(private http: HttpClient, private route: ActivatedRoute, public snackBar: MatSnackBar, public dialog: MatDialog) { }
+ constructor(private http: HttpClient, private route: ActivatedRoute, public snackBar: MatSnackBar, public dialog: MatDialog, private tree: TreeService) { }
+ 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
+ };
+ }
+ treeControl = new FlatTreeControl(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 })
+ pageEvent: PageEvent;
+ paginator: MatPaginator;
+ length: any; //共多少条数据
+ pageSize: any; //每页条数
+ pageSizeOptions: number[] = [10] //设置每页条数
+ PageNumber: any; //第几页
planLevel: string//预案级别
blockyl=true
@@ -34,29 +64,82 @@ export class CreatePlanOnlineFiveComponent implements OnInit {
this.pattern='edit'
}
this.getUnitData()
+ this.getOrganizations();
//this.getAllBuildings()
- this.tree = {
- json: this.treedate,
- config: this.treeConfig
- };
}
- //树形结构数据
- treedate = [
- {
- "guid": "bc4c7a02-5379-4046-92be-12c67af4295a",
- "displayName": "Elentrix",
- "children": [
- /* "85d412c2-ebc1-4d56-96c9-7da433ac9bb2",
- "28aac445-83b1-464d-9695-a4157dab6eac" */
- ]
- }
+ zdysearch
+ organizationName: any //当前单位组织机构名称
+ treedata: any //组织机构树型数据
+ newArr: any = []
+ newallorganizations: any //用于存储在原始数据基础上的每个机构增加children字段
+ pcMore//pc更多
+ pcput = false//pc收起
+ pcfind//pc查询
+ padjt = false
+
+ //辖区中队div是否显示
+ isorganizationbox: boolean = false
+ js: any //所选组织机构
+ jsId: any //所选组织机构的id
+ jscheck: boolean //所选组织机构勾选框
+ //点击辖区中队树,将选择的辖区中队添加到变量
+ add(node) {
+ this.isorganizationbox = false
+ this.js = node.name
+ this.jsId = node.id
+ }
+ //关闭辖区中队隐藏框
+ closeorganizationbox() {
+ this.isorganizationbox = false
+ }
+ //打开辖区中队隐藏框
+ openorganizationbox() {
+ this.isorganizationbox = true
+ }
+ //关闭出现的组织机构div
+ closediv() {
+ this.isorganizationbox = false
+ }
+ //得到当前单位所在组织机构的tree型数据
+ allorganizations: any //所有组织机构
+ getpresentOrganization() {
+ this.newallorganizations = this.allorganizations
+ this.newallorganizations.forEach(item => {
+ item.children = []
+ this.newallorganizations.forEach(element => {
+ if (element.parentId == item.id) {
+ item.children.push(element)
+ }
+ });
+ });
+ this.http.get("/api/Account/Profiles").subscribe(
+ (data: any) => {
+ this.organizationName = data.organizationName
+ if (this.organizationName) {
+ this.newallorganizations.forEach(item => {
+ if (item.name == this.organizationName) {
+ this.dataSource.data = [item]
+ }
+ });
+ } else {
+ this.dataSource.data = this.tree.toTree(this.treedata);
+ }
+ }
+ )
- ]
- tree
- treeConfig = {
- nodeWidth: 90,
- nodeHeight: 60
- };
+ }
+ //获得所有组织机构
+ getOrganizations() {
+ this.http.get('/api/Organizations').subscribe(
+ (data: any) => {
+ this.allorganizations = data
+ this.treedata = this.tree.toTree(data);
+ this.getpresentOrganization();
+ }
+ )
+ }
+
+
//获得单位信息
unitData: any
@@ -68,7 +151,7 @@ export class CreatePlanOnlineFiveComponent implements OnInit {
data.items.forEach(element => {
if (element.id == this.route.snapshot.queryParams.companyId) {
this.unitData = element
- // console.log('单位列表信息', this.unitData)
+ console.log('单位列表信息', this.unitData)
this.getTemplateData()
}
});
@@ -76,7 +159,7 @@ export class CreatePlanOnlineFiveComponent implements OnInit {
}
selectedItem: string = '封面'
- clickTitleItem(item) {
+ async clickTitleItem(item) {
this.addNumber = -1
this.selectedItem = item.groupName
if (this.selectedItem == '重点图示') {
@@ -84,7 +167,15 @@ export class CreatePlanOnlineFiveComponent implements OnInit {
this.getSitePlan()
this.getRealPicture()
} else if (this.selectedItem == '单位概况') {
- this.getAllBuildings()
+ await this.getAllBuildings()
+ this.planTemplateData[1].building.forEach(element => {
+ element.body[0].attinf[0].olddata = this.unitData.usci
+ element.body[0].attinf[1].olddata = this.unitData.buildingTypes[0].name
+ element.body[0].attinf[2].olddata = this.unitData.contacts
+ element.body[0].attinf[3].olddata = this.unitData.phone
+ element.body[0].attinf[4].olddata = this.unitData.organizationName
+ element.body[0].attinf[5].olddata = this.unitData.address
+ });
this.planTemplateData[1].attribute[0].attinf[0].value=this.planTemplateData[1].attribute[0].attinf[0].olddata = this.unitData.usci
this.planTemplateData[1].attribute[0].attinf[1].value=this.planTemplateData[1].attribute[0].attinf[1].olddata = this.unitData.buildingTypes[0].name
@@ -161,11 +252,11 @@ export class CreatePlanOnlineFiveComponent implements OnInit {
//获得模板信息
getTemplateData() {
this.http.get(`/api/PlanComponents/${this.route.snapshot.queryParams.planId}/WebText`).subscribe((data: any) => {
- // console.log('预案内容', data)
+ console.log('预案内容', data)
this.planTemplateData = JSON.parse(data.webTextData).filter(item =>
item.completed == true
)
- // console.log(this.planTemplateData)
+ //console.log(this.planTemplateData)
if (this.planTemplateData[0].groupName != '封面') {
let obj = {
completed: true,
@@ -193,6 +284,9 @@ export class CreatePlanOnlineFiveComponent implements OnInit {
}
this.planTemplateData.unshift(obj)
}
+ else if(this.planTemplateData[0].groupName == '封面'){
+ this.planTemplateData[0].attribute.objName=this.unitData.name
+ }
this.planTemplateData.forEach(element => {
if (element.groupName == '重点图示') {
if (!element.attribute) {
@@ -309,38 +403,42 @@ export class CreatePlanOnlineFiveComponent implements OnInit {
unitId: any = this.route.snapshot.queryParams.companyId
//获得所有的建筑物
allBuildings: any
- getAllBuildings() {
- this.http.get("/api/Buildings", {
- params: {
- companyId: this.unitId
- }
- }).subscribe((data: any) => {
- data.forEach((item, index) => {
- let params = { buildingId: item.id }
- item.plandata = []
- this.http.get('/api/BuildingAreas', { params }).subscribe(data => {
- item.plandata = data
+ async getAllBuildings() {
+ let result = await new Promise((resolve, reject) => {
+ this.http.get("/api/Buildings", {
+ params: {
+ companyId: this.unitId
+ }
+ }).subscribe((data: any) => {
+ data.forEach((item, index) => {
+ let params = { buildingId: item.id }
+ item.plandata = []
+ this.http.get('/api/BuildingAreas', { params }).subscribe(data => {
+ item.plandata = data
+ resolve(data)
+ })
})
- })
- this.allBuildings = data
- if (this.planTemplateData[1].building == undefined) {
- this.planTemplateData[1].building = []
- for (var i = 0; i < this.allBuildings.length; i++) {
- if (i == 0) {
- this.planTemplateData[1].building.push({ name: this.allBuildings[i].name, body: this.planTemplateData[1].attribute, completed: true })
- } else {
- this.planTemplateData[1].building.push({ name: this.allBuildings[i].name, body: this.planTemplateData[1].attribute, completed: false })
+ this.allBuildings = data
+ if (this.planTemplateData[1].building == undefined) {
+ this.planTemplateData[1].building = []
+ for (var i = 0; i < this.allBuildings.length; i++) {
+ if (i == 0) {
+ this.planTemplateData[1].building.push({ name: this.allBuildings[i].name, body: this.planTemplateData[1].attribute, completed: true })
+ } else {
+ this.planTemplateData[1].building.push({ name: this.allBuildings[i].name, body: this.planTemplateData[1].attribute, completed: false })
+ }
+
}
-
}
- }
-
- console.log(this.planTemplateData)
- //this.buildingName=this.planTemplateData[1].building[0].name
- this.group = this.planTemplateData[1].building
- //delete this.planTemplateData[0].attribute
-
+
+ //console.log(this.planTemplateData)
+ //this.buildingName=this.planTemplateData[1].building[0].name
+ this.group = this.planTemplateData[1].building
+ //delete this.planTemplateData[0].attribute
+
+ })
})
+
}
//获取总平面图
sitePlanItems: any
@@ -599,7 +697,10 @@ export class CreatePlanOnlineFiveComponent implements OnInit {
oldData=false
clickoldData(){
this.oldData=!this.oldData
+
}
+ //新增功能(社会联动等引用)
+ searchType='0'
}
diff --git a/src/app/ui/plan-template/plan-template.component.scss b/src/app/ui/plan-template/plan-template.component.scss
index ac1e15d..1181a0d 100644
--- a/src/app/ui/plan-template/plan-template.component.scss
+++ b/src/app/ui/plan-template/plan-template.component.scss
@@ -4,7 +4,7 @@
* @Author: sueRimn
* @Date: 2021-05-19 15:50:20
* @LastEditors: sueRimn
- * @LastEditTime: 2021-06-15 10:44:55
+ * @LastEditTime: 2021-08-02 09:47:06
*/
.box {
height: 100%;
diff --git a/src/app/ui/plan-template/plan-template.component.ts b/src/app/ui/plan-template/plan-template.component.ts
index bfc4330..2125b63 100644
--- a/src/app/ui/plan-template/plan-template.component.ts
+++ b/src/app/ui/plan-template/plan-template.component.ts
@@ -4,7 +4,7 @@
* @Author: sueRimn
* @Date: 2021-05-31 10:40:01
* @LastEditors: sueRimn
- * @LastEditTime: 2021-07-28 14:37:50
+ * @LastEditTime: 2021-08-04 15:30:24
*/
import { Component, Inject, OnInit,ViewEncapsulation } from '@angular/core';
@@ -131,7 +131,7 @@ export class PlanTemplateComponent implements OnInit {
}
//修改模板
- upPlan(item,i,operation){
+ async upPlan(item,i,operation){
const config = new MatSnackBarConfig();
config.verticalPosition = 'top';
config.duration = 3000
@@ -141,7 +141,7 @@ export class PlanTemplateComponent implements OnInit {
disableClose:true,
data:{item:item,plandata:this.newleftTabledata}
});
- dialogRef.afterClosed().subscribe(result => {
+ dialogRef.afterClosed().subscribe(async result => {
console.log(result)
if(result!=undefined){
//this.newleftTabledata[i].name=result.name
@@ -176,22 +176,28 @@ export class PlanTemplateComponent implements OnInit {
planCategory:Number(result.planCategory),
data:null
}
- this.http.post("/api/PlanTemplate",savaData).subscribe((data:any)=>{
- this.newleftTabledata[this.newleftTabledata.length-1].id=''
- this.newleftTabledata[this.newleftTabledata.length-1].id=data.id
- let body={
- id:data.id,
- basicCategoryId:result.basicCategoryId,
- buildingTypeId:result.buildingTypeId,
- planCategory:Number(result.planCategory),
- data:JSON.stringify(this.newleftTabledata[this.leftclicki].data)
- }
- this.http.put(`/api/PlanTemplate/${data.id}`,body).subscribe((data:any)=>{
- this.snackBar.open('复制成功!','确定',config);
- console.log(data)
+ let aaa = await new Promise((resolve, reject)=>{
+ delete this.newleftTabledata[this.leftclicki].data[0].attribute[1].attinf
+ delete this.newleftTabledata[this.leftclicki].data[0].attribute[3].attinf
+ this.http.post("/api/PlanTemplate",savaData).subscribe((data:any)=>{
+ this.newleftTabledata[this.newleftTabledata.length-1].id=''
+ this.newleftTabledata[this.newleftTabledata.length-1].id=data.id
+ let body={
+ id:data.id,
+ basicCategoryId:result.basicCategoryId,
+ buildingTypeId:result.buildingTypeId,
+ planCategory:Number(result.planCategory),
+ data:JSON.stringify(this.newleftTabledata[this.leftclicki].data)
+ }
+ this.http.put(`/api/PlanTemplate/${data.id}`,body).subscribe((data:any)=>{
+ resolve(data)
+ this.snackBar.open('复制成功!','确定',config);
+ })
+ //this.getLeftdata()
})
- this.getLeftdata()
})
+
+ this.getLeftdata()
}
}
diff --git a/src/assets/images/search.png b/src/assets/images/search.png
new file mode 100644
index 0000000..87813c6
Binary files /dev/null and b/src/assets/images/search.png differ
diff --git a/src/assets/images/路径 323@2x.png b/src/assets/images/路径 323@2x.png
new file mode 100644
index 0000000..8b231d1
Binary files /dev/null and b/src/assets/images/路径 323@2x.png differ