query($sql); if(count($result) > 0) { $json['code'] = '1'; $json['info'] = '用户名已存在'; return $json; } //1.获取销售方式详情数组 $sale_array = $this->getSale($sale); //2.获取联系人详情数组 $link_array = $this->getLinkInfo($link_info); //3.向数据库中中添加数据 $res = $this->addPdoChannel($supplier_name, $area_id, $manage_type, $company_name, $id_card, $sale_array, $sett_type, $sett_frequency, $account_bank, $account_num, $account_name, $link_array,$sales_man); return $res; } //获取销售方式详情数组 private function getSale($sale) { if ($sale == '') { $sale_array = array(); return $sale_array; } $sale = explode(",", $sale); $key = $_COOKIE['memcache']; $sale_memcache = $this->get_memcache('ZHANGS_SALE' . $key); $i = 0; foreach ($sale as $item => $value) { $sale_array[$i] = $sale_memcache[$value]; $i++; } return $sale_array; } //获取联系人详情数组 private function getLinkInfo($link_info) { if ($link_info == '') { $link_array = array(); return $link_array; } $link_info = explode(",", $link_info); $key = $_COOKIE['memcache']; $link_memcache = $this->get_memcache('ZHANGS_LINK' . $key); $i = 0; foreach ($link_info as $item => $value) { $status = 0; if (empty($link_memcache[$value]['link_name']) || empty($link_memcache[$value]['contact_name'])) { $status = 1; } if ($status == 0) { $link_array[$i] = $link_memcache[$value]; $i++; } } return $link_array; } //在数据库中添加供应商信息 private function addPdoChannel($supplier_name, $area_id, $manage_type, $company_name, $id_card, $sale_array, $sett_type, $sett_frequency, $account_bank, $account_num, $account_name, $link_array,$sales_man) { $user_id = $this->user_id;//$_COOKIE['user_id']; //运营主体 $main_corp_id_sql = "select main_corp_id from base_user where id = " . $user_id . ' and cancel_flag = 0 limit 1'; $main_corp_id = $this->query($main_corp_id_sql); $main_corp_id = $main_corp_id[0]['main_corp_id']; $time = date('Y-m-d H:i:s', time()); //1.添加base_supplier表 $is_disabled = $user_id==1?0:137; //供应商默认为待审核:137,如果是超级管理员,直接是0 $this->user_id; $supplier_sql = "INSERT INTO base_supplier ( create_user_id, create_time, supplier_type, supplier_name, area_id, manage_type, company_name, id_card, is_disabled, sett_type, sett_frequency, account_bank, account_num, account_name, sales_man, main_corp_id ) VALUES (" . $user_id . ",'" . $time . "',301,'" . $supplier_name . "'," . $area_id . "," . $manage_type . ",'" . $company_name . "','" . $id_card . "',$is_disabled," . $sett_type . "," . $sett_frequency . ",'" . $account_bank . "','" . $account_num . "','" . $account_name . "','" . $sales_man . "'," . $main_corp_id .")"; $result1 = $this->insert($supplier_sql); //新增的渠道商id $supplier_id = $result1; $insert_sql = array(); //2.添加base_supplier_sale表 if(count($sale_array) > 0) { $sale_sql = "INSERT INTO base_supplier_sale ( create_user_id, create_time, supplier_id, prod_supplier_id, product_type, parent_type, sale_type, commision_flag, commision_type, back_commision_type, back_commision_method, back_percent, back_value ) VALUES "; foreach ($sale_array as $key => $v) { $sale_sql_array[] = "(" . $user_id . ",'" . $time . "'," . $supplier_id . "," . $v['prod_supplier_id'] . "," . $v['product_type'] . "," . $v['parent_type'] . "," . $v['sale_type'] . "," . $v['commision_flag'] . "," . $v['commision_type'] . "," . $v['back_commision_type'] . "," . $v['back_commision_method'] . ",'" . $v['back_percent'] . "','" . $v['back_value'] . "')"; } $sale_sql .= implode(",", $sale_sql_array); $insert_sql[] = $sale_sql; } //3.添加base_supplier_link表 if(count($link_array) > 0) { $link_sql = "INSERT INTO base_supplier_link ( create_user_id, create_time, supplier_id, link_name, contact_name, contact_mobile, contact_telphone, fax, email, remark ) VALUES "; foreach ($link_array as $key => $v) { $link_sql_array[] = "(" . $user_id . ",'" . $time . "'," . $supplier_id . ",'" . $v['link_name'] . "','" . $v['contact_name'] . "','" . $v['contact_mobile'] . "','" . $v['contact_telphone'] . "','" . $v['fax'] . "','" . $v['email'] . "','" . $v['remark'] . "')"; } $link_sql .= implode(",", $link_sql_array); $insert_sql[] = $link_sql; } if(count($insert_sql) > 0) { $insert_sql = implode(';',$insert_sql); zzcsUtils::writeLog($insert_sql); $result2 = $this->exec($insert_sql); } else { $result2 = true; } if($result1 && $result2) { //4.删除缓存 $key = $_COOKIE['memcache']; $this->delete_memcache('ZHANGS_LINK' . $key); $this->delete_memcache('ZHANGS_SALE' . $key); $json['code'] = '0'; $json['info'] = '添加渠道商成功'; } else { $json['code'] = '1'; $json['info'] = '添加渠道商失败'; } return $json; } /** * 获取渠道商详情 * @param $param */ public function getChannelInfo($param) { $channel_id = isset($param['channel_id']) ? trim($param['channel_id']) : false;//渠道商id if(!$channel_id) { $json['code'] = '2'; $json['info'] = '缺少必要参数'; return $json; } //1.获取渠道商基本信息 $channel = $this->getChannelDetail($channel_id); if(isset($channel['code']) && $channel['code'] == '1') { return $channel; } //2.获取销售类型基本信息 $channel['sale'] = $this->getSaleDetail($channel_id); //3.获取联系信息 $channel['link_info'] = $this->getLinkDetail($channel_id); //4将销售信息,联系信息存入缓存 $this -> setLinkMen($channel['sale'],$channel['link_info']); $json['code'] = '0'; $json['info'] = '返回数据成功'; $json['list'] = $channel; return $json; } //获得base_supplier表数据 private function getChannelDetail($channel_id) { $sql = "SELECT id,supplier_name,area_id,manage_type,company_name,id_card,sett_type,sett_frequency,account_bank,account_num,account_name,sales_man FROM base_supplier WHERE cancel_flag = 0 AND id = " . $channel_id; $res = $this->query($sql); if(count($res) == 0 ) { $json['code'] = '1'; $json['info'] = '数据已不存在'; return $json; } $res = $res[0]; $area = $this -> getArea($res['area_id']); if(isset($area['code']) && $area['code'] == '1') { return $area; } unset($res['area_id']); $res = array_merge($res,$area); return $res; } //获取所属城市基本信息 private function getArea($area_id) { $sql = "SELECT id,area_name,parent_id FROM base_area WHERE cancel_flag = 0 AND id = " . $area_id; $res1 = $this->query($sql); if(count($res1) == 0) { $json['code'] = '1'; $json['info'] = 'base_area出错'; return $res1; } $res1 = $res1[0]; if($res1['parent_id'] == 0) { $res['province_id'] = $res1['id']; $res['province_name'] = $res1['area_name']; } else { $sql = "SELECT id,area_name FROM base_area WHERE cancel_flag = 0 AND id = " . $res1['parent_id']; $res2 = $this->query($sql); $res2 = $res2[0]; if(count($res2) == 0) { $json['code'] = '1'; $json['info'] = 'base_area出错'; return $json; } $res['province_id'] = $res2['id']; $res['province_name'] = $res2['area_name']; $res['city_id'] = $res1['id']; $res['city_name'] = $res1['area_name']; } return $res; } //获取销售信息 private function getSaleDetail($channel_id) { $sql = "SELECT id,prod_supplier_id,product_type,parent_type,sale_type,commision_flag,commision_type,back_commision_type,back_commision_method,back_percent,back_value FROM base_supplier_sale WHERE cancel_flag = 0 AND supplier_id = " . $channel_id; $res = $this->query($sql); return $res; } //获取联系信息 private function getLinkDetail($channel_id) { $sql = "SELECT id,link_name,contact_name,contact_mobile,contact_telphone,fax,email,remark FROM base_supplier_link WHERE cancel_flag = 0 AND supplier_id = " . $channel_id; $res = $this->query($sql); return $res; } //将销售信息,联系信息存入缓存 private function setLinkMen($sale,$link) { if(!isset($_COOKIE['memcache'])) { $time = time(); setcookie('memcache',time(),time()+36000,"/"); $_COOKIE['memcache'] = $time; } $key = $_COOKIE['memcache']; foreach($sale as $k=>$v) { $sale_memcache[$v['id']] = $v; $sale_memcache[$v['id']]['sale_id'] = $v['id']; unset($sale_memcache[$v['id']]['id']); } $this->set_memcache("ZHANGS_SALE" . $key,$sale_memcache); foreach($link as $k=>$v) { $link_memcache[$v['id']] = $v; $link_memcache[$v['id']]['link_id'] = $v['id']; unset($link_memcache[$v['id']]['id']); } $this->set_memcache("ZHANGS_LINK" . $key,$link_memcache); return true; } /** * 修改渠道商信息 * @param $param */ public function updateChannel($param) { $channel_id = isset($param['channel_id']) ? trim($param['channel_id']) : false;//渠道商id $supplier_name = isset($param['supplier_name']) ? trim($param['supplier_name']) : false;//供应商名称 $area_id = isset($param['area_id']) ? trim($param['area_id']) : false;//所属区域市id $manage_type = isset($param['manage_type']) ? trim($param['manage_type']) : false;//经营性质 1:公司 2:个人 $company_name = isset($param['company_name']) ? trim($param['company_name']) : false;//公司名称 $id_card = isset($param['id_card']) ? trim($param['id_card']) : false;//身份证号(企业传空) $sale = isset($param['sale']) ? trim($param['sale']) : false;//销售方式 $sett_type = isset($param['sett_type']) ? trim($param['sett_type']) : false;//结算方式 (授信:275,预付:288,单结:292) $sett_frequency = isset($param['sett_frequency']) ? trim($param['sett_frequency']) : false;//结算周期(日结:293,周结:294,月结:295) $account_bank = isset($param['account_bank']) ? trim($param['account_bank']) : false;//开户银行 $account_num = isset($param['account_num']) ? trim($param['account_num']) : false;//银行账号 $account_name = isset($param['account_name']) ? trim($param['account_name']) : false;//账号名称 $link_info = isset($param['link_info']) ? trim($param['link_info']) : false;//联系人详情 $sales_man = isset($param['sales_man']) ? trim($param['sales_man']) : false;//业务员 if (!$channel_id || !$supplier_name || !$area_id || !$manage_type || !$company_name || false === $sale || !$sett_type || !$sett_frequency || false === $account_bank || false === $account_num || false === $account_name || false === $link_info || !$sales_man) { $json['code'] = '2'; $json['info'] = '缺少必要参数'; return $json; } //1.获取销售方式详情数组 $sale_array = $this->getUpdateSale($sale); //2.从数据库获取销售方式 $db_sale_array = $this->getDbSale($channel_id); //3.获取联系人详情数组 $link_array = $this->getUpdateLink($link_info); //4.从数据库获取联系人详情 $db_link_array = $this->getDbLink($channel_id); //5.比较销售方式 $sale = $this->compare($sale_array, $db_sale_array); //6,比较联系详情 $link = $this->compare($link_array, $db_link_array); //7,从数据库获取渠道商详情 $db_channel = $this->getDbChannel($channel_id); //8.操作数据库 $channel_array = array('supplier_name' => $supplier_name,'area_id' => $area_id,'manage_type' => $manage_type,'company_name' => $company_name,'id_card' => $id_card,'sett_type' => $sett_type,'sett_frequency' => $sett_frequency,'account_bank' => $account_bank,'account_num' => $account_num,'account_name' => $account_name,'sales_man' => $sales_man); $res = $this -> updatePdoChannel($channel_id,$channel_array,$db_channel,$sale,$link); return $res; } //获取销售方式详情数组 private function getUpdateSale($sale) { if ($sale == '') { $sale_array = array(); return $sale_array; } $sale = explode(",", $sale); $key = $_COOKIE['memcache']; $sale_memcache = $this->get_memcache('ZHANGS_SALE' . $key); foreach ($sale as $item => $value) { $sale_array[$value] = $sale_memcache[$value]; } return $sale_array; } //获取联系人详情数组 private function getUpdateLink($link_info) { if ($link_info == '') { $link_array = array(); return $link_array; } $link_info = explode(",", $link_info); $key = $_COOKIE['memcache']; $link_memcache = $this->get_memcache('ZHANGS_LINK' . $key); foreach ($link_info as $item => $value) { $status = 0; if (empty($link_memcache[$value]['link_name']) || empty($link_memcache[$value]['contact_name'])) { $status = 1; } if ($status == 0) { $link_array[$value] = $link_memcache[$value]; } } return $link_array; } //从数据库获取销售方式详情数组 private function getDbSale($channel_id) { $sql = "SELECT id AS sale_id,prod_supplier_id,product_type,parent_type,sale_type,commision_flag,commision_type,back_commision_type,back_commision_method,back_percent,back_value FROM base_supplier_sale WHERE cancel_flag = 0 AND supplier_id = " . $channel_id; $res = $this->query($sql); if(count($res) > 0) { foreach($res as $k => $v) { $result1[$v['sale_id']] = $v; } } else { $result1= array(); } return $result1; } //从数据库获取联系人详情 private function getDbLink($channel_id) { $sql = "SELECT id as link_id,link_name,contact_name,contact_mobile,contact_telphone,fax,email,remark FROM base_supplier_link WHERE cancel_flag = 0 AND supplier_id = " . $channel_id; $res = $this->query($sql); if(count($res) > 0) { foreach($res as $k => $v) { $result1[$v['link_id']] = $v; } } else { $result1= array(); } return $result1; } //从数据库获取渠道商详情 private function getDbChannel($channel_id) { $sql = "SELECT supplier_name,area_id,manage_type,company_name,id_card,sett_type,sett_frequency,account_bank,account_num,account_name,sales_man FROM base_supplier WHERE cancel_flag = 0 AND id = " . $channel_id; $res = $this->query($sql); $res = $res[0]; return $res; } //比较数组(前台数组,数据库数组) private function compare($arr, $db_arr) { $result = array(); if(count($db_arr) == 0 && count($arr) == 0) { return $result; } elseif (count($db_arr) == 0) { $result['insert'] = $arr; return $result; } elseif (count($arr) == 0) { $result['delete'] = $db_arr; return $result; } else { foreach ($arr as $key => $value) { if(isset($db_arr[$key])) { if($arr != $db_arr) { $result['update'][$key] = $value; } } else { $result['insert'][$key] = $value; } } foreach($db_arr as $key => $value) { if(!isset($arr[$key])) { $result['delete'][$key] = $value; } } return $result; } } //获取update操作中的set数据 private function getUpdateSet($arr) { $set_array = array(); foreach($arr as $k => $v) { if(!empty($v)) { $set_array[] = $k . " = '" . $v . "'"; } else { if($k == 'account_bank' || $k == 'account_num' || $k == 'account_name' || $k == 'link_name' || $k == 'contact_name' || $k == 'contact_mobile' || $k == 'contact_telphone' || $k == 'fax' || $k == 'email' || $k == 'remark' || $k == 'id_card' || $k == 'sales_man') { $set_array[] = $k . " = ''"; } else { $set_array[] = $k . " = '0'"; } } } $set_str = implode(",",$set_array); return $set_str; } //操作数据库 private function updatePdoChannel($channel_id,$channel_array,$db_channel,$sale,$link) { $user_id = $this->user_id;//1; $time = date('Y-m-d H:i:s',time()); $update_sql = array(); //1.操作base_supplier表 if($channel_array != $db_channel)//修改 { $set_str = $this->getUpdateSet($channel_array); $update_supplier_sql = "UPDATE base_supplier SET update_user_id = " . $user_id . ",update_time = '" . $time . "'," . $set_str . " WHERE id = " . $channel_id; $update_sql[] = $update_supplier_sql; } //2.操作base_supplier_sale表 if(count($sale) > 0) { if(count($sale['update']) > 0)//修改 { $update_sale_array = array(); foreach($sale['update'] as $key => $value) { unset($value['sale_id']); $set_str = $this->getUpdateSet($value); $update_sale_array[] = "UPDATE base_supplier_sale SET update_user_id = " . $user_id . ",update_time = '" . $time . "'," . $set_str . " WHERE id = " . $key; } $update_sale_sql = implode(";",$update_sale_array); $update_sql[] = $update_sale_sql; } if(count($sale['insert']) > 0)//增加 { $insert_sale_sql = "INSERT INTO base_supplier_sale ( create_user_id, create_time, supplier_id, prod_supplier_id, product_type, parent_type, sale_type, commision_flag, commision_type, back_commision_type, back_commision_method, back_percent, back_value ) VALUES "; foreach($sale['insert'] as $key => $value) { $sale_sql_array[] = "(" . $user_id . ",'" . $time . "'," . $channel_id . "," . $value['prod_supplier_id'] . "," . $value['product_type'] . "," . $value['parent_type'] . "," . $value['sale_type'] . "," . $value['commision_flag'] . "," . $value['commision_type'] . "," . $value['back_commision_type'] . "," . $value['back_commision_method'] . ",'" . $value['back_percent'] . "','" . $value['back_value'] . "')"; } $insert_sale_sql .= implode(",", $sale_sql_array); $update_sql[] = $insert_sale_sql; } if(count($sale['delete']) > 0)//删除 { $delete_sale_array = array(); foreach($sale['delete'] as $key => $value) { $delete_sale_array[] = "UPDATE base_supplier_sale SET update_user_id = " . $user_id . ",update_time = '" . $time . "',cancel_flag = 1 WHERE id = " . $key; } $delete_sale_sql = implode(";",$delete_sale_array); $update_sql[] = $delete_sale_sql; } } //3.操作base_supplier_link表 if(count($link) > 0) { if(count($link['update']) > 0)//修改 { $update_link_array = array(); foreach($link['update'] as $key => $value) { unset($value['link_id']); $set_str = $this->getUpdateSet($value); $update_link_array[] = "UPDATE base_supplier_link SET update_user_id = " . $user_id . ",update_time = '" . $time . "'," . $set_str . " WHERE id = " . $key; } $update_link_sql = implode(";",$update_link_array); $update_sql[] = $update_link_sql; } if(count($link['insert']) > 0)//增加 { $insert_link_sql = "INSERT INTO base_supplier_link ( create_user_id, create_time, supplier_id, link_name, contact_name, contact_mobile, contact_telphone, fax, email, remark ) VALUES"; foreach($link['insert'] as $key => $value) { $link_sql_array[] = "(" . $user_id . ",'" . $time . "'," . $channel_id . ",'" . $value['link_name'] . "','" . $value['contact_name'] . "','" . $value['contact_mobile'] . "','" . $value['contact_telphone'] . "','" . $value['fax'] . "','" . $value['email'] . "','" . $value['remark'] . "')"; } $insert_link_sql .= implode(",", $link_sql_array); $update_sql[] = $insert_link_sql; } if(count($link['delete']) > 0)//删除 { $delete_link_array = array(); foreach($link['delete'] as $key => $value) { $delete_link_array[] = "UPDATE base_supplier_link SET update_user_id = " . $user_id . ",update_time = '" . $time . "',cancel_flag = 1 WHERE id = " . $key; } $delete_link_sql = implode(";",$delete_link_array); $update_sql[] = $delete_link_sql; } } if(count($update_sql) > 0) { $update_sql = implode(';',$update_sql); zzcsUtils::writeLog($update_sql); $result = $this->exec($update_sql); } else { $result = true; } if($result) { //4.删除缓存 $key = $_COOKIE['memcache']; $this->delete_memcache('ZHANGS_LINK' . $key); $this->delete_memcache('ZHANGS_SALE' . $key); $json['code'] = '0'; $json['info'] = '修改供应商成功'; } else { $json['code'] = '1'; $json['info'] = '修改供应商失败'; } return $json; } /** * 获取渠道商列表 * @param $param */ public function getChannelList($param) { $supplier_name = isset($param['supplier_name']) ? trim($param['supplier_name']) : false;//渠道商名称 $product_type = isset($param['product_type']) ? trim($param['product_type']) : false;//销售范围 $is_disabled = isset($param['is_disabled']) ? trim($param['is_disabled']) : false;//状态 $pagesize = isset($param['pagesize']) ? trim($param['pagesize']) : false;//每页的数据量 $current = isset($param['current']) ? trim($param['current']) : false;//当前页数 if( false === $supplier_name || false === $product_type || false === $is_disabled || false === $pagesize || false === $current ) { $json['code'] = '2'; $json['info'] = '缺少必要参数'; return $json; } //1.获取筛选条件 $sql_where = $this->getWhere($supplier_name, $is_disabled); //2.获取数据库原始数据 $db_data = $this->getDbData($sql_where, $product_type,$current,$pagesize); if(isset($db_data['code']) && $db_data['code'] == '1') { $db_data['code'] = '0'; return $db_data; } //3.处理数据 $tidyData = $this->tidyData($db_data['supplier_array']); $tidyData['total_page'] = (string)$db_data['total_page']; return $tidyData; } //获取筛选条件 private function getWhere($supplier_name, $is_disabled) { $res = array(); if ($is_disabled != -1) { $res[] = " is_disabled = " . $is_disabled; } if (!empty($supplier_name)) { $res[] = " supplier_name like '%%" . $supplier_name . "%%' "; } if (count($res) > 0) { $res = " and " . implode(" and ", $res); } else { $res = ''; } return $res; } //获取数据库原始数据 private function getDbData($sql_where, $product_type,$current,$pagesize) { if (!empty($product_type) && $product_type != -1)//如果选了采购类型 { $sale_sql = "SELECT supplier_id,product_type,parent_type FROM base_supplier_sale WHERE product_type = " . $product_type . " or parent_type = " . $product_type . " and cancel_flag = 0 GROUP BY supplier_id"; $supplier_id_array = $this->query($sale_sql);//获取有该采购类型的所有supplier_id //如果没有该采购类型的supplier,返回空数组 if (count($supplier_id_array) == 0) { $json['code'] = '1'; $json['info'] = '没有符合条件的数据'; $json['list'] = array(); $json['count'] = '0'; $json['total_page'] = '0'; return $json; } //如果有该采购类型的supplier foreach ($supplier_id_array as $k => $v) { $supplier_id_array[$k] = $v['supplier_id']; } $sql_where .= " and id in(" . implode(",", $supplier_id_array) . ")" . $sql_where . " "; } $supplier_sql = "SELECT id,supplier_name,area_id,is_disabled,supplier_type,manage_type FROM base_supplier WHERE cancel_flag = 0 " . $sql_where . " AND supplier_type = 301 ORDER BY id DESC LIMIT " . ($current-1)*$pagesize . "," . $pagesize; $supplier_array1 = $this->query($supplier_sql);//获取所有数据 if(count($supplier_array1) > 0) { foreach($supplier_array1 as $k => $v) { $id_array[$v['id']] = $v['id']; $supplier_array[$v['id']] = $v; } $sql = "select group_concat(product_type) as product_type,group_concat(parent_type) as parent_type,supplier_id from base_supplier_sale where supplier_id in (" . implode(",",$id_array) . ") and cancel_flag = 0 group by supplier_id"; $sale_array1 = $this->query($sql); foreach($sale_array1 as $k => $v) { $v['product_type'] = explode(",",$v['product_type']); $v['parent_type'] = explode(",",$v['parent_type']); foreach ($v['product_type'] as $key => $value) { if(empty($value)) { $v['product_type'][$key] = $v['parent_type'][$key]; } } $v['product_type'] = array_unique($v['product_type']); $v['product_type'] = implode(",",$v['product_type']); $sale_array[$v['supplier_id']] = $v; } foreach($supplier_array as $k => $v) { if(isset($sale_array[$k])) { $supplier_array[$k]['product_type'] = $sale_array[$k]['product_type']; } else { $supplier_array[$k]['product_type'] = ''; } } $count_sql = "SELECT id FROM base_supplier WHERE cancel_flag = 0 " . $sql_where . " AND supplier_type = 301"; $total_page = $this->query($count_sql);//获取所有数据 $res['supplier_array'] = $supplier_array; $res['total_page'] = ceil(count($total_page)/$pagesize); } else { $json['code'] = '1'; $json['info'] = '没有符合条件的数据'; $json['list'] = array(); $json['count'] = '0'; $json['total_page'] = '0'; return $json; } return $res; } //处理数据 private function tidyData($db_data) { $supplier_array = array(); $area_id_array = array(); $type = array( 0 => '正常', 1 => '关闭', 25 => '酒店', 137 => '待审核', 255 => '直通巴士', 256 => '穿梭巴士', 259 => '车队', 284 => '城际商务车', 310 => '巴士', 311 => '门票', 316 => '组合巴士' ); foreach($db_data as $key => $vel) { $vel['product_type'] = explode(",",$vel['product_type']); //获取采购范围的中文 foreach($vel['product_type'] as $k => $v) { $vel['product_type'][$k] = $type[$v]; } $vel['product_type'] = implode(",",$vel['product_type']); if($vel['manage_type'] == '1') { $vel['manage_type'] = '公司'; } else { $vel['manage_type'] = '个人'; } $supplier_array[$vel['id']] = $vel; //获取所有的area_id if(!isset($area_id_array[$vel['area_id']])) { $area_id_array[$vel['area_id']] = $vel['area_id']; } } //查询area_id的中文 $area_sql = "SELECT id,area_name FROM base_area WHERE id in(" . implode(",",$area_id_array) . ")"; $area_id_array = $this->query($area_sql);//获取area中文 foreach($area_id_array as $key => $vel) { $area_array[$vel['id']] = $vel['area_name']; } foreach($supplier_array as $key => $vel) { $supplier_array[$key]['is_disabled'] = $type[$vel['is_disabled']]; $supplier_array[$key]['area_name'] = $area_array[$vel['area_id']]; unset($supplier_array[$key]['area_id']); } $supplier_array = array_values($supplier_array); $json['code'] = '0'; $json['info'] = '返回渠道商列表成功'; $json['list'] = $supplier_array; $json['count'] = (string)count($supplier_array); return $json; } /** * 修改渠道商状态 启用 停用 待审核 ;审核通过后直接改为正常启用状态,没有取消审核功能,可停用 * @param $param 键名包含 channel_id play('stop:停用, passed:审核通过, 启用') * @return mixed */ public function updateStatus($param) { $channel_id= isset($param['channel_id']) ? trim($param['channel_id']) : false; $play = isset($param['play']) ? trim($param['play']) : false; if(!$channel_id || false === $play) { $json['code'] = '2'; $json['info'] = '缺少必要参数'; return $json; } $is_disabled_st = 137; $user_id = $this->user_id; $time = date('Y-m-d H:i:s',time()); $is_disabled = ($play == 'stop')?1:0; //如果是审核通过,不需要考虑之前的状态是否为 正常或停用,否则要判断之前的状态必须为正常或停用; $is_passed = $play == 'passed'?" and is_disabled = $is_disabled_st ": " and is_disabled in(0,1) "; $sql = "UPDATE base_supplier SET update_user_id = " . $user_id . ",update_time = '" . $time . "',is_disabled = " . $is_disabled . " WHERE id in(" . $channel_id . ") $is_passed"; $result = $this->exec($sql); if($result) { $json['code'] = '0'; $json['info'] = '修改成功'; } else { $json['code'] = '0'; $json['info'] = '数据库原因,修改失败'; } return $json; } } ?>