一、项目概述:
1)该项目是某互联网金融平台的后台管理项目,主要使用对象为公司内部员工,比如债权运营人员、市场运营人员、产品人员、客服人员、公司领导等;
2)P2P后台系统是支撑P2P前台系统的;
3)P2P后台系统可以为公司的业务运营提供一些自动化的处理,减少人工处理,提高运营效率;
4)P2P后台系统是与P2P前端业务系统一起统筹设计的;
5)开发团队:3人;
二、项目功能:
1、用户账户管理(有管理员账号和员工账号,管理员拥有至高无上的权限,可以为公司内部员工开通账户)
2、轮播图管理(管理pc站、H5站、APP首页上展示的轮播图,可以对轮播图开启或禁用,设置展示的时间等)
3、产品管理(管理pc站、H5站、APP展示的理财产品、产品列表,能发布产品、审核产品)
4、合同管理(主要对债权合同进行管理,定时生成合同及手动生成合同,pdf版本合同将调用签章系统进行电子签章,H5站、APP合同是一个html的版本 )
5、债权的管理(对借款人的借款信息进行管理,包括录入债权、接收第三方债权等)
…还有很多功能,暂时没有开发;
三、技术选型&工具
前端:(https://blog.csdn.net/uotail/article/details/80475152)ACE (bootstrap框架) + jQuery (一些插件) + layer + JSP + JSTL
后端:Spring Boot + MyBatis + RBAC权限 + WebService
相关组件:HttpComponents、Apache commons、Druid、iText 等;
服务器:Tomcat、MySQL、FastDFS
项目依赖管理:Maven
项目开发工具:IDEA
四、项目原型搭建
1、认识ACE前端页面框架;
2、基于ACE搭建项目原型;
3、独立将页面原型改造成我们项目的原型(培养这种能力);
4、搭建Springboot项目基础结构;
1>创建Springboot项目;
2>配置基础依赖;
3>配置项目端口及上下文;
4>配置springboot使用JSP展示数据;
5>配置Mybatis及数据源;
6>配置项目日志;
五、账户管理功能模块
1)登录
2)七天内免登录
3)用户个人详细信息展示
4)用户列表:a、分页 b、切换显示条数 c、分页信息
5)添加用户
6)修改用户
7)删除用户
8)禁用用户
六、轮播图管理功能模块
1)轮播图列表:a、分页 b、切换显示条数 c、分页信息
2)添加轮播图
3)修改轮播图
4)删除轮播图
5)禁用轮播图
七、产品管理功能模块
八、债权管理功能模块
九、合同管理功能模块
附录:1互联网金融项目结构图
附录3------------------借款协议
协议编号:
甲方(出借人):见合同最后一页 乙方(借款人):
真实姓名:
身份证号:
性别:
现住址:
丙方(服务商):xxx信息服务有限公司
住所:xxxxx
法定代表人:张xx
鉴于:
1、丙方系一家依据中华人民共和国法律成立并有效存续的有限责任公司,现持有效的《企业法人营业执照》(统一社会信用代码:91111111111111111F),拥有动力金融网站(以下简称“该网站”)的经营权,其经营范围为金融信息服务(未经许可不得开展金融业务);技术开发、技术咨询、技术服务、技术推广、技术转让;基础软件服务;应用软件服务;数据处理;软件开发;市场调查;经济贸易咨询;投资咨询;企业管理咨询;会议服务办展览展示活动;投资管理。(依法须经批准的项目,经相关部门批准后依批准的内容开展经营活动。)
2、乙方有借款需求,甲方同意向乙方提供借款,甲乙双方同意通过丙方的撮合,即 通过金信网站上发布的散标产品项目,进而按照本协议的条款和条件成立借贷关系。
3、为明确三方当事人的权利、义务,根据中国有关法律法规的规定,经三方协商一致,自愿达成以下条款,以供遵守。
定义:
【出借人】指依照法律法规规定自主选择出借一定数量资金给他人的自然人,即本协议 中的甲方,在本协议项下,出借人可以为多方。
【借款人】指有资金需求,经丙方筛选推荐给出借人并得到出借人一定数量出借资金 的自然人,即本协议中的乙方,在本协议项下,借款人只有一方。
【逾期】指借款人因其自身原因不能按协议的约定时间向出借人偿还借款的情况。
【服务费】指因丙方及其合作方为本次借款提供居间服务以及与居间服务相关的系列服 务而由乙方支付给丙方及其合作方的报酬,服务的标准及支付方式以乙方和丙方之间签署的
《信用咨询及管理服务协议》中的约定为准。
第一条 借款基本信息 各方同意,乙方向甲方借款的基本信息如下:
借款用途 千万 百万 十万 万 千 百 十 元 角 分
借款金额 人民币(大写)
还款方式
还款期数
每月还款日
还款起止日
第二条 费用
1、在本协议中,甲方和乙方同意委托丙方或丙方指定的专业公司提供如下综合服务:
(1) 对乙方的个人身份、信用信息等相关材料进行审核,对乙方进行综合评估,根据评定结果向甲方进行推荐;
(2) 对甲方和乙方的本次借款通过网络平台进行撮合;
(3) 协助完成借款的发放手续,协助甲方以合法措施(包括但不限于诉讼、仲 裁手段)向乙方催收还款,并负责将本次借款的放款、还款相关信息及时通知甲方、 乙方;
(4) 与本次借款相关的其他综合服务。
2、协议各方同意,乙方应按乙丙双方之间签署的《信用咨询及管理服务协议》向丙 方及丙方的合作方支付各项费用。
3、各方同意,放款时乙方需支付的服务费由丙方指定合作的第三方支付机构或银 行受托划付借款本金时从本金中按约定扣除,乙方借款本金以本协议第一条规定的“借款本金数额”为准。放款后乙方需支付的各项费用,乙方不可撤销地授权丙方合作的第 三方支付机构/银行或丙方委托专业公司合作的第三方合作支付机构/银行按约定每期从乙 方专用账户中扣划。
4、如乙方和丙方协商一致调整服务费,无需经过甲方同意。
第三条 借款的发放
1、甲方指定其在本网站注册时绑定的账户作为放款划扣、收款等本协议项下资金往 来的专用账户,甲方须确保该账户为甲方名下合法有效的银行账户,甲方变更该账户时 必须在变更前3日内书面通知丙方并经丙方确认后方可变更;如甲方擅自变更此指定账户 导致的损失由甲方自行承担。
2、甲方须在同乙方和丙方约定的借款期限起始日(不得迟于0:00)或之前将借款本 金足额存入其指定的专用账户,并授权丙方合作的第三方支付机构/银行或丙方委托专业 公司合作的第三方支付机构/银行在本协议列明的借款期限起始日从甲方银行账户中代为 划转出借金额予乙方。
第四条 还款及提前还款
1、乙方必须按期足额偿还本协议约定的本金和利息。任何应从乙方账户划扣的款项,乙方在此同意并授权丙方合作的第三方支付机构/银行或丙方委托专业公司合作的第三方支付机构/银行每期从乙方专用账户中准确划扣相应数额。乙方须在每期还款日当日(不得迟于0:00)或之前将本协议第一条规定的月偿还本息数额存入本协议第一条规定的乙方专用账户中。如果还款日遇到法定假日或公休日,还款日期不进行顺延。如果还款日为每月30日,则遇到天数不足30天的月份,还款日为应还款当月的最后一日。
2、甲方(出借人)为多人的,按比例享有债权,即甲方每位出借人应收借款本金金 额的计算公式为:乙方偿还借款本金总金额*(该出借人出借金额/乙方借款本金数额)。乙 方部分还款情形下,甲方每位出借人应收债权金额计算公式为:乙方还款金额/乙方应付的 全部款项*该出借人的应收金额。
3、如果在某一还本付息日,乙方所偿还的一笔款项不足以偿还当期应付款项,则该笔款 项应按照如下顺序清偿:
(1)根据本协议产生的其他全部费用;
(2)本协议约定的复利;
(3)本协议约定的罚息;
(4)应偿借款利息;
(5)应偿借款本金。
4、如乙方欲提前一次性归还全部剩余借款,应提前3个工作日向丙方提出申请,并取 得丙方的同意。乙丙双方约定提前还款时间(还款日当日及节假日期间不受理),乙方需 在约定的时间前把相应款项存入指定账户。甲方认可乙方提前还款不需通知甲方并经其同 意。
5、如乙方在《借款协议》规定的借款期限到期前提前一次性还款,乙方需要按照本 条约定承担一定的违约罚金,违约罚金的支付标准以乙方和丙方之间签署的《信用咨询 及管理服务协议》中的约定为准。
第五条 甲方陈述、保证及承诺
1、甲方向乙方和丙方陈述与保证如下:
(1)甲方具有充分的授权及权利签署本协议及进行本协议项下的交易。
(2)甲方已取得为签署本协议所需的一切批准和第三方同意,甲方签署及履行本协 议不违反甲方作为一方当事人的任何其他协议。
(3)甲方提供的借款资金是其拥有所有权和支配权的合法自有资金。
(4)甲方已在该网站注册,并承诺其向丙方提供的所有文件、资料和凭证等都是真 实、合法、完整、准确和有效的。
(5)甲方签署和履行本协议是自愿的,其在本协议项下的全部意思表示真实。
2、甲方在此向乙方和丙方承诺如下:
(1)甲方应按协议约定的借款期限起始日期将足额的借款本金支付给乙方。
(2)如甲方存在多名出借人,乙方实际还款金额少于本协议约定的本金、利息及罚 息的,甲方各出借人同意按照各自的借款比例收取还款。
(3)对于丙方基于推荐出借的需要而提供给甲方的乙方的个人证件及其他相关信用 信息,甲方确保仅用于出借参考,甲方有义务进行保密。如果甲方擅自、不恰当地向他 人透露乙方的信用信息,由此对乙方造成的损失,由甲方承担全部责任。
第六条 乙方陈述、保证及承诺
1、乙方向甲方和丙方陈述与保证如下:
(1)乙方具有完全民事行为能力,享有充分的授权及权利签署本协议及进行本协议项 下的交易,并以其全部资产承担民事责任。
(2)乙方已取得为签署本协议所需的一切批准和第三方同意,乙方签署及履行本协议 不违反乙方作为一方当事人的任何其他协议。
(3)乙方已在该网站注册,并承诺其向丙方提供的所有文件、资料和凭证等都是真实、合法、完整、准确和有效的。
(4)乙方没有发生对其履行其在本协议项下义务的能力具有实质不利影响的任何诉讼、仲裁程序。
(5)乙方未隐瞒任何已发生或即将发生的有可能使甲方不同意发放本协议项下借款的 事件。
(6)乙方已仔细阅读并完全理解接受本协议的内容,乙方签署和履行本协议是自愿的,其在本协议项下的全部意思表示真实。
2、乙方在此向甲方和丙方承诺如下:
(1)乙方按期足额归还本协议项下的本金和利息。乙方应按协议约定向丙方及其合作 方支付服务费等各项费用。
(2)如实提供借款调查、审查过程中应交付的资料(法律规定不能提供者除外),积 极配合丙方或其合作的第三方的调查和审查。乙方在此授权丙方可以随时通过任何渠道采 集乙方的信用信息、信用报告和信用评价,包括但不限于向独立信用审查机构、中国人民 银行征信中心(包括通过独立信用审查机构向中国人民银行征信中心)查询、采集。查询 结果可用于丙方开展与乙方相关联的各项业务。
(3)乙方在借款期间如发生居住地址、工作单位、手机号码、电子邮箱或其他重大事 项变更,应在3日内通知甲方和丙方,并及时在该网站更改相关个人信息。
(4)在本协议有效期间直至乙方清偿所有借款本金及利息之日止,未经甲方、丙方同意,乙方不得进行资产转让、对外借款、提供保证担保,或以乙方资产、权益设定抵押或质押等足以影响乙方清偿本协议项下借款本金及利息能力的任何行为。
(5)乙方承诺所借款项不用于任何违法用途,且未经甲方、丙方同意,乙方不得改变 本协议中确定的借款用途。
(6)乙方不得将本协议项下的任何权利义务转让给任何其他方。
(7)如乙方在本协议项下的借款用于家庭,包括但不限于使用于家庭、家庭成员等, 还款责任由乙方家庭其他人员承担连带清偿责任。
第七条 丙方陈述、保证及承诺
1、丙方向甲方和乙方陈述与保证如下:
(1)丙方系一家依据中国法律成立并有效存续的有限责任公司,具有充分的授权及 权利签署本协议及进行本协议项下的交易。
(2)丙方已取得为签署本协议所需的一切批准和第三方同意,丙方签署及履行本协 议不违反丙方作为一方当事人的任何其他协议。
(3)丙方签署和履行本协议是自愿的,其在本协议项下的全部意思表示真实。
2、丙方在此向甲方和乙方承诺如下:
(1)丙方本身或合作的第三方将按照本协议的约定合理谨慎地为甲方、乙方提供综 合服务。
(2)丙方应对甲方和乙方的信息及本协议内容保密,但如为本协议的顺利履行以及 查询信用信息、信用报告和信用评价等需要提供甲方、乙方的信息除外;如任何一方违 约,或因相关权力部门要求(包括但不限于法院、仲裁机构、监管机构等),丙方有权披 露;丙方还有权依据将来可能颁布并生效的法律、法规、地方性政府规章等的强制性规定 对甲乙双方的信息进行披露。
第八条 违约责任
1、各方同意,任何一方违反其在本协议项下的义务或所作出的陈述与保证、承诺, 均视为违约。违约方给其他方带来损失的,应当赔偿给其他方造成的实际损失。
2、若乙方晚于本协议规定的还款日还款,应向出借人支付罚息、复利。 罚息:罚息利率为每日0.3%,当期逾期每日按当期应付未付本息金额的0.3%
收取罚息,罚息计算公式为:当期应付未付本息金额*(10%+0.3%*逾期天数),每期独立计算后求和。直至清偿本息为止。
复利:自借款期限起始日起每满一整年,如乙方仍有未向甲方支付的利息或罚息, 则该利息和罚息在满整年后的第2日应并入本金,并以该本金为基数继续按照本协议的约 定计算利息和罚息,复利以年为单位按本条约定叠加计算。
若乙方偿还金额不足,偿还先后顺序为实现债权的费用、复利、罚息、应还利息、 应还本金。甲方及丙方有权利改变上述顺序。
3.出现下列情形之一的,甲方及丙方有权宣布借款立即到期,要求乙方立即偿还全部本 金、利息、罚息、复利、滞纳金及实现债权的费用:
(1)乙方逾期还款达15日的;
(2)乙方履约能力下降,财务状况恶化的;
(3)乙方在逾期后出现逃避、转移资产或拒绝承认欠款事实等恶意行为的;
(4)乙方向丙方及其他相关公司提供虚假资料或者故意隐瞒重要事实的;
(5)乙方擅自改变本协议第一条规定的借款用途或不配合核实借款用途的。
4.丙方有权将乙方违约失信的相关信息及乙方其他信息向媒体、用人单位、相关权力 部门(包括但不限于法院、检察院、仲裁机构、行业协会等)披露。乙方行为构成犯罪 的,丙方有权向相关国家机关报案,追究其刑事责任。
5.因乙方未还款而带来的调查费、律师费、诉讼费等丙方经甲方授权为实现债权的合 理费用均由乙方承担。因乙方逾期和未还款事宜丙方依据甲方的授权可委托专业的公司 进行处理。双方对调查费约定如下:
(1)电话催收费:电话催收两次以内的免费,从第三次起开始计收电话催收费(包 括客户未接电话或电话无法接通,也不影响该费用的收取);
(2)上门催收费:电话催收三次未果,即上门催收。上门催收费按照客户借款协议 项下未还款总额5%收取(但不低于500元且不高于3000元);
(3)催收交通费:同城催收,按照实际行驶距离,每公里收取5元;异地催收,由客 户承担火车、汽车、租车、酒店住宿等全部差旅费用。
6、本协议中,如甲方存在多名出借人,所有甲方与乙方之间的借款均是相互独立的,一旦乙方逾期未归还借款本息,甲方中的任何一个出借人均有权单独向乙方追索或者提起诉讼。如乙方逾期支付服务费或提供虚假信息的,丙方亦可单独向乙方追索或者提起诉讼。
第九条 税费的承担
各方同意按照中国法律、行政法规的规定自行缴纳各自因订立和履行本协议发生的税费。
第十条 错误和不当得利
甲乙双方无论因何种原因(包括但不限于不可抗力、丙方人员操作错误、系统漏洞、黑客攻击、银行或第三方支付公司代收代付错误、第三方过失),导致其获得了没有法律依据或协议约定的额外利益均为不当得利,受害人可要求受益人立即返还不当得利。如该错误是因乙方操作失误或系统原因导致,乙方有权自行恢复。
第十一条 适用法律及争议解决
1、本协议的订立、履行、效力、解释、争议及纠纷的解决均适用中国现行有效的法 律。
2、在履行本协议过程中所发生的争议,首先应由各方协商解决;协商不成的,则提交 丙方所在地法院以诉讼方式解决。
第十二条 其他
1、本协议采用电子文本形式制成,并永久保存在丙方为此设立的专用服务器上备查, 各方均认可该形式的协议效力。
2、本协议的任何条款在任何方面不合法、无效或不可执行,不影响本协议其他条款的 合法性、有效性或可执行性。
3、本协议自文本生成之日生效。
丙方(服务商):xxx信息服务有限公司
住所:xxx
法定代表人:张xx
DEMO SQL (五张表)
/*
Navicat Premium Data Transfer
Source Server : localhost
Source Server Type : MySQL
Source Server Version : 50732
Source Host : localhost:3306
Source Schema : rbac
Target Server Type : MySQL
Target Server Version : 50732
File Encoding : 65001
Date: 28/11/2021 14:49:56
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for u_permission_info
-- ----------------------------
DROP TABLE IF EXISTS `u_permission_info`;
CREATE TABLE `u_permission_info` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
`name` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '资源名称',
`type` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '资源类型:menu,button',
`url` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '访问url地址',
`code` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '权限代码字符串',
`parent_id` int(11) NULL DEFAULT NULL COMMENT '父结点id',
`sort` double(2, 1) NULL DEFAULT NULL COMMENT '排序号',
`available` int(1) NULL DEFAULT NULL COMMENT '是否可用,1可用,0不可用',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 47 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of u_permission_info
-- ----------------------------
INSERT INTO `u_permission_info` VALUES (1, '管理面板', 'menu', NULL, 'manage', 0, 0.0, 1);
INSERT INTO `u_permission_info` VALUES (2, '产品管理', 'menu', NULL, 'product', 1, 1.0, 1);
INSERT INTO `u_permission_info` VALUES (3, '优选产品', 'menu', '/admin/product?productType=1', 'product-youxuan', 2, 1.1, 1);
INSERT INTO `u_permission_info` VALUES (4, '优选产品-添加', 'button', '/admin/toAddProduct?productType=1', 'product-youxuan-add', 3, NULL, 1);
INSERT INTO `u_permission_info` VALUES (5, '优选产品-删除', 'button', '/admin/toDeleteProduct', 'product-youxuan-delete', 3, NULL, 1);
INSERT INTO `u_permission_info` VALUES (6, '优选产品-修改', 'button', '/admin/toEditProduct', 'product-youxuan-update', 3, NULL, 1);
INSERT INTO `u_permission_info` VALUES (7, '优选产品-查询', 'button', '/admin/product?productType=1', 'product-youxuan-query', 3, NULL, 1);
INSERT INTO `u_permission_info` VALUES (8, '散标产品', 'menu', '/admin/product?productType=2', 'product-sanbiao', 2, 1.2, 1);
INSERT INTO `u_permission_info` VALUES (9, '散标产品-添加', 'button', '/admin/toAddProduct', 'product-sanbiao-add', 8, NULL, 1);
INSERT INTO `u_permission_info` VALUES (10, '散标产品-删除', 'button', '/admin/toDeleteProduct', 'product-sanbiao-delete', 8, NULL, 1);
INSERT INTO `u_permission_info` VALUES (11, '散标产品-修改', 'button', '/admin/toEditProduct', 'product-sanbiao-update', 8, NULL, 1);
INSERT INTO `u_permission_info` VALUES (12, '散标产品-查询', 'button', '/admin/product?productType=2', 'product-sanbiao-query', 8, NULL, 1);
INSERT INTO `u_permission_info` VALUES (13, '体验产品', 'menu', '/admin/product?productType=0', 'product-tiyan', 2, 1.3, 1);
INSERT INTO `u_permission_info` VALUES (14, '体验产品-添加', 'button', '/admin/toAddProduct?productType=1', 'product-tiyan-add', 13, NULL, 1);
INSERT INTO `u_permission_info` VALUES (15, '体验产品-删除', 'button', '/admin/toDeleteProduct', 'product-tiyan-delete', 13, NULL, 1);
INSERT INTO `u_permission_info` VALUES (16, '体验产品-修改', 'button', '/admin/toEditProduct', 'product-tiyan-update', 13, NULL, 1);
INSERT INTO `u_permission_info` VALUES (17, '体验产品-查询', 'button', '/admin/product?productType=0', 'product-tiyan-query', 13, NULL, 1);
INSERT INTO `u_permission_info` VALUES (18, '债权管理', 'menu', NULL, 'rights', 1, 2.0, 1);
INSERT INTO `u_permission_info` VALUES (19, '自主债权', 'menu', '/admin/creditorRights?creditorRightsType=0', 'rights-zizhu', 18, 2.1, 1);
INSERT INTO `u_permission_info` VALUES (20, '自主债权-添加', 'button', '/admin/toAddCreditorRights', 'rights-zizhu-add', 19, NULL, 1);
INSERT INTO `u_permission_info` VALUES (21, '自主债权-删除', 'button', '/admin/deleteCreditorRights', 'rights-zizhu-delete', 19, NULL, 1);
INSERT INTO `u_permission_info` VALUES (22, '自主债权-修改', 'button', '/admin/toEditCreditorRights', 'rights-zizhu-update', 19, NULL, 1);
INSERT INTO `u_permission_info` VALUES (23, '自主债权-查询', 'button', '/admin/creditorRights?creditorRightsType=0', 'rights-zizhu-query', 19, NULL, 1);
INSERT INTO `u_permission_info` VALUES (24, '三方债权', 'menu', '/admin/creditorRights?creditorRightsType=1', 'rights-sanfang', 18, 2.2, 1);
INSERT INTO `u_permission_info` VALUES (25, '三方债权-添加', 'button', '/admin/toAddCreditorRights', 'rights-sanfang-add', 24, NULL, 1);
INSERT INTO `u_permission_info` VALUES (26, '三方债权-删除', 'button', '/admin/deleteCreditorRights', 'rights-sanfang-delete', 24, NULL, 1);
INSERT INTO `u_permission_info` VALUES (27, '三方债权-修改', 'button', '/admin/toEditCreditorRights', 'rights-sanfang-update', 24, NULL, 1);
INSERT INTO `u_permission_info` VALUES (28, '三方债权-查询', 'button', '/admin/creditorRights?creditorRightsType=1', 'rights-sanfang-query', 24, NULL, 1);
INSERT INTO `u_permission_info` VALUES (29, '合同管理', 'menu', NULL, 'contract', 1, 3.0, 1);
INSERT INTO `u_permission_info` VALUES (30, '合同管理', 'menu', '/admin/contract', 'contract-contract', 29, 3.1, 1);
INSERT INTO `u_permission_info` VALUES (31, '合同管理-添加', 'button', NULL, 'contract-contract-add', 30, NULL, 1);
INSERT INTO `u_permission_info` VALUES (32, '合同管理-删除', 'button', NULL, 'contract-contract-delete', 30, NULL, 1);
INSERT INTO `u_permission_info` VALUES (33, '合同管理-修改', 'button', '/admin/updateContract', 'contract-contract-update', 30, NULL, 1);
INSERT INTO `u_permission_info` VALUES (34, '合同管理-查询', 'button', '/admin/contract', 'contract-contract-query', 30, NULL, 1);
INSERT INTO `u_permission_info` VALUES (35, '账户管理', 'menu', NULL, 'account', 1, 4.0, 1);
INSERT INTO `u_permission_info` VALUES (36, '账户管理', 'menu', '/admin/users', 'account-account', 35, 4.1, 1);
INSERT INTO `u_permission_info` VALUES (37, '账户管理-添加', 'button', '/admin/toAddUser', 'account-account-add', 36, NULL, 1);
INSERT INTO `u_permission_info` VALUES (38, '账户管理-删除', 'button', '/admin/toAddUser', 'account-account-delete', 36, NULL, 1);
INSERT INTO `u_permission_info` VALUES (39, '账户管理-修改', 'button', '/admin/toEditUser', 'account-account-update', 36, NULL, 1);
INSERT INTO `u_permission_info` VALUES (40, '账户管理-查询', 'button', '/admin/users', 'account-account-query', 36, NULL, 1);
INSERT INTO `u_permission_info` VALUES (41, '轮播图管理', 'menu', NULL, 'slideshow', 1, 5.0, 1);
INSERT INTO `u_permission_info` VALUES (42, '轮播图管理', 'menu', '/admin/slideShow', 'slideshow-slideshow', 41, 5.1, 1);
INSERT INTO `u_permission_info` VALUES (43, '轮播图管理-添加', 'button', '/admin/toAddSlideShow', 'slideshow-slideshow-add', 42, NULL, 1);
INSERT INTO `u_permission_info` VALUES (44, '轮播图管理-删除', 'button', '/admin/deleteSlideShow', 'slideshow-slideshow-delete', 42, NULL, 1);
INSERT INTO `u_permission_info` VALUES (45, '轮播图管理-修改', 'button', '/admin/toUpdateSlideShow', 'slideshow-slideshow-update', 42, NULL, 1);
INSERT INTO `u_permission_info` VALUES (46, '轮播图管理-查询', 'button', '/admin/slideShow', 'slideshow-slideshow-query', 42, NULL, 1);
-- ----------------------------
-- Table structure for u_role_info
-- ----------------------------
DROP TABLE IF EXISTS `u_role_info`;
CREATE TABLE `u_role_info` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`name` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '角色名称',
`available` int(1) NULL DEFAULT NULL COMMENT '是否可用,1:可用,0不可用',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of u_role_info
-- ----------------------------
INSERT INTO `u_role_info` VALUES (1, '系统管理员', 1);
INSERT INTO `u_role_info` VALUES (2, '债权运营人员', 1);
INSERT INTO `u_role_info` VALUES (3, '市场运营人员', 1);
-- ----------------------------
-- Table structure for u_role_permission
-- ----------------------------
DROP TABLE IF EXISTS `u_role_permission`;
CREATE TABLE `u_role_permission` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`role_id` int(11) NOT NULL COMMENT '角色ID',
`permission_id` int(11) NOT NULL COMMENT '权限ID',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 88 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of u_role_permission
-- ----------------------------
INSERT INTO `u_role_permission` VALUES (1, 1, 1);
INSERT INTO `u_role_permission` VALUES (2, 1, 2);
INSERT INTO `u_role_permission` VALUES (3, 1, 3);
INSERT INTO `u_role_permission` VALUES (4, 1, 4);
INSERT INTO `u_role_permission` VALUES (5, 1, 5);
INSERT INTO `u_role_permission` VALUES (6, 1, 6);
INSERT INTO `u_role_permission` VALUES (7, 1, 7);
INSERT INTO `u_role_permission` VALUES (8, 1, 8);
INSERT INTO `u_role_permission` VALUES (9, 1, 9);
INSERT INTO `u_role_permission` VALUES (10, 1, 10);
INSERT INTO `u_role_permission` VALUES (11, 1, 11);
INSERT INTO `u_role_permission` VALUES (12, 1, 12);
INSERT INTO `u_role_permission` VALUES (13, 1, 13);
INSERT INTO `u_role_permission` VALUES (14, 1, 14);
INSERT INTO `u_role_permission` VALUES (15, 1, 15);
INSERT INTO `u_role_permission` VALUES (16, 1, 16);
INSERT INTO `u_role_permission` VALUES (17, 1, 17);
INSERT INTO `u_role_permission` VALUES (18, 1, 18);
INSERT INTO `u_role_permission` VALUES (19, 1, 19);
INSERT INTO `u_role_permission` VALUES (20, 1, 20);
INSERT INTO `u_role_permission` VALUES (21, 1, 21);
INSERT INTO `u_role_permission` VALUES (22, 1, 22);
INSERT INTO `u_role_permission` VALUES (23, 1, 23);
INSERT INTO `u_role_permission` VALUES (24, 1, 24);
INSERT INTO `u_role_permission` VALUES (25, 1, 25);
INSERT INTO `u_role_permission` VALUES (26, 1, 26);
INSERT INTO `u_role_permission` VALUES (27, 1, 27);
INSERT INTO `u_role_permission` VALUES (28, 1, 28);
INSERT INTO `u_role_permission` VALUES (29, 1, 29);
INSERT INTO `u_role_permission` VALUES (30, 1, 30);
INSERT INTO `u_role_permission` VALUES (31, 1, 31);
INSERT INTO `u_role_permission` VALUES (32, 1, 32);
INSERT INTO `u_role_permission` VALUES (33, 1, 33);
INSERT INTO `u_role_permission` VALUES (34, 1, 34);
INSERT INTO `u_role_permission` VALUES (35, 1, 35);
INSERT INTO `u_role_permission` VALUES (36, 1, 36);
INSERT INTO `u_role_permission` VALUES (37, 1, 37);
INSERT INTO `u_role_permission` VALUES (38, 1, 38);
INSERT INTO `u_role_permission` VALUES (39, 1, 39);
INSERT INTO `u_role_permission` VALUES (40, 1, 40);
INSERT INTO `u_role_permission` VALUES (41, 1, 41);
INSERT INTO `u_role_permission` VALUES (42, 1, 42);
INSERT INTO `u_role_permission` VALUES (43, 1, 43);
INSERT INTO `u_role_permission` VALUES (44, 1, 44);
INSERT INTO `u_role_permission` VALUES (45, 1, 45);
INSERT INTO `u_role_permission` VALUES (46, 1, 46);
INSERT INTO `u_role_permission` VALUES (47, 2, 1);
INSERT INTO `u_role_permission` VALUES (48, 2, 2);
INSERT INTO `u_role_permission` VALUES (49, 2, 3);
INSERT INTO `u_role_permission` VALUES (50, 2, 44);
INSERT INTO `u_role_permission` VALUES (51, 2, 5);
INSERT INTO `u_role_permission` VALUES (52, 2, 6);
INSERT INTO `u_role_permission` VALUES (53, 2, 7);
INSERT INTO `u_role_permission` VALUES (54, 2, 8);
INSERT INTO `u_role_permission` VALUES (55, 2, 9);
INSERT INTO `u_role_permission` VALUES (56, 2, 10);
INSERT INTO `u_role_permission` VALUES (57, 2, 11);
INSERT INTO `u_role_permission` VALUES (58, 2, 12);
INSERT INTO `u_role_permission` VALUES (59, 2, 13);
INSERT INTO `u_role_permission` VALUES (60, 2, 14);
INSERT INTO `u_role_permission` VALUES (61, 2, 15);
INSERT INTO `u_role_permission` VALUES (62, 2, 16);
INSERT INTO `u_role_permission` VALUES (63, 2, 17);
INSERT INTO `u_role_permission` VALUES (64, 2, 18);
INSERT INTO `u_role_permission` VALUES (65, 2, 19);
INSERT INTO `u_role_permission` VALUES (66, 2, 20);
INSERT INTO `u_role_permission` VALUES (67, 2, 21);
INSERT INTO `u_role_permission` VALUES (68, 2, 22);
INSERT INTO `u_role_permission` VALUES (69, 2, 23);
INSERT INTO `u_role_permission` VALUES (70, 2, 24);
INSERT INTO `u_role_permission` VALUES (71, 2, 25);
INSERT INTO `u_role_permission` VALUES (72, 2, 26);
INSERT INTO `u_role_permission` VALUES (73, 2, 27);
INSERT INTO `u_role_permission` VALUES (74, 2, 28);
INSERT INTO `u_role_permission` VALUES (75, 2, 29);
INSERT INTO `u_role_permission` VALUES (76, 2, 30);
INSERT INTO `u_role_permission` VALUES (77, 2, 31);
INSERT INTO `u_role_permission` VALUES (78, 2, 32);
INSERT INTO `u_role_permission` VALUES (79, 2, 33);
INSERT INTO `u_role_permission` VALUES (80, 2, 34);
INSERT INTO `u_role_permission` VALUES (82, 3, 41);
INSERT INTO `u_role_permission` VALUES (83, 3, 42);
INSERT INTO `u_role_permission` VALUES (84, 3, 43);
INSERT INTO `u_role_permission` VALUES (85, 3, 44);
INSERT INTO `u_role_permission` VALUES (86, 3, 45);
INSERT INTO `u_role_permission` VALUES (87, 3, 46);
-- ----------------------------
-- Table structure for u_user_info
-- ----------------------------
DROP TABLE IF EXISTS `u_user_info`;
CREATE TABLE `u_user_info` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`username` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '登录用户名',
`password` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '登录密码',
`create_date` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`login_count` int(11) NULL DEFAULT NULL COMMENT '登录次数',
`last_login_time` datetime(0) NULL DEFAULT NULL COMMENT '最近登录时间',
`staff_id` int(11) NOT NULL COMMENT '员工ID',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 153 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of u_user_info
-- ----------------------------
INSERT INTO `u_user_info` VALUES (1, 'admin', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-04 16:24:23', 1);
INSERT INTO `u_user_info` VALUES (2, 'zhaiquan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:53:51', 2);
INSERT INTO `u_user_info` VALUES (3, 'shichang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:23', 3);
INSERT INTO `u_user_info` VALUES (4, 'lisi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:23', 4);
INSERT INTO `u_user_info` VALUES (5, 'wangwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:23', 5);
INSERT INTO `u_user_info` VALUES (6, 'mazi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:23', 6);
INSERT INTO `u_user_info` VALUES (7, 'xiexian', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:23', 7);
INSERT INTO `u_user_info` VALUES (8, 'xitingfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:23', 8);
INSERT INTO `u_user_info` VALUES (9, 'zhangsanfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:23', 9);
INSERT INTO `u_user_info` VALUES (10, 'guojing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 10);
INSERT INTO `u_user_info` VALUES (11, 'wuwei', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 11);
INSERT INTO `u_user_info` VALUES (12, 'xiena', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 12);
INSERT INTO `u_user_info` VALUES (13, 'limingbo', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 13);
INSERT INTO `u_user_info` VALUES (14, 'liyuanchang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 14);
INSERT INTO `u_user_info` VALUES (15, 'yangfang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 15);
INSERT INTO `u_user_info` VALUES (16, 'yangyang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 16);
INSERT INTO `u_user_info` VALUES (17, 'liwuwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 17);
INSERT INTO `u_user_info` VALUES (18, 'zhangqingkai', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 18);
INSERT INTO `u_user_info` VALUES (19, 'xiebaowen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 19);
INSERT INTO `u_user_info` VALUES (20, 'lijiashi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 20);
INSERT INTO `u_user_info` VALUES (21, 'laiwanquan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 21);
INSERT INTO `u_user_info` VALUES (22, 'zhangdejiang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 22);
INSERT INTO `u_user_info` VALUES (23, 'xiebaochuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 23);
INSERT INTO `u_user_info` VALUES (24, 'liwangqing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 24);
INSERT INTO `u_user_info` VALUES (25, 'gongqingwen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 25);
INSERT INTO `u_user_info` VALUES (26, 'shizhenchuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 26);
INSERT INTO `u_user_info` VALUES (27, 'yangxianghua', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 19:57:24', 27);
INSERT INTO `u_user_info` VALUES (28, 'zhangsan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 28);
INSERT INTO `u_user_info` VALUES (29, 'lisi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 29);
INSERT INTO `u_user_info` VALUES (30, 'wangwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 30);
INSERT INTO `u_user_info` VALUES (31, 'mazi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 31);
INSERT INTO `u_user_info` VALUES (32, 'xiexian', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 32);
INSERT INTO `u_user_info` VALUES (33, 'xitingfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 33);
INSERT INTO `u_user_info` VALUES (34, 'zhangsanfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 34);
INSERT INTO `u_user_info` VALUES (35, 'guojing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 35);
INSERT INTO `u_user_info` VALUES (36, 'wuwei', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 36);
INSERT INTO `u_user_info` VALUES (37, 'xiena', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 37);
INSERT INTO `u_user_info` VALUES (38, 'limingbo', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 38);
INSERT INTO `u_user_info` VALUES (39, 'liyuanchang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 39);
INSERT INTO `u_user_info` VALUES (40, 'yangfang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 40);
INSERT INTO `u_user_info` VALUES (41, 'yangyang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 41);
INSERT INTO `u_user_info` VALUES (42, 'liwuwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 42);
INSERT INTO `u_user_info` VALUES (43, 'zhangqingkai', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 43);
INSERT INTO `u_user_info` VALUES (44, 'xiebaowen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 44);
INSERT INTO `u_user_info` VALUES (45, 'lijiashi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 45);
INSERT INTO `u_user_info` VALUES (46, 'laiwanquan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 46);
INSERT INTO `u_user_info` VALUES (47, 'zhangdejiang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 47);
INSERT INTO `u_user_info` VALUES (48, 'xiebaochuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 48);
INSERT INTO `u_user_info` VALUES (49, 'liwangqing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 49);
INSERT INTO `u_user_info` VALUES (50, 'gongqingwen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 50);
INSERT INTO `u_user_info` VALUES (51, 'shizhenchuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 51);
INSERT INTO `u_user_info` VALUES (52, 'yangxianghua', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 52);
INSERT INTO `u_user_info` VALUES (53, 'zhangsan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 53);
INSERT INTO `u_user_info` VALUES (54, 'lisi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 54);
INSERT INTO `u_user_info` VALUES (55, 'wangwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 55);
INSERT INTO `u_user_info` VALUES (56, 'mazi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 56);
INSERT INTO `u_user_info` VALUES (57, 'xiexian', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 57);
INSERT INTO `u_user_info` VALUES (58, 'xitingfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 58);
INSERT INTO `u_user_info` VALUES (59, 'zhangsanfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 59);
INSERT INTO `u_user_info` VALUES (60, 'guojing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 60);
INSERT INTO `u_user_info` VALUES (61, 'wuwei', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 61);
INSERT INTO `u_user_info` VALUES (62, 'xiena', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 62);
INSERT INTO `u_user_info` VALUES (63, 'limingbo', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 63);
INSERT INTO `u_user_info` VALUES (64, 'liyuanchang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 64);
INSERT INTO `u_user_info` VALUES (65, 'yangfang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 65);
INSERT INTO `u_user_info` VALUES (66, 'yangyang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 66);
INSERT INTO `u_user_info` VALUES (67, 'liwuwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 67);
INSERT INTO `u_user_info` VALUES (68, 'zhangqingkai', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 68);
INSERT INTO `u_user_info` VALUES (69, 'xiebaowen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 69);
INSERT INTO `u_user_info` VALUES (70, 'lijiashi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 70);
INSERT INTO `u_user_info` VALUES (71, 'laiwanquan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 71);
INSERT INTO `u_user_info` VALUES (72, 'zhangdejiang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 72);
INSERT INTO `u_user_info` VALUES (73, 'xiebaochuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 73);
INSERT INTO `u_user_info` VALUES (74, 'liwangqing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 74);
INSERT INTO `u_user_info` VALUES (75, 'gongqingwen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 75);
INSERT INTO `u_user_info` VALUES (76, 'shizhenchuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 75);
INSERT INTO `u_user_info` VALUES (77, 'yangxianghua', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 77);
INSERT INTO `u_user_info` VALUES (78, 'zhangsan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 78);
INSERT INTO `u_user_info` VALUES (79, 'lisi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 79);
INSERT INTO `u_user_info` VALUES (80, 'wangwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 80);
INSERT INTO `u_user_info` VALUES (81, 'mazi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 81);
INSERT INTO `u_user_info` VALUES (82, 'xiexian', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 82);
INSERT INTO `u_user_info` VALUES (83, 'xitingfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 83);
INSERT INTO `u_user_info` VALUES (84, 'zhangsanfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 84);
INSERT INTO `u_user_info` VALUES (85, 'guojing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 85);
INSERT INTO `u_user_info` VALUES (86, 'wuwei', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 86);
INSERT INTO `u_user_info` VALUES (87, 'xiena', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 87);
INSERT INTO `u_user_info` VALUES (88, 'limingbo', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 88);
INSERT INTO `u_user_info` VALUES (89, 'liyuanchang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 89);
INSERT INTO `u_user_info` VALUES (90, 'yangfang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 90);
INSERT INTO `u_user_info` VALUES (91, 'yangyang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 91);
INSERT INTO `u_user_info` VALUES (92, 'liwuwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 92);
INSERT INTO `u_user_info` VALUES (93, 'zhangqingkai', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 93);
INSERT INTO `u_user_info` VALUES (94, 'xiebaowen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 94);
INSERT INTO `u_user_info` VALUES (95, 'lijiashi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 95);
INSERT INTO `u_user_info` VALUES (96, 'laiwanquan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 96);
INSERT INTO `u_user_info` VALUES (97, 'zhangdejiang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 97);
INSERT INTO `u_user_info` VALUES (98, 'xiebaochuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 98);
INSERT INTO `u_user_info` VALUES (99, 'liwangqing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 99);
INSERT INTO `u_user_info` VALUES (100, 'gongqingwen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 100);
INSERT INTO `u_user_info` VALUES (101, 'shizhenchuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 101);
INSERT INTO `u_user_info` VALUES (102, 'yangxianghua', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 102);
INSERT INTO `u_user_info` VALUES (103, 'zhangsan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 103);
INSERT INTO `u_user_info` VALUES (104, 'lisi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 104);
INSERT INTO `u_user_info` VALUES (105, 'wangwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 105);
INSERT INTO `u_user_info` VALUES (106, 'mazi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 106);
INSERT INTO `u_user_info` VALUES (107, 'xiexian', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 107);
INSERT INTO `u_user_info` VALUES (108, 'xitingfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 108);
INSERT INTO `u_user_info` VALUES (109, 'zhangsanfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 109);
INSERT INTO `u_user_info` VALUES (110, 'guojing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 110);
INSERT INTO `u_user_info` VALUES (111, 'wuwei', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 111);
INSERT INTO `u_user_info` VALUES (112, 'xiena', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 112);
INSERT INTO `u_user_info` VALUES (113, 'limingbo', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 113);
INSERT INTO `u_user_info` VALUES (114, 'liyuanchang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 114);
INSERT INTO `u_user_info` VALUES (115, 'yangfang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 115);
INSERT INTO `u_user_info` VALUES (116, 'yangyang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 116);
INSERT INTO `u_user_info` VALUES (117, 'liwuwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 117);
INSERT INTO `u_user_info` VALUES (118, 'zhangqingkai', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 118);
INSERT INTO `u_user_info` VALUES (119, 'xiebaowen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 119);
INSERT INTO `u_user_info` VALUES (120, 'lijiashi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 120);
INSERT INTO `u_user_info` VALUES (121, 'laiwanquan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 121);
INSERT INTO `u_user_info` VALUES (122, 'zhangdejiang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 122);
INSERT INTO `u_user_info` VALUES (123, 'xiebaochuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 123);
INSERT INTO `u_user_info` VALUES (124, 'liwangqing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 124);
INSERT INTO `u_user_info` VALUES (125, 'gongqingwen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 125);
INSERT INTO `u_user_info` VALUES (126, 'shizhenchuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 126);
INSERT INTO `u_user_info` VALUES (127, 'yangxianghua', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 127);
INSERT INTO `u_user_info` VALUES (128, 'zhangsan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 128);
INSERT INTO `u_user_info` VALUES (129, 'lisi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 129);
INSERT INTO `u_user_info` VALUES (130, 'wangwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 130);
INSERT INTO `u_user_info` VALUES (131, 'mazi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 131);
INSERT INTO `u_user_info` VALUES (132, 'xiexian', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 132);
INSERT INTO `u_user_info` VALUES (133, 'xitingfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 133);
INSERT INTO `u_user_info` VALUES (134, 'zhangsanfeng', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 134);
INSERT INTO `u_user_info` VALUES (135, 'guojing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 135);
INSERT INTO `u_user_info` VALUES (136, 'wuwei', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 136);
INSERT INTO `u_user_info` VALUES (137, 'xiena', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 137);
INSERT INTO `u_user_info` VALUES (138, 'limingbo', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 138);
INSERT INTO `u_user_info` VALUES (139, 'liyuanchang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 139);
INSERT INTO `u_user_info` VALUES (140, 'yangfang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 140);
INSERT INTO `u_user_info` VALUES (141, 'yangyang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 141);
INSERT INTO `u_user_info` VALUES (142, 'liwuwu', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 142);
INSERT INTO `u_user_info` VALUES (143, 'zhangqingkai', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 143);
INSERT INTO `u_user_info` VALUES (144, 'xiebaowen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 144);
INSERT INTO `u_user_info` VALUES (145, 'lijiashi', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 145);
INSERT INTO `u_user_info` VALUES (146, 'laiwanquan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 146);
INSERT INTO `u_user_info` VALUES (147, 'zhangdejiang', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 147);
INSERT INTO `u_user_info` VALUES (148, 'xiebaochuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 148);
INSERT INTO `u_user_info` VALUES (149, 'liwangqing', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 149);
INSERT INTO `u_user_info` VALUES (150, 'gongqingwen', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 150);
INSERT INTO `u_user_info` VALUES (151, 'shizhenchuan', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 151);
INSERT INTO `u_user_info` VALUES (152, 'yangxianghua', 'e10adc3949ba59abbe56e057f20f883e', NULL, NULL, '2017-10-22 20:53:17', 152);
-- ----------------------------
-- Table structure for u_user_role
-- ----------------------------
DROP TABLE IF EXISTS `u_user_role`;
CREATE TABLE `u_user_role` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`user_id` int(11) NOT NULL COMMENT '用户ID',
`role_id` int(11) NOT NULL COMMENT '角色ID',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of u_user_role
-- ----------------------------
INSERT INTO `u_user_role` VALUES (1, 1, 1);
INSERT INTO `u_user_role` VALUES (2, 2, 2);
INSERT INTO `u_user_role` VALUES (3, 3, 3);
SET FOREIGN_KEY_CHECKS = 1;
XML sql映射文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.bjpowernode.p2padmin.user.mapper.PermissionInfoMapper" >
<resultMap id="BaseResultMap" type="com.bjpowernode.p2padmin.user.model.PermissionInfo" >
<id column="id" property="id" jdbcType="INTEGER" />
<result column="name" property="name" jdbcType="VARCHAR" />
<result column="type" property="type" jdbcType="VARCHAR" />
<result column="url" property="url" jdbcType="VARCHAR" />
<result column="code" property="code" jdbcType="VARCHAR" />
<result column="parent_id" property="parentId" jdbcType="INTEGER" />
<result column="sort" property="sort" jdbcType="DOUBLE" />
<result column="available" property="available" jdbcType="INTEGER" />
</resultMap>
<sql id="Base_Column_List" >
id, name, type, url, code, parent_id, sort, available
</sql>
<!-- ============================================= -->
<resultMap id="MenuResultMap" type="com.bjpowernode.p2padmin.user.model.PermissionInfo" >
<id column="id" property="id" jdbcType="INTEGER" />
<result column="name" property="name" jdbcType="VARCHAR" />
<result column="type" property="type" jdbcType="VARCHAR" />
<result column="url" property="url" jdbcType="VARCHAR" />
<result column="code" property="code" jdbcType="VARCHAR" />
<result column="parent_id" property="parentId" jdbcType="INTEGER" />
<result column="sort" property="sort" jdbcType="DOUBLE" />
<result column="available" property="available" jdbcType="INTEGER" />
<result column="icon" property="icon" jdbcType="VARCHAR" />
<collection property="permissionInfoList"
ofType="com.bjpowernode.p2padmin.user.model.PermissionInfo"
select="selectMenuPermissionByUserId"
column="{parentId=id,userId=userId}"/>
</resultMap>
<select id="selectMenuPermissionByUserId" resultMap="MenuResultMap">
select pi.*,ur.user_id userId from
u_permission_info pi
left join
u_role_permission rp
on
pi.id=rp.permission_id
left join
u_user_role ur
on
rp.role_id=ur.role_id
where
pi.type='menu' and ur.user_id=#{userId} and pi.parent_id=#{parentId}
</select>
<!-- ============================================= -->
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
select
<include refid="Base_Column_List" />
from u_permission_info
where id = #{id,jdbcType=INTEGER}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer" >
delete from u_permission_info
where id = #{id,jdbcType=INTEGER}
</delete>
<insert id="insert" parameterType="com.bjpowernode.p2padmin.user.model.PermissionInfo" >
insert into u_permission_info (id, name, type,
url, code, parent_id,
sort, available)
values (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR},
#{url,jdbcType=VARCHAR}, #{code,jdbcType=VARCHAR}, #{parentId,jdbcType=INTEGER},
#{sort,jdbcType=DOUBLE}, #{available,jdbcType=INTEGER})
</insert>
<insert id="insertSelective" parameterType="com.bjpowernode.p2padmin.user.model.PermissionInfo" >
insert into u_permission_info
<trim prefix="(" suffix=")" suffixOverrides="," >
<if test="id != null" >
id,
</if>
<if test="name != null" >
name,
</if>
<if test="type != null" >
type,
</if>
<if test="url != null" >
url,
</if>
<if test="code != null" >
code,
</if>
<if test="parentId != null" >
parent_id,
</if>
<if test="sort != null" >
sort,
</if>
<if test="available != null" >
available,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides="," >
<if test="id != null" >
#{id,jdbcType=INTEGER},
</if>
<if test="name != null" >
#{name,jdbcType=VARCHAR},
</if>
<if test="type != null" >
#{type,jdbcType=VARCHAR},
</if>
<if test="url != null" >
#{url,jdbcType=VARCHAR},
</if>
<if test="code != null" >
#{code,jdbcType=VARCHAR},
</if>
<if test="parentId != null" >
#{parentId,jdbcType=INTEGER},
</if>
<if test="sort != null" >
#{sort,jdbcType=DOUBLE},
</if>
<if test="available != null" >
#{available,jdbcType=INTEGER},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.bjpowernode.p2padmin.user.model.PermissionInfo" >
update u_permission_info
<set >
<if test="name != null" >
name = #{name,jdbcType=VARCHAR},
</if>
<if test="type != null" >
type = #{type,jdbcType=VARCHAR},
</if>
<if test="url != null" >
url = #{url,jdbcType=VARCHAR},
</if>
<if test="code != null" >
code = #{code,jdbcType=VARCHAR},
</if>
<if test="parentId != null" >
parent_id = #{parentId,jdbcType=INTEGER},
</if>
<if test="sort != null" >
sort = #{sort,jdbcType=DOUBLE},
</if>
<if test="available != null" >
available = #{available,jdbcType=INTEGER},
</if>
</set>
where id = #{id,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.bjpowernode.p2padmin.user.model.PermissionInfo" >
update u_permission_info
set name = #{name,jdbcType=VARCHAR},
type = #{type,jdbcType=VARCHAR},
url = #{url,jdbcType=VARCHAR},
code = #{code,jdbcType=VARCHAR},
parent_id = #{parentId,jdbcType=INTEGER},
sort = #{sort,jdbcType=DOUBLE},
available = #{available,jdbcType=INTEGER}
where id = #{id,jdbcType=INTEGER}
</update>
</mapper>
业务类
package com.bjpowernode.p2padmin.user.service.impl;
import com.bjpowernode.p2padmin.user.mapper.PermissionInfoMapper;
import com.bjpowernode.p2padmin.user.mapper.RoleInfoMapper;
import com.bjpowernode.p2padmin.user.mapper.UserInfoMapper;
import com.bjpowernode.p2padmin.user.model.PermissionInfo;
import com.bjpowernode.p2padmin.user.model.RoleInfo;
import com.bjpowernode.p2padmin.user.model.UserInfo;
import com.bjpowernode.p2padmin.user.service.UserService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
/**
* ClassName:UserServiceImpl
* Package:com.bjpowernode.p2padmin.user.service.impl
* Description:
*
* @date:2018/10/27 9:54
* @author:bjpowernode.com
*/
@Service("userService")
public class UserServiceImpl implements UserService {
@Autowired
private UserInfoMapper userInfoMapper;
@Autowired
private PermissionInfoMapper permissionInfoMapper;
@Autowired
private RoleInfoMapper roleInfoMapper;
@Override
public Integer login(UserInfo userInfo) {
UserInfo tempUser = userInfoMapper.selectUserByUsername(userInfo.getUsername());
if(tempUser==null){
return 1;
}
if(!tempUser.getPassword().equals(userInfo.getPassword())){
return 2;
}
BeanUtils.copyProperties(tempUser,userInfo);
userInfo.setLastLoginTime(new Date());
userInfo.setLoginCount(userInfo.getLoginCount()==null?1:userInfo.getLoginCount()+1);
userInfoMapper.updateByPrimaryKey(userInfo);
//获取当前用户id下所有的菜单权限
List<PermissionInfo>menuList= permissionInfoMapper.selectMenuPermissionByUserId(userInfo.getId(),1);
userInfo.setMenuList(menuList);
List<String>urlPermissionList= permissionInfoMapper.selectUrlPermissionByUserId(userInfo.getId());
Map userUrlPermissionMap= new HashMap();
for(String str:urlPermissionList){//将用户所对应的url权限存入Map集合使用url为key任意非null的值作为value即可
userUrlPermissionMap.put(str,"");
}
userInfo.setUrlMap(userUrlPermissionMap);
return 0;
}
@Override
public List<UserInfo> getUserAll() {
List<UserInfo> list=userInfoMapper.selectUserInfoAll();
return list;
}
@Override
public List<Map> intiRoleDataByUserId(Integer userId) {
List<RoleInfo> roleInfoList= roleInfoMapper.selectAll();
List<Integer> userRoleIds= userInfoMapper.selectUserRoleByUserId(userId);
List<Map> list=new ArrayList<Map>();
for(RoleInfo roleInfo:roleInfoList){
Map map=new HashMap();
map.put("roleId",roleInfo.getId());
map.put("roleName",roleInfo.getName());
if(userRoleIds.indexOf(roleInfo.getId())>=0){
map.put("selected",true);
}
list.add(map);
}
return list;
}
@Override
public void disRole(Integer userId, Integer[] roleIds) {
userInfoMapper.deleteUserRoleByUserId(userId);
if(roleIds!=null){
for(Integer roleId:roleIds){
userInfoMapper.insertUserRole(userId,roleId);
}
}
}
}