(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-0ac8f8a6"],{2053:function(e,t,n){"use strict";n.r(t);var r=function(){var e=this,t=e._self._c;return t("a-drawer",{attrs:{width:"35%","label-col":4,"wrapper-col":14,visible:e.open},on:{close:e.onClose}},[t("a-divider",{attrs:{orientation:"left"}},[t("b",[e._v(e._s(e.formTitle))])]),t("a-form-model",{ref:"form",attrs:{model:e.form,rules:e.rules}},[t("a-form-model-item",{attrs:{label:"角色名称",prop:"roleName"}},[t("a-input",{attrs:{placeholder:"请输入"},model:{value:e.form.roleName,callback:function(t){e.$set(e.form,"roleName",t)},expression:"form.roleName"}})],1),t("a-form-model-item",{attrs:{prop:"roleKey"}},[t("span",{attrs:{slot:"label"},slot:"label"},[e._v(" 权限字符 "),t("a-tooltip",[t("template",{slot:"title"},[e._v(" 控制器中定义的权限字符，如：@PreAuthorize(`@ss.hasRole('admin')`) ")]),t("a-icon",{attrs:{type:"question-circle-o"}})],2)],1),t("a-input",{attrs:{placeholder:"请输入"},model:{value:e.form.roleKey,callback:function(t){e.$set(e.form,"roleKey",t)},expression:"form.roleKey"}})],1),t("a-form-model-item",{attrs:{label:"排序",prop:"roleSort"}},[t("a-input-number",{staticStyle:{width:"100%"},attrs:{placeholder:"请输入",min:0},model:{value:e.form.roleSort,callback:function(t){e.$set(e.form,"roleSort",t)},expression:"form.roleSort"}})],1),t("a-form-model-item",{attrs:{label:"状态",prop:"status"}},[t("a-radio-group",{attrs:{"button-style":"solid"},model:{value:e.form.status,callback:function(t){e.$set(e.form,"status",t)},expression:"form.status"}},e._l(e.statusOptions,(function(n,r){return t("a-radio-button",{key:r,attrs:{value:n.dictValue}},[e._v(e._s(n.dictLabel))])})),1)],1),t("a-form-model-item",{attrs:{label:"菜单权限"}},[t("a-checkbox",{on:{change:function(t){return e.handleCheckedTreeExpand(t)}}},[e._v(" 展开/折叠 ")]),t("a-checkbox",{on:{change:function(t){return e.handleCheckedTreeNodeAll(t)}}},[e._v(" 全选/全不选 ")]),t("a-checkbox",{attrs:{checked:e.form.menuCheckStrictly},on:{change:function(t){return e.handleCheckedTreeConnect(t)}}},[e._v(" 父子联动 ")]),t("a-tree",{attrs:{checkable:"",checkStrictly:!e.form.menuCheckStrictly,"expanded-keys":e.menuExpandedKeys,"auto-expand-parent":e.autoExpandParent,"tree-data":e.menuOptions,replaceFields:e.defaultProps},on:{check:e.onCheck,expand:e.onExpandMenu},model:{value:e.menuCheckedKeys,callback:function(t){e.menuCheckedKeys=t},expression:"menuCheckedKeys"}})],1),t("a-form-model-item",{attrs:{label:"备注",prop:"remark"}},[t("a-input",{attrs:{placeholder:"请输入",type:"textarea","allow-clear":""},model:{value:e.form.remark,callback:function(t){e.$set(e.form,"remark",t)},expression:"form.remark"}})],1),t("div",{staticClass:"bottom-control"},[t("a-space",[t("a-button",{attrs:{type:"primary",loading:e.submitLoading},on:{click:e.submitForm}},[e._v(" 保存 ")]),t("a-button",{attrs:{type:"dashed"},on:{click:e.cancel}},[e._v(" 取消 ")])],1)],1)],1)],1)},o=[],u=(n("99af"),n("d3b7"),n("159b"),n("3528")),s=n("a6dc"),a={name:"CreateForm",props:{statusOptions:{type:Array,required:!0}},components:{},data:function(){return{submitLoading:!1,menuExpandedKeys:[],autoExpandParent:!1,menuCheckedKeys:[],halfCheckedKeys:[],menuOptions:[],formTitle:"",form:{roleId:void 0,roleName:void 0,roleKey:void 0,roleSort:0,status:"0",menuIds:[],menuCheckStrictly:!0,remark:void 0},open:!1,menuExpand:!1,menuNodeAll:!1,rules:{roleName:[{required:!0,message:"角色名称不能为空",trigger:"blur"}],roleKey:[{required:!0,message:"权限字符不能为空",trigger:"blur"}],roleSort:[{required:!0,message:"显示顺序不能为空",trigger:"blur"}]},defaultProps:{children:"children",title:"label",key:"id"}}},filters:{},created:function(){},computed:{},watch:{},methods:{onExpandMenu:function(e){this.menuExpandedKeys=e,this.autoExpandParent=!1},getMenuTreeselect:function(){var e=this;Object(s["f"])().then((function(t){e.menuOptions=t.data}))},getMenuAllCheckedKeys:function(){return this.menuCheckedKeys.concat(this.halfCheckedKeys)},getAllMenuNode:function(e){var t=this;if(!e||0===e.length)return[];e.forEach((function(e){return t.menuCheckedKeys.push(e.id),t.getAllMenuNode(e.children)}))},selectNodefilter:function(e,t){var n=this;if(!e||0===e.length)return[];e.forEach((function(e){var r=n.menuCheckedKeys.indexOf(e.id);-1!==r&&(t.forEach((function(e){-1===n.halfCheckedKeys.indexOf(e)&&n.halfCheckedKeys.push(e)})),t=[]);var o=n.halfCheckedKeys.indexOf(e.id),u=t.indexOf(e.id);return-1===o&&-1===u&&-1===r&&t.push(e.id),n.selectNodefilter(e.children,t)}))},handleCheckedTreeNodeAll:function(e){e.target.checked?this.getAllMenuNode(this.menuOptions):(this.menuCheckedKeys=[],this.halfCheckedKeys=[])},handleCheckedTreeExpand:function(e){if(e.target.checked)for(var t=this.menuOptions,n=0;n<t.length;n++)this.menuExpandedKeys.push(t[n].id);else this.menuExpandedKeys=[]},handleCheckedTreeConnect:function(e){this.form.menuCheckStrictly=!this.form.menuCheckStrictly},getRoleMenuTreeselect:function(e){var t=this;return Object(s["e"])(e).then((function(e){return t.menuOptions=e.menus,e}))},onCheck:function(e,t){if(this.form.menuCheckStrictly)this.halfCheckedKeys=t.halfCheckedKeys,this.menuCheckedKeys=e;else{var n=[];this.menuCheckedKeys.checked&&(n=n.concat(this.menuCheckedKeys.checked)),this.menuCheckedKeys.halfChecked&&(n=n.concat(this.menuCheckedKeys.halfChecked)),this.menuCheckedKeys=n}},onClose:function(){this.open=!1},cancel:function(){this.open=!1,this.reset()},reset:function(){void 0!==this.$refs.menu&&(this.menuCheckedKeys=[],this.halfCheckedKeys=[]),this.menuExpand=!1,this.menuNodeAll=!1,this.menuExpandedKeys=[],this.autoExpandParent=!1,this.menuCheckedKeys=[],this.halfCheckedKeys=[],this.form={roleId:void 0,roleName:void 0,roleKey:void 0,roleSort:0,status:"0",menuIds:[],menuCheckStrictly:!0,remark:void 0}},handleAdd:function(){this.reset(),this.getMenuTreeselect(),this.open=!0,this.formTitle="添加角色"},handleUpdate:function(e,t){var n=this;this.reset();var r=e?e.roleId:t,o=this.getRoleMenuTreeselect(r);Object(u["i"])(r).then((function(e){n.form=e.data,n.open=!0,n.$nextTick((function(){o.then((function(e){n.menuCheckedKeys=e.checkedKeys,n.form.menuCheckStrictly&&n.selectNodefilter(n.menuOptions,[])}))})),n.formTitle="修改角色"}))},submitForm:function(){var e=this;this.$refs.form.validate((function(t){if(!t)return!1;e.submitLoading=!0,void 0!==e.form.roleId?(e.form.menuIds=e.getMenuAllCheckedKeys(),Object(u["l"])(e.form).then((function(t){e.$message.success("修改成功",3),e.open=!1,e.$emit("ok")})).finally((function(){e.submitLoading=!1}))):(e.form.menuIds=e.getMenuAllCheckedKeys(),Object(u["a"])(e.form).then((function(t){e.$message.success("新增成功",3),e.open=!1,e.$emit("ok")})).finally((function(){e.submitLoading=!1})))}))}}},c=a,i=n("2877"),l=Object(i["a"])(c,r,o,!1,null,null,null);t["default"]=l.exports},3528:function(e,t,n){"use strict";n.d(t,"j",(function(){return o})),n.d(t,"i",(function(){return u})),n.d(t,"a",(function(){return s})),n.d(t,"l",(function(){return a})),n.d(t,"g",(function(){return c})),n.d(t,"f",(function(){return i})),n.d(t,"h",(function(){return l})),n.d(t,"b",(function(){return d})),n.d(t,"k",(function(){return m})),n.d(t,"c",(function(){return h})),n.d(t,"d",(function(){return f})),n.d(t,"e",(function(){return p}));var r=n("b775");function o(e){return Object(r["b"])({url:"/system/role/list",method:"get",params:e})}function u(e){return Object(r["b"])({url:"/system/role/"+e,method:"get"})}function s(e){return Object(r["b"])({url:"/system/role",method:"post",data:e})}function a(e){return Object(r["b"])({url:"/system/role",method:"put",data:e})}function c(e){return Object(r["b"])({url:"/system/role/dataScope",method:"put",data:e})}function i(e,t){var n={roleId:e,status:t};return Object(r["b"])({url:"/system/role/changeStatus",method:"put",data:n})}function l(e){return Object(r["b"])({url:"/system/role/"+e,method:"delete"})}function d(e){return Object(r["b"])({url:"/system/role/authUser/allocatedList",method:"get",params:e})}function m(e){return Object(r["b"])({url:"/system/role/authUser/unallocatedList",method:"get",params:e})}function h(e){return Object(r["b"])({url:"/system/role/authUser/cancel",method:"put",data:e})}function f(e){return Object(r["b"])({url:"/system/role/authUser/cancelAll",method:"put",params:e})}function p(e){return Object(r["b"])({url:"/system/role/authUser/selectAll",method:"put",params:e})}},a6dc:function(e,t,n){"use strict";n.d(t,"d",(function(){return o})),n.d(t,"c",(function(){return u})),n.d(t,"f",(function(){return s})),n.d(t,"e",(function(){return a})),n.d(t,"a",(function(){return c})),n.d(t,"g",(function(){return i})),n.d(t,"b",(function(){return l}));var r=n("b775");function o(e){return Object(r["b"])({url:"/system/menu/list",method:"get",params:e})}function u(e){return Object(r["b"])({url:"/system/menu/"+e,method:"get"})}function s(){return Object(r["b"])({url:"/system/menu/treeselect",method:"get"})}function a(e){return Object(r["b"])({url:"/system/menu/roleMenuTreeselect/"+e,method:"get"})}function c(e){return Object(r["b"])({url:"/system/menu",method:"post",data:e})}function i(e){return Object(r["b"])({url:"/system/menu",method:"put",data:e})}function l(e){return Object(r["b"])({url:"/system/menu/"+e,method:"delete"})}}}]);