def chg_passwd(message): content = str(message.content).strip() if re.match('修改密码\s.*', content): ''' 修改密码 ''' row = content.split(' ') password = hashlib.new('md5', row[1]).hexdigest() try: user = CmdAdmin.getBy(weixinId=message.source) user.password = password user.update() return '密码修改成功' except Exception as err: return '出现错误', err elif re.match('管理', content): ''' 获取后台管理系统地址 ''' return site.root + '/admin' elif re.match('所有订单|今日订单', content): ''' 管理员获取今日所有订单 ''' try: result = sorted(Order.get_today(), key=lambda order: str(order.canteen)) if len(result) == 0: return '今日没有未处理的订单.' else: msg = [model.print_orders(order) for order in result] return '\n------\n'.join(msg) except Exception as err: return str(err) elif re.match('明日订单', content): ''' 管理员获取明日所有订单 ''' try: result = sorted(Order.get_tomorrow(), key=lambda order: str(order.canteen)) if len(result) == 0: return '明日暂时没有订单.' else: msg = [model.print_orders(order) for order in result] return '\n------\n'.join(msg) except Exception as err: return str(err) elif re.match('订单人数\s.*', content): ''' 获取活动订单数 ''' try: # row = content.split(' ') # password = hashlib.new('md5', row[1]).hexdigest() # username = row[2] if len(row) > 2 else 'admin' # if CmdAdmin.getBy(weixinId = message.source): # return '您已经是管理员了, 不需要重复添加.' # if CmdAdmin.getBy(password = password, role = 0): # CmdAdmin(dict( # username = username, # password = hashlib.new("md5", "1234").hexdigest(), # weixinId = message.source, # role = '3' # )).insert() # return '已添加您为管理员 :)' # return '密码错误' row = content.split(' ') if len(row) < 2: return "请按格式输入:\n 订单人数 活动编号\n如: 订单人数 20151219" result = '订单总数: {order_count}\n'.format(order_count=Prize.getOrderCount(row[1])) for _ in Prize.getOrderCountByType(row[1]): result += '{order_type} : {count}\n'.format(count=_.order_count, order_type=_.order_type) return str(result) except Exception as err: return str(err)