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 bfbb3a6..603a1f5 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
@@ -1,6 +1,8 @@
diff --git a/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.scss b/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.scss
index 63d221c..c0b4aca 100644
--- a/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.scss
+++ b/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.scss
@@ -1,3 +1,13 @@
+.user-modify-box{
+ position: relative;
+ .user-footer{
+ display: inline-block;
+ position: absolute;
+ bottom: 30px;
+ left: 50%;
+ transform: translate(-50%,0)
+ }
+}
.ztree{
padding-bottom: 40px;
padding-right: 16px;
diff --git a/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.ts b/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.ts
index 30ed3e1..45fd4e9 100644
--- a/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.ts
+++ b/src/app/pages/system-management/user-management/user-management-modify/user-management-modify.component.ts
@@ -30,6 +30,15 @@ export class UserManagementModifyComponent implements OnInit {
saveCheck:any=false; //保存检查,保存验证表单 false 还未验证 true 触发了验证
roleList:any=[]; //保存所选角色
listOfRole:any=[]; //角色列表
+ nameOnly:any=true; //系统账号是否唯一 true唯一 false重复
+ oldLoginName:any=''; //修改时,保存原本的系统账号,用于检测唯一性
+ checkNameStatus:any=''; //检测账号唯一性的图标状态
+ modifyType:any=1; //当前页面操作类型 1 新增用户 2 编辑用户
+ userId:any=''; //用户ID 修改的用户ID
+ userDetail:any={}; //用户详情
+ statusParamsDetail:any={ //获取用户详情接口的状态,0请求失败 1请求前 2请求中 3请求成功,有数据 4请求成功,无数据
+ status:1,
+ }
constructor(
private fb: FormBuilder,
private http:HttpClientService,
@@ -49,19 +58,84 @@ export class UserManagementModifyComponent implements OnInit {
mobile:[ ''],
sex:['m'],
status:['1'],
- role:['']
+ role:[''],
+ remark: ['']
});
//取路由参数
this.route.queryParams.subscribe(routeParams=>{
+ this.modifyType=routeParams.operateType;
//routeParams 1新增 2修改
if(routeParams.operateType==2){
-
+ this.userId=routeParams.id;
+ this.queryUserDetail();
+
+ }else{
+ this.statusParamsDetail.status=3;
}
})
}
+ //获取用户详情
+ queryUserDetail(){
+ this.http.get('/sysapi/setting/user/detail/list', { uid:this.userId }).subscribe((json)=>{
+ if(json.is_success){
+ if(json.body){
+ this.statusParamsDetail.status=3;
+ this.userDetail=json.body;
+ let detail=json.body;
+ this.validateForm.setValue({
+ real_name:detail.real_name,
+ login_name:detail.login_name,
+ password:detail.password,
+ identify_num:detail.identify_num,
+ email:detail.email,
+ mobile:detail.mobile,
+ sex:detail.sex,
+ status:detail.status,
+ role:'',
+ remark:detail.remark,
+ })
+ this.oldLoginName=detail.login_name;
+ if(detail.orgList&&detail.orgList.length>0){
+ this.orgDetail=detail.orgList[0];
+ }
+ if(detail.roleList&&detail.roleList.length>0){
+ detail.roleList.forEach(item=>{
+ this.roleList.push(item.rid)
+ })
+ }
+ }else{
+ this.statusParamsDetail.status=4;
+ }
+ }else{
+ this.statusParamsDetail.status=0;
+ }
+ })
+ }
+ //检验系统账号的唯一性
checkName(){
- console.log(334343)
+ console.log(this.validateForm.value.login_name.trim())
+ console.log(this.oldLoginName)
+ if(this.modifyType==2&&this.validateForm.value.login_name.trim()==this.oldLoginName){
+ this.nameOnly = true;
+ this.checkNameStatus='success';
+ return false;
+ }
+ this.checkNameStatus='validating';
+ this.http.get('/sysapi/setting/user/isOnly', { loginName: this.validateForm.value.login_name.trim() }).subscribe((json) => {
+ if (json.is_success) {
+ if(json.body){
+ this.checkNameStatus='success';
+ this.nameOnly = true;
+ }else{
+ this.checkNameStatus='error';
+ this.nameOnly = false;
+ }
+ } else {
+ this.message.error(`账号验证接口错误`)
+ }
+
+ })
}
//机构树,搜索功能
searchNode() {
@@ -108,37 +182,67 @@ export class UserManagementModifyComponent implements OnInit {
this.visible = false;
}
- submitForm(): void {
+ submitForm(){
this.saveCheck=true;
for (const i in this.validateForm.controls) {
this.validateForm.controls[ i ].markAsDirty();
this.validateForm.controls[ i ].updateValueAndValidity();
}
- if(this.validateForm.valid&&this.orgDetail&&this.roleList.length>0){
- let item=this.validateForm.value;
- let params={
- real_name: item.real_name,
- login_name: item.login_name,
- password: item.password,
- mobile: item.mobile,
- sex: item.sex,
- identify_num: item.identify_num,
- email: item.email,
- status: item.status,
- orgList: [],
- roleList: [],
- };
- this.roleList.forEach(option=>{
- params.roleList.push({
- rid:option
- })
- })
- this.orgList.forEach(option=>{
- if(option.id==this.orgDetail.id){
- params.orgList.push(option)
+ if(this.validateForm.valid&&this.orgDetail&&this.roleList.length>0&&this.nameOnly){
+ //再次检验账号唯一性,避免用户填完账号直接点击提交,无法利用blur事件验证。
+ if(this.modifyType==2&&this.validateForm.value.login_name.trim()==this.oldLoginName){
+ this.nameOnly = true;
+ this.checkNameStatus='success';
+ this.submitConfirm(2);
+ return false;
+ }
+ this.checkNameStatus='validating';
+ this.http.get('/sysapi/setting/user/isOnly', { loginName: this.validateForm.value.login_name.trim() }).subscribe((json) => {
+ if (json.is_success) {
+ if(json.body){
+ this.checkNameStatus='success';
+ this.nameOnly = true;
+ //表单处理
+ this.submitConfirm(this.modifyType);
+ }else{
+ this.checkNameStatus='error';
+ this.nameOnly = false;
+ return false;
+ }
+ } else {
+ this.message.error(`账号验证接口错误`)
}
})
- console.log(params)
+ }
+ }
+ //确认提交表单
+ submitConfirm(type){
+ let item=this.validateForm.value;
+ let params={
+ real_name: item.real_name,
+ login_name: item.login_name,
+ password: item.password,
+ mobile: item.mobile,
+ sex: item.sex,
+ identify_num: item.identify_num,
+ email: item.email,
+ status: item.status,
+ remark: item.remark,
+ orgList: [],
+ roleList: [],
+ };
+ this.roleList.forEach(option=>{
+ params.roleList.push({
+ rid:option
+ })
+ })
+ this.orgList.forEach(option=>{
+ if(option.id==this.orgDetail.id){
+ params.orgList.push(option)
+ }
+ })
+ console.log(params)
+ if(type==1){
this.http.post('/sysapi/setting/user/add', params).subscribe((json) => {
if (json.is_success) {
this.message.success(`新增成功`);
@@ -147,9 +251,17 @@ export class UserManagementModifyComponent implements OnInit {
this.message.error(`新增失败`)
}
})
+ }else if(type==2){
+ this.http.put('/sysapi/setting/user/updateById/'+this.userId, params).subscribe((json) => {
+ if (json.is_success) {
+ this.message.success(`修改成功`);
+ this.router.navigate(['app/system/users'])
+ } else {
+ this.message.error(`修改失败`)
+ }
+ })
}
-
-
+
}
//取消 返回列表页
cancel(){
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 adaa731..177eafc 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
@@ -112,6 +112,24 @@
+
+
+
+ 所属角色
+
+ {{option.role_name}}0&&(i!=userDetail.roleList.length-1)">、
+
+ 无
+
+
+
+
+ 描述
+ {{userDetail.remark}}
+ 无
+
+
+
@@ -137,17 +155,6 @@
-
- 所属角色
-
- {{option.role_name}}0&&(i!=userDetail.roleList.length-1)">、
-
- 无
-
-
-
-
-
状态
已激活
@@ -155,6 +162,8 @@
无
+
+