1 |
- "use strict";(self["webpackChunkyui_pc"]=self["webpackChunkyui_pc"]||[]).push([[4511],{37403:function(t,e,i){i.d(e,{A:function(){return c}});i(62010);var s=function(){var t=this,e=t._self._c;return e("el-form",{ref:"formBox",attrs:{model:t.formBox,"label-position":"top"}},[e("el-form-item",{attrs:{label:"楼宇",prop:"projectItemId",rules:[{required:!0,message:"请选择楼宇"}]}},[e("el-select",{attrs:{placeholder:"请选择楼宇"},on:{change:t.changeProjectItem},model:{value:t.formBox.projectItemId,callback:function(e){t.$set(t.formBox,"projectItemId",e)},expression:"formBox.projectItemId"}},t._l(t.projectItemList,(function(t){return e("el-option",{key:t.id,attrs:{label:t.name,value:t.id}})})),1)],1),e("el-form-item",{attrs:{label:"楼层",prop:"projectItemTargetId",rules:[{required:!0,message:"请选择楼层"}]}},[e("el-select",{attrs:{placeholder:"请选择楼层"},model:{value:t.formBox.projectItemTargetId,callback:function(e){t.$set(t.formBox,"projectItemTargetId",e)},expression:"formBox.projectItemTargetId"}},t._l(t.projectItemTargetList,(function(t){return e("el-option",{key:t.id,attrs:{label:t.name,value:t.id}})})),1)],1)],1)},r=[],a=(i(2008),i(26099),i(6414)),o={props:["form"],data:function(){return{formBox:{projectItemId:"",projectItemTargetId:""},projectItemList:[],projectItemTargetList:[]}},mounted:function(){this.init()},methods:{init:function(){var t=this;this.projectItemList=[],this.projectItemTargetList=[],(0,a.tS)(this.$store.getters.project.id).then((function(e){e.state&&(t.projectItemList=e.data.projectItemList,t.form.projectItemId&&t.initData())}))},changeProjectItem:function(){var t=this;this.formBox.projectItemTargetId="",this.projectItemTargetList=this.projectItemList.filter((function(e){return e.id===t.formBox.projectItemId}))[0].projectItemTargetList},submitValidate:function(t){var e=this;this.$refs.formBox.validate((function(i){if(!i)return t(e.formBox,!1),!1;t(e.formBox,!0)}))},returnItem:function(){var t=this;return{projectItem:this.projectItemList.filter((function(e){return e.id===t.formBox.projectItemId}))[0]||{},projectItemTarget:this.projectItemTargetList.filter((function(e){return e.id===t.formBox.projectItemTargetId}))[0]||{}}},initData:function(){var t=this;this.formBox.projectItemId=this.form.projectItemId,this.formBox.projectItemTargetId=this.form.projectItemTargetId,this.projectItemTargetList=this.projectItemList.filter((function(e){return e.id===t.formBox.projectItemId}))[0].projectItemTargetList}},watch:{form:function(){this.form.projectItemId&&(this.projectItemList.length>0?this.initData():this.init())}}},l=o,n=i(845),u=(0,n.A)(l,s,r,!1,null,null,null),c=u.exports},34511:function(t,e,i){i.r(e),i.d(e,{default:function(){return P}});i(62010);var s=function(){var t=this,e=t._self._c;return e("div",{staticClass:"hui-flex hui-content work-user"},[t._m(0),e("div",{staticClass:"hui-flex-box yui-tree-box"},[e("div",{staticClass:"hui-left-tree"},[e("div",{staticClass:"hui-left-tree-title"},[e("div",{staticClass:"tree-logo"},[t.organization.logoUrl?e("el-image",{attrs:{src:t.organization.logoUrl,fit:"cover"}}):e("div",{staticClass:"el-image"},[e("div",{staticClass:"image-slot"},[e("i",{staticClass:"el-icon-picture-outline"})])])],1),e("span",{staticClass:"hui-left-tree-sub hui-ellipsis"},[t._v(t._s(t.organization.name))])]),e("div",{staticClass:"hui-left-tree-content"},[e("el-collapse",t._l(t.treeData,(function(i){return e("el-collapse-item",{key:i.id,attrs:{name:i.id}},[e("template",{slot:"title"},[e("div",{staticClass:"collapse-title",on:{click:function(e){return t.changeCollapse(i)}}},[e("i",{staticClass:"iconfont huifont-bumen"}),e("span",{staticClass:"el-collapse-name"},[t._v(t._s(i.name))])])]),e("div",[e("el-tree",{attrs:{data:i.children,props:t.defaultProps,"expand-on-click-node":!1},on:{"node-click":t.selectPart}})],1)],2)})),1)],1)]),e("div",{staticClass:"hui-tree-content"},[e("div",{staticClass:"hui-flex hui-table"},[e("div",{staticClass:"hui-content-insert"},[e("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"/work/organization/user/add",expression:"'/work/organization/user/add'"}],attrs:{type:"primary",size:"medium",disabled:!t.part.id},on:{click:t.insertUser}},[t._v(" 新增成员 ")])],1),e("div",{staticClass:"hui-flex-box"},[e("el-table",{attrs:{data:t.tableData,"row-key":"id",border:"",height:"100%"}},[e("el-table-column",{attrs:{label:"序号",width:"50"},scopedSlots:t._u([{key:"default",fn:function(i){return[e("div",{staticStyle:{"text-align":"center"}},[t._v(t._s(i.$index+1))])]}}])}),e("el-table-column",{attrs:{label:"姓名"},scopedSlots:t._u([{key:"default",fn:function(i){return[e("div",{staticClass:"hui-table-user"},[e("div",{staticClass:"hui-table-avatar"},[e("avatar",{attrs:{user:i.row}})],1),e("div",[t._v(t._s(i.row.name))])])]}}])}),e("el-table-column",{attrs:{label:"电话",prop:"phone"}}),e("el-table-column",{attrs:{label:"部门"},scopedSlots:t._u([{key:"default",fn:function(i){return[e("span",[t._v(t._s(t.part.name))])]}}])}),e("el-table-column",{attrs:{label:"权限"},scopedSlots:t._u([{key:"default",fn:function(i){return[e("el-button",{directives:[{name:"permission",rawName:"v-permission",value:"/work/organization/user/set",expression:"'/work/organization/user/set'"}],attrs:{size:"small",type:"primary"},on:{click:function(e){return t.updateUser(i.row,2,"设置权限")}}},[t._v(" 设置 ")])]}}])}),e("el-table-column",{attrs:{label:"操作",width:"150"},scopedSlots:t._u([{key:"default",fn:function(i){return[e("div",{staticClass:"hui-table-operation"},[e("span",{directives:[{name:"permission",rawName:"v-permission",value:"/work/organization/user/detail",expression:"'/work/organization/user/detail'"}],staticClass:"table-operation",on:{click:function(e){return t.lookUser(i.row)}}},[t._v(" 详情 ")]),i.row.projectFlowId?t._e():e("span",{directives:[{name:"permission",rawName:"v-permission",value:"/work/organization/user/update",expression:"'/work/organization/user/update'"}],staticClass:"table-operation",on:{click:function(e){return t.updateUser(i.row,3,"修改用户")}}},[t._v(" 编辑 ")]),i.row.projectFlowId?t._e():e("span",{directives:[{name:"permission",rawName:"v-permission",value:"/work/organization/user/delete",expression:"'/work/organization/user/delete'"}],staticClass:"table-operation",on:{click:function(e){return t.deleteUser(i.row)}}},[t._v(" 删除 ")])])]}}])}),e("template",{slot:"empty"},[e("empty",{attrs:{description:"当前部门没有直属成员"}})],1)],2)],1)])])]),e("el-dialog",{attrs:{"close-on-click-modal":!1,title:t.title,visible:t.visible,width:"900px","append-to-body":!0},on:{"update:visible":function(e){t.visible=e}}},[t.visible&&1===t.type?e("edit",{attrs:{part:t.part},on:{callback:t.callback}}):t._e(),t.visible&&2===t.type?e("role",{attrs:{user:t.user},on:{callback:t.callback}}):t._e(),t.visible&&3===t.type?e("info-form",{attrs:{user:t.user},on:{callback:t.callback}}):t._e()],1),e("el-drawer",{attrs:{title:"用户详情",visible:t.drawer,size:400,"append-to-body":!0},on:{"update:visible":function(e){t.drawer=e}}},[t.drawer?e("detail",{attrs:{user:t.user}}):t._e()],1)],1)},r=[function(){var t=this,e=t._self._c;return e("div",{staticClass:"hui-content-title"},[e("div",{staticClass:"hui-title-item active"},[t._v("成员管理")])])}],a=(i(79432),i(40789)),o=i(25793),l=function(){var t=this,e=t._self._c;return e("div",{staticClass:"hui-flex hui-dialog role-box"},[e("div",{staticClass:"hui-flex-box hui-dialog-content"},[e("el-tree",{ref:"tree",attrs:{data:t.roleData,props:t.defaultProps,"show-checkbox":"","node-key":"id","default-checked-keys":t.checkedKeys,"render-after-expand":!1},scopedSlots:t._u([{key:"default",fn:function(i){var s=i.node;i.data;return e("div",{class:t.classNode(s)?"tree-node especially":"tree-node"},[e("div",{staticClass:"tree-node-label"},[e("span",[t._v(t._s(s.label))])])])}}])})],1),e("div",{staticClass:"hui-dialog-submit"},[e("el-button",{attrs:{size:"medium"},on:{click:function(e){return t.$emit("callback")}}},[t._v("取 消")]),e("el-button",{attrs:{size:"medium",type:"primary"},on:{click:t.updateMenu}},[t._v("保 存")])],1)])},n=[],u=(i(2008),i(50113),i(62062),i(44114),i(54554),i(33110),i(26099),{props:["projectId","user"],data:function(){return{roleData:[],defaultProps:{label:"title"},checkedKeys:[]}},mounted:function(){var t=this;this.roleData=JSON.parse(JSON.stringify(this.$store.getters.menuData)),this.$nextTick((function(){t.cssTree()})),this.user.id&&(this.checkedKeys=[],this.testCheck(this.user.resources?JSON.parse(this.user.resources):[]))},methods:{classNode:function(t){return"2"===t.data.isMenu},cssTree:function(){var t=document.getElementsByClassName("especially");if(0!=t.length)for(var e=parseInt(t[0].parentNode.style.paddingLeft),i=0;i<t.length;i++){var s=t[i].parentNode.parentNode;s.parentNode.style.paddingLeft=e+24+"px",s.parentNode.classList.add("tree-children-list")}},filterArr:function(t,e){function i(t){for(var s=function(s){var a=e.find((function(e){return e===t[s].id}));a?t[s].children&&t[s].children.length&&i(t[s].children):(t.splice(s,1),s--),r=s},r=0;r<t.length;r++)s(r)}return i(t),t},testCheck:function(t){for(var e=0;e<t.length;e++)t[e].children&&t[e].children.length>0?this.testCheck(t[e].children):this.checkedKeys.push(t[e].id)},updateMenu:function(){var t=this,e=JSON.parse(JSON.stringify(this.$store.getters.menuData)),i=this.$refs.tree.getCheckedNodes(!1,!0),s=i.map((function(t){return t.id})),r={resource:JSON.stringify(this.filterArr(e,s)),comment:JSON.stringify(i.filter((function(t){return!!t.index})).map((function(t){return t.index})))};(0,a.v_)({menus:r.comment,organizationId:this.$store.getters.organization.id,resources:r.resource,userId:this.user.id,projectId:this.$store.getters.project.id}).then((function(e){e.state&&(t.$emit("callback","init"),t.$message.success("操作成功"))}))}}}),c=u,d=i(845),m=(0,d.A)(c,l,n,!1,null,null,null),p=m.exports,h=function(){var t=this,e=t._self._c;return e("div",{staticClass:"hui-detail"},[e("div",{staticClass:"hui-detail-title"},[t._v("基础信息")]),e("div",{staticClass:"hui-detail-content"},[e("div",{staticClass:"hui-detail-item"},[e("div",{staticClass:"hui-detail-label"},[t._v("头像")]),e("div",{staticClass:"hui-detail-value"},[e("div",{staticStyle:{width:"40px",height:"40px","border-radius":"4px",overflow:"hidden"}},[e("avatar",{attrs:{user:t.user,size:18}})],1)])]),e("div",{staticClass:"hui-detail-item"},[e("div",{staticClass:"hui-detail-label"},[t._v("名称")]),e("div",{staticClass:"hui-detail-value"},[t._v(t._s(t.user.name))])]),e("div",{staticClass:"hui-detail-item"},[e("div",{staticClass:"hui-detail-label"},[t._v("性别")]),e("div",{staticClass:"hui-detail-value"},[t._v(t._s("M"==t.user.sex?"男":"女"))])]),e("div",{staticClass:"hui-detail-item"},[e("div",{staticClass:"hui-detail-label"},[t._v("电话")]),e("div",{staticClass:"hui-detail-value"},[t._v(t._s(t.user.phone))])]),e("div",{staticClass:"hui-detail-item"},[e("div",{staticClass:"hui-detail-label"},[t._v("部门")]),e("div",{staticClass:"hui-detail-value"},[t._v(t._s(t.user.partName))])]),e("div",{staticClass:"hui-detail-item"},[e("div",{staticClass:"hui-detail-label"},[t._v("岗位")]),e("div",{staticClass:"hui-detail-value"},[t._v(t._s(t.operateUserInfo.employeePosition||"-"))])]),e("div",{staticClass:"hui-detail-item"},[e("div",{staticClass:"hui-detail-label"},[t._v("职务")]),e("div",{staticClass:"hui-detail-value"},[t._v(t._s(t.operateUserInfo.position||"-"))])]),e("div",{staticClass:"hui-detail-item"},[e("div",{staticClass:"hui-detail-label"},[t._v("入职时间")]),e("div",{staticClass:"hui-detail-value"},[t._v(t._s(t.operateUserInfo.entryDate||"-"))])]),e("div",{staticClass:"hui-detail-item"},[e("div",{staticClass:"hui-detail-label"},[t._v("工作状态")]),e("div",{staticClass:"hui-detail-value"},[1===t.operateUserInfo.state?e("div",{staticClass:"hui-tag"},[t._v("在职")]):2===t.operateUserInfo.state?e("div",{staticClass:"hui-tag hui-tag-warning"},[t._v("请假")]):3===t.operateUserInfo.state?e("div",{staticClass:"hui-tag hui-tag-error"},[t._v("离职")]):e("span",[t._v("-")])])]),e("div",{staticClass:"hui-detail-item"},[e("div",{staticClass:"hui-detail-label"},[t._v("空间位置")]),e("div",{staticClass:"hui-detail-value"},[t._v(" "+t._s(t.operateUserInfo.projectItemTargetRoomName||t.operateUserInfo.projectItemTargetName||t.operateUserInfo.projectItemName||"-")+" ")])]),e("div",{staticClass:"hui-detail-item"},[e("div",{staticClass:"hui-detail-label"},[t._v("工作业务")]),e("div",{staticClass:"hui-detail-value"},[t._v(t._s(t.operateUserInfo.workBusiness||"-"))])])])])},f=[],v=i(50528),g={props:["user"],data:function(){return{type:1,operateUserInfo:{}}},mounted:function(){this.user.id&&this.init()},methods:{init:function(){var t=this;(0,v.XK)({projectId:this.$store.getters.project.id,operateOrganizationId:this.$store.getters.organization.id,userId:this.user.id}).then((function(e){e.state&&(t.operateUserInfo=e.data||{})}))}},components:{avatar:o.A}},b=g,I=(0,d.A)(b,h,f,!1,null,null,null),_=I.exports,k=function(){var t=this,e=t._self._c;return e("div",{staticClass:"hui-flex hui-dialog"},[e("div",{staticClass:"hui-flex-box hui-dialog-content"},[e("el-form",{ref:"userForm",attrs:{model:t.userForm,rules:t.userRulers,"label-position":"top"}},[t.alertShow?e("el-alert",{staticStyle:{"margin-bottom":"10px"},attrs:{title:"该账号已存在,请直接保存","show-icon":"",type:"success",closable:!1}}):t._e(),e("el-form-item",{attrs:{label:"手机号",prop:"phone"}},[e("el-input",{attrs:{autocomplete:"off"},model:{value:t.userForm.phone,callback:function(e){t.$set(t.userForm,"phone",e)},expression:"userForm.phone"}})],1),t.show?e("el-form-item",{attrs:{label:"姓名",prop:"name"}},[e("el-input",{attrs:{autocomplete:"off"},model:{value:t.userForm.name,callback:function(e){t.$set(t.userForm,"name",e)},expression:"userForm.name"}})],1):t._e(),t.show?e("el-form-item",{attrs:{label:"性别"}},[e("el-radio-group",{model:{value:t.userForm.sex,callback:function(e){t.$set(t.userForm,"sex",e)},expression:"userForm.sex"}},[e("el-radio",{attrs:{label:"M"}},[t._v("男")]),e("el-radio",{attrs:{label:"W"}},[t._v("女")])],1)],1):t._e(),t.show?e("el-form-item",{attrs:{label:"邮箱"}},[e("el-input",{model:{value:t.userForm.email,callback:function(e){t.$set(t.userForm,"email",e)},expression:"userForm.email"}})],1):t._e()],1)],1),e("div",{staticClass:"hui-dialog-submit"},[e("el-button",{attrs:{size:"medium"},on:{click:function(e){return t.$emit("callback")}}},[t._v("取 消")]),e("el-button",{attrs:{size:"medium",type:"primary",loading:t.loading},on:{click:t.submit}},[t._v("保 存")])],1)])},C=[],x=(i(16280),i(27495),i(90906),{props:["part"],data:function(){var t=this;return{userForm:{name:"",sex:"M",phone:"",email:""},userRulers:{name:[{required:!0,message:"请输入姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"},{validator:function(e,i,s){/^1[123456789]\d{9}$/.test(i)?"18888888888"==i?s(new Error("不能添加该号码")):(0,a.VD)(i).then((function(e){t.show=!e.data,t.alertShow=!t.show,s()})):s(new Error("请输入正确的手机号"))},trigger:"blur"}]},show:!1,alertShow:!1,loading:!1}},mounted:function(){},methods:{submit:function(){var t=this;this.loading=!0,this.$nextTick((function(){t.$refs.userForm.validate((function(e){if(!e)return t.loading=!1,!1;(0,a.HW)(t.$store.getters.organization.id,t.part.id,t.userForm).then((function(e){t.loading=!1,e.state&&(t.$emit("callback","init"),t.$message.success("操作成功"))}))}))}))}}}),j=x,y=(0,d.A)(j,k,C,!1,null,null,null),w=y.exports,F=function(){var t=this,e=t._self._c;return e("div",{staticClass:"hui-flex hui-dialog"},[e("div",{staticClass:"hui-flex-box hui-dialog-content"},[e("project-item",{ref:"projectItem",attrs:{form:t.userForm}}),e("el-form",{ref:"userForm",attrs:{model:t.userForm,"label-position":"top"}},[e("el-form-item",{attrs:{label:"入职时间"}},[e("el-date-picker",{attrs:{"value-format":"yyyy-MM-dd",type:"date",placeholder:"选择入职时间"},model:{value:t.userForm.entryDate,callback:function(e){t.$set(t.userForm,"entryDate",e)},expression:"userForm.entryDate"}})],1),e("el-form-item",{attrs:{label:"工作状态"}},[e("el-select",{attrs:{placeholder:"请选择工作状态"},model:{value:t.userForm.state,callback:function(e){t.$set(t.userForm,"state",e)},expression:"userForm.state"}},[e("el-option",{attrs:{value:1,label:"在职"}}),e("el-option",{attrs:{value:2,label:"请假"}}),e("el-option",{attrs:{value:3,label:"离职"}})],1)],1),e("el-form-item",{attrs:{label:"岗位",prop:"employeePosition"}},[e("el-input",{attrs:{placeholder:"请输入岗位"},model:{value:t.userForm.employeePosition,callback:function(e){t.$set(t.userForm,"employeePosition",e)},expression:"userForm.employeePosition"}})],1),e("el-form-item",{attrs:{label:"职务",prop:"position"}},[e("el-input",{attrs:{placeholder:"请输入职务"},model:{value:t.userForm.position,callback:function(e){t.$set(t.userForm,"position",e)},expression:"userForm.position"}})],1),e("el-form-item",{staticClass:"hui-textarea",attrs:{label:"工作业务"}},[e("el-input",{attrs:{type:"textarea",placeholder:"请输入工作业务",resize:"none"},model:{value:t.userForm.workBusiness,callback:function(e){t.$set(t.userForm,"workBusiness",e)},expression:"userForm.workBusiness"}})],1)],1)],1),e("div",{staticClass:"hui-dialog-submit"},[e("el-button",{attrs:{size:"medium"},on:{click:function(e){return t.$emit("callback")}}},[t._v("取 消")]),e("el-button",{attrs:{size:"medium",type:"primary"},on:{click:t.submit}},[t._v("保 存")])],1)])},z=[],$=i(37403),N={props:["user"],data:function(){return{operateUserInfo:{},userForm:{userId:"",projectId:"",projectItemId:"",projectItemTargetId:"",organizationId:"",entryDate:"",state:1,employeePosition:"",position:"",workBusiness:""}}},mounted:function(){this.init()},methods:{init:function(){var t=this;(0,v.XK)({projectId:this.$store.getters.project.id,organizationId:this.$store.getters.organization.id,userId:this.user.id}).then((function(e){e.state&&(t.operateUserInfo=e.data||{},t.operateUserInfo.id?t.userForm=JSON.parse(JSON.stringify(t.operateUserInfo)):(t.userForm["userId"]=t.user.id,t.userForm["projectId"]=t.$store.getters.project.id,t.userForm["organizationId"]=t.$store.getters.organization.id))}))},submit:function(){var t=this.$refs.projectItem.returnItem();this.userForm["projectItemId"]=t.projectItem.id,this.userForm["projectItemTargetId"]=t.projectItemTarget.id,this.userForm.id?(0,v.w)(this.userForm).then(this.successFunc):(0,v.GF)(this.userForm).then(this.successFunc)},successFunc:function(t){t.state&&(this.$message.success("操作成功"),this.$emit("callback","init"))},close:function(){this.$emit("callback","cancel")}},components:{projectItem:$.A}},T=N,U=(0,d.A)(T,F,z,!1,null,null,null),B=U.exports,S={data:function(){return{treeData:[],organization:{},project:{},tableData:[],defaultProps:{children:"children",label:"name"},part:{},visible:!1,user:{},drawer:!1,type:1,title:"",oldCollapse:[]}},mounted:function(){this.organization=this.$store.getters.organization,this.project=this.$store.getters.project;var t=this.organization.logo?JSON.parse(this.organization.logo):{};this.organization["logoUrl"]=t.url,this.init()},methods:{init:function(){var t=this;this.auth("/work/organization/user/list")&&(0,a.cW)(this.organization.id,this.project.id).then((function(e){e.state&&(t.treeData=e.data)}))},changeCollapse:function(t){var e=this;setTimeout((function(){e.selectPart(t)}),300)},selectPart:function(t){var e=this;this.part=t,(0,a.I1)({projectId:this.project.id,organizationId:this.organization.id,partId:t.id}).then((function(t){t.state&&(e.tableData=t.data)}))},insertUser:function(){this.type=1,this.title="新增成员",this.visible=!0},updateUser:function(t,e,i){this.user=t,this.type=e,this.title=i,this.visible=!0},lookUser:function(t){this.user=t,this.user["partName"]=this.part.name,this.drawer=!0},deleteUser:function(t){var e=this;this.$confirm("确定要删除该员工?",(function(){(0,a.hG)(e.organization.id,t.id).then((function(t){t.state&&(e.selectPart(e.part),e.$message.success("操作成功"))}))}))},callback:function(t){this.visible=!1,"init"===t&&this.selectPart(this.part)}},components:{avatar:o.A,edit:w,role:p,detail:_,infoForm:B}},D=S,L=(0,d.A)(D,s,r,!1,null,null,null),P=L.exports}}]);
|