app-base-react
Version:
react development common base package.
1 lines • 21.1 kB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _layout=require("antd/lib/layout"),_layout2=_interopRequireDefault(_layout),_form=require("antd/lib/form"),_form2=_interopRequireDefault(_form),_table=require("antd/lib/table"),_table2=_interopRequireDefault(_table),_input=require("antd/lib/input"),_input2=_interopRequireDefault(_input),_button=require("antd/lib/button"),_button2=_interopRequireDefault(_button),_row=require("antd/lib/row"),_row2=_interopRequireDefault(_row),_col=require("antd/lib/col"),_col2=_interopRequireDefault(_col),_regenerator=require("babel-runtime/regenerator"),_regenerator2=_interopRequireDefault(_regenerator),_message2=require("antd/lib/message"),_message3=_interopRequireDefault(_message2),_extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var a,r=arguments[t];for(a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},_createClass=function(){function r(e,t){for(var a=0;a<t.length;a++){var r=t[a];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(e,t,a){return t&&r(e.prototype,t),a&&r(e,a),e}}(),_react=(require("antd/lib/layout/style/css"),require("antd/lib/form/style/css"),require("antd/lib/table/style/css"),require("antd/lib/input/style/css"),require("antd/lib/button/style/css"),require("antd/lib/row/style/css"),require("antd/lib/col/style/css"),require("antd/lib/message/style/css"),require("react")),_react2=_interopRequireDefault(_react),_antd=require("antd"),_utilModal=require("../../../library/util-modal"),_utilModal2=_interopRequireDefault(_utilModal),_utilDic=require("../../../library/util-dic"),_utilDic2=_interopRequireDefault(_utilDic),_utilCheck=require("../../../library/util-check"),_utilCheck2=_interopRequireDefault(_utilCheck),_utilString=require("../../../library/util-string"),_utilString2=_interopRequireDefault(_utilString),_utilAxios=require("../../../library/util-axios"),_utilAxios2=_interopRequireDefault(_utilAxios),_moment=require("../../../library/moment"),_moment2=_interopRequireDefault(_moment),_dic=require("../../../library/dic"),_dic2=_interopRequireDefault(_dic),_selectDepartment=require("../../../library/select-department"),_selectDepartment2=_interopRequireDefault(_selectDepartment),_file=require("../../../library/file"),_file2=_interopRequireDefault(_file),_checkGroup=require("../../../library/check-group"),_checkGroup2=_interopRequireDefault(_checkGroup);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _asyncToGenerator(e){return function(){var s=e.apply(this,arguments);return new Promise(function(n,i){return function t(e,a){try{var r=s[e](a),l=r.value}catch(e){return void i(e)}if(!r.done)return Promise.resolve(l).then(function(e){t("next",e)},function(e){t("throw",e)});n(l)}("next")})}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(e,t){if(e)return!t||"object"!=typeof t&&"function"!=typeof t?e:t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var title="个人信息",url="SysUser/",_source="1",SysUserList=function(){function t(e){_classCallCheck(this,t);var l=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return l.onChange=function(e,t,a){var r=l.state.params;r.pageSize=e.pageSize,r.pageIndex=e.current,l.onLoad(r)},l.onSearch=function(e){var t=l.state.params;t.name=e,l.onLoad(t)},l.onAdd=function(){var t={};Object.keys(l.state.values).forEach(function(e){return t[e]=void 0}),l.setState({showView:!1,showEdit:!0,values:t}),l.props.onSetUserId("")},l.onView=function(e){l.setState({showView:!0,loading:!1,values:e})},l.onAuthority=function(e){l.setState({showAuthority:!0,loading:!1,values:e})},l.onEdit=function(e){var t=l;_utilAxios2.default.get(url+"getModel?id="+e.id,{},function(e){e=e.data;e.password="",t.setState({showEdit:!0,showView:!1,values:e})})},l.onSave=function(e){l.onLoad(l.state.params)},l.onDel=function(){var t=l;0==t.state.selected.length?_message3.default.error("请选择记录!"):_utilModal2.default.confirm({content:"确定删除?",okText:"确认",cancelText:"取消",onOk:function(){_utilAxios2.default.delete(url+"delete?id="+t.state.selected).then(function(e){e.success?(_message3.default.info(e.msg),t.onLoad(t.state.params||{})):_message3.default.error(e.msg)})}})},l.onAudit=function(e){var t=l,e={state:e,id:JSON.stringify(l.state.selected)};_utilAxios2.default.post(url+"audit",e).then(function(e){e.success?(_message3.default.info(e.msg),t.onLoad(t.state.params)):_message3.default.error(e.msg)})},l.onUnLock=function(){var t=l;0==t.state.selected.length?_message3.default.error("请选择记录!"):_utilModal2.default.confirm({content:"确定解锁?",okText:"确认",cancelText:"取消",onOk:function(){_utilAxios2.default.post(url+"unLock?id="+t.state.selected).then(function(e){e.success?(_message3.default.info(e.msg),t.onLoad(t.state.params||{})):_message3.default.error(e.msg)})}})},l.state={params:{source:_source,departmentId:"",departmentName:""},data:[],pagination:{},loading:!1,selected:[],showView:!1,showEdit:!1,showAuthority:!1,values:{}},l.columns=[{title:"序号",width:50,fixed:"left",render:function(e,t,a){return a+1}},{title:"状态",dataIndex:"state",width:70,render:function(e,t){return _react2.default.createElement("a",{className:"btn-detail",onClick:function(){return l.onView(t)}},_utilDic2.default.json("app","会员状态")[e])}},{title:"账号",dataIndex:"code",width:120,render:function(e,t){return _react2.default.createElement("a",{className:"btn-detail",onClick:function(){return l.onView(t)}},t.isLock?_react2.default.createElement("i",{className:"iconfont icon-lock"}," ",e):e)}},{title:"姓名",dataIndex:"name",width:120,render:function(e,t){return _react2.default.createElement("a",{className:"btn-detail",onClick:function(){return l.onView(t)}},e)}},{title:"手机",dataIndex:"tel",width:120},{title:"邮箱",dataIndex:"email",width:160}],l.props.type&&l.columns.splice(4,0,{title:"所在单位",dataIndex:"departmentName",width:150,render:function(e,t){return e||t.departmentName}}),l}var a;return _inherits(t,_react2.default.Component),_createClass(t,[{key:"componentDidMount",value:function(){this.onLoad(this.state.params)}},{key:"onLoad",value:(a=_asyncToGenerator(_regenerator2.default.mark(function e(t){var a,r;return _regenerator2.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.setState({loading:!0}),e.next=3,_utilAxios2.default.get(url+"getList",t);case 3:a=e.sent,r={pageSizeOptions:["20","100","200","500","1000"],pageSize:t.pageSize||20,defaultPageSize:t.pageSize||20,showSizeChanger:!0,showQuickJumper:!0,total:a.total,showTotal:function(e){return"总记录 "+e+" "}},this.setState({loading:!1,showEdit:!1,showAuthority:!1,params:t,data:a.data,pagination:r});case 6:case"end":return e.stop()}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"render",value:function(){var a=this,e={scroll:{y:this.props.height-210},size:"middle",rowKey:"id",columns:this.columns,rowSelection:{selectedRowKeys:this.state.selected,onChange:function(e,t){a.setState({selected:e,selectedRowId:e[0]}),a.props.onSetUserId(e[0])}},rowClassName:function(e){return e.id===a.state.selectedRowId?"row-selected":""},onRow:function(t){return{onClick:function(e){a.props.onSetUserId(t.id),a.setState({selectedRowId:t.id})}}},dataSource:this.state.data,pagination:this.state.pagination,loading:this.state.loading,onChange:this.onChange};return _react2.default.createElement("div",{className:"app-admin",style:{paddingRight:"20px"}},_react2.default.createElement("div",{className:this.state.showAuthority||this.state.showView||this.state.showEdit?"hide":""},_react2.default.createElement(_row2.default,null,_react2.default.createElement(_col2.default,{className:"main-title"},_react2.default.createElement("i",{className:"iconfont icon-title"}),title)),_react2.default.createElement(_row2.default,{className:"main-toolbar"},_react2.default.createElement(_col2.default,{className:"text-left",xs:16},_react2.default.createElement(_button2.default,{className:"btn-add",onClick:this.onAdd},_react2.default.createElement("i",{className:"iconfont icon-add"}),"录入"),_react2.default.createElement(_button2.default,{className:"btn-del",onClick:this.onDel},_react2.default.createElement("i",{className:"iconfont icon-del"}),"删除"),_react2.default.createElement(_button2.default,{className:"btn-sendmsg",onClick:this.onUnLock},_react2.default.createElement("i",{className:"iconfont icon-active"}),"解锁"),_react2.default.createElement(_button2.default,{className:"btn-active",onClick:function(){return a.onAudit(1)}},_react2.default.createElement("i",{className:"iconfont icon-del"}),"激活"),_react2.default.createElement(_button2.default,{className:"btn-notPass",onClick:function(){return a.onAudit(2)}},_react2.default.createElement("i",{className:"iconfont icon-del"}),"冻结")),_react2.default.createElement(_col2.default,{className:"text-right",xs:8},_react2.default.createElement(_input2.default.Search,{placeholder:"请输入名称",onSearch:function(e){return a.onSearch(e)},enterButton:!0}))),_react2.default.createElement(_table2.default,e)),this.state.showView?_react2.default.createElement(FormView,{type:this.props.type,height:this.props.height-140,values:this.state.values,onEdit:this.onEdit,onReturn:function(){a.setState({showView:!1})}}):"",this.state.showEdit?_react2.default.createElement(FormEdit,{type:this.props.type,height:this.props.height-140,values:this.state.values,onSave:this.onSave,onCancel:function(){a.setState({showEdit:!1})},onEditReturn:function(){a.setState({showEdit:!1,showView:!0})}}):"")}}]),t}(),FormView=function(){function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(this,(a.__proto__||Object.getPrototypeOf(a)).call(this,e));return t.state=_extends({},e.values),t}return _inherits(a,_react2.default.Component),_createClass(a,[{key:"componentDidMount",value:function(){var t=this;_utilAxios2.default.get(url+"getModel?id="+this.state.id,{},function(e){t.setState(_extends({},e.data))})}},{key:"render",value:function(){var t=this;return _react2.default.createElement(_form2.default,{className:"form-view"},_react2.default.createElement("div",{className:"form-title"},_react2.default.createElement("i",null,title," - 详情"),_react2.default.createElement("span",null,_react2.default.createElement(_button2.default,{className:"btn-edit",onClick:function(e){t.props.onEdit(t.state)}},_react2.default.createElement("i",{className:"iconfont icon-edit"}),"编辑"))),_react2.default.createElement("div",{className:"form-content",style:{height:this.props.height}},_react2.default.createElement(_row2.default,null,_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement("label",null,"账号"),_react2.default.createElement("span",null,this.state.code)),_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement("label",null,"姓名"),_react2.default.createElement("span",null,this.state.name))),_react2.default.createElement(_row2.default,null,this.props.type?_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement("label",null,"机构名称"),_react2.default.createElement("span",null,this.state.departmentName)):""),_react2.default.createElement(_row2.default,null,_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement("label",null,"手机"),_react2.default.createElement("span",null,this.state.tel)),_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement("label",null,"邮箱"),_react2.default.createElement("span",null,this.state.email))),_react2.default.createElement(_row2.default,null,_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement("label",null,"状态"),_react2.default.createElement("span",null,_utilDic2.default.json("app","会员状态")[this.state.state])))),_react2.default.createElement("div",{className:"form-toolbar"},_react2.default.createElement(_button2.default,{className:"btn-return",onClick:this.props.onReturn},_react2.default.createElement("i",{className:"iconfont icon-return"}),"返回")))}}]),a}(),FormEdit=function(){function t(e){_classCallCheck(this,t);var r=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return r.onSave=function(t){var a=r;t.id=r.state.id,""!=t.password.trim()&&(t.password=_utilString2.default.md5(t.password)),t.source=_source,_utilAxios2.default.post(url+"save",t).then(function(e){e.success?(_message3.default.info(e.msg),a.props.onSave(t)):_message3.default.error(e.msg)})},r.state=_extends({},e.values),r.formRef=_react2.default.createRef(),r}return _inherits(t,_react2.default.Component),_createClass(t,[{key:"render",value:function(){return _react2.default.createElement(_form2.default,{ref:this.formRef,className:"form-edit",layout:"vertical",onFinish:this.onSave},_react2.default.createElement("div",{className:"form-title"},_react2.default.createElement("i",null,title," - ",this.state.id?"编辑":"录入"),this.state.id?_react2.default.createElement("span",null,_react2.default.createElement(_button2.default,{className:"btn-return",onClick:this.props.onEditReturn},_react2.default.createElement("i",{className:"iconfont icon-return"}),"返回")):""),_react2.default.createElement("div",{className:"form-content",style:{height:this.props.height}},_react2.default.createElement(_row2.default,null,_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement(_form2.default.Item,{name:"code",label:"账号",initialValue:this.state.code,rules:[{required:!0,message:"请输入账号"}]},_react2.default.createElement(_input2.default,{maxLength:16}))),_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement(_form2.default.Item,{name:"name",label:"姓名",initialValue:this.state.name,rules:[{required:!0,message:"请输入姓名"}]},_react2.default.createElement(_input2.default,{maxLength:30})))),_react2.default.createElement(_row2.default,null,this.props.type?_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement(_form2.default.Item,{name:"departmentId",label:"机构名称",initialValue:String(this.state.departmentId||"")},_react2.default.createElement(_selectDepartment2.default,{params:{type:[997,998]}}))):""),_react2.default.createElement(_row2.default,null,_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement(_form2.default.Item,{name:"tel",label:"手机",initialValue:this.state.tel,rules:[{required:!0,message:"请输入手机"},{pattern:/^1[3456789]\d{9}$/,message:"请输入正确的手机号码"}]},_react2.default.createElement(_input2.default,null))),_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement(_form2.default.Item,{name:"email",label:"邮箱",initialValue:this.state.email,rules:[{required:!0,message:"请输入邮箱"},{pattern:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/,message:"请输入正确格式的邮箱"}]},_react2.default.createElement(_input2.default,null)))),_react2.default.createElement(_row2.default,null,_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement(_form2.default.Item,{name:"password",label:"密码",initialValue:this.state.password,rules:[{required:!this.state.id,message:"请输入密码"},{pattern:/^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W_]+$)(?![a-z0-9]+$)(?![a-z\W_]+$)(?![0-9\W_]+$)[a-zA-Z0-9\W_]{8,16}$/,message:"密码至少包含数字、大、小写字母、符号中的3种,长度8-16"}]},_react2.default.createElement(_input2.default.Password,{autocomplete:"off",placeholder:this.state.id?"为空时,不修改密码":""}))),_react2.default.createElement(_col2.default,{xs:12},_react2.default.createElement(_form2.default.Item,{name:"state",label:"状态",initialValue:this.state.state},_react2.default.createElement(_dic2.default,{params:{app:"app",type:"会员状态"}}))))),_react2.default.createElement("div",{className:"form-toolbar"},_react2.default.createElement(_button2.default,{className:"btn-cancel",onClick:this.props.onCancel},_react2.default.createElement("i",{className:"iconfont icon-cancel"}),"取消"),_react2.default.createElement(_button2.default,{className:"btn-submit",htmlType:"submit"},_react2.default.createElement("i",{className:"iconfont icon-submit"}),"提交")))}}]),t}(),SysRoleList=function(){function t(e){_classCallCheck(this,t);var l=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return l.onChange=function(e,t,a){var r=l.state.params;r.pageSize=e.pageSize,r.pageIndex=e.current,l.onLoad(r)},l.onSelect=function(e){if(0==l.props.userId.length)return _message3.default.error("请选择一条用户记录!"),!1;l.setState({selected:e});e={userId:l.props.userId,roleId:JSON.stringify(e)};_utilAxios2.default.post("SysUserRole/saveByUser",e).then(function(e){e.success?_message3.default.info(e.msg):_message3.default.error(e.msg)})},l.onSearch=function(e){var t=l.state.params;t.name=e,l.onLoad(t)},l.state={title:"用户角色",url:"SysUserRole/",params:{userId:l.props.userId||"",state:"1"},data:[],pagination:{},loading:!1,selected:[]},l}var a;return _inherits(t,_react2.default.Component),_createClass(t,[{key:"componentDidMount",value:function(){this.props.userId&&this.onLoad(this.state.params)}},{key:"onLoad",value:(a=_asyncToGenerator(_regenerator2.default.mark(function e(t){var a,r,l,n,i;return _regenerator2.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.setState({loading:!0}),e.next=3,_utilAxios2.default.get(this.state.url+"listSysUserRole",t);case 3:for(a=e.sent,r={pageSizeOptions:["20","100","200","500","1000"],pageSize:t.pageSize||20,defaultPageSize:t.pageSize||20,showSizeChanger:!0,showQuickJumper:!0,total:a.total,showTotal:function(e){return"总记录 "+e+" "}},l=[],n=0;n<a.data.length;n++)(i=a.data[n])._id1&&l.push(i._id1);this.setState({loading:!1,data:a.data,pagination:r,selected:l});case 8:case"end":return e.stop()}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"render",value:function(){var a=this,e={size:"middle",bordered:!1,rowKey:"id",scroll:{x:"100%"},columns:[{title:"角色名称",dataIndex:"name"},{title:"排序号",dataIndex:"ord",width:100}],rowSelection:{selectedRowKeys:this.state.selected,onChange:function(e,t){a.onSelect(e),a.setState({selected:e})}},rowClassName:function(e){return e.id===a.state.selectedRowId?"row-selected":""},onRow:function(t){return{onClick:function(e){a.setState({selectedRowId:t.id})}}},dataSource:this.state.data,pagination:this.state.pagination,loading:this.state.loading,onChange:this.onChange};return _react2.default.createElement("div",{className:"app-admin"},_react2.default.createElement("div",{className:this.state.showView||this.state.showEdit?"hide":""},_react2.default.createElement(_row2.default,null,_react2.default.createElement(_col2.default,{className:"main-title"},_react2.default.createElement("i",{className:"iconfont icon-title"}),this.state.title)),_react2.default.createElement(_row2.default,{className:"main-toolbar"},_react2.default.createElement(_col2.default,{className:"text-left",xs:12},_react2.default.createElement(_button2.default,{onClick:function(){a.onSearch("")}},_react2.default.createElement("span",{className:"iconfont icon-Refresh"}),_react2.default.createElement("i",null,"刷新"))),_react2.default.createElement(_col2.default,{className:"text-right",xs:12},_react2.default.createElement(_input2.default.Search,{placeholder:"请输入名称",onSearch:function(e){return a.onSearch(e)},enterButton:!0}))),_react2.default.createElement(_table2.default,e)))}}]),t}(),SysUserRole=function(){function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(this,(a.__proto__||Object.getPrototypeOf(a)).call(this,e));return t.onSetUserId=function(e){t.setState({userId:e,roleKey:_utilString2.default.uuid()})},t.state={userId:"",roleKey:_utilString2.default.uuid()},t}return _inherits(a,_react2.default.Component),_createClass(a,[{key:"render",value:function(){return _react2.default.createElement(_layout2.default,{style:{background:"#f0f2f5",height:"100%"}},_react2.default.createElement(_layout2.default.Sider,{theme:"light",width:"61.8%",style:{marginRight:"10px",paddingRight:"10px"}},_react2.default.createElement(SysUserList,{type:this.props.type,onSetUserId:this.onSetUserId})),_react2.default.createElement(_layout2.default.Content,{style:{background:"#fff",paddingLeft:"20px"}},_react2.default.createElement(SysRoleList,{key:this.state.roleKey,userId:this.state.userId})))}}]),a}();exports.default=SysUserRole;