|
- <?php
-
- class operate_user
- {
- public $userId = '';
- public $time = '';
-
- function __construct()
- {
- $this->userId = getUserId();//1;
- $this->time = date('Y-m-d H:i:s', time());
- }
-
- function execUser($operate)
- {
- $supplier_id = isset($_POST['supplier_id']) ? trim($_POST['supplier_id']) : '';//供应商或渠道商id
- $user_name = isset($_POST['user_name']) ? trim($_POST['user_name']) : '';//用户名
- $true_name = isset($_POST['true_name']) ? trim($_POST['true_name']) : '';//真实姓名
- $phone_no = isset($_POST['phone_no']) ? trim($_POST['phone_no']) : '';//手机号
- $user_id = isset($_POST['user_id']) ? trim($_POST['user_id']) : '';//用户id
-
- if ($operate == 'check')//获得账号列表
- {
- $this->checkUserName($user_id, $user_name, 'check');
- }
- if ($operate == 'insert')//新增数据
- {
- $this->insertUser($supplier_id, $user_name, $true_name, $phone_no);
- }
- if ($operate == 'list')//获得账号列表
- {
- $this->getListUser($supplier_id);
- }
- if ($operate == 'stop')//停用
- {
- $this->stopUser($user_id);
- }
- if ($operate == 'start')//启用
- {
- $this->startUser($user_id);
- }
- if ($operate == 'delete')//删除
- {
- $this->deleteUser($user_id);
- }
- if ($operate == 'detail')//获取详情
- {
- $this->detailUser($user_id);
- }
- if ($operate == 'update')//修改账号
- {
- $this->updateUser($user_id, $user_name, $true_name, $phone_no);
- }
- if ($operate == 'update_password')//初始化密码
- {
- $this->updateUserPassword($user_id);
- }
- }
-
- //新增用户
- function insertUser($supplier_id, $user_name, $true_name, $phone_no)
- {
- global $pdo;
- if (empty($supplier_id) || empty($user_name) || empty($true_name) || empty($phone_no)) {
- $json['code'] = '1';
- $json['info'] = '必填项不可为空';
- echo json_encode($json);
- exit();
- }
- $this->checkUserName('', $user_name, 'insert_check');
- $main_corp_id_sql = "select main_corp_id from base_supplier where id = " . $supplier_id . ' and cancel_flag = 0 limit 1';
- $result = $pdo->query($main_corp_id_sql);
- $main_corp_id = $result->fetchAll(PDO::FETCH_ASSOC);
- $main_corp_id = $main_corp_id[0]['main_corp_id'];
-
- $new_user_id = 0;
- $password = md5('zzcx8888');
- $sql = "INSERT INTO base_user (
- create_user_id,
- create_time,
- user_name,
- org_id,
- top_org_id,
- user_password,
- true_name,
- phone_no,
- `status`,
- main_corp_id,
- user_role
- )
- VALUE
- (" . $this->userId . ", '" . $this->time . "', '" . $user_name . "', " . $supplier_id . ", " . $supplier_id . ", '" . $password . "', '" . $true_name . "', '" . $phone_no . "',0," . $main_corp_id . ",17)";
- writeLog("insertUser base_user:" . $sql);
- $result = $pdo->exec($sql);
- $new_user_id = $pdo->lastInsertId();
- if ($result) {
- $json['code'] = '0';
- $json['info'] = '插入成功';
- if ($new_user_id != 0) {
- //如果账户类型是酒店那么 base_user_role 中插入 103,104,104 并且 base_user中的user_role 改为11
- $get_type_sql = "select b.product_type as product_type from base_supplier a inner join base_supplier_purchase b on a.id = b.supplier_id where b.cancel_flag= 0 and a.cancel_flag = 0 and b.product_type = 25 and a.id = $supplier_id limit 1";
- writeLog("判断账户类型是否酒店(是否为25):" . $sql);
- $result = $pdo->query($get_type_sql);
- $res = $result->fetchAll(PDO::FETCH_ASSOC);
- if ($res[0]['product_type'] == 25) {
- $sql = "insert into base_user_role(user_id,user_role,cancel_flag) VALUES ($new_user_id,103,0),($new_user_id,104,0),($new_user_id,105,0)";
- writeLog("insertUser base_user_role:" . $sql);
- $result = $pdo->exec($sql);
- $sql = "update base_user set user_role = 11 where id = $new_user_id";
- $result = $pdo->exec($sql);
- if ($result){
- $json['code'] = '0';
- $json['info'] = '插入成功';
- }else{
- $json['code'] = '2';
- $json['info'] = '插入失败';
- }
- }
- }
- echo json_encode($json);
- exit();
- } else {
- $json['code'] = '1';
- $json['info'] = '系统原因插入失败';
- echo json_encode($json);
- exit();
- }
-
- }
-
- //检验用户名
- function checkUserName($user_id, $user_name, $check_type)
- {
- global $pdo;
- if (empty($user_id)) {
- $sql = "SELECT
- user_name
- FROM
- base_user
- WHERE
- cancel_flag = 0
- AND user_name = '" . $user_name . "'";
- } else {
- $sql = "SELECT
- user_name
- FROM
- base_user
- WHERE
- cancel_flag = 0
- AND id != " . $user_id . "
- AND user_name = '" . $user_name . "'";
- }
- writeLog("checkUserName base_user:" . $sql);
- $result = $pdo->query($sql);
- $res = $result->fetchAll(PDO::FETCH_ASSOC);
- if (count($res) > 0) {
- $json['code'] = '1';
- $json['info'] = '用户名已存在';
- echo json_encode($json);
- exit();
- } else {
- if ($check_type == 'check') {
- $json['code'] = '0';
- $json['info'] = '用户名可用';
- echo json_encode($json);
- exit();
- } else {
- return true;
- }
- }
-
- }
-
- //获得账号列表
- function getListUser($supplier_id)
- {
- global $pdo;
- $sql = "SELECT
- id,
- true_name,
- `status`
- FROM
- base_user
- WHERE
- cancel_flag = 0
- AND org_id = " . $supplier_id;
- writeLog("getListUser base_user:" . $sql);
- $result = $pdo->query($sql);
- $res = $result->fetchAll(PDO::FETCH_ASSOC);
- if (count($res) > 0) {
- foreach ($res as $k => $v) {
- if ($v['status'] == 0) {
- $res[$k]['status'] = '停用';
- } else {
- $res[$k]['status'] = '启用';
- }
- }
- }
- $json['code'] = '0';
- $json['info'] = '用户名可用';
- $json['list'] = $res;
- echo json_encode($json);
- exit();
- }
-
- //停用账号
- function stopUser($user_id)
- {
- global $pdo;
- $sql = "UPDATE base_user
- SET `status` = 1,
- update_user_id = " . $this->userId . ",
- update_time = '" . $this->time . "'
- WHERE
- id = " . $user_id;
- writeLog("stopUser base_user:" . $sql);
- $result = $pdo->exec($sql);
- if ($result) {
- $json['code'] = '0';
- $json['info'] = '停用成功';
- echo json_encode($json);
- exit();
- } else {
- $json['code'] = '1';
- $json['info'] = '系统原因停用失败';
- echo json_encode($json);
- exit();
- }
- }
-
- //启用账号
- function startUser($user_id)
- {
- global $pdo;
- $sql = "UPDATE base_user
- SET `status` = 0,
- update_user_id = " . $this->userId . ",
- update_time = '" . $this->time . "'
- WHERE
- id = " . $user_id;
- writeLog("startUser base_user:" . $sql);
- $result = $pdo->exec($sql);
- if ($result) {
- $json['code'] = '0';
- $json['info'] = '启用成功';
- echo json_encode($json);
- exit();
- } else {
- $json['code'] = '1';
- $json['info'] = '系统原因启用失败';
- echo json_encode($json);
- exit();
- }
- }
-
- //删除账号
- function deleteUser($user_id)
- {
- global $pdo;
- $sql = "UPDATE base_user
- SET cancel_flag = 1,
- update_user_id = " . $this->userId . ",
- update_time = '" . $this->time . "'
- WHERE
- id = " . $user_id;
- writeLog("deleteUser base_user:" . $sql);
- $result = $pdo->exec($sql);
- if ($result) {
- $json['code'] = '0';
- $json['info'] = '删除成功';
- echo json_encode($json);
- exit();
- } else {
- $json['code'] = '1';
- $json['info'] = '系统原因删除失败';
- echo json_encode($json);
- exit();
- }
- }
-
- //获取详情
- function detailUser($user_id)
- {
- global $pdo;
- $sql = "SELECT
- id,
- user_name,
- true_name,
- phone_no
- FROM
- base_user
- WHERE
- cancel_flag = 0
- AND id = " . $user_id;
- writeLog("detailUser base_user:" . $sql);
- $result = $pdo->query($sql);
- $res = $result->fetchAll(PDO::FETCH_ASSOC);
-
- if (count($res) > 0) {
- $json['code'] = '0';
- $json['info'] = '获取信息成功';
- $json['list'] = $res;
- echo json_encode($json);
- exit();
- } else {
- $json['code'] = '1';
- $json['info'] = '该数据已删除';
- echo json_encode($json);
- exit();
- }
- }
-
- //修改账号
- function updateUser($user_id, $user_name, $true_name, $phone_no)
- {
- global $pdo;
- if (empty($user_name) || empty($true_name) || empty($phone_no)) {
- $json['code'] = '1';
- $json['info'] = '必填项不可为空';
- echo json_encode($json);
- exit();
- }
- $this->checkUserName($user_id, $user_name, 'update_check');
- $sql = "UPDATE base_user
- SET user_name = '" . $user_name . "',
- true_name = '" . $true_name . "',
- phone_no = '" . $phone_no . "',
- update_user_id = " . $this->userId . ",
- update_time = '" . $this->time . "'
- WHERE
- id = " . $user_id;
- writeLog("updateUser base_user:" . $sql);
- $result = $pdo->exec($sql);
- if ($result) {
- $json['code'] = '0';
- $json['info'] = '修改成功';
- echo json_encode($json);
- exit();
- } else {
- $json['code'] = '1';
- $json['info'] = '系统原因修改失败';
- echo json_encode($json);
- exit();
- }
- }
-
- //重置密码
- function updateUserPassword($user_id)
- {
- global $pdo;
- $sql = "UPDATE base_user
- SET user_password = '" . md5('zzcx8888') . "',
- update_user_id = " . $this->userId . ",
- update_time = '" . $this->time . "'
- WHERE
- id = " . $user_id;
- writeLog("updateUserPassword base_user:" . $sql);
- $result = $pdo->exec($sql);
- if ($result) {
- $json['code'] = '0';
- $json['info'] = '初始化密码成功';
- echo json_encode($json);
- exit();
- } else {
- $json['code'] = '1';
- $json['info'] = '系统原因初始化密码失败';
- echo json_encode($json);
- exit();
- }
- }
-
- }
-
- $operate = trim($_POST['operate']);//操作类型
- $operate_user = new operate_user;
- $operate_user->execUser($operate);
- ?>
|