From 25f5d16b46ac5c0c4d3f9dcae1e61a3f022776b4 Mon Sep 17 00:00:00 2001 From: liweijin <610336687@qq.com> Date: Mon, 10 Dec 2018 09:35:55 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E9=83=A8=E9=97=A8=E7=AE=A1=E7=90=86-?= =?UTF-8?q?=E6=96=B0=E5=A2=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/pages/main.scss | 4 + .../department-management.component.html | 94 ++++++++++-- .../department-management.component.scss | 23 +++ .../department-management.component.ts | 140 +++++++++++++++++- .../user-management-modify.component.html | 2 +- .../user-management.component.html | 2 +- 6 files changed, 244 insertions(+), 21 deletions(-) diff --git a/src/app/pages/main.scss b/src/app/pages/main.scss index 035bb07..212039e 100644 --- a/src/app/pages/main.scss +++ b/src/app/pages/main.scss @@ -8,6 +8,10 @@ .orange{ color: orange; } + +.danger{ + color: #f86c6b; +} .left{ float: left; } diff --git a/src/app/pages/system-management/department-management/department-management.component.html b/src/app/pages/system-management/department-management/department-management.component.html index e9f7c17..f891805 100644 --- a/src/app/pages/system-management/department-management/department-management.component.html +++ b/src/app/pages/system-management/department-management/department-management.component.html @@ -118,9 +118,10 @@ 机构编码 - - + + 请输入机构编码 + 该编码已存在 @@ -153,16 +154,49 @@ - 所属机构 - - - {{orgSeleted.organization}} - - 修改选择 - 请选择所属机构 - - + 所属机构 + + + {{orgSeleted.organization}} + + 修改选择 + 请选择所属机构 + + + + 机构负责人 + + 选择 + + +
+ + + + 姓名 + 用户名 + 电话 + 操作 + + + + + {{item.real_name}} + {{item.login_name}} + {{item.mobile}} + + + + + + +
+ + @@ -175,11 +209,47 @@ - + + + + + +
+ +
+
+ + + + + 姓名 + 用户名 + 电话 + + + + + + {{item.real_name}} + {{item.login_name}} + {{item.mobile}} + + + +
+ +
+
+ +
+
\ No newline at end of file diff --git a/src/app/pages/system-management/department-management/department-management.component.scss b/src/app/pages/system-management/department-management/department-management.component.scss index 82167dd..44baedb 100644 --- a/src/app/pages/system-management/department-management/department-management.component.scss +++ b/src/app/pages/system-management/department-management/department-management.component.scss @@ -26,4 +26,27 @@ overflow-y:scroll; } } + .user-footer{ + + text-align: center; + + } +} +@-moz-document url-prefix(){ + .user-footer{ + padding-bottom: 20px; + } +} +.ztree-child{ + padding-bottom: 40px; + padding-right: 16px; +} +.drawer-footer{ + display: inline-block; + position: relative; + left: 50%; + transform: translate(-50%) +} +.users-box{ + padding-bottom: 30px; } \ No newline at end of file diff --git a/src/app/pages/system-management/department-management/department-management.component.ts b/src/app/pages/system-management/department-management/department-management.component.ts index 6ac6591..24048be 100644 --- a/src/app/pages/system-management/department-management/department-management.component.ts +++ b/src/app/pages/system-management/department-management/department-management.component.ts @@ -15,27 +15,41 @@ declare var jQuery: any styleUrls: ['./department-management.component.scss'] }) export class DepartmentManagementComponent implements OnInit { + collectionSize:any ; treeSelected:any; //树模型-当前选中项 treeSelectedChild:any; //上级机构选择树 statusParamsTree:any={ //获取机构接口的状态,0请求失败 1请求前 2请求中 3请求成功,有数据 4请求成功,无数据 status:1, } + statusParamsUsers:any={ //接口的状态,0请求失败 1请求前 2请求中 3请求成功,有数据 4请求成功,无数据 + status:1, + } public TreeData:any; public canDel:any=false; public canEdit:any=false; public search:any={ - orgId:'', + page_index:'1', + page_size:'10', + real_name:'', } public orgDetail:any=''; public orgSeleted:any=''; //所选机构详情 public modifyType:any='3'; //操作状态 1新增 2修改 3详情 public parentName:any=''; public parentNode:any=''; //当前选中机构的父级节点 - public userList:any=''; //机构负责人列表 + public userList:any=''; //机构负责人列表-详情时展示用户列表 + public userSelecteds:any=[]; //机构负责人已选用户-新增、修改时 + public userData:any=[]; //用户列表数据 saveCheck:any=false; //保存检查,保存验证表单 false 还未验证 true 触发了验证 - + public visible:any=false; + public orgSeletedBtn:any=true; //控制机构选择按钮 validateForm: FormGroup; - + visibleUsers:any=false; + isLoadingSave:any=false; + nameOnly:any=true; //系统账号是否唯一 true唯一 false重复 + oldLoginName:any=''; //修改时,保存原本的系统账号,用于检测唯一性 + checkNameStatus:any=''; //检测账号唯一性的图标状态 + orgList:any=[]; constructor( private fb: FormBuilder, private http:HttpClientService, @@ -62,14 +76,41 @@ export class DepartmentManagementComponent implements OnInit { }); this.initTree(); + this.queryTable(); } //新增、修改 addModify(type){ this.modifyType=type; + this.userSelecteds=[]; } - + //保存 submitForm(){ - this.saveCheck=true; + let pid=''; + let userList=[]; + this.orgSeleted?pid=this.orgSeleted.id:pid=''; + if(this.userSelecteds&&this.userSelecteds.length>0){ + this.userSelecteds.forEach(item=>{ + userList.push({uid:item.uid}) + }) + } + let params=Object.assign({},this.validateForm.value,{pid:pid},{userList:userList}) + console.log(params) + } + //取消 + cancel(){ + this.modifyType=3; + } + //保存机构负责人 + userSave(){ + console.log(this.userData); + this.userData.forEach(item=>{ + if(item.checked&&!item.disabled){ + console.log(item) + // 增加数据 + this.userSelecteds = [ ...this.userSelecteds, item]; + } + }) + this.visibleUsers = false; } //保存选择机构 treeSave(){ @@ -82,6 +123,28 @@ export class DepartmentManagementComponent implements OnInit { this.message.create('warning', `请选择所属机构!`,{ nzDuration: 2000 }); } } + //打开机构负责人抽屉 + openUsers(){ + this.visibleUsers = true; + this.queryTable(); + } + //处理机构负责人选择和数据回填 + userSelect(){ + if(this.userData){ + this.userData.forEach(item=>{ + this.userSelecteds.forEach(option=>{ + if(item.uid==option.uid){ + item.checked=true; + item.disabled=true; + } + }) + }) + } + } + //关闭用户选择抽屉 + closeUser(){ + this.visibleUsers = false; + } //打开机构树抽屉 open(): void { this.treeSelectedChild=''; @@ -96,6 +159,52 @@ export class DepartmentManagementComponent implements OnInit { this.orgSeletedBtn=true; this.orgSeleted=''; } + //删除机构负责人 + delectConfirm(item){ + this.userSelecteds=this.userSelecteds.filter(function(option){ + return item.uid!==option.uid + }) + } + //取消删除 + delectCancel(){ + + } + + //获取列表 + queryTable():void{ + this.statusParamsUsers.status=1; + this.http.get('/sysapi/setting/user/list',this.search).subscribe((json)=>{ + if(json.is_success){ + this.userData=json.body.list; + this.collectionSize=json.body.total; + if(json.body.list&&json.body.list.length>0){ + this.statusParamsUsers.status=3; + this.userData.forEach(item=>{ + if(this.userSelecteds.length>0){ + this.userSelecteds.forEach(option=>{ + if(item.uid==option.uid){ + item.checked=true; + item.disabled=true; + } + }) + }else{ + item.checked=false; + item.disabled=false; + } + }) + }else{ + this.statusParamsUsers.status=4; + } + }else{ + this.statusParamsUsers.status=0; + } + }) + } + //翻页 + pageChange(event){ + this.search.page_index=event; + this.queryTable(); + } //修改时查询该系统下的所有用户 queryUserById():void{ this.http.get('/sysapi/setting/organization/queryUserById/'+this.orgDetail.id).subscribe((json)=>{ @@ -106,6 +215,21 @@ export class DepartmentManagementComponent implements OnInit { } }) } + //检验编码的唯一性 + checkName(){ + //处理修改的时候,修改的值为原来的值,这时候直接显示验证成功 + if(this.modifyType==2&&this.validateForm.value.code.trim()==this.oldLoginName){ + this.nameOnly = true; + this.checkNameStatus='success'; + return false; + } + this.orgList.forEach(item=>{ + if(this.validateForm.value.code.trim()==item.code){ + this.checkNameStatus='error'; + this.nameOnly = false; + } + }) + } //获取机构列表,树模型数据处理 initTree(){ //获取目录列表 @@ -114,6 +238,7 @@ export class DepartmentManagementComponent implements OnInit { if(json.is_success){ if(json.body.length>0){ this.statusParamsTree.status=3; + this.orgList=json.body; let children=[]; json.body.forEach(option=>{ option.name=option.organization; @@ -174,6 +299,7 @@ export class DepartmentManagementComponent implements OnInit { console.log(isTopNode) if(isTopNode){ //子节点 this.orgDetail=treeNode; + this.oldLoginName=this.orgDetail.code; this.queryUserById(); this.canDel=true; this.canEdit=true; @@ -184,7 +310,7 @@ export class DepartmentManagementComponent implements OnInit { this.parentNode=isTopNode; } }else{ //顶级节点 - this.orgDetail=''; + this.orgDetail=''; this.canDel=false; this.canEdit=false; } diff --git a/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.html b/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.html index 56814c8..486eb33 100644 --- a/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.html +++ b/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.html @@ -26,7 +26,7 @@ - 所属机构 + 所属机构 {{orgDetail.organization}} diff --git a/src/app/pages/system-management/user-management/user-management.component.html b/src/app/pages/system-management/user-management/user-management.component.html index a087cd1..ad95ddb 100644 --- a/src/app/pages/system-management/user-management/user-management.component.html +++ b/src/app/pages/system-management/user-management/user-management.component.html @@ -1,4 +1,4 @@ -
+
From ff561a6886af14bbe35dfc5d5491ace41fbd848f Mon Sep 17 00:00:00 2001 From: liweijin <610336687@qq.com> Date: Mon, 10 Dec 2018 12:08:11 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E9=83=A8=E9=97=A8=E7=AE=A1=E7=90=86-?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=83=A8=E9=97=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../department-management.component.html | 12 ++-- .../department-management.component.ts | 72 ++++++++++++++++--- 2 files changed, 69 insertions(+), 15 deletions(-) diff --git a/src/app/pages/system-management/department-management/department-management.component.html b/src/app/pages/system-management/department-management/department-management.component.html index f891805..3c4fc18 100644 --- a/src/app/pages/system-management/department-management/department-management.component.html +++ b/src/app/pages/system-management/department-management/department-management.component.html @@ -53,9 +53,9 @@
机构类型 - 机构 - 部门 - + 机构 + 部门 +
@@ -119,7 +119,7 @@ 机构编码 - + 请输入机构编码 该编码已存在 @@ -148,8 +148,8 @@ 机构类型 - - + + diff --git a/src/app/pages/system-management/department-management/department-management.component.ts b/src/app/pages/system-management/department-management/department-management.component.ts index 24048be..645e132 100644 --- a/src/app/pages/system-management/department-management/department-management.component.ts +++ b/src/app/pages/system-management/department-management/department-management.component.ts @@ -32,8 +32,8 @@ export class DepartmentManagementComponent implements OnInit { page_size:'10', real_name:'', } - public orgDetail:any=''; - public orgSeleted:any=''; //所选机构详情 + public orgDetail:any=''; //左侧机构目录当前选中项机构的详情信息 + public orgSeleted:any=''; //新增或者修改时,当前选中的所属机构的机构详情信息 public modifyType:any='3'; //操作状态 1新增 2修改 3详情 public parentName:any=''; public parentNode:any=''; //当前选中机构的父级节点 @@ -71,17 +71,45 @@ export class DepartmentManagementComponent implements OnInit { code:[ '', [ Validators.required ] ], contact_person:[ '' ], contact_method:[ '' ], - organization_type:[ '1' ], + organization_type:[ '' ], address:[ '' ], }); this.initTree(); this.queryTable(); } - //新增、修改 + //新增、修改 type 1新增 2修改 addModify(type){ + //数据清空重置 this.modifyType=type; + this.validateForm.reset(); this.userSelecteds=[]; + this.orgSeleted=''; + this.checkNameStatus=''; + this.nameOnly=true; + this.validateForm.patchValue({organization_type:1,}); + if(type==1){ + + }else if(type==2){ + let item=this.orgDetail; + this.validateForm.patchValue({ + organization:item.organization, + shortName:item.shortName, + code:item.code, + contact_person:item.contact_person, + contact_method:item.contact_method, + organization_type:item.organization_type, + address:item.address, + }); + this.orgSeleted=this.parentNode; + this.userList.forEach(option=>{ + option.checked=true; + option.disabled=false; + this.userSelecteds.push(option) + }) + + } + } //保存 submitForm(){ @@ -95,6 +123,25 @@ export class DepartmentManagementComponent implements OnInit { } let params=Object.assign({},this.validateForm.value,{pid:pid},{userList:userList}) console.log(params) + if(this.modifyType==1){ + this.http.post('/sysapi/setting/organization/add/',params).subscribe((json)=>{ + if(json.is_success){ + this.message.success(`新增成功!`); + this.initTree(); + }else{ + this.message.success(`新增失败!`); + } + }) + }else if(this.modifyType==2){ + this.http.put('/sysapi/setting/organization/updateById/'+this.orgDetail.id,params).subscribe((json)=>{ + if(json.is_success){ + this.message.success(`修改成功!`); + this.initTree(); + }else{ + this.message.success(`修改失败!`); + } + }) + } } //取消 cancel(){ @@ -105,12 +152,12 @@ export class DepartmentManagementComponent implements OnInit { console.log(this.userData); this.userData.forEach(item=>{ if(item.checked&&!item.disabled){ - console.log(item) // 增加数据 - this.userSelecteds = [ ...this.userSelecteds, item]; + this.userSelecteds = [ ...this.userSelecteds, item]; } }) this.visibleUsers = false; + console.log(this.userSelecteds) } //保存选择机构 treeSave(){ @@ -170,7 +217,7 @@ export class DepartmentManagementComponent implements OnInit { } - //获取列表 + //获取用户列表 queryTable():void{ this.statusParamsUsers.status=1; this.http.get('/sysapi/setting/user/list',this.search).subscribe((json)=>{ @@ -223,12 +270,20 @@ export class DepartmentManagementComponent implements OnInit { this.checkNameStatus='success'; return false; } + //拿用户输入的机构编码跟机构列表的编码对比,判断编码是否已经存在 + let status='true'; this.orgList.forEach(item=>{ if(this.validateForm.value.code.trim()==item.code){ this.checkNameStatus='error'; this.nameOnly = false; + status='false'; + return false; } - }) + }); + if(status=='true'&&this.validateForm.value.code.trim()){ + this.checkNameStatus='success'; + this.nameOnly = true; + } } //获取机构列表,树模型数据处理 initTree(){ @@ -296,7 +351,6 @@ export class DepartmentManagementComponent implements OnInit { var zTree = $.fn.zTree.getZTreeObj("treeDemo"); this.treeSelected=treeNode; let isTopNode=this.treeSelected.getParentNode(); //是否为顶级节点 true不是顶级节点 false 为顶级节点 - console.log(isTopNode) if(isTopNode){ //子节点 this.orgDetail=treeNode; this.oldLoginName=this.orgDetail.code; From 628f041b17e9a38d3875d620ba0430698cce2bab Mon Sep 17 00:00:00 2001 From: liweijin <610336687@qq.com> Date: Mon, 10 Dec 2018 18:31:18 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E8=A7=92=E8=89=B2=E7=AE=A1=E7=90=86-?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E3=80=81=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../department-management.component.html | 9 +- .../department-management.component.ts | 31 +- .../role-management-modify.component.html | 98 +++++++ .../role-management-modify.component.scss | 43 +++ .../role-management-modify.component.spec.ts | 25 ++ .../role-management-modify.component.ts | 275 ++++++++++++++++++ .../role-management.component.html | 63 +++- .../role-management.component.scss | 20 ++ .../role-management.component.ts | 87 +++++- .../system-management-routing.module.ts | 6 + .../system-management.module.ts | 2 + 11 files changed, 644 insertions(+), 15 deletions(-) create mode 100644 src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.html create mode 100644 src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.scss create mode 100644 src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.spec.ts create mode 100644 src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.ts diff --git a/src/app/pages/system-management/department-management/department-management.component.html b/src/app/pages/system-management/department-management/department-management.component.html index 3c4fc18..7199f9a 100644 --- a/src/app/pages/system-management/department-management/department-management.component.html +++ b/src/app/pages/system-management/department-management/department-management.component.html @@ -8,7 +8,7 @@
- +
@@ -176,7 +176,7 @@ 姓名 用户名 电话 - 操作 + 操作 @@ -194,7 +194,7 @@ @@ -219,9 +219,8 @@
-
- +
diff --git a/src/app/pages/system-management/department-management/department-management.component.ts b/src/app/pages/system-management/department-management/department-management.component.ts index 645e132..90ec8f7 100644 --- a/src/app/pages/system-management/department-management/department-management.component.ts +++ b/src/app/pages/system-management/department-management/department-management.component.ts @@ -2,7 +2,7 @@ import { Component, OnInit } from '@angular/core'; import { FormBuilder,FormControl,FormGroup,Validators} from '@angular/forms'; import { HttpClientService } from '../../../services/http-client.service'; import { Router } from '@angular/router'; -import { NzMessageService } from 'ng-zorro-antd'; +import { NzMessageService,NzModalRef, NzModalService } from 'ng-zorro-antd'; import { Observable } from 'rxjs'; import 'ztree'; @@ -50,12 +50,15 @@ export class DepartmentManagementComponent implements OnInit { oldLoginName:any=''; //修改时,保存原本的系统账号,用于检测唯一性 checkNameStatus:any=''; //检测账号唯一性的图标状态 orgList:any=[]; + confirmModal:NzModalRef; constructor( private fb: FormBuilder, private http:HttpClientService, private router:Router, private message: NzMessageService, - ) { } + private modal: NzModalService, + ) { + } ngOnInit() { $('.tree-box').css('height',(document.documentElement.clientHeight-106+'px')); @@ -111,6 +114,26 @@ export class DepartmentManagementComponent implements OnInit { } } + //删除 + delete(){ + this.confirmModal = this.modal.confirm({ + nzTitle: '删除', + nzContent: '确定删除【'+this.orgDetail.organization+'】?', + nzOnOk: () => new Promise((resolve, reject) => { + this.http.delete('/sysapi/setting/organization/delOrgByid/'+this.orgDetail.id).subscribe((json)=>{ + if(json.is_success){ + resolve(); + this.message.success(`删除成功!`); + this.initTree(); + }else{ + reject(); + this.message.error(`删除失败!`); + } + }) + + }).catch(() => console.log('Oops errors!')) + }); + } //保存 submitForm(){ let pid=''; @@ -129,7 +152,7 @@ export class DepartmentManagementComponent implements OnInit { this.message.success(`新增成功!`); this.initTree(); }else{ - this.message.success(`新增失败!`); + this.message.error(`新增失败!`); } }) }else if(this.modifyType==2){ @@ -138,7 +161,7 @@ export class DepartmentManagementComponent implements OnInit { this.message.success(`修改成功!`); this.initTree(); }else{ - this.message.success(`修改失败!`); + this.message.error(`修改失败!`); } }) } diff --git a/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.html b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.html new file mode 100644 index 0000000..2a89ace --- /dev/null +++ b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.html @@ -0,0 +1,98 @@ +
+
+ + +
+ + 角色名称 + + + 请输入角色名称 + + + + 角色类型 + + + + + + + + + 角色用户 + + 选择 + + +
+ + + + 姓名 + 用户名 + 电话 + 操作 + + + + + {{item.real_name}} + {{item.login_name}} + {{item.mobile}} + + + + + + +
+ + 功能权限 + +
+
    +
    +
    +
    +
    + +
    +
    + +
    + +
    +
    + + + + + 姓名 + 用户名 + 电话 + + + + + + {{item.real_name}} + {{item.login_name}} + {{item.mobile}} + + + +
    + +
    +
    + +
    +
    +
    \ No newline at end of file diff --git a/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.scss b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.scss new file mode 100644 index 0000000..41e3b9e --- /dev/null +++ b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.scss @@ -0,0 +1,43 @@ + @import "../../../main.scss"; + .user-modify-box{ + position: relative; + overflow-y:scroll; + .user-footer{ + text-align: center; + margin-top: -20px; + + } +} +.ztree{ + padding-bottom: 40px; + padding-right: 16px; +} +.relative{ + position: relative; + width: 120px; + height: 40px; +} +.user-table{ + width: 80%; + margin: 0 auto; + margin-bottom: 30px; +} +.drawer-footer{ + display: inline-block; + position: relative; + left: 50%; + transform: translate(-50%) +} +.users-box{ + padding-bottom: 30px; +} +.tree-box{ + margin-bottom: 40px; +} +//火狐浏览器单独设置样式 解决在火狐浏览器下 底部padding-bottom无效问题 +@-moz-document url-prefix(){ + .user-footer{ + padding-bottom: 20px; + } +} + \ No newline at end of file diff --git a/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.spec.ts b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.spec.ts new file mode 100644 index 0000000..7b8638e --- /dev/null +++ b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { RoleManagementModifyComponent } from './role-management-modify.component'; + +describe('RoleManagementModifyComponent', () => { + let component: RoleManagementModifyComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ RoleManagementModifyComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(RoleManagementModifyComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.ts b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.ts new file mode 100644 index 0000000..66387a7 --- /dev/null +++ b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.ts @@ -0,0 +1,275 @@ +import { Component, OnInit } from '@angular/core'; +import { FormBuilder,FormControl,FormGroup,Validators} from '@angular/forms'; +import { HttpClientService } from '../../../../services/http-client.service'; +import { Router,ActivatedRoute } from '@angular/router'; +import { NzMessageService } from 'ng-zorro-antd'; +import { Observable } from 'rxjs'; +import 'ztree'; +declare var $: any; +declare var jQuery: any; + +@Component({ + selector: 'app-role-management-modify', + templateUrl: './role-management-modify.component.html', + styleUrls: ['./role-management-modify.component.scss'] +}) +export class RoleManagementModifyComponent implements OnInit { + /* 新树形组件参数 begin*/ + parentNode:any; + parentName:any; + treeSelected:any; + isTreeTop:any; + /* 新树形组件参数 bed */ + validateForm: FormGroup; + visibleUsers = false; //控制抽屉显示 + statusParamsDetail:any={ //获取用户详情接口的状态,0请求失败 1请求前 2请求中 3请求成功,有数据 4请求成功,无数据 + status:1, + } + statusParamsUsers:any={ //接口的状态,0请求失败 1请求前 2请求中 3请求成功,有数据 4请求成功,无数据 + status:1, + } + modifyType:any=1; //当前页面操作类型 1 新增 2 编辑 + public roleId:any=''; + public userSelecteds:any=[]; //机构负责人已选用户-新增、修改时 + public userData:any=[]; //用户列表数据 + public search:any={ + page_index:'1', + page_size:'10', + real_name:'', + } + collectionSize:any ; + + + constructor( + private fb: FormBuilder, + private http:HttpClientService, + private route:ActivatedRoute, + private router:Router, + private message: NzMessageService, + ) { } + + ngOnInit() { + this.validateForm = this.fb.group({ + role_name:[ '', [ Validators.required ] ], + role_type:[ 1, [ Validators.required ] ], //0=系统内置(不可删除) ,1=用户定义 + description:[ ''], + role_code:[ ''], + status:[''], + user:[], + permission:[], + }); + //取路由参数 + this.route.queryParams.subscribe(routeParams=>{ + this.modifyType=routeParams.operateType; + //routeParams 1新增 2修改 + if(routeParams.operateType==2){ + this.roleId=routeParams.id; + this.queryUserById(); + this.queryDetail(); + }else{ + this.initTree(); + this.statusParamsDetail.status=3; + } + }) + } + submitForm(){ + let permission:any=[]; + var zTree = $.fn.zTree.getZTreeObj("treeDemo"); + var checkList=zTree.getCheckedNodes(true); + if(checkList.length>0){ + for(var i=0;i0){ + this.userSelecteds.forEach(item=>{ + users.push({ + uid:item.uid, + real_name:item.real_name, + mobile:item.mobile, + email:item.email, + sex:item.sex, + }) + }) + } + this.validateForm.patchValue({ + permission:permission, + user:users, + }) + console.log(this.validateForm.value) + this.http.post('/sysapi/setting/role/add/',this.validateForm.value).subscribe((json)=>{ + if(json.is_success){ + this.message.success(`新增成功!`); + this.router.navigate(['app/system/roles']) + }else{ + this.message.error(`新增失败!`); + } + }) + } + //修改时查询该角色下的所有用户 + queryUserById():void{ + this.http.get('/sysapi/setting/role/users/'+this.roleId).subscribe((json)=>{ + if(json.is_success){ + if(json.body&&json.body.length>0){ + json.body.forEach(item=>{ + console.log() + this.userSelecteds = [ ...this.userSelecteds, item]; + }) + } + }else{ + + } + }) + } + //根据id查询角色详情 + queryDetail():void{ + this.http.get('/sysapi/setting/role/detail/find',{rid:this.roleId}).subscribe((json)=>{ + if(json.is_success){ + if(json.body){ + this.statusParamsDetail=3; + //数据回填 + let item=json.body; + this.validateForm.patchValue({ + role_name:item.role_name, + role_type:item.role_type, //0=系统内置(不可删除) ,1=用户定义 + description:item.description, + role_code:item.role_code, + status:item.status, + }) + + }else{ + this.statusParamsDetail=4; + } + }else{ + this.statusParamsDetail=0; + } + + + }) + } + //保存机构负责人 + userSave(){ + console.log(this.userData); + this.userData.forEach(item=>{ + if(item.checked&&!item.disabled){ + // 增加数据 + this.userSelecteds = [ ...this.userSelecteds, item]; + } + }) + this.visibleUsers = false; + console.log(this.userSelecteds) + } + //删除机构负责人 + delectConfirm(item){ + this.userSelecteds=this.userSelecteds.filter(function(option){ + return item.uid!==option.uid + }) + } + //打开机构负责人抽屉 + openUsers(){ + this.visibleUsers = true; + this.queryTable(); + } + //关闭机构选择页面 + close(): void { + this.visibleUsers = false; + } + //翻页 + pageChange(event){ + this.search.page_index=event; + this.queryTable(); + } + //获取用户列表 + queryTable():void{ + this.statusParamsUsers.status=1; + this.http.get('/sysapi/setting/user/list',this.search).subscribe((json)=>{ + if(json.is_success){ + this.userData=json.body.list; + this.collectionSize=json.body.total; + if(json.body.list&&json.body.list.length>0){ + this.statusParamsUsers.status=3; + this.userData.forEach(item=>{ + if(this.userSelecteds.length>0){ + this.userSelecteds.forEach(option=>{ + if(item.uid==option.uid){ + item.checked=true; + item.disabled=true; + } + }) + }else{ + item.checked=false; + item.disabled=false; + } + }) + }else{ + this.statusParamsUsers.status=4; + } + }else{ + this.statusParamsUsers.status=0; + } + }) + } + + //新树模型参数设置 + public zNodes: any[]; + setting = { + data: { + simpleData: { + enable: true + } + }, + view: { + showLine: true, + dblClickExpand: false, + showIcon:true + }, + check:{ + autoCheckTrigger:true, + chkboxType:{"Y":"ps","N":"ps"}, + enable: true, + chkStyle: "checkbox", + }, + callback: { + //节点点击事件 + onClick: (event, treeId, treeNode, clickFlag) => { + var zTree = $.fn.zTree.getZTreeObj("treeDemo"); + zTree.expandNode(treeNode); + this.treeSelected=treeNode; + this.parentNode=this.treeSelected.getParentNode(); + if(!this.parentNode){ + this.isTreeTop=true; + }else{ + this.isTreeTop=false; + } + }, + //节点展开事件 + onExpand: (event, treeId, treeNode) => { + + } + }, + }; + //新树模型 + initTree(){ + this.http.get('/sysapi/setting/permission/menu/list').subscribe(json=>{ + + let treeList=[]; + treeList.push({ //一层目录 + name:"全部权限", + isParent:true, + open:true, + id:'', + children:json.body + }); + this.zNodes=treeList; + $.fn.zTree.init($("#treeDemo"), this.setting, this.zNodes); + var zTree = $.fn.zTree.getZTreeObj("treeDemo"); + let node = zTree.getNodes(); + }) + } + +} diff --git a/src/app/pages/system-management/role-management/role-management.component.html b/src/app/pages/system-management/role-management/role-management.component.html index a67e626..e262611 100644 --- a/src/app/pages/system-management/role-management/role-management.component.html +++ b/src/app/pages/system-management/role-management/role-management.component.html @@ -1,3 +1,60 @@ -

    - role-management works! -

    +
    +
    +
    + + +
    + + + + 角色名称 + 角色类型 + 创建人 + 创建日期 + 操作 + + + + + {{item.role_name}} + 系统内置用户定义 + {{item.create_by}} + {{item.create_date| date:'yyyy-MM-dd HH:mm:ss'}} + + + + + + + + +
    + +
    +
    + +
    +
    +
    diff --git a/src/app/pages/system-management/role-management/role-management.component.scss b/src/app/pages/system-management/role-management/role-management.component.scss index e69de29..a42cc05 100644 --- a/src/app/pages/system-management/role-management/role-management.component.scss +++ b/src/app/pages/system-management/role-management/role-management.component.scss @@ -0,0 +1,20 @@ +@import "../../main.scss"; +.system-main-container{ + .user-manage{ + .system-main-content{ + overflow-y:scroll; + } + .card{ + + } + .tree-box{ + overflow-y:scroll; + } + } +} + +.user-detail{ + .detail-item-text{ + color: #1890ff; + } +} diff --git a/src/app/pages/system-management/role-management/role-management.component.ts b/src/app/pages/system-management/role-management/role-management.component.ts index c012681..e8da4f7 100644 --- a/src/app/pages/system-management/role-management/role-management.component.ts +++ b/src/app/pages/system-management/role-management/role-management.component.ts @@ -1,4 +1,11 @@ import { Component, OnInit } from '@angular/core'; +import { HttpClientService } from '../../../services/http-client.service'; +import { Router } from '@angular/router'; +import { NzMessageService } from 'ng-zorro-antd'; + +import 'ztree'; +declare var $: any; +declare var jQuery: any; @Component({ selector: 'app-role-management', @@ -6,10 +13,84 @@ import { Component, OnInit } from '@angular/core'; styleUrls: ['./role-management.component.scss'] }) export class RoleManagementComponent implements OnInit { + collectionSize:any ; + public tableData:any=[]; + statusParamsTable:any={ //获取用户列表接口的状态,0请求失败 1请求前 2请求中 3请求成功,有数据 4请求成功,无数据 + status:1, + } - constructor() { } + statusParamsDetail:any={ //获取用户详情接口的状态,0请求失败 1请求前 2请求中 3请求成功,有数据 4请求成功,无数据 + status:1, + } + public search:any={ + page_index:'1', + page_size:'10', + role_name:'', + } + visible = false; //用户详情抽屉框显示隐藏 + userDetail:any={}; //用户详情 - ngOnInit() { - } + constructor( + private http:HttpClientService, + private router:Router, + private message: NzMessageService, + ) { } + + ngOnInit() { + // 页面监听 动态改变表单高度 + $('#main-box').css('height',(document.documentElement.clientHeight-106+'px')); + $(window).resize(function(){ + $('#main-box').css('height',(document.documentElement.clientHeight-106+'px')); + }) + this.queryTable(); + } + //新增、修改 1新增 2修改 + addModify(type,item?){ + if(type==1){ + this.router.navigate(['app/system/roles/modify'],{queryParams:{operateType:1}}) + }else if(type==2){ + this.router.navigate(['app/system/roles/modify'],{queryParams:{operateType:2,id:item.rid}}) + } + } + //删除 + delectConfirm(item){ + this.http.delete('/sysapi/setting/role/delete/'+item.rid).subscribe((json)=>{ + if(json.is_success){ + this.message.success(`删除成功!`); + this.queryTable(); + }else{ + this.message.error(`删除失败`) + } + }) + } + //重置,重置搜索条件 + reset(){ + this.search.page_index=1; + this.search.page_size=10; + this.search.role_name=''; + this.queryTable(); + } + //获取列表 + queryTable():void{ + this.statusParamsTable.status=1; + this.http.get('/sysapi/setting/role/list',this.search).subscribe((json)=>{ + if(json.is_success){ + this.tableData=json.body.list; + this.collectionSize=json.body.total; + if(json.body.list&&json.body.list.length>0){ + this.statusParamsTable.status=3; + }else{ + this.statusParamsTable.status=4; + } + }else{ + this.statusParamsTable.status=0; + } + }) + } + //翻页 + pageChange(event){ + this.search.page_index=event; + this.queryTable(); + } } diff --git a/src/app/pages/system-management/system-management-routing.module.ts b/src/app/pages/system-management/system-management-routing.module.ts index a0002b7..1fceed9 100644 --- a/src/app/pages/system-management/system-management-routing.module.ts +++ b/src/app/pages/system-management/system-management-routing.module.ts @@ -9,6 +9,7 @@ import { DepartmentManagementComponent } from './department-management/departmen import { OperationLogsComponent } from './operation-logs/operation-logs.component'; import { DataSynchronizeComponent } from './data-synchronize/data-synchronize.component'; import { UserManagementModifyComponent } from './user-management/user-management-modify/user-management-modify.component'; +import { RoleManagementModifyComponent } from './role-management/role-management-modify/role-management-modify.component'; const systemManagementRoutes: Routes = [ { @@ -30,6 +31,11 @@ const systemManagementRoutes: Routes = [ component: RoleManagementComponent, data: { preload: true, reuse: false } }, + { + path: 'roles/modify', + component: RoleManagementModifyComponent, + data: { preload: true, reuse: false } + }, { path: 'users', component: UserManagementComponent, diff --git a/src/app/pages/system-management/system-management.module.ts b/src/app/pages/system-management/system-management.module.ts index 9a6ff3e..b09224a 100644 --- a/src/app/pages/system-management/system-management.module.ts +++ b/src/app/pages/system-management/system-management.module.ts @@ -22,6 +22,7 @@ import { MsgAlertWarningComponent } from './personal-settings/msg-alert-warning/ import { FlightAgencyComponent } from './personal-settings/flight-agency/flight-agency.component'; import { ComponentsModule } from '../../components/components.module'; import { UserManagementModifyComponent } from './user-management/user-management-modify/user-management-modify.component'; +import { RoleManagementModifyComponent } from './role-management/role-management-modify/role-management-modify.component'; @NgModule({ imports: [ CommonModule, @@ -44,6 +45,7 @@ import { UserManagementModifyComponent } from './user-management/user-management MsgAlertWarningComponent, FlightAgencyComponent, UserManagementModifyComponent, + RoleManagementModifyComponent, ], providers : [ { provide: NZ_I18N, useValue: zh_CN } ], From 36b269ba182204d05499cfbeafd970122eef621b Mon Sep 17 00:00:00 2001 From: liweijin <610336687@qq.com> Date: Tue, 11 Dec 2018 12:03:46 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E8=A7=92=E8=89=B2=E7=AE=A1=E7=90=86?= =?UTF-8?q?=EF=BC=8C=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../department-management.component.html | 8 +- .../role-management-modify.component.html | 8 +- .../role-management-modify.component.ts | 112 ++++++++++++++---- 3 files changed, 97 insertions(+), 31 deletions(-) diff --git a/src/app/pages/system-management/department-management/department-management.component.html b/src/app/pages/system-management/department-management/department-management.component.html index 7199f9a..69aee83 100644 --- a/src/app/pages/system-management/department-management/department-management.component.html +++ b/src/app/pages/system-management/department-management/department-management.component.html @@ -78,7 +78,7 @@
    - + 姓名 @@ -88,7 +88,7 @@ - + {{item.real_name}} {{item.login_name}} {{item.mobile}} @@ -170,7 +170,7 @@
    - + 姓名 @@ -180,7 +180,7 @@ - + {{item.real_name}} {{item.login_name}} {{item.mobile}} diff --git a/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.html b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.html index 2a89ace..9839741 100644 --- a/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.html +++ b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.html @@ -14,8 +14,8 @@ 角色类型 - - + + @@ -26,7 +26,7 @@
    - + 姓名 @@ -36,7 +36,7 @@ - + {{item.real_name}} {{item.login_name}} {{item.mobile}} diff --git a/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.ts b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.ts index 66387a7..d14f70c 100644 --- a/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.ts +++ b/src/app/pages/system-management/role-management/role-management-modify/role-management-modify.component.ts @@ -38,8 +38,9 @@ export class RoleManagementModifyComponent implements OnInit { real_name:'', } collectionSize:any ; - - + public permissionChecked:any=[]; //角色详情的权限列表 + isLoadingSave:any=false; + constructor( private fb: FormBuilder, private http:HttpClientService, @@ -51,13 +52,14 @@ export class RoleManagementModifyComponent implements OnInit { ngOnInit() { this.validateForm = this.fb.group({ role_name:[ '', [ Validators.required ] ], - role_type:[ 1, [ Validators.required ] ], //0=系统内置(不可删除) ,1=用户定义 + role_type:[ '1', [ Validators.required ] ], //0=系统内置(不可删除) ,1=用户定义 description:[ ''], role_code:[ ''], status:[''], user:[], permission:[], }); + this.queryTable(); //取路由参数 this.route.queryParams.subscribe(routeParams=>{ this.modifyType=routeParams.operateType; @@ -102,25 +104,42 @@ export class RoleManagementModifyComponent implements OnInit { user:users, }) console.log(this.validateForm.value) - this.http.post('/sysapi/setting/role/add/',this.validateForm.value).subscribe((json)=>{ - if(json.is_success){ - this.message.success(`新增成功!`); - this.router.navigate(['app/system/roles']) - }else{ - this.message.error(`新增失败!`); - } - }) + this.isLoadingSave=true; + if(this.modifyType==1){ + this.http.post('/sysapi/setting/role/add/',this.validateForm.value).subscribe((json)=>{ + this.isLoadingSave=true; + if(json.is_success){ + this.message.success(`新增成功!`); + this.router.navigate(['app/system/roles']) + }else{ + this.message.error(`新增失败!`); + } + }) + }else if(this.modifyType==2){ + this.isLoadingSave=true; + this.http.put('/sysapi/setting/role/update/'+this.roleId,this.validateForm.value).subscribe((json)=>{ + if(json.is_success){ + this.message.success(`修改成功!`); + this.router.navigate(['app/system/roles']) + }else{ + this.message.error(`修改失败!`); + } + }) + } + } //修改时查询该角色下的所有用户 queryUserById():void{ this.http.get('/sysapi/setting/role/users/'+this.roleId).subscribe((json)=>{ if(json.is_success){ - if(json.body&&json.body.length>0){ - json.body.forEach(item=>{ - console.log() - this.userSelecteds = [ ...this.userSelecteds, item]; - }) - } + console.log(12121212) + console.log(json.body) + json.body.forEach(item=>{ + item.checked=true; + item.disabled=false; + this.userSelecteds = [ ...this.userSelecteds, item]; + }) + }else{ } @@ -141,7 +160,10 @@ export class RoleManagementModifyComponent implements OnInit { role_code:item.role_code, status:item.status, }) - + this.permissionChecked=item.permission; + console.log(22211111) + console.log(this.permissionChecked) + this.initTree(); }else{ this.statusParamsDetail=4; } @@ -164,6 +186,19 @@ export class RoleManagementModifyComponent implements OnInit { this.visibleUsers = false; console.log(this.userSelecteds) } + //处理机构负责人选择和数据回填 + userSelect(){ + if(this.userData){ + this.userData.forEach(item=>{ + this.userSelecteds.forEach(option=>{ + if(item.uid==option.uid){ + item.checked=true; + item.disabled=true; + } + }) + }) + } + } //删除机构负责人 delectConfirm(item){ this.userSelecteds=this.userSelecteds.filter(function(option){ @@ -176,7 +211,7 @@ export class RoleManagementModifyComponent implements OnInit { this.queryTable(); } //关闭机构选择页面 - close(): void { + closeUser(): void { this.visibleUsers = false; } //翻页 @@ -189,11 +224,11 @@ export class RoleManagementModifyComponent implements OnInit { this.statusParamsUsers.status=1; this.http.get('/sysapi/setting/user/list',this.search).subscribe((json)=>{ if(json.is_success){ - this.userData=json.body.list; + let data=json.body.list; this.collectionSize=json.body.total; if(json.body.list&&json.body.list.length>0){ this.statusParamsUsers.status=3; - this.userData.forEach(item=>{ + data.forEach(item=>{ if(this.userSelecteds.length>0){ this.userSelecteds.forEach(option=>{ if(item.uid==option.uid){ @@ -209,9 +244,14 @@ export class RoleManagementModifyComponent implements OnInit { }else{ this.statusParamsUsers.status=4; } + this.userData=data; + console.log(5555) + console.log(data) }else{ this.statusParamsUsers.status=0; } + console.log(66666) + console.log(this.userSelecteds) }) } @@ -256,7 +296,15 @@ export class RoleManagementModifyComponent implements OnInit { //新树模型 initTree(){ this.http.get('/sysapi/setting/permission/menu/list').subscribe(json=>{ - + if(json.is_success){ + if(json.body&&json.body.length>0){ + if(this.modifyType==2&&this.permissionChecked.length>0){ + json.body.forEach(item=>{ + this.foreachNode(item); + }) + } + } + } let treeList=[]; treeList.push({ //一层目录 name:"全部权限", @@ -271,5 +319,23 @@ export class RoleManagementModifyComponent implements OnInit { let node = zTree.getNodes(); }) } - + //递归方法处理权限树回填 + foreachNode(node){ + this.setNode(node); + if(node.children&&node.children.length>0){ + node.children.forEach(item=>{ + this.foreachNode(item) + }) + } + + } + //递归方法,处理单个节点 + setNode(node){ + this.permissionChecked.forEach(item=>{ + if(item.pid==node.id){ + console.log(node.name) + node.checked=true; + } + }) + } } From 145050f406598803ba7f5c07aac57b5bdb21367a Mon Sep 17 00:00:00 2001 From: liweijin <610336687@qq.com> Date: Wed, 12 Dec 2018 20:41:46 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E8=AE=BE=E7=BD=AE-?= =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E6=98=BE=E7=A4=BA=E5=88=97=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E8=81=94=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../color-settings.component.html | 4 +- .../personal-settings.component.html | 14 +- .../personal-settings.component.scss | 3 + .../personal-settings.component.ts | 151 +++++++++++++++--- 4 files changed, 146 insertions(+), 26 deletions(-) diff --git a/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.html b/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.html index 01f95f3..fb3ba57 100644 --- a/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.html +++ b/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.html @@ -5,7 +5,7 @@
    - - + +
    diff --git a/src/app/pages/system-management/personal-settings/personal-settings.component.html b/src/app/pages/system-management/personal-settings/personal-settings.component.html index 621e77a..5acc5cc 100644 --- a/src/app/pages/system-management/personal-settings/personal-settings.component.html +++ b/src/app/pages/system-management/personal-settings/personal-settings.component.html @@ -1,13 +1,14 @@
    -
    - +
    +
    可选列({{sourceList.length}})
    -
      + +
      • 暂无数据
      @@ -22,7 +23,8 @@
      已选列({{targetList.length}})
      -
        + +
        • 暂无数据
        @@ -37,8 +39,8 @@
    diff --git a/src/app/pages/system-management/personal-settings/personal-settings.component.scss b/src/app/pages/system-management/personal-settings/personal-settings.component.scss index ea262bb..eb25dd5 100644 --- a/src/app/pages/system-management/personal-settings/personal-settings.component.scss +++ b/src/app/pages/system-management/personal-settings/personal-settings.component.scss @@ -1,4 +1,7 @@ .system-main-container{ + .self-main-content{ + overflow-y: auto; + } .ant-tabs{ .self-row-box{ display: inline-block; diff --git a/src/app/pages/system-management/personal-settings/personal-settings.component.ts b/src/app/pages/system-management/personal-settings/personal-settings.component.ts index d8f8f01..97d7a4c 100644 --- a/src/app/pages/system-management/personal-settings/personal-settings.component.ts +++ b/src/app/pages/system-management/personal-settings/personal-settings.component.ts @@ -1,6 +1,9 @@ import { Component, OnInit } from '@angular/core'; import { HttpClientService } from '../../../services/http-client.service'; +import { NzMessageService } from 'ng-zorro-antd'; +declare var $: any; +declare var jQuery: any; @Component({ selector: 'app-personal-settings', @@ -25,33 +28,80 @@ export class PersonalSettingsComponent implements OnInit { page_size:'10', role_name:'', } - + public defaultCols:any=[]; //默认的全部列 + public colsData:any=''; + isLoadingSave:any=false; + statusParamsData:any={ //获取接口的状态,0请求失败 1请求前 2请求中 3请求成功,有数据 4请求成功,无数据 + status:1, + } constructor( private http:HttpClientService, + private message: NzMessageService, ) { } ngOnInit() { - this.list=[{"COL_CODE":"FLNO", "COL_CN":"航班号", "COL_ORDER":"10"}, {"COL_CODE":"ALCD", "COL_CN":"航空公司", "COL_ORDER":"8"}, {"COL_CODE":"FLIN", "COL_CN":"航线类别", "COL_ORDER":"4"}, {"COL_CODE":"FLTY", "COL_CN":"航班类别", "COL_ORDER":"5"}, {"COL_CODE":"MVIN", "COL_CN":"航向指示", "COL_ORDER":"9"}, {"COL_CODE":"TRML", "COL_CN":"候机楼", "COL_ORDER":"7"}, {"COL_CODE":"RENO", "COL_CN":"飞机号", "COL_ORDER":"3"}, {"COL_CODE":"SODT", "COL_CN":"计划到达/出发", "COL_ORDER":"13"}, {"COL_CODE":"ESTT", "COL_CN":"预计到达/出发", "COL_ORDER":"14"}, {"COL_CODE":"ACTT", "COL_CN":"实际到达/出发", "COL_ORDER":"15"}, {"COL_CODE":"STND", "COL_CN":"停机位", "COL_ORDER":"16"}, {"COL_CODE":"ORDER", "COL_CN":"排序", "COL_ORDER":"17"} ] + // 页面监听 动态改变表单高度 + $('#main-box').css('height',(document.documentElement.clientHeight-106+'px')); + $(window).resize(function(){ + $('#main-box').css('height',(document.documentElement.clientHeight-106+'px')); + }) + //this.list=[{"COL_CODE":"FLNO", "COL_CN":"航班号", "COL_ORDER":"10"}, {"COL_CODE":"ALCD", "COL_CN":"航空公司", "COL_ORDER":"8"}, {"COL_CODE":"FLIN", "COL_CN":"航线类别", "COL_ORDER":"4"}, {"COL_CODE":"FLTY", "COL_CN":"航班类别", "COL_ORDER":"5"}, {"COL_CODE":"MVIN", "COL_CN":"航向指示", "COL_ORDER":"9"}, {"COL_CODE":"TRML", "COL_CN":"候机楼", "COL_ORDER":"7"}, {"COL_CODE":"RENO", "COL_CN":"飞机号", "COL_ORDER":"3"}, {"COL_CODE":"SODT", "COL_CN":"计划到达/出发", "COL_ORDER":"13"}, {"COL_CODE":"ESTT", "COL_CN":"预计到达/出发", "COL_ORDER":"14"}, {"COL_CODE":"ACTT", "COL_CN":"实际到达/出发", "COL_ORDER":"15"}, {"COL_CODE":"STND", "COL_CN":"停机位", "COL_ORDER":"16"}, {"COL_CODE":"ORDER", "COL_CN":"排序", "COL_ORDER":"17"} ] + this.defaultCols=[ + {"COL_CODE":"ACFT", "COL_CN":"机型", "COL_ORDER":"1"}, + {"COL_CODE":"GCTM", "COL_CN":"登机结束", "COL_ORDER":"2"}, + {"COL_CODE":"BOTM", "COL_CN":"登机开始", "COL_ORDER":"3"}, + {"COL_CODE":"ABDG", "COL_CN":"登机桥", "COL_ORDER":"4"}, + {"COL_CODE":"AOTM_D", "COL_CN":"撤桥时间", "COL_ORDER":"5"}, + {"COL_CODE":"AOTM_A", "COL_CN":"靠桥时间", "COL_ORDER":"6"}, + {"COL_CODE":"BELT", "COL_CN":"转盘号", "COL_ORDER":"7"}, + {"COL_CODE":"CHKC", "COL_CN":"值机柜台", "COL_ORDER":"8"}, + {"COL_CODE":"CCTM", "COL_CN":"值机结束", "COL_ORDER":"9"}, + {"COL_CODE":"COTM", "COL_CN":"值机开始", "COL_ORDER":"10"}, + {"COL_CODE":"CHTM_OFF", "COL_CN":"下轮挡", "COL_ORDER":"11"}, + {"COL_CODE":"CHTM_ON", "COL_CN":"上轮挡", "COL_ORDER":"12"}, + {"COL_CODE":"LACL", "COL_CN":"最后通知时间", "COL_ORDER":"13"}, + {"COL_CODE":"CHUT", "COL_CN":"行李传送带", "COL_ORDER":"14"}, + {"COL_CODE":"RENO", "COL_CN":"飞机号", "COL_ORDER":"15"}, + {"COL_CODE":"ALCD", "COL_CN":"航空公司", "COL_ORDER":"16"}, + {"COL_CODE":"ACTT", "COL_CN":"实际到达/出发", "COL_ORDER":"17"}, + {"COL_CODE":"PSST", "COL_CN":"计划机位", "COL_ORDER":"18"}, + {"COL_CODE":"ESTT", "COL_CN":"预计到达/出发 ", "COL_ORDER":"19"}, + {"COL_CODE":"MVIN", "COL_CN":"到达/出发", "COL_ORDER":"20"}, + {"COL_CODE":"ERUT", "COL_CN":"航线", "COL_ORDER":"21"}, + {"COL_CODE":"FLNO", "COL_CN":"航班号", "COL_ORDER":"22"}, + {"COL_CODE":"FTSS", "COL_CN":"运营状态", "COL_ORDER":"23"}, + {"COL_CODE":"FLIN", "COL_CN":"航线类别", "COL_ORDER":"24"}, + {"COL_CODE":"IMPA", "COL_CN":"重要提示", "COL_ORDER":"25"}, + {"COL_CODE":"SODT", "COL_CN":"计划到达/出发", "COL_ORDER":"26"}, + {"COL_CODE":"TRML", "COL_CN":"航站楼", "COL_ORDER":"27"}, + {"COL_CODE":"FLTY", "COL_CN":"航班类别", "COL_ORDER":"28"}, + {"COL_CODE":"GTDT", "COL_CN":"登机门号 ", "COL_ORDER":"29"}, + {"COL_CODE":"PADT", "COL_CN":"前站起飞时间", "COL_ORDER":"30"}, + {"COL_CODE":"CSFT", "COL_CN":"共享航班号", "COL_ORDER":"31"}, + {"COL_CODE":"STND", "COL_CN":"当前机位", "COL_ORDER":"32"}, + ] /* 备注:实际数据中,把原始数据录入到临时变量中,方便取消按钮,重置数据 这里数组复制不能用浅复制sourceList=list;而是要用深度复制,this.sourceList=[...this.list] */ - this.list.forEach(item=>{ - let option=this.deepCopy(item); - this.sourceList.push(option); - }) + this.queryTable(); } //对象数组深度复制 deepCopy(data){ - let itemObj={ - bgColor:'#fafafa', - }; + let itemObj={}; for(let key in data){ itemObj[key]=data[key]; } return itemObj; } + //数组深度复制构造 + listsCope(sourceList,targetList){ + sourceList.forEach(item=>{ + let option=this.deepCopy(item); + targetList.push(option); + }) + } //上下调整项目顺序 type 1上移 2下移 3置顶 4置底 要做头尾判断 moveUpDown(type){ let index=this.moveIndex; @@ -157,29 +207,94 @@ export class PersonalSettingsComponent implements OnInit { saveSelf(){ console.log(this.targetList); console.log(this.sourceList); + this.sourceList.forEach((item,index)=>{ + item.COL_ORDER=index+1 + }) + this.targetList.forEach((item,index)=>{ + item.COL_ORDER=index+1 + }) + let content={ + allCols:this.defaultCols, + sourceList:this.sourceList, + targetList:this.targetList, + } + let settingContent=JSON.stringify(content); + let colsParams:any={ + envCode:'web', + groupCode:'userSettingCol', + id:'', + settingContent:settingContent, + userid:'' + } + console.log(colsParams) + let params:any=''; + //判断settingContent是否有列设置项,如果没有则push进去,如果有,则替换原来的settingContent + if(this.colsData&&this.colsData.length>0){ + this.colsData.forEach(item=>{ + item.userid=''; + item.settingContent=settingContent; + }) + params=this.colsData[0]; + console.log(8888) + }else{ + console.log(99999) + params=colsParams; + } + this.isLoadingSave=true; + this.http.post('/adminapi/settings/uisettings',params).subscribe((json)=>{ + this.isLoadingSave=false; + if(json.is_success){ + this.message.success(`保存成功!`); + this.queryTable(); + }else{ + this.message.error(`保存成功!`); + this.queryTable(); + } + }) } //重置数据 cancelSelf(){ this.sourceList=[]; //等后台接口出来后,重置this.sourceList this.targetList //深度复制 - this.list.forEach(item=>{ - let option=this.deepCopy(item); - this.sourceList.push(option); - }) + this.listsCope(this.list,this.sourceList); this.targetList=[]; } //获取列表 queryTable():void{ - console.log(1111) - this.http.get('/sysapi/setting/user/list',this.search).subscribe((json)=>{ + this.statusParamsData.status=1; + this.http.get('/adminapi/settings/uisettings',{groupCode:'userSettingCol'}).subscribe((json)=>{ if(json.is_success){ - console.log(2222) + this.statusParamsData.status=3; + let data=json.body; + this.colsData=json.body; + this.list=[]; + this.sourceList=[]; + this.targetList=[]; + //当data为空是,初始化 + this.listsCope(this.defaultCols,this.list); + //判断data是否为空,空的时候则为最初的初始化;如果不为空,则有设置过个人设置的某个模块 + if(data&&data.length>0){ + data.forEach(item=>{ + if(item.settingContent){ + console.log(222) + let content=JSON.parse(item.settingContent); + this.listsCope(content.sourceList,this.sourceList); + this.listsCope(content.targetList,this.targetList); + }else{ + console.log(3333) + this.listsCope(this.list,this.sourceList); + } + }) + }else{ + console.log(5555) + //接口数据为空,说明各个模块设置都为未初始化,可选项则为默认全部列 + this.listsCope(this.list,this.sourceList); + } }else{ - alert(json.err_msg) + this.statusParamsData.status=0; } }) } - } \ No newline at end of file From a485b0a09c9dd7a135ca5c3ac9405eb6cca9c8ce Mon Sep 17 00:00:00 2001 From: liweijin <610336687@qq.com> Date: Thu, 13 Dec 2018 17:56:42 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=EF=BC=8C=E6=93=8D=E4=BD=9C=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../operation-logs.component.html | 63 +++++++++- .../operation-logs.component.scss | 20 ++++ .../operation-logs.component.ts | 74 +++++++++++- .../color-settings.component.html | 11 +- .../color-settings.component.scss | 3 +- .../color-settings.component.ts | 110 ++++++++++++++---- .../personal-settings.component.html | 4 +- .../personal-settings.component.scss | 1 + .../personal-settings.component.ts | 36 ++---- 9 files changed, 260 insertions(+), 62 deletions(-) diff --git a/src/app/pages/system-management/operation-logs/operation-logs.component.html b/src/app/pages/system-management/operation-logs/operation-logs.component.html index 767b563..ec5bc81 100644 --- a/src/app/pages/system-management/operation-logs/operation-logs.component.html +++ b/src/app/pages/system-management/operation-logs/operation-logs.component.html @@ -1,3 +1,60 @@ -

    - operation-logs works! -

    +
    +
    +
    + + +
    + + + + 时间 + 姓名 + 账号 + 日志类别 + 操作类别 + 描述 + 登录ip + + + + + {{item.log_datetime| date:'yyyy-MM-dd HH:mm:ss'}} + {{item.real_name}} + {{item.user_name}} + {{logType[item.log_type]}} + {{item.opt_type}} + {{item.summary}} + {{item.login_ip}} + + + +
    + +
    +
    + +
    +
    +
    diff --git a/src/app/pages/system-management/operation-logs/operation-logs.component.scss b/src/app/pages/system-management/operation-logs/operation-logs.component.scss index e69de29..59da8bc 100644 --- a/src/app/pages/system-management/operation-logs/operation-logs.component.scss +++ b/src/app/pages/system-management/operation-logs/operation-logs.component.scss @@ -0,0 +1,20 @@ +@import "../../main.scss"; +.system-main-container{ + .user-manage{ + .system-main-content{ + overflow-y:scroll; + } + .card{ + + } + .tree-box{ + overflow-y:scroll; + } + } +} + +.user-detail{ + .detail-item-text{ + color: #1890ff; + } +} diff --git a/src/app/pages/system-management/operation-logs/operation-logs.component.ts b/src/app/pages/system-management/operation-logs/operation-logs.component.ts index f5e08d2..937e471 100644 --- a/src/app/pages/system-management/operation-logs/operation-logs.component.ts +++ b/src/app/pages/system-management/operation-logs/operation-logs.component.ts @@ -1,4 +1,8 @@ import { Component, OnInit } from '@angular/core'; +import { HttpClientService } from '../../../services/http-client.service'; +import { Router } from '@angular/router'; +import { NzMessageService } from 'ng-zorro-antd'; + @Component({ selector: 'app-operation-logs', @@ -6,10 +10,72 @@ import { Component, OnInit } from '@angular/core'; styleUrls: ['./operation-logs.component.scss'] }) export class OperationLogsComponent implements OnInit { + collectionSize:any ; + public tableData:any=[]; + statusParamsTable:any={ //获取用户列表接口的状态,0请求失败 1请求前 2请求中 3请求成功,有数据 4请求成功,无数据 + status:1, + } + public search:any={ + page_index:'1', + page_size:'10', + date_start:'', + date_end:'', + keyword:'', + orgId:'', + } + logType:any={ + 'LOGIN':'登录', + 'LOGOUT':'退出', + 'USER_UI_SET':'修改用户设置', + 'USER_INFO_OPT':'增删改用户信息', + }; + optType:any={ + 'ADD':'新增', + 'UPDATE':'修改', + 'DELETE':'删除', + }; + constructor( + private http:HttpClientService, + private router:Router, + private message: NzMessageService, + ) { } - constructor() { } - - ngOnInit() { - } + ngOnInit() { + // 页面监听 动态改变表单高度 + $('#main-box').css('height',(document.documentElement.clientHeight-106+'px')); + $(window).resize(function(){ + $('#main-box').css('height',(document.documentElement.clientHeight-106+'px')); + }) + this.queryTable(); + } + //重置,重置搜索条件 + reset(){ + this.search.page_index=1; + this.search.page_size=10; + this.search.keyword=''; + this.queryTable(); + } + //获取列表 + queryTable():void{ + this.statusParamsTable.status=1; + this.http.get('/sysapi/oplog/list',this.search).subscribe((json)=>{ + if(json.is_success){ + this.tableData=json.body.recordList; + this.collectionSize=json.body.recordCount; + if(json.body.recordList&&json.body.recordList.length>0){ + this.statusParamsTable.status=3; + }else{ + this.statusParamsTable.status=4; + } + }else{ + this.statusParamsTable.status=0; + } + }) + } + //翻页 + pageChange(event){ + this.search.page_index=event; + this.queryTable(); + } } diff --git a/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.html b/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.html index fb3ba57..e27bdc2 100644 --- a/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.html +++ b/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.html @@ -1,11 +1,12 @@
    -
    -
    航班时间
    - - +
    +
    {{item.COL_CN}}
    + + +
    - +
    diff --git a/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.scss b/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.scss index b2b9b16..51b29b2 100644 --- a/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.scss +++ b/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.scss @@ -6,11 +6,12 @@ display: inline-block; margin-right: 10px; margin-bottom: 10px; - width: 444px; + width: 290px; height: 32px; line-height: 32px; text-align: center; border-radius: 2px; + border: 1px solid rgba(242,242,242,1); } .setting-bg-color{ margin-right: 10px; diff --git a/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.ts b/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.ts index e0a7cab..a3dac5c 100644 --- a/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.ts +++ b/src/app/pages/system-management/personal-settings/color-settings/color-settings.component.ts @@ -1,56 +1,120 @@ import { Component, OnInit } from '@angular/core'; +import { HttpClientService } from '../../../../services/http-client.service'; +import { NzMessageService } from 'ng-zorro-antd'; @Component({ selector: 'app-color-settings', templateUrl: './color-settings.component.html', - styleUrls: ['./color-settings.component.scss'] + styleUrls: ['./color-settings.component.scss'], + providers:[HttpClientService] }) export class ColorSettingsComponent implements OnInit { cmykColor:any; color:any; list:any=[]; //源数据 DataList:any=[]; //临时项目列表,如果保存就传改变量,如果取消,则重置为list的源数据 - constructor() { } + defaultList:any=[]; //默认的原颜色设置 + statusParamsData:any={ //获取接口的状态,0请求失败 1请求前 2请求中 3请求成功,有数据 4请求成功,无数据 + status:1, + } + tableData:any=''; //颜色查询接口数据 + isLoadingSave:any=false; + constructor( + private http:HttpClientService, + private message: NzMessageService, + ) { } ngOnInit() { - this.list=[{"COL_CODE":"FLNO", "COL_CN":"航班号", "COL_ORDER":"10"}, {"COL_CODE":"ALCD", "COL_CN":"航空公司", "COL_ORDER":"8"}, {"COL_CODE":"FLIN", "COL_CN":"航线类别", "COL_ORDER":"4"}, {"COL_CODE":"FLTY", "COL_CN":"航班类别", "COL_ORDER":"5"}, {"COL_CODE":"MVIN", "COL_CN":"航向指示", "COL_ORDER":"9"}, {"COL_CODE":"TRML", "COL_CN":"候机楼", "COL_ORDER":"7"}, {"COL_CODE":"RENO", "COL_CN":"飞机号", "COL_ORDER":"3"}, {"COL_CODE":"SODT", "COL_CN":"计划到达/出发", "COL_ORDER":"13"}, {"COL_CODE":"ESTT", "COL_CN":"预计到达/出发", "COL_ORDER":"14"}, {"COL_CODE":"ACTT", "COL_CN":"实际到达/出发", "COL_ORDER":"15"}, {"COL_CODE":"STND", "COL_CN":"停机位", "COL_ORDER":"16"}, {"COL_CODE":"ORDER", "COL_CN":"排序", "COL_ORDER":"17"} ] ; - //深度复制 - this.list.forEach(item=>{ - let option=this.deepCopy(item); - this.DataList.push(option); - }) - + this.queryTable(); + this.defaultList=[ + {"COL_CODE":"RENO", "COL_CN":"飞机号", "COL_BG_COLOR":"rgb(46,255,135,1)","COL_COLOR":"rgb(0,70,255,1)"}, + {"COL_CODE":"ACTT", "COL_CN":"实际到达/出发", "COL_BG_COLOR":"rgb(149,207,255,1)","COL_COLOR":"rgb(0,70,255,1)"}, + {"COL_CODE":"ESTT", "COL_CN":"预计到达/出发", "COL_BG_COLOR":"rgb(255,207,157,1)","COL_COLOR":"rgb(0,70,255,1)"}, + {"COL_CODE":"PADT", "COL_CN":"前站起飞时间", "COL_BG_COLOR":"rgb(114,181,255,1)","COL_COLOR":"rgb(0,70,255,1)"}, + {"COL_CODE":"PSST", "COL_CN":"计划机位", "COL_BG_COLOR":"rgb(173,255,46,1)","COL_COLOR":"rgb(0,70,255,1)"}, + ] } - //设置颜色 1设置字体颜色 2设置背景颜色 3重置字体颜色 - colorPicker(event,item){ - item.bgColor=event; + //设置颜色 1设置背景颜色 2设置字体颜色 + colorPicker(event,item,type){ + if(type==1){ + item.COL_BG_COLOR=event; + }else if(type==2){ + item.COL_COLOR=event; + } } //背景色恢复默认值 - resetBgColor(item){ - item.bgColor='#fafafa'; + resetBgColor(item,index){ + item.COL_BG_COLOR=this.defaultList[index].COL_BG_COLOR; + item.COL_COLOR=this.defaultList[index].COL_COLOR; } //对象数组深度复制 deepCopy(data){ - let itemObj={ - bgColor:'#fafafa', - }; + let itemObj={}; for(let key in data){ itemObj[key]=data[key]; } return itemObj; } + //数组深度复制构造 + listsCope(sourceList,targetList){ + sourceList.forEach(item=>{ + let option=this.deepCopy(item); + targetList.push(option); + }) + } //保存 save(){ - console.log(this.list) console.log(this.DataList) + let settingContent=JSON.stringify(this.DataList); + let params:any={ + envCode:'web', + groupCode:'userSettingColor', + settingContent:settingContent, + } + this.isLoadingSave=true; + console.log(params); + this.http.post('/adminapi/settings/uisettings',params).subscribe((json)=>{ + this.isLoadingSave=false; + if(json.is_success){ + this.message.success(`保存成功!`); + this.queryTable(); + }else{ + this.message.error(`保存失败!`); + } + }) } //取消 cancel(){ - this.DataList=[]; - //深度复制 - this.list.forEach(item=>{ - let option=this.deepCopy(item); - this.DataList.push(option); + this.queryTable(); + } + //获取列表 + queryTable():void{ + this.statusParamsData.status=1; + this.http.get('/adminapi/settings/uisettings',{groupCode:'userSettingColor'}).subscribe((json)=>{ + if(json.is_success){ + this.statusParamsData.status=3; + let data=json.body; + this.tableData=json.body; + this.DataList=[]; + //当data为空是,初始化 + //判断data是否为空,空的时候则为最初的初始化;如果不为空,则有设置过个人设置的某个模块 + if(data&&data.length>0){ + data.forEach(item=>{ + if(item.settingContent){ + console.log(222) + let content=JSON.parse(item.settingContent); + this.listsCope(content,this.DataList); + }else{ + console.log(3333) + this.listsCope(this.defaultList,this.DataList); + } + }) + }else{ + this.listsCope(this.defaultList,this.DataList); + } + }else{ + this.statusParamsData.status=0; + } }) } diff --git a/src/app/pages/system-management/personal-settings/personal-settings.component.html b/src/app/pages/system-management/personal-settings/personal-settings.component.html index 5acc5cc..90a55c8 100644 --- a/src/app/pages/system-management/personal-settings/personal-settings.component.html +++ b/src/app/pages/system-management/personal-settings/personal-settings.component.html @@ -39,8 +39,8 @@
    diff --git a/src/app/pages/system-management/personal-settings/personal-settings.component.scss b/src/app/pages/system-management/personal-settings/personal-settings.component.scss index eb25dd5..23c1f8f 100644 --- a/src/app/pages/system-management/personal-settings/personal-settings.component.scss +++ b/src/app/pages/system-management/personal-settings/personal-settings.component.scss @@ -1,6 +1,7 @@ .system-main-container{ .self-main-content{ overflow-y: auto; + height: 100%; } .ant-tabs{ .self-row-box{ diff --git a/src/app/pages/system-management/personal-settings/personal-settings.component.ts b/src/app/pages/system-management/personal-settings/personal-settings.component.ts index 97d7a4c..adab357 100644 --- a/src/app/pages/system-management/personal-settings/personal-settings.component.ts +++ b/src/app/pages/system-management/personal-settings/personal-settings.component.ts @@ -204,6 +204,14 @@ export class PersonalSettingsComponent implements OnInit { } //保存-自定义列显示保存 + /* + 各模块groupCode命名定义 + groupCode:'userSettingColor', + groupCode:'userSettingCol', + groupCode:'userSettingMsgAlert', + groupCode:'userSettingMsgVoice', + groupCode:'userSettingFlyAgency', + */ saveSelf(){ console.log(this.targetList); console.log(this.sourceList); @@ -219,46 +227,26 @@ export class PersonalSettingsComponent implements OnInit { targetList:this.targetList, } let settingContent=JSON.stringify(content); - let colsParams:any={ + let params:any={ envCode:'web', groupCode:'userSettingCol', - id:'', settingContent:settingContent, - userid:'' - } - console.log(colsParams) - let params:any=''; - //判断settingContent是否有列设置项,如果没有则push进去,如果有,则替换原来的settingContent - if(this.colsData&&this.colsData.length>0){ - this.colsData.forEach(item=>{ - item.userid=''; - item.settingContent=settingContent; - }) - params=this.colsData[0]; - console.log(8888) - }else{ - console.log(99999) - params=colsParams; } this.isLoadingSave=true; + console.log(params); this.http.post('/adminapi/settings/uisettings',params).subscribe((json)=>{ this.isLoadingSave=false; if(json.is_success){ this.message.success(`保存成功!`); this.queryTable(); }else{ - this.message.error(`保存成功!`); - this.queryTable(); + this.message.error(`保存失败!`); } }) } //重置数据 cancelSelf(){ - this.sourceList=[]; - //等后台接口出来后,重置this.sourceList this.targetList - //深度复制 - this.listsCope(this.list,this.sourceList); - this.targetList=[]; + this.queryTable(); } //获取列表 queryTable():void{