Просмотр исходного кода

[组织管理]群组支持身份选择

st 5 лет назад
Родитель
Сommit
b27083840a
2 измененных файлов с 174 добавлено и 105 удалено
  1. 83 15
      o2web/source/x_component_Org/GroupExplorer.js
  2. 91 90
      o2web/source/x_component_Org/lp/zh-cn.js

+ 83 - 15
o2web/source/x_component_Org/GroupExplorer.js

@@ -1,14 +1,14 @@
 MWF.xDesktop.requireApp("Org", "RoleExplorer", null, false);
 MWF.xDesktop.requireApp("Org", "RoleExplorer", null, false);
 MWF.xApplication.Org.GroupExplorer = new Class({
 MWF.xApplication.Org.GroupExplorer = new Class({
-	Extends: MWF.xApplication.Org.$Explorer,
-	Implements: [Options, Events],
-	options: {
-		"style": "default",
+    Extends: MWF.xApplication.Org.$Explorer,
+    Implements: [Options, Events],
+    options: {
+        "style": "default",
         "lp": {
         "lp": {
 
 
         },
         },
         "creator": false
         "creator": false
-	},
+    },
     _loadLp: function(){
     _loadLp: function(){
         this.options.lp = {
         this.options.lp = {
             "elementLoaded": this.app.lp.groupLoaded,
             "elementLoaded": this.app.lp.groupLoaded,
@@ -106,12 +106,13 @@ MWF.xApplication.Org.GroupExplorer.GroupContent = new Class({
     },
     },
     loadItemPropertyTab: function(callback){
     loadItemPropertyTab: function(callback){
         this.propertyTabContainerNode = new Element("div", {"styles": this.item.style.tabTitleNode}).inject(this.propertyContentNode, "top");
         this.propertyTabContainerNode = new Element("div", {"styles": this.item.style.tabTitleNode}).inject(this.propertyContentNode, "top");
+
         MWF.require("MWF.widget.Tab", function(){
         MWF.require("MWF.widget.Tab", function(){
             this.propertyTab = new MWF.widget.Tab(this.propertyContentNode, {"style": "unit"});
             this.propertyTab = new MWF.widget.Tab(this.propertyContentNode, {"style": "unit"});
             this.propertyTab.load();
             this.propertyTab.load();
 
 
             this.propertyTab.tabNodeContainer.inject(this.propertyTabContainerNode);
             this.propertyTab.tabNodeContainer.inject(this.propertyTabContainerNode);
-
+            this.propertyTab.tabNodeContainer.setStyle("width","600px");
             if (callback) callback();
             if (callback) callback();
         }.bind(this));
         }.bind(this));
     },
     },
@@ -123,11 +124,15 @@ MWF.xApplication.Org.GroupExplorer.GroupContent = new Class({
         this.personMemberContentNode = new Element("div", {"styles": this.item.style.tabContentNode});
         this.personMemberContentNode = new Element("div", {"styles": this.item.style.tabContentNode});
         this.personMemberPage = this.propertyTab.addTab(this.personMemberContentNode, this.explorer.app.lp.groupMemberPersonText);
         this.personMemberPage = this.propertyTab.addTab(this.personMemberContentNode, this.explorer.app.lp.groupMemberPersonText);
 
 
+        this.identityMemberContentNode = new Element("div", {"styles": this.item.style.tabContentNode});
+        this.identityMemberPage = this.propertyTab.addTab(this.identityMemberContentNode, this.explorer.app.lp.groupMemberIdentityText);
+
         this.groupMemberContentNode = new Element("div", {"styles": this.item.style.tabContentNode});
         this.groupMemberContentNode = new Element("div", {"styles": this.item.style.tabContentNode});
         this.groupMemberPage = this.propertyTab.addTab(this.groupMemberContentNode, this.explorer.app.lp.groupMemberGroupText);
         this.groupMemberPage = this.propertyTab.addTab(this.groupMemberContentNode, this.explorer.app.lp.groupMemberGroupText);
 
 
         this.unitMemberContentNode = new Element("div", {"styles": this.item.style.tabContentNode});
         this.unitMemberContentNode = new Element("div", {"styles": this.item.style.tabContentNode});
         this.unitMemberPage = this.propertyTab.addTab(this.unitMemberContentNode, this.explorer.app.lp.unitMemberGroupText);
         this.unitMemberPage = this.propertyTab.addTab(this.unitMemberContentNode, this.explorer.app.lp.unitMemberGroupText);
+
     },
     },
     _loadContent: function(){
     _loadContent: function(){
         debugger;
         debugger;
@@ -159,6 +164,29 @@ MWF.xApplication.Org.GroupExplorer.GroupContent = new Class({
             {"style": "width: 30px", "text": ""}
             {"style": "width: 30px", "text": ""}
         ], this.addPersonMember.bind(this), "personCountNode", this.explorer.app.lp.deletePersonMemeberTitle, this.explorer.app.lp.deletePersonMemeber);
         ], this.addPersonMember.bind(this), "personCountNode", this.explorer.app.lp.deletePersonMemeberTitle, this.explorer.app.lp.deletePersonMemeber);
 
 
+        this.identityMemberList = this._listMembers("identityList", "woIdentityList", this.identityMemberContentNode, [{
+            "getHtml": function(){
+                var src = _self.explorer.actions.getPersonIcon(this.person);
+                return "<div style='width:24px; height:24px;''><img style='width:24px; height:24px; border-radius:12px; border: 0' src='"+src+"'/></div>";
+            },
+            "set": function(){}
+        }, "name", "unitLevelName", {
+            "getHtml": function(){
+                return "<div style='width:24px; height:24px; cursor: pointer; background:url(/x_component_Org/$Explorer/"+
+                    _self.explorer.app.options.style+"/icon/open.png) center center no-repeat'></div>";
+            },
+            "events": {
+                "click": function(){
+                }
+            }
+        }], [
+            {"style": "width: 30px", "text": ""},
+            {"style": "width: 20%", "text": this.explorer.app.lp.personName},
+            {"style": "", "text": this.explorer.app.lp.unitLevelName},
+            {"style": "width: 30px", "text": ""}
+        ], this.addIdentityMember.bind(this), "identityCountNode", this.explorer.app.lp.deleteIdentityMemeberTitle, this.explorer.app.lp.deleteIdentityMemeber);
+
+
         this.groupMemberList = this._listMembers("groupList", "woGroupList", this.groupMemberContentNode, ["name", "distinguishedName",  //"description",
         this.groupMemberList = this._listMembers("groupList", "woGroupList", this.groupMemberContentNode, ["name", "distinguishedName",  //"description",
             {
             {
                 "getHtml": function(){
                 "getHtml": function(){
@@ -180,16 +208,16 @@ MWF.xApplication.Org.GroupExplorer.GroupContent = new Class({
 
 
         this.unitMemberList = this._listMembers("unitList", "woUnitList", this.unitMemberContentNode, ["name", "levelName", //"typeList",
         this.unitMemberList = this._listMembers("unitList", "woUnitList", this.unitMemberContentNode, ["name", "levelName", //"typeList",
             {
             {
-            "getHtml": function(){
-                return "<div style='width:24px; height:24px; cursor: pointer; background:url(/x_component_Org/$Explorer/"+
-                    _self.explorer.app.options.style+"/icon/open.png) center center no-repeat'></div>";
-            },
-            "events": {
-                "click": function(){
-                    _self.explorer.openUnit(this.data, this.td);
+                "getHtml": function(){
+                    return "<div style='width:24px; height:24px; cursor: pointer; background:url(/x_component_Org/$Explorer/"+
+                        _self.explorer.app.options.style+"/icon/open.png) center center no-repeat'></div>";
+                },
+                "events": {
+                    "click": function(){
+                        _self.explorer.openUnit(this.data, this.td);
+                    }
                 }
                 }
-            }
-        }], [
+            }], [
             {"style": "width: 20%", "text": this.explorer.app.lp.unitName},
             {"style": "width: 20%", "text": this.explorer.app.lp.unitName},
             {"style": "width: 40%", "text": this.explorer.app.lp.unitLevelName},
             {"style": "width: 40%", "text": this.explorer.app.lp.unitLevelName},
             //{"style": "", "text": this.explorer.app.lp.unitTypeList},
             //{"style": "", "text": this.explorer.app.lp.unitTypeList},
@@ -207,6 +235,18 @@ MWF.xApplication.Org.GroupExplorer.GroupContent = new Class({
         }else{
         }else{
             if (this.personCountNode) this.personCountNode.destroy();
             if (this.personCountNode) this.personCountNode.destroy();
         }
         }
+
+        var identityCount = this.data.identityList.length;
+        if (identityCount){
+            if (this.identityCountNode){
+                this.identityCountNode.set("text", identityCount);
+            }else{
+                this.identityCountNode = new Element("div", {"styles": this.item.style.tabCountNode, "text": identityCount}).inject(this.identityMemberPage.tabNode);
+            }
+        }else{
+            if (this.identityCountNode) this.identityCountNode.destroy();
+        }
+
         var groupCount = this.data.groupList.length;
         var groupCount = this.data.groupList.length;
         if (groupCount){
         if (groupCount){
             if (this.groupCountNode){
             if (this.groupCountNode){
@@ -335,6 +375,34 @@ MWF.xApplication.Org.GroupExplorer.GroupContent = new Class({
             }.bind(this));
             }.bind(this));
         }.bind(this));
         }.bind(this));
     },
     },
+
+    addIdentityMember: function(){
+        this.checkSaveBaseInfor(function(){
+            MWF.xDesktop.requireApp("Selector", "Identity", function(){
+                var selector = new MWF.xApplication.Selector.Identity(this.explorer.app.content,{
+                    "values": this.data.identityList,
+                    "onComplete": function(items){
+                        var ids = [];
+                        var identitys = [];
+                        items.each(function(item){
+                            ids.push(item.data.id);
+                            identitys.push(item.data);
+                        });
+                        this.data.identityList = ids;
+                        this.data.woIdentityList = identitys;
+
+                        this._saveElement(this.data, function(){
+                            this.identityMemberList.clear();
+                            this.data.woIdentityList.each(function(d){
+                                this.addListItem(this.identityMemberList, d, "identityList", "woIdentityList");
+                            }.bind(this));
+                        }.bind(this));
+                    }.bind(this)
+                });
+                selector.load();
+            }.bind(this));
+        }.bind(this));
+    },
     addGroupMember: function(){
     addGroupMember: function(){
         this.checkSaveBaseInfor(function(){
         this.checkSaveBaseInfor(function(){
             MWF.xDesktop.requireApp("Selector", "Group", function(){
             MWF.xDesktop.requireApp("Selector", "Group", function(){

+ 91 - 90
o2web/source/x_component_Org/lp/zh-cn.js

@@ -1,11 +1,11 @@
 MWF.xApplication.Org.LP = {
 MWF.xApplication.Org.LP = {
-	"title": "组织管理",
-	"manage": "管理",
-	"identity" : "身份",
-	"person" : "个人",
+    "title": "组织管理",
+    "manage": "管理",
+    "identity" : "身份",
+    "person" : "个人",
     "role" : "角色",
     "role" : "角色",
     "group" : "群组",
     "group" : "群组",
-	"org": "组织",
+    "org": "组织",
 
 
     "unitList": "组织架构",
     "unitList": "组织架构",
     "groupList": "群组管理",
     "groupList": "群组管理",
@@ -14,27 +14,27 @@ MWF.xApplication.Org.LP = {
     "personImport": "人员导入",
     "personImport": "人员导入",
     "privateNamesQueryPower":"个人通讯录查看权限配置",
     "privateNamesQueryPower":"个人通讯录查看权限配置",
 
 
-	"application" : "应用",
-	"CMSApplication" : "应用",
-	"CMSCategory" : "分类",
-	"CMSFormField" : "字段",
-	"formField" : "字段",
-	"process" : "流程",
+    "application" : "应用",
+    "CMSApplication" : "应用",
+    "CMSCategory" : "分类",
+    "CMSFormField" : "字段",
+    "formField" : "字段",
+    "process" : "流程",
     "yes": "是",
     "yes": "是",
     "no": "否",
     "no": "否",
 
 
-	"search": "搜索",
-	"searchText": "请输入关键字",
-	"edit": "编辑",
-	"save": "保存",
-	"cancel": "取消",
-	"add": "添加",
-	"delete": "删除",
-	"phone": "手机",
-	"mail": "邮件",
-	"department": "部门",
-	"company": "公司",
-	"duty": "职位",
+    "search": "搜索",
+    "searchText": "请输入关键字",
+    "edit": "编辑",
+    "save": "保存",
+    "cancel": "取消",
+    "add": "添加",
+    "delete": "删除",
+    "phone": "手机",
+    "mail": "邮件",
+    "department": "部门",
+    "company": "公司",
+    "duty": "职位",
     "manager": "管理",
     "manager": "管理",
     "ok": "确定",
     "ok": "确定",
     "back": "返回",
     "back": "返回",
@@ -53,13 +53,13 @@ MWF.xApplication.Org.LP = {
     "deleteOrganizationTitle": "删除组织确认",
     "deleteOrganizationTitle": "删除组织确认",
     "deleteOrganizationConfirm": "您确定要删除选中的组织吗?",
     "deleteOrganizationConfirm": "您确定要删除选中的组织吗?",
     "deleteOrganizationAllConfirm": "您选择的组织中,存在多个职务、属性和成员,删除此组织会同时删除这些职务、属性和成员,您确定要继续当前操作吗?<br/><br/>" +
     "deleteOrganizationAllConfirm": "您选择的组织中,存在多个职务、属性和成员,删除此组织会同时删除这些职务、属性和成员,您确定要继续当前操作吗?<br/><br/>" +
-    "<div style=\"color:red\">(注意:此操作可能会导致其他依赖于这些组织的应用发生错误!)</div>",
+        "<div style=\"color:red\">(注意:此操作可能会导致其他依赖于这些组织的应用发生错误!)</div>",
     "deleteOrganizationSubConfirm": "您选择删除一个或多个组织,删除这些组织会执行以下操作:<br/>" +
     "deleteOrganizationSubConfirm": "您选择删除一个或多个组织,删除这些组织会执行以下操作:<br/>" +
-    "1、删除所选组织及下级组织的所有职务和属性;<br/>" +
-    "2、删除所选组织及下级组织的所有成员身份;<br/>" +
-    "3、删除所选组织及所有下级组织;<br/>" +
-    "您确定要删除当前组织吗?<br/><br/>" +
-    "<div style=\"color:red\">(注意:此操作可能会导致其他依赖于这些组织的应用发生错误!)</div>",
+        "1、删除所选组织及下级组织的所有职务和属性;<br/>" +
+        "2、删除所选组织及下级组织的所有成员身份;<br/>" +
+        "3、删除所选组织及所有下级组织;<br/>" +
+        "您确定要删除当前组织吗?<br/><br/>" +
+        "<div style=\"color:red\">(注意:此操作可能会导致其他依赖于这些组织的应用发生错误!)</div>",
 
 
 
 
     "organizationSave": "请先保存组织信息",
     "organizationSave": "请先保存组织信息",
@@ -70,7 +70,7 @@ MWF.xApplication.Org.LP = {
     "unitDutys": "组织职务",
     "unitDutys": "组织职务",
     "unitAttribute": "组织属性",
     "unitAttribute": "组织属性",
     "unitName": "组织名称",
     "unitName": "组织名称",
-	"unitUnique": "唯一编码",
+    "unitUnique": "唯一编码",
     "unitTypeList": "组织类别",
     "unitTypeList": "组织类别",
     "unitShortName": "组织简称",
     "unitShortName": "组织简称",
     "unitLevel": "组织层级",
     "unitLevel": "组织层级",
@@ -86,25 +86,25 @@ MWF.xApplication.Org.LP = {
 
 
     "unitReadDn": "组织的全称为:{dn}",
     "unitReadDn": "组织的全称为:{dn}",
     "unitReadCreate": "组织创建于{date},最后修改于:{date2}",
     "unitReadCreate": "组织创建于{date},最后修改于:{date2}",
-	"unitReadLevel": "此组织为第{level}层级,层级名为:{levelName}",
+    "unitReadLevel": "此组织为第{level}层级,层级名为:{levelName}",
 
 
-	"dutyName": "职务名称",
-	"dutyMembers": "成员",
+    "dutyName": "职务名称",
+    "dutyMembers": "成员",
 
 
-	
-	"deleteDutyTitle": "删除职务确认",
+
+    "deleteDutyTitle": "删除职务确认",
     "deleteDuty": "您确定要删除选中的职务吗?",
     "deleteDuty": "您确定要删除选中的职务吗?",
 
 
-	"deleteDutyIdentityTitle": "删除职务身份确认",
-	"deleteDutyIdentity": "您确定要从“{duty}”中删除“{identity}”吗?",
+    "deleteDutyIdentityTitle": "删除职务身份确认",
+    "deleteDutyIdentity": "您确定要从“{duty}”中删除“{identity}”吗?",
+
+    "deleteAttributeTitle": "删除属性确认",
+    "deleteAttribute": "您确定要删除选中的属性吗?",
+    "deleteIdentityInDepartmentTitle": "移除人员身份确认",
+    "deleteIdentityInDepartment": "确定要从部门“{depart}”中删除“{identity}”吗?\n删除身份将同时删除此身份的所有职务, 是否确定删除?",
 
 
-	"deleteAttributeTitle": "删除属性确认",
-	"deleteAttribute": "您确定要删除选中的属性吗?",
-	"deleteIdentityInDepartmentTitle": "移除人员身份确认",
-	"deleteIdentityInDepartment": "确定要从部门“{depart}”中删除“{identity}”吗?\n删除身份将同时删除此身份的所有职务, 是否确定删除?",
-	
-	"deleteGroupsTitle": "删除群组确认",
-	"deleteGroupsConfirm": "您确定要删除选中的群组吗?",
+    "deleteGroupsTitle": "删除群组确认",
+    "deleteGroupsConfirm": "您确定要删除选中的群组吗?",
     "deleteGroupError_InRole": "删除群组出错,群组拥有角色",
     "deleteGroupError_InRole": "删除群组出错,群组拥有角色",
     "deleteGroupError_InGroup": "删除群组出错,群组是其他群组成员",
     "deleteGroupError_InGroup": "删除群组出错,群组是其他群组成员",
 
 
@@ -114,8 +114,8 @@ MWF.xApplication.Org.LP = {
 
 
     "deletePersonsTitle": "删除人员确认",
     "deletePersonsTitle": "删除人员确认",
     "deletePersonsConfirm": "您确定要删除选中的人员吗?",
     "deletePersonsConfirm": "您确定要删除选中的人员吗?",
-	
-	"deleteGroups": "删除选中的群组",
+
+    "deleteGroups": "删除选中的群组",
     "deleteRoles": "删除选中的角色",
     "deleteRoles": "删除选中的角色",
     "deletePersons": "删除选中的人员",
     "deletePersons": "删除选中的人员",
     "deleteUnits": "删除选中的组织",
     "deleteUnits": "删除选中的组织",
@@ -131,17 +131,18 @@ MWF.xApplication.Org.LP = {
     "deleteIdentityMemeber": "您确定要删除选中的组织成员吗?",
     "deleteIdentityMemeber": "您确定要删除选中的组织成员吗?",
 
 
 
 
-	"groupLoaded": "群组载入完成",
-	"groupSave": "请先保存群组信息",
-	"inputGroupName": "请输入群组名称",
+    "groupLoaded": "群组载入完成",
+    "groupSave": "请先保存群组信息",
+    "inputGroupName": "请输入群组名称",
     "editGroup": "编辑群组信息",
     "editGroup": "编辑群组信息",
-	"saveGroup": "保存群组信息",
-	
-	"groupBaseText": "群组信息",
-	"groupMemberPersonText": "个人成员",
-	"groupMemberGroupText": "群组成员",
+    "saveGroup": "保存群组信息",
+
+    "groupBaseText": "群组信息",
+    "groupMemberPersonText": "个人成员",
+    "groupMemberIdentityText": "身份成员",
+    "groupMemberGroupText": "群组成员",
     "unitMemberGroupText": "组织成员",
     "unitMemberGroupText": "组织成员",
-	"groupName": "群组名称",
+    "groupName": "群组名称",
     "groupDn": "群组全称",
     "groupDn": "群组全称",
     "groupUnique": "唯一编码",
     "groupUnique": "唯一编码",
 
 
@@ -150,23 +151,23 @@ MWF.xApplication.Org.LP = {
 
 
     "groupReadDn": "群组的全称为:{dn}",
     "groupReadDn": "群组的全称为:{dn}",
     "groupReadCreate": "群组创建于{date},最后修改于:{date2}",
     "groupReadCreate": "群组创建于{date},最后修改于:{date2}",
-	
-	// "personEmployee": "工号",
-	// "personDisplay": "名称",
-	// "personMail": "邮件",
-	"personPhone": "电话",
-	"groupDescription": "群组描述",
+
+    // "personEmployee": "工号",
+    // "personDisplay": "名称",
+    // "personMail": "邮件",
+    "personPhone": "电话",
+    "groupDescription": "群组描述",
 
 
     "deletePersonMemberTitle": "删除个人成员确认",
     "deletePersonMemberTitle": "删除个人成员确认",
-	"deleteGroupMemberTitle": "删除群组成员确认",
-	"deletePersonMember": "您确定要删除选中的个人成员吗?",
-	"deleteGroupMember": "您确定要删除选中的群组成员吗?",
-	
-	"roleBaseText": "角色信息",
-	"roleName": "角色名称",
+    "deleteGroupMemberTitle": "删除群组成员确认",
+    "deletePersonMember": "您确定要删除选中的个人成员吗?",
+    "deleteGroupMember": "您确定要删除选中的群组成员吗?",
+
+    "roleBaseText": "角色信息",
+    "roleName": "角色名称",
     "roleUnique": "唯一编码",
     "roleUnique": "唯一编码",
     "roleDescription": "角色描述",
     "roleDescription": "角色描述",
-	"roleLoaded": "角色载入完成",
+    "roleLoaded": "角色载入完成",
     "roleSave": "请先保存角色信息",
     "roleSave": "请先保存角色信息",
     "roleReadDn": "角色的全称为:{dn}",
     "roleReadDn": "角色的全称为:{dn}",
     "roleReadCreate": "角色创建于{date},最后修改于:{date2}",
     "roleReadCreate": "角色创建于{date},最后修改于:{date2}",
@@ -181,29 +182,29 @@ MWF.xApplication.Org.LP = {
     "roleMemberGroupText": "群组成员",
     "roleMemberGroupText": "群组成员",
 
 
     "inputRoleName": "请输入角色名称",
     "inputRoleName": "请输入角色名称",
-	
-	"personLoaded": "人员载入完成",
-	
-	"personBaseText": "人员信息",
+
+    "personLoaded": "人员载入完成",
+
+    "personBaseText": "人员信息",
 
 
     "personSave": "请先保存个人信息",
     "personSave": "请先保存个人信息",
     "personImage": "头像",
     "personImage": "头像",
     "uploadImage": "上传头像",
     "uploadImage": "上传头像",
-	"personName": "人员名称",
-	"personEmployee": "人员工号",
+    "personName": "人员名称",
+    "personEmployee": "人员工号",
     "personGender": "性别",
     "personGender": "性别",
-	"personDisplay": "显示名称",
-	"personMobile": "手机号码",
-	"personMail": "电子邮件",
-	"personQQ": "QQ号码",
-	"personWeixin": "微信号",
-	"personWeibo": "微博",
+    "personDisplay": "显示名称",
+    "personMobile": "手机号码",
+    "personMail": "电子邮件",
+    "personQQ": "QQ号码",
+    "personWeixin": "微信号",
+    "personWeibo": "微博",
     "personUnique": "唯一编码",
     "personUnique": "唯一编码",
-	"personOfficePhone": "办公电话",
-	"personBoardDate": "入职时间",
-	"personBirthday": "出生日期",
-	"personSuperior": "汇报对象",
-	"editPerson": "编辑人员信息",
+    "personOfficePhone": "办公电话",
+    "personBoardDate": "入职时间",
+    "personBirthday": "出生日期",
+    "personSuperior": "汇报对象",
+    "editPerson": "编辑人员信息",
     "resetPassword": "重置密码",
     "resetPassword": "重置密码",
     "savePerson": "保存人员信息",
     "savePerson": "保存人员信息",
     "personReadDn": "用户的全称为:{dn}",
     "personReadDn": "用户的全称为:{dn}",
@@ -212,12 +213,12 @@ MWF.xApplication.Org.LP = {
     "personReadPassword": "密码到期时间{date},密码最后修改于:{date2}",
     "personReadPassword": "密码到期时间{date},密码最后修改于:{date2}",
 
 
     "attributeName": "属性",
     "attributeName": "属性",
-	"attributeValue": "值",
+    "attributeValue": "值",
 
 
-	//"inputPersonInfor": "请输入完整人员信息(人员名称、人员工号、手机号码、性别必填)",
+    //"inputPersonInfor": "请输入完整人员信息(人员名称、人员工号、手机号码、性别必填)",
     "inputPersonInfor": "请输入完整人员信息(人员名称、手机号码、性别必填)",
     "inputPersonInfor": "请输入完整人员信息(人员名称、手机号码、性别必填)",
-	"personAttributeText": "个人属性",
-	"personIdentityText": "个人身份",
+    "personAttributeText": "个人属性",
+    "personIdentityText": "个人身份",
     "controllerListText": "管理者",
     "controllerListText": "管理者",
 
 
     "IdentityName": "身份名称",
     "IdentityName": "身份名称",
@@ -234,7 +235,7 @@ MWF.xApplication.Org.LP = {
     "female": "女",
     "female": "女",
     "other": "其他",
     "other": "其他",
 
 
-	"changePersonIcon": "更换头像",
+    "changePersonIcon": "更换头像",
     "resetPasswordTitle": "重置密码确认",
     "resetPasswordTitle": "重置密码确认",
     "resetPasswordText": "您确定要为用户 {name} 重置密码吗?",
     "resetPasswordText": "您确定要为用户 {name} 重置密码吗?",
     "resetPasswordSuccess": "用户 {name} 的密码已重置",
     "resetPasswordSuccess": "用户 {name} 的密码已重置",