/** * 导入游戏资料包 * author:mzc * date:2018/5/11 9:51 */ public function actionDataPkg() { $db = \Yii::$app->db; $btbox_db = \Yii::$app->btbox_db; try { //1. 新系统--查询现有游戏资料包存在但格式不是rar或zip的游戏及资料包id和游戏资料包不存在的游戏 $sql = "select id,data_pkg from cy_game where data_pkg in (SELECT id FROM `cy_upload` where ext not in('zip','rar'))"; $sql .= " or (data_pkg =0 or data_pkg is NULL)";//游戏资料包不存在的游戏 // $sql = "select id,data_pkg from cy_game where id=9 "; $result = $db->createCommand($sql)->queryAll(); if (empty($result)) { self::repSuccess('导入资料包成功'); } $dataPkg = array_column($result, 'data_pkg'); $dataPkg = array_unique(array_filter($dataPkg)); $gameid = array_column($result, 'id'); //2. 删除新系统中资料包不是rar或zip的上传记录 if (!empty($dataPkg)) { $db->createCommand()->delete('cy_upload', ['id' => $dataPkg])->execute(); } //3. 老系统-查询对应的游戏的资料包地址,资料包名称 if (!empty($gameid)) { $gameidStr = trim(implode(',', $gameid), ','); $sql = "select id,data_package,package_name from cy_game where id in ({$gameidStr}) and data_package!='0'"; $result = $btbox_db->createCommand($sql)->queryAll(); if (empty($result)) { self::repSuccess('导入资料包成功'); } $importStr = ",新导入的uploadId为:"; foreach ($result as $value) { $gameid = $value['id']; $upload['name'] = $value['package_name']; $upload['url'] = $value['data_package']; //4. 插入到新系统cy_upload中 $db->createCommand()->insert('cy_upload', $upload)->execute(); $lastInsertId = $db->getLastInsertID(); //5. 更新游戏的资料包id $res = $db->createCommand()->update('cy_game', ['data_pkg' => $lastInsertId], ['id' => $gameid])->execute(); if ($res) { $importStr .= $lastInsertId . ','; } } } self::repSuccess('导入资料包成功' . $importStr); } catch (\Exception $ex) { echo "1111"; self::repError($ex->getMessage()); } }
yii2 DAO实现增,删,改,查
猜你喜欢
转载自blog.csdn.net/mengzuchao/article/details/80306110
今日推荐
周排行