def add_role(): name = request.form.get('name') description = request.form.get('description') role = Role(name, description) role.save() return redirect("/roles")
def delete(self): rid = int(self.get_argument('id')) role = Role.mgr(ismaster=1).Q().filter(id=rid)[0] role.delete() for i in RolePerm.mgr(ismaster=1).Q().filter(role_id=rid): i.delete() self.json2dwz('200','forward','ulist',forwardUrl='role/list')
def merge_role_attr_sql(): ''' insert into `logstatv3`.`role_perm`(`id`,`role_id`,`perm_id`,`uptime`) values ( NULL,'204','523',CURRENT_TIMESTAMP) insert into `logstatv3`.`role_perm`(`id`,`role_id`,`perm_id`,`uptime`) values ( NULL,'204','524',CURRENT_TIMESTAMP) ''' ext = "id NOT IN (SELECT DISTINCT role_id FROM role_perm) AND uptime >='2013-12-01'" roles = Role.mgr().Q().extra(ext) print len(roles) if roles: for i in roles: perm_name1 = "查看-厂商结算-厂商收入-" + i['name'].split('acc')[0] perm_name2 = "查看-厂商结算-机型日报-" + i['name'].split('acc')[0] #print perm_name1 #print perm_name2 perm_id1 = Perm.mgr().Q().filter(name=perm_name1) perm_id2 = Perm.mgr().Q().filter(name=perm_name2) if not perm_id1: print i print perm_name1 if not perm_id2: print i print perm_name2 #print i['id'] #print perm_id1[0]['id'] #print perm_id2[0]['id'] sql1 = "insert into `logstatv3`.`role_perm`(`id`,`role_id`,`perm_id`,`uptime`) values ( NULL,'%s','%s',CURRENT_TIMESTAMP);" % ( i['id'], perm_id1[0]['id']) sql2 = "insert into `logstatv3`.`role_perm`(`id`,`role_id`,`perm_id`,`uptime`) values ( NULL,'%s','%s',CURRENT_TIMESTAMP);" % ( i['id'], perm_id2[0]['id']) print sql1 print sql2
def merge_role_attr_sql(): ''' insert into `logstatv3`.`role_perm`(`id`,`role_id`,`perm_id`,`uptime`) values ( NULL,'204','523',CURRENT_TIMESTAMP) insert into `logstatv3`.`role_perm`(`id`,`role_id`,`perm_id`,`uptime`) values ( NULL,'204','524',CURRENT_TIMESTAMP) ''' ext = "id NOT IN (SELECT DISTINCT role_id FROM role_perm) AND uptime >='2013-12-01'" roles = Role.mgr().Q().extra(ext) print len(roles) if roles: for i in roles: perm_name1 = "查看-厂商结算-厂商收入-"+i['name'].split('acc')[0] perm_name2 = "查看-厂商结算-机型日报-"+i['name'].split('acc')[0] #print perm_name1 #print perm_name2 perm_id1 = Perm.mgr().Q().filter(name=perm_name1) perm_id2 = Perm.mgr().Q().filter(name=perm_name2) if not perm_id1: print i print perm_name1 if not perm_id2: print i print perm_name2 #print i['id'] #print perm_id1[0]['id'] #print perm_id2[0]['id'] sql1 = "insert into `logstatv3`.`role_perm`(`id`,`role_id`,`perm_id`,`uptime`) values ( NULL,'%s','%s',CURRENT_TIMESTAMP);"%(i['id'],perm_id1[0]['id']) sql2 = "insert into `logstatv3`.`role_perm`(`id`,`role_id`,`perm_id`,`uptime`) values ( NULL,'%s','%s',CURRENT_TIMESTAMP);"%(i['id'],perm_id2[0]['id']) print sql1 print sql2
def edit(self): rid = int(self.get_argument('id')) role = Role.mgr(ismaster=1).Q().filter(id=rid)[0] cur_perms = [i.perm_id for i in RolePerm.mgr().Q().filter(role_id=rid)] all_perms = Perm.mgr().Q().data() self.render('user/role_edit.html', role=role, cur_perms=cur_perms, all_perms= all_perms)
def list(self): id = int(self.get_argument('id',0)) name = self.get_argument('name','') page = int(self.get_argument('pageNum',1)) psize = int(self.get_argument('numPerPage',20)) count = Role.mgr().Q().count() page_count = (count+psize-1)/psize q = Role.mgr().Q() id and q.filter(id=id) name and q.extra("name LIKE '%%%s%%'"%name) roles = q[(page-1)*psize:page*psize] self.render('user/role_list.html', name = name, page = page, psize = psize, count = count, page_count = page_count, roles = roles)
def edit(self): uid = int(self.get_argument('id')) user = User.mgr(ismaster=1).Q().filter(id=uid)[0] orgs = Orgnization.mgr().Q() cur_roles = [i.role_id for i in UserRole.mgr().Q().filter(uid=uid)] all_roles = Role.mgr().Q().data() self.render('user/user_edit.html', orgs = orgs, cur_roles = cur_roles, all_roles = all_roles, user=user)
def edit(self): uid = int(self.get_argument('id')) user = User.mgr(ismaster=1).Q().filter(id=uid)[0] orgs = Orgnization.mgr().Q() cur_roles = [i.role_id for i in UserRole.mgr().Q().filter(uid=uid)] all_roles = Role.mgr().Q().data() self.render('user/user_edit.html', orgs=orgs, cur_roles=cur_roles, all_roles=all_roles, user=user)
def merge_user_role_sql(): ext = "id NOT IN (SELECT DISTINCT uid FROM user_role)" users = User.mgr().Q().extra(ext) print len(users) if users: for i in users: role_name = i['name'].split('_')[0]+"acc数据查看" role_id = Role.mgr().Q().filter(name=role_name) if role_id: sql = "insert into `logstatv3`.`user_role`(`id`,`uid`,`role_id`,`uptime`) values ( NULL,'%s','%s',CURRENT_TIMESTAMP);"%(i['id'],role_id[0]['id']) print sql else: print "not merge",role_name
def save(self): id = int(self.get_argument('id',0)) name = self.get_argument('name') perm_ids = [self.get_argument(i,'') for i in self.request.arguments if i.startswith('perm__')] perm_ids = [int(i) for i in perm_ids if i] print 'perm_ids:',perm_ids if id: r = Role.mgr(ismaster=True).Q().filter(id=id)[0] else: r = Role.new() r.name = name r = r.save() id = r.id cur_perms = [i.perm_id for i in RolePerm.mgr().Q().filter(role_id=id)] new_perms = [int(i) for i in perm_ids] for i in [i for i in cur_perms if i not in new_perms]: rp = RolePerm.mgr(ismaster=1).Q().filter(role_id=id,perm_id=i)[0] rp and rp.delete() for i in [i for i in new_perms if i not in cur_perms]: rp = RolePerm.new() rp.role_id,rp.perm_id = id,i rp.save() self.json2dwz('200','closeCurrent','ulist',forwardUrl='role/list')
def merge_user_role_sql(): ext = "id NOT IN (SELECT DISTINCT uid FROM user_role)" users = User.mgr().Q().extra(ext) print len(users) if users: for i in users: role_name = i['name'].split('_')[0] + "acc数据查看" role_id = Role.mgr().Q().filter(name=role_name) if role_id: sql = "insert into `logstatv3`.`user_role`(`id`,`uid`,`role_id`,`uptime`) values ( NULL,'%s','%s',CURRENT_TIMESTAMP);" % ( i['id'], role_id[0]['id']) print sql else: print "not merge", role_name
def add(self): orgs = Orgnization.mgr().Q() all_roles = Role.mgr().Q().data() self.render('user/user_add.html', orgs = orgs, all_roles = all_roles)
def add(self): orgs = Orgnization.mgr().Q() all_roles = Role.mgr().Q().data() self.render('user/user_add.html', orgs=orgs, all_roles=all_roles)