field('a.id,a.code') ->join('wsm_supplier_contact b', 'b.code=a.code') ->where([ 'a.name' => $param['supplierName'], 'a.legaler' => $param['legaler'], 'a.registercode' => $param['registercode'], 'b.contactor' => $param['contactor'], 'b.mobile' => $param['mobile'], 'a.is_del' => 0 ]) ->findOrEmpty() ->toArray(); if (empty($supplier)) return json_show(CommonModel::$error_param, '相关供应商不存在'); $clientID = $supplier['code'];//clientID,暂时取用供应商编码字段 $clientSercert = Str::random(40, 5);//clientSercert,随机40个字符 $data = array_merge($param, [ 'supplierNo' => $supplier['code'], 'clientID' => $clientID, 'clientSecret' => $clientSercert, ]); $id = DevelopmentModel::where('supplierNo', $supplier['code']) ->value('id', 0); if ($id) $res = DevelopmentModel::where('id', $id)->save($data); //更新 else { $res = DevelopmentModel::create($data); $id = $res->id; } //新增 if ($res) { Cache::set(Config::get('redis_key.development_clientID') . $clientID, json_encode(array_merge(['id' => $id], $data), JSON_UNESCAPED_UNICODE), 30 * 24 * 3600); return json_show(CommonModel::$success, '刷新密钥成功', ['clientID' => $clientID, 'clientSecret' => $clientSercert]); } else return json_show(CommonModel::$error_default, '刷新密钥失败');; } //修改开发信息中的推送地址 public static function updatePushUrl(array $param = []) { $res = DevelopmentModel::where('supplierNo', request()->development['supplierNo']) ->save(['push_url' => implode(',', $param['push_url'])]); return $res ? json_show(CommonModel::$success, '修改推送地址成功') : json_show(CommonModel::$error_default, '修改推送地址失败'); } //获取推送记录 public static function getPushLog(array $param = []) { $res = Db::name('push_log') ->where('supplierNo', request()->development['supplierNo']); if ($param['push_url'] != '') $res->whereLike('push_url', '%' . $param['push_url'] . '%'); if ($param['type']) $res->where('type', $param['type']); if ($param['start'] != '') $res->where('addtime', '>=', $param['start']); if ($param['end'] != '') $res->where('addtime', '<=', $param['end']); $count = $res->count('id'); $list = $res ->page($param['page'], $param['size']) ->order('id') ->select() ->toArray(); return json_show(CommonModel::$success, '获取推送记录成功', ['count' => $count, 'list' => $list]); } //获取上线平台列表 // public static function getPlatformList(string $keyword = '', int $page = 1, int $size = 15) // { // // $db = Db::connect('mysql_wsm') // ->name('platform') // ->where('is_del', 0); // // if ($keyword != '') $db->whereLike('platform_name', '%' . $keyword . '%'); // // $count = $db->count('id'); // // $list = $db // ->field('id platform_id,platform_code,platform_name,platform_type') // ->order('id') // ->page($page, $size) // ->select() // ->toArray(); // // return json_show(0, '请求成功', ['count' => $count, 'list' => $list]); // // } //获取分类列表 public static function getCatList(string $keyword = '', int $pid = 0) { $db = Db::connect('mysql_wsm') ->name('cat') ->where(['is_del' => 0, 'pid' => $pid]); if ($keyword != '') $db->whereLike('cat_name', '%' . $keyword . '%'); $count = $db->count('id'); $list = $db ->field('id cat_id,cat_name,level') ->order('id') ->select() ->toArray(); return json_show(0, '请求成功', ['count' => $count, 'list' => $list]); } //获取品牌列表 public static function getBrandList(string $keyword = '', int $page = 1, int $size = 15) { $db = Db::connect('mysql_wsm') ->name('brand') ->where('is_del', 0); if ($keyword != '') $db->whereLike('brand_name', '%' . $keyword . '%'); $count = $db->count('id'); $list = $db ->field('id brand_id,brand_name') ->order('id') ->page($page, $size) ->select() ->toArray(); return json_show(0, '请求成功', ['count' => $count, 'list' => $list]); } //获取单位列表 public static function getUnitList(string $keyword = '', int $page = 1, int $size = 15) { $db = Db::connect('mysql_wsm') ->name('unit') ->where('is_del', 0); if ($keyword != '') $db->whereLike('unit', '%' . $keyword . '%'); $count = $db->count('id'); $list = $db ->field('id unit_id,unit unit_name') ->order('id') ->page($page, $size) ->select() ->toArray(); return json_show(0, '请求成功', ['count' => $count, 'list' => $list]); } //获取规格标题列表 public static function getSpecsTitleList(string $keyword = '') { $db = Db::connect('mysql_wsm') ->name('specs') ->where('is_del', 0); if ($keyword != '') $db->whereLike('spec_name', '%' . $keyword . '%'); $list = $db ->field('id spec_id,spec_name') ->order('addtime', 'desc') ->select() ->toArray(); return json_show(0, '请求成功', $list); } //获取规格值列表 public static function getSpecsValueByTitleList(int $spec_id = 0) { $list = Db::connect('mysql_wsm') ->name('spec_value') ->field('spec_id ,id spec_value_id,spec_value') ->where(['is_del' => 0, 'spec_id' => $spec_id]) ->order('id') ->select() ->toArray(); return json_show(0, '请求成功', $list); } //创建规格值 public static function createSpec(array $param = []) { $url = env('WSM_DOMAIN') . 'abutment/createSpec'; $res = json_decode(curl_request($url, $param), true); if (isset($res) && $res['code'] == CommonModel::$success) return json_show(CommonModel::$success, '创建规格值成功'); else throw new Exception($res['message']); } //获取省市区列表 public static function getAreaList(int $level = 1, string $pid_code = '', string $keyword = '') { switch ($level) { case 1: $list = Db::connect('mysql_wsm') ->name('province') ->field('province_code code,name'); break; case 2: $list = Db::connect('mysql_wsm') ->name('city') ->field('city_code code,name') ->where('province_code', $pid_code); break; case 3: $list = Db::connect('mysql_wsm') ->name('area') ->field('area_code code,name') ->where('city_code', $pid_code); break; } if ($keyword != '') $list->whereLike('name', '%' . $keyword . '%'); $data = $list->order('id') ->select() ->toArray(); return json_show(0, '获取成功', $data); } //获取业务公司编码 public static function getCompanyNoList(string $keyword = '') { $db = Db::connect('mysql_wsm') ->name('business')->where('is_del', 0); if ($keyword != '') $db->whereLike('company|companyNo', '%' . $keyword . '%'); $list = $db ->field('companyNo,company') ->order('id') ->select() ->toArray(); return json_show(0, '请求成功', $list); } //专属类型列表 public static function getExclusiveList(int $pid = 0, string $keyword = '') { $where = [['status', '=', 1], ['is_del', '=', 0], ['pid', '=', $pid]]; if ($keyword !== '') $where[] = ['name', 'like', '%' . $keyword . '%']; $data = Db::connect('mysql_wsm') ->name('exclusive') ->field('id exclusive_id,name exclusive_name,level') ->where($where) ->select() ->toArray(); return json_show(0, '获取成功', $data); } //上传图片 public static function uploadImg(array $files = []) { $url = env('WSM_DOMAIN') . 'abutment/uploadImg'; // halt($files->getPath().DIRECTORY_SEPARATOR.$files->getFilename(),$files->getType(),$files->getBasename()); // $data = array('file' => new \CURLFile(realpath($path))); $res = curl_upload($url, $files); halt('请求结果:', $res); $res = json_decode(curl_request($url, ['image' => $files->getPath() . DIRECTORY_SEPARATOR . $files->getFilename()]), true); halt($res); if (isset($res) && $res['code'] == CommonModel::$success) return json_show(CommonModel::$success, '上传图片成功', $res['data']); else throw new Exception($res['message']); } }