/** * 列表 */ public function index() { $this->template->content = new View("manage/role_list"); //调用分页 $per_page = controller_tool::per_page(); $this->pagination = new Pagination(array('total_items' => Myrole::instance()->count(), 'items_per_page' => $per_page)); //管理员可能查看所有的用户组,其实只能看到对应等级下面的用户组 if ($this->manager_is_admin == 1) { $roles = Myrole::instance()->roles(); } else { $role_id = Mymanager::instance($this->manager_id)->get('role_id'); $roles = Myrole::instance()->childrens($role_id); } foreach ($roles as $k => $v) { //显示图片标识 $roles[$k]['active_img'] = view_tool::get_active_img($v['active']); $roles[$k]['type_name'] = 'merchant'; if ($v['type'] == 1) { $roles[$k]['type_name'] = 'admin'; } //列表中显示上级用户组 $roles[$k]['parent_name'] = '空'; if ($v['parent_id'] > 0) { $role = Myrole::instance($v['parent_id'])->get(); $roles[$k]['parent_name'] = $role['name']; } } $this->template->content->roles = $roles; }
/** * 列表 */ public function index() { //查询条件 $query_struct = array('orderby' => array('id' => 'DESC')); /* 搜索 */ $search_arr = array('title', 'content'); $search_type = $this->input->get('search_type'); $search_value = $this->input->get('search_value'); if (!empty($search_value) && in_array($search_type, $search_arr)) { $query_struct['like'][$search_type] = $search_value; } $where_view['search_value'] = $search_value; //调用分页 $per_page = controller_tool::per_page(); $query_struct['per_page'] = $per_page; $this->pagination = new Pagination(array('total_items' => Mynotice::instance()->count($query_struct), 'items_per_page' => $per_page)); $query_struct['per_page'] = $this->pagination->sql_offset; $notice = Mynotice::instance()->lists($query_struct); foreach ($notice as $k => $v) { $notice[$k]['content_small'] = strip_tags(text::limit_words($v['content'], 30)); $notice[$k]['manager_id'] = Mymanager::instance($v['manager_id'])->get('name'); } //VIEW $this->template->content = new View("manage/notice_list"); $this->template->content->notice = $notice; $this->template->content->where = $where_view; }
/** * site type list */ public function index() { $query_struct = array(); /** * 搜索 */ $search_arr = array('manager_id', 'user_log_type', 'date_begin', 'date_end'); foreach ($this->input->get() as $key => $value) { if (in_array($key, $search_arr)) { if ($key == 'date_begin') { $query_struct['where']["add_time >"] = $value . ' 00:00:00'; } elseif ($key == 'date_end') { $query_struct['where']["add_time <"] = $value . ' 24:00:00'; } elseif (!empty($value)) { $query_struct['where'][$key] = $value; } } } if ($this->manager_is_admin != 1) { //得到子用户的ID列表 $childrens = Mymanager::instance($this->manager_id)->subs(); $children_ids = array(); $children_ids[] = $this->manager_id; foreach ($childrens as $key => $value) { $children_ids[] = $value['id']; } $query_struct['in']['manager_id'] = $children_ids; } //调用分页 $per_page = controller_tool::per_page(); $this->pagination = new Pagination(array('total_items' => Myuser_log::instance()->count($query_struct), 'items_per_page' => $per_page)); $user_logs = Myuser_log::instance()->user_logs($query_struct, array('id' => 'DESC'), $per_page, $this->pagination->sql_offset); $user_log_type = Kohana::config('user_log_type.type'); $user_log_type_status = Kohana::config('user_log_type.status'); $managers = Mymanager::instance()->subs($this->manager_id); $managers[] = Mymanager::instance($this->manager_id)->get(); foreach ($user_logs as $key => $value) { $user_logs[$key]['type_name'] = $user_log_type[$value['user_log_type']]; $user_logs[$key]['status_name'] = $user_log_type_status[$value['user_log_type']][$value['status']]; foreach ($value as $k => $v) { if (!is_numeric($v) && empty($v)) { $user_logs[$key][$k] = '无'; } } } $this->template->content = new View("manage/user_log_list"); $this->template->content->user_logs = $user_logs; $this->template->content->user_log_type = $user_log_type; $this->template->content->today = date("Y-m-d", time()); $this->template->content->yesterday = date("Y-m-d", time() - 24 * 3600); $this->template->content->managers = $managers; }
/** * 得到留言的信息状态以及留言者的信息,回复信息以及回复者的信息 * * @param Array $query_struct * @return Array */ public function get_message_reply_by_site_manage_role($query_struct = array()) { $list = array(); $results = self::messages($query_struct); if (!empty($results)) { foreach ($results as $result) { $request_struct = array('where' => array('message_id' => $result['id'])); if (!empty($result['is_reply'])) { $replies = Message_replyService::get_instance()->index($request_struct); foreach ($replies as $key => $val) { $replies[$key]['manager_name'] = Mymanager::instance($val['manager_id'])->get('name'); $replies[$key]['manager_email'] = Mymanager::instance($val['manager_id'])->get('email'); } $result['replies'] = $replies; } $list[] = $result; } } return $list; }
/** * delete manager */ public function delete($id) { role::check('delete_manager'); //zhu add $this->_check_manager($id); /*if($id == $this->manager_id) { remind::set(Kohana::lang('o_manage.self_account_not_do'),'manage/manager'); }*/ //不能删除root $manager = Mymanager::instance($id)->get(); if (role::is_root($manager['username'])) { remind::set(Kohana::lang('o_global.access_root_denied'), 'manage/manager'); } if (Mymanager::instance($id)->delete()) { remind::set(Kohana::lang('o_global.delete_success'), 'manage/manager', 'success'); } else { remind::set(Kohana::lang('o_global.delete_error'), 'manage/manager'); } }
public function set_bonus($id, $page = 1) { /* 权限检查 订单列表 */ role::check('order_list'); if (empty($id)) { remind::set(Kohana::lang('o_global.bad_request'), 'order/ticketnum/'); } $ticketobj = ticket::get_instance(); $result = $ticketobj->get($id); if (empty($result)) { remind::set(Kohana::lang('o_global.bad_request'), 'order/ticketnum/'); } //提交操作 if (!empty($_POST)) { tool::filter_strip_tags($_POST); $bonus = $_POST['money']; $num = $_POST['num']; $password = $_POST['password']; $flag = $ticketobj->update_bonus($id, $bonus, $num, $password, $this->manager_id); $addchar = '成功'; if (!$flag) { $addchar = '失败'; } //添加日志 $logs_data = array(); $logs_data['manager_id'] = $this->manager_id; $logs_data['user_log_type'] = 28; $logs_data['ip'] = tool::get_long_ip(); $logs_data['memo'] = "为id:{$result['id']}的彩票录入奖金:{$bonus}{$addchar}"; ulog::instance()->add($logs_data); if ($flag) { remind::set("成功为id:{$result['id']}的彩票录入奖金:{$bonus}", '/order/ticketnum/index/hasticket/?page=' . $page, 'success'); } else { remind::set("为id:{$result['id']}的彩票录入奖金:{$bonus}失败", '/order/ticketnum/?page=' . $page, 'error'); } } if ($result['status'] != 1 && !($result['status'] == 2 && $result['bonus'] == -9999)) { remind::set(Kohana::lang('o_global.bad_request'), 'order/ticketnum/'); } //获取更多信息 $result['plan'] = plan::get_instance()->get_plan_by_tid($result['plan_id'], $result['ticket_type']); $result['user'] = user::get_instance()->get($result['plan']['user_id']); $result['manager'] = ''; if (!empty($result['manager_id'])) { $manager = Mymanager::instance($result['manager_id'])->get(); $result['manager'] = $manager['username']; } $this->template->content = new View("order/order_set_bonus", $result); }
/** * get user_log manager * * @return Array */ public function manager() { $manager_id = $this->data['manager_id']; $manager = Mymanager::instance($manager_id)->get(); return $manager; }
/** * 留言回复 */ public function do_edit() { $request_data = $this->input->post(); if ($_POST) { //数据验证 $validation = Validation::factory($request_data)->add_rules('message_id', 'required', 'digit')->add_rules('content', 'required', 'length[0,65535]'); if (!$validation->validate()) { remind::set(Kohana::lang('o_global.input_error'), request::referrer()); } $message = MessageService::get_instance()->get($request_data['message_id']); if (empty($message['id'])) { remind::set(Kohana::lang('o_global.access_denied'), request::referrer(), 'error'); } $set_data = array('message_id' => $message['id'], 'manager_id' => $this->manager_id, 'content' => $request_data['content'], 'update_timestamp' => date('Y-m-d H:i:s')); //判断此管理员是否已经回复过 $message_reply_service = Message_replyService::get_instance(); $manager_reply = $message_reply_service->get_reply_by_manager_id($this->manager_id, $message['id']); if (isset($manager_reply) && !empty($manager_reply['id'])) { $message_reply_service->set($manager_reply['id'], $set_data); } else { $set_data['create_timestamp'] = date('Y-m-d H:i:s'); $message_reply_service->add($set_data); //把留言的回复状态改为已回复 $message_data['is_reply'] = MessageService::IS_MANAGER_REPLY; MessageService::get_instance()->set($message['id'], $message_data); } //发送邮件 if ($request_data['send_mail'] == '1') { $email_flag = 'the answer of your question'; $email = $message['email']; $name = Mymanager::instance($message['manager_id'])->get('name'); $content = ''; $content .= 'Dear ' . $name . ' :<br>'; $content .= $request_data['content']; if (mail::send($email, $email_flag, $content)) { remind::set(Kohana::lang('o_global.mail_send_success')); } else { remind::set(Kohana::lang('o_global.mail_send_error'), 'manage/message/edit?id=' . $message['id']); } } remind::set(Kohana::lang('o_manage.message_success'), 'manage/message', 'success'); } else { remind::set(Kohana::lang('o_manage.message_error'), 'manage/message/edit?id=' . $message['id']); } }
/** * 订单列表 */ public function index($status = 'all') { /* 权限检查 订单列表 */ role::check('user_draw_money_review'); //初始化默认查询结构体 $query_struct_default = array('orderby' => array('id' => 'DESC'), 'limit' => array('per_page' => 10, 'page' => 1)); switch ($status) { case 'review': role::check('user_draw_money_review'); $query_struct_default['where']['status'] = 0; break; case 'hasreview': role::check('user_draw_money_review'); $query_struct_default['where']['status'] = 1; break; case 'reviewfail': role::check('user_draw_money_input'); $query_struct_default['where']['status'] = 2; break; case 'hascharge': role::check('user_draw_money_charge'); $query_struct_default['where']['status'] = 3; break; case 'chargefail': $query_struct_default['where']['status'] = 4; break; case 'chargewin': $query_struct_default['where']['status'] = 5; break; default: } /* 搜索功能 */ $search_arr = array('id', 'money', 'account', 'truename', 'bank_name', 'province', 'city', 'bank_found'); $search_value = $this->input->get('search_value'); $search_type = $this->input->get('search_type'); $where_view = array(); if ($search_arr) { foreach ($search_arr as $value) { if ($search_type == $value && strlen($search_value) > 0) { $query_struct_default['like'][$value] = $search_value; } } $where_view['search_type'] = $search_type; $where_view['search_value'] = $search_value; } $request_data = $this->input->get(); //初始化当前查询结构体 $query_struct_current = array(); //设置合并默认查询条件到当前查询结构体 $query_struct_current = array_merge($query_struct_current, $query_struct_default); //列表排序 $orderby_arr = array(0 => array('id' => 'DESC'), 1 => array('id' => 'ASC')); $orderby = controller_tool::orderby($orderby_arr); // 排序处理 if (isset($request_data['orderby']) && is_numeric($request_data['orderby'])) { $query_struct_current['orderby'] = $orderby; } $query_struct_current['orderby'] = $orderby; //每页条目数 controller_tool::request_per_page($query_struct_current, $request_data); //调用服务执行查询 $acobj = User_draw_moneyService::get_instance(); $return_data['count'] = $acobj->count($query_struct_current); //统计数量 /* 调用分页 */ $this->pagination = new Pagination(array('total_items' => $return_data['count'], 'items_per_page' => $query_struct_current['limit']['per_page'])); $query_struct_current['limit']['page'] = $this->pagination->current_page; $return_data['list'] = $acobj->query_assoc($query_struct_current); $return_data['account_type'] = Kohana::config('ticket_type'); $i = 0; $managers = array(); $users = array(); foreach ($return_data['list'] as $rowlist) { $return_data['list'][$i] = $rowlist; $return_data['list'][$i]['other'] = json_decode($rowlist['other']); $users[$rowlist['user_id']] = $rowlist['user_id']; if (!empty($rowlist['manager_id'])) { $managers[$rowlist['manager_id']] = $rowlist['manager_id']; } $i++; } $userobj = user::get_instance(); $return_data['users'] = array(); $return_data['managers'] = array(); foreach ($users as $rowuser) { $return_data['users'][$rowuser] = $userobj->get($rowuser); } foreach ($managers as $rowman) { $managers[$rowman] = Mymanager::instance($rowman)->get(); if (!empty($managers[$rowman])) { $return_data['managers'][$rowman] = $managers[$rowman]['username']; } } $return_data['managers'] = $managers; $return_data['status'] = $status; $this->template->content = new View("order/user_draw_money", $return_data); $this->template->content->where = $where_view; }
/** * 显示退货单细节 */ public function return_detail($id) { /* 权限检查*/ role::check('order_doc_return'); $return = Myorder_return_log::instance($id)->get(); $ship_status = Kohana::config('order.ship_status'); $return_list = array(); $return_list['id'] = $return['id']; //退货单id $return_list['return_num'] = $return['return_num']; //退货单号 $return_list['order_num'] = Myorder::instance($return['order_id'])->get('order_num'); //订单号 $return_list['carrier'] = DeliveryService::get_instance()->get_delivery_name($return['carrier_id']); $return_list['email'] = $return['email']; //用户邮箱 $return_list['manager'] = Mymanager::instance($return['manager_id'])->get('username'); //操作员 $return_list['currency'] = $return['currency']; //币种 $return_list['total_shipping'] = $return['total_shipping']; //运费金额 $return_list['return_status'] = $ship_status[$return['return_status_id']]['name']; //退货状态 $return_list['content_admin'] = $return['content_admin']; //管理员备注 $return_list['content_user'] = $return['content_user']; //用户备注 $return_list['date_add'] = $return['date_add']; //添加时间 /* 得到订单货品信息 */ $return_list['return_data'] = array(); $return_data = unserialize($return['return_data']); $order_products = Myorder_product::instance()->get_order_products_by_order_id($return['order_id']); foreach ($order_products as $val) { foreach ($return_data as $k => $v) { if ($v['id'] == $val['id']) { $return_list['return_data'][$k]['SKU'] = $val['SKU']; $return_list['return_data'][$k]['name'] = $val['name']; $return_list['return_data'][$k]['attribute_style'] = empty($val['attribute_style']) ? '默认' : $val['attribute_style']; $return_list['return_data'][$k]['quantity'] = $val['quantity']; $return_list['return_data'][$k]['sendnum'] = isset($v['send_num']) ? $v['send_num'] : '未知'; $return_list['return_data'][$k]['returnnum'] = $v['return_num']; } } } $this->template = new View('layout/commonfix_html'); $this->template->content = new view("order/order_doc/doc_detail/return_detail"); $this->template->content->return_list = $return_list; }
/** * user log in * * @param <String> $username * @param <String> $password * @param <String> $ip */ public static function log_in($username, $password, $ip = NULL) { $manager = Mymanager::instance()->get_by_username($username); if ($manager['id']) { if ($manager['password'] == md5($password)) { if (is_null($ip)) { $ip = tool::get_long_ip(); } $data = array(); $data['login_time'] = tool::db_date(); $data['login_num'] = $manager['login_num'] + 1; $data['login_ip'] = $ip; return Mymanager::instance()->update($data); } else { return false; } } else { return false; } }